CmpE 202 – Software System Engineering
Design Session (07) Exercises
Examine the following CRC cards (three groups) and list all the major problems with them. State why?
Group #1:
BatteryRESPONSIBILITY / COLLABORATION
CLIENT / SERVER
To initiate play /
- Infielder
- Outfielder
- Defensive Strategy
- Pitches
- Fields
Infielder
RESPONSIBILITY / COLLABORATION
CLIENT / SERVER
To man the infield /
- Battery
- Outfielder
- Defensive Strategy
- Fields
- Makes plays
- Covers bases
Outfielder
RESPONSIBILITY / COLLABORATION
CLIENT / SERVER
To man the outfield /
- Infielder
- Battery
- Defensive Strategy
- Fields
- Backs up
Batting Order
RESPONSIBILITY / COLLABORATION
To have an order for the batters to follow / CLIENT / SERVER
- Offensive Strategy
- Orders batters by characteristics
Defensive Strategy
RESPONSIBILITY / COLLABORATION
CLIENT / SERVER
To keep the other team from scoring /
- Battery
- Infielder
- Outfielder
- Reads situation to know where play goes
Offensive Strategy
RESPONSIBILITY / COLLABORATION
CLIENT / SERVER
To score runs /
- Batting Order
- Hits
- Runs
- scores
Group #2:
Course registration system (CRS)Responsibility / Collaboration
Register and inquire courses / Clients / Server
Student
Course / Verify PIN
Course registration
Course inquiry
Change PIN
Judge the role of a student
Registration
Responsibility / Collaboration
Add and change courses / Clients / Server
Student
Course / Add courses
Change courses
Drop courses
Withdraw courses
Inquiry
Responsibility / Collaboration
List course information / Clients / Server
Student
Course / List course information
Grades inquiry
Student
Responsibility / Collaboration
Access CRS / Clients / Server
CRS
Registration
Inquiry / Provide PIN and student ID
Provide function number
Provide call number
Accept query results
Course
Responsibility / Collaboration
Provide course information for CRS / Clients / Server
CRS
Registration
Inquiry / getCourseInformation
Group #3:
Responsibility / CollaborationClient / Server
To take the appointment with the doctor / Doctor(appointment) / Describes illness
Doctor(illness) / Appropriate appointment time
Patient
Responsibility / CollaborationClient / Server
To give an Appointment Schedule / Patient(appointment) / Looks into records
Patient(illness) / Appropriate appointment time
Doctor
Consultant
Responsibility / CollaborationClient / Server
To consult / Patient(advice) / Looks into records
Help patient with problems
Responsibility / Collaboration
Client
/ ServerTo schedule appointments / Patient(advice) / Looks into records
Consultation / Help patient with problems
Access patients records / Doctor (day-to-day schedule) / Finally doctors schedule
Confirm appointment
Health center
Responsibility / CollaborationClient / Server
Provide patients information / Doctor(provide information to) / Checks records
Pass information