@startuml package com.iluwatar { class Main { + Main() + main(args : String[]) {static} } class MapReduce { + MapReduce() + mapReduce(inputs : List) : List> {static} } class Mapper { + Mapper() + map(input : String) : Map {static} } class Reducer { + Reducer() + reduce(grouped : Map>) : List> {static} } class Shuffler { + Shuffler() + shuffleAndSort(mapped : List>) : Map> {static} } } @enduml