Software Eng
Software Eng
Software Eng
Software Engineering
Chapter 4
System Modeling
Topics covered
Modeling
Class Diagram
Sequence Diagram
Collaboration Diagram
State Diagram
Use-Case Diagrams
Use-Case Diagrams
Boundary
Actor
Use Case
Library System
Borrow
Employee
Client
Order Title
Fine Remittance
Supervisor
Use-Case Diagrams
Actors: A role that a user plays with respect to the system, including
human users and other systems. e.g., inanimate physical objects (e.g.
robot); an external system that needs some information from the
current system.
Use-Case Diagrams
Association:
Generalization:
relationship between one general use case and a special use case
(used for defining special alternatives) Represented by a line with a
triangular arrow head toward the parent use case.
Use-Case Diagrams
Include: a dotted line labeled <<include>> beginning at base use
case and ending with an arrows pointing to the include use case.
The include relationship occurs when a chunk of behavior is similar
across more than one use case. Use include in stead of copying the
description of that behavior.
<<include>>
Use-Case Diagrams
Use-Case Diagrams
Class diagram
Class diagram
Class diagram
Account_Name
- Customer_Name
- Balance
+addFunds( )
+withDraw( )
+transfer( )
Name
Attributes
Operations
OO Relationships
+ OO Relationships: Generalization
Supertype
Example:
Customer
Regular
Customer
Subtype1
Loyalty
Customer
Subtype2
OO Relationships: Association
Represent
Student
enrolls in a course
Courses have students
Courses have exams
Etc.
Association
Role
Association: Multiplicity
Multiplicity
Symbol
Meaning
0..1
Zero or one
M..N
0..*
1..*
Class diagram
Interaction Diagrams
show
UML
diagrams
Collaboration diagrams
Caller
Phone
Recipient
Picks up
Dial tone
Dial
Ring notification
Ring
Picks up
Hello
+ Collaboration diagrams
Sequence Diagram
Collaboration Diagram
End
Start
Unpaid
Invoice created
Paid
paying
Invoice destroying
+
State Diagrams (Traffic light example)
Traffic Light
State
Transition
Red
Yellow
Green
Event
Start
Key points
use-case diagram: a number of use cases (use case models the interaction between
actors and software)
Class diagram: a model of classes showing the static relationships among them
including association and generalization.
Sequence diagram: shows the way objects interact with one another as messages are
passed between them. Dynamic model
State diagram: shows states, events that cause transitions between states. Another
dynamic model reflecting the behavior of objects and how they react to specific
event
+
Thanks!