(*Object Model Report - second draft *) (* This file defines the objects and operations of a Report *) object Report components: GradedItem* and showStatistics and OrganizeBy; description: (* A Report is composed of one or more GradedItems organized by what the user chooses. It can show statistics. *); end Report; object showStatistics is boolean; object RunningTotal is boolean; object OrganizeBy is components: Date and Mark and Score; description: (* A report can be organized by the date the graded item is dure or the name of the graded item *); end OrganizeBy; operation ViewReport is inputs: Report; outputs: UserWorkSpace; description: (* ViewReport will generate a report for an individual student. *); end ViewReport; obj Date is components: d:tDay and m:Month and y:Year; description:(* Typical date object *); end Date; obj tDay is integer; obj Month is integer; obj Year is integer;