10UMLClass2042012060User
--
id: int
username: StringUMLClass290420150120Task
--
id: int
title: String
description: String
estimatedTime: Duration
actualTime: Duration
completed: booleanRelation13042018040lt=<-
< createdBy10;20;160;20Relation13045018040lt=<-
< assignedTo10;20;160;20UMLClass30011090TextUI
--
--
createNewTask()
updateTask()
createNewUser()
start()UMLClass230032090<<interface>>
TaskManager
--
--
createNewTask(title: String, description: String): Task
findById(id: int): Task
updateTask(task: Task)
UMLClass017021070<<interface>>
UserManager
--
--
createNewUser(username: String)Relation1301012030lt=<-100;10;10;10Relation808030110lt=<-10;90;10;10UMLClass23019031090InMemoryTaskManager
--
--
createNewTask(title: String, description: String): Task
findById(id: int): Task
updateTask(task: Task)
Relation3508030130lt=<<.10;10;10;110Relation36027040170lt=<<<<-
m2=*10;10;10;150UMLClass032021050DBUserManager
--
--
createNewUser(username: String)Relation7023030110lt=<<.10;10;10;90