270 likes | 679 Views
Activity, Collaboration, and Component Diagrams. Philip Liew pliew@alumni.uwaterloo.ca. Activity Diagrams. Represent the business and operational workflow of a system Shows activity, and event that causes object to be in particular state. Symbols. Starting point First activity of the flow
E N D
Activity, Collaboration, and Component Diagrams Philip Liew pliew@alumni.uwaterloo.ca
Activity Diagrams • Represent the business and operational workflow of a system • Shows activity, and event that causes object to be in particular state
Symbols • Starting point • First activity of the flow • Activity • Decisions
Symbols • Signals (input and output) • Concurrent activity • Final activity
Sequence Diagrams • Depicts a sequence of actions that occur in a system • Captures invoked methods of objects, and order of invocation • Represents dynamic behaviour of system
Sequence Symbols • Object is an instance of a class • Name to the left of “:” is object name • Name to the right of “:” is class name • Arrows represent messages • Simple messages • Special message creating object • Special message destroying object • Message response
Sequence Diagram • Horizontal object shows life of represented object • Vertical axis represents sequence of invocation of object
Collaboration Diagram • Sequence diagram is time ordered • Like activity diagrams but shows association with other objects in the system
Elements • Object • Relation/Association • Message • Number represents order of interaction
Component Diagram • Represents Implementation perspective • Reflect grouping of different design elements of system
Component Elements • Component • Interacting objects within system • Class/Interface/Object • Relation/Association
Deployment Diagram • Represents physical relationships among software and hardware components as realized in running system • Nodes represent computational elements (i.e. processor, server, etc.)
Courseware Example • Construct the design elements for a system that can be used to manage courses/classes • The organization offers a courses in areas such as learning management techniques and understanding different software languages and technologies • Each course consists of a set of topics • Tutors assigned courses to teach according to their specialty and availability • Publishes and maintains calendar of courses and assigned tutors • Course Administrators who manage content, assign courses to tutors, and define schedule
Identify Actors • Tutors • Course Administrators • Students • Course Administrator is main actor
Use Case • Manage courses • View courses • Manage topics for a course • Manage course information • Manage course assignments • View course calendar • View tutors • Manage tutor information • Assign courses to tutors