OO System Analysis and Design
Six steps to developing a Class Diagram
1: Analyze each use case to find candidate classes. 2: Select the proposed classes. 3. Establish Relationships among classes. 4. Add multiplicity and expand the relationships. 5. Add attributes of a class. 6. Analyze and add behaviors of a class.
Two components of Use Case Model?
Actor , Use Case
System Design in OO
Class Modeling
Multiplicities (Only uses for association and aggregations)
Exactly one (1) Many (*) Zero or more (0..*) One or more (1..*) Zero or one (0..1) Specified range (2..4)
Use Case Model
Highest level description of your systems functionality.
Use Case Description
Includes name, actors, description, course, alt course, others(comments)
System Analysis in OO
Use Case Modeling and Class Modeling
Behaviors
actions that an object can perform; piece of code that is in fact a function or subroutine.
Use Case
an interaction between users and a system. Captures the goals of the user and responsibility of the system. A scenario of how a user will use the system and how the system will respond. (oval) Verb + Noun
Class
collection of objects with same data and behavior, encapsulates attributes(data) and behaviors(operations)
Use Case Modeling
formal way of representing how the target system interacts with its environment. Describes the activities of a system without specifying how the activities are implemented.
Use Case Diagram
functional diagram in that they portray what the users can do and how the system should respond to the users action.
What is the Use Case Model primarily for?
primarily capturing the high level functional requirements of a system, shows what our system is going to do, not how it will do it.
Actor
represents someone of something that must interact with the system under development. Could be an external system. (stick figure)
Class Diagram
static model that shows classes that the system is composed of, depicts class structure, shows relationship between those classes.
Class Model
structural model in that it describes the structures of the classes of the target system. Technique of identifying classes within the system that is composed of their attributes and behaviors, and the relationships between those classes.
What is the Use Case Model other uses?
to act as a spring board for the software design and something to validate the software design against.