Scenario
Calendar
add(Date,Time,Time,String,int):
appointments:Appointment[]
REGULAR:int
TODO:int
ALLDAY:int
*
Encapsulate Fields
Appointment
date:Date
start:Time
end:Time
desc:String
type:int
appointments
The first step is to encapsulate the array fields into a new Appointment class.
Dr. Jones would ask the user to name the new class, and to choose a container for the aggregation (in this case an array).
It would then change the program representation as necessary and diagram the new design, including replacing the multiple aggregation edges with a single new one.