
In this Course we discuss how to use the CRC technique to allocate responsibilities to classes and work out the interaction between classes that is required to implement the use case scenarios. We then discuss how to turn these high-level responsibilities into operations on classes and how to describe the functionality of the operations using process specifications.
We introduce interaction diagrams and discuss how they are used to document the details of the interactions we identified using the CRC technique. Interaction diagrams also give us a much more precise idea of the associations between classes that are necessary to allow the requisite message passing between objects. In this Course we also explain the difference between the two types of interaction diagram, sequence and collaboration, and discuss where to use each.
Learning Objective:
In this Course, by using the same case study of the "Domain Analysis Exercises", we discuss how to use the CRC technique to allocate responsibilities to classes and work out the interaction between classes that is required to implement the use case scenarios. We introduce interaction diagrams and discuss how they are used to document the details of the interactions we identified using the CRC technique.
The material and exercises in this chapter will enable you to identify separate operations within a class responsibility using CRC analysis, conduct behavior modeling and finally document the result by drawing a simple sequence diagram and generating the corresponding collaboration diagram using VP-UML.
This Course consists of two parts:
Part 1: Identify Responsibilities for Classes Using CRC Card Technique
Part II: Separate Responsibilities into Operations and Attributes
Part III: Identify Operations Using Interaction Diagrams
Part IV: Writing Process Specification to Describe the Operations
Part V: Exercise for CRC Cards and Interaction Diagrams
Part 1: Identify Responsibilities for Classes Using CRC Card Technique
Table of Contents:
1. What is CRC Cards,
2. CRC Card Example
3. Guidelines for CRC Cards
4. CRC Process
5. Aims of CRC Approach
6. Use Case Scenario and CRC
7. Distribute Responsibilities to Classes with CRC Cards
8. Step-by-Step Demo for CRC Cards with VP-UML
Part II: Separate Responsibilities into Operations and Attributes
Table of Contents:
1. Steps of Identify Operations
2. Three Methods for Identify Operations
Using CRC Cards
Using Sequence Diagrams
Using Communication Diagrams
3. Identify the Operation Using CRC Approach
4. Flow of Events Walk through
5. The Result of Flow of Event Walkthrough
6. The Complete Class Diagram
7. Step-by-Step Demo for Creating Class Diagram from CRC Cards.
Part III: Identify Operations Using Interaction Diagrams
Table of Contents:
1. Steps for Identifying Operations using Interaction Diagrams
2. What is Interaction Diagrams
3. Sequence Diagrams
4. What we need to create a sequence Diagram?
5. Sequence Diagram: An Example - Video Rental System
6. Converting Use Case Scenario to Sequence Diagram
7. Step-by-Step Demo for Creating Sequence Diagram with VP-UML
8. Identify Operations using Communication Diagram
9. Develop[ Communication Diagram - Video Rental System
10. Step-by-Step Demo for Creating Communication Diagram with VP-UML
Part IV: Writing Process Specification to Describe the Operations
Table of Contents:
1. Steps of Preparing Process Specification
2. Specifying Operation Specification
3. An Example
4. Step-by-Step Demo: Operation Specification using Note Annotation
Part V: Exercise for CRC Cards and Interaction Diagrams
Table of Contents:
1. CRC Card - Exercise I and Solution
2. Step by-Step Demo to Structuring Scenario with Mind Map
3. CRC Cards - Exercises II & Solution
4. Identifying Operations by Interaction Diagram Exercise
5. Drawing Sequence Diagram for the Late Return of Video Scenario
Course Content: