Software Engineering Behavioral View Diagram: Sequence Diagram, Collaboration Diagram
Software Engineering Behavioral View Diagram: Sequence Diagram, Collaboration Diagram
Software Engineering Behavioral View Diagram: Sequence Diagram, Collaboration Diagram
EXPERIMENT NO. 3
A.1 AIM: - To draw the behavioral view diagram: Sequence diagram, Collaboration
diagram
A.2 Prerequisite
Determine the desired flow of action and their interaction with each other
A.3 Outcome
After successful completion of this experiment students will be able to -
1. Better understanding of the interaction diagrams.
2. Get familiar with sequence & collaboration diagrams.
3. Practice drawing the interaction diagrams using StarUML
A.4 Theory
Interaction diagrams describe how groups of objects collaborate in some behavior. An
interaction diagram typically captures the behavior of a single use case. Interaction diagrams
do not capture the complete behavior, only typical scenarios.
Diagram is used to describe some type of interactions among the different elements in the
model. Interaction is part of the dynamic behavior of the system – snapshot of running
system at a particular moment. Sequence diagram emphasizes on time sequence of messages
collaboration diagram emphasizes on the structural organization of the objects that send and
receive messages.
For sequence diagram things to be identified:
– Objects taking part in the interaction – three types of objects – Entity, Control, Boundary
objects
– Message flow among objects
– The sequence in which messages are flowing
– Object organization
Sequence Diagram -
Sequence diagrams are a graphical way to illustrate a scenario:
They are called sequence diagrams because they show the sequence of message
passing between objects.
Another big advantage of these diagrams is that they show when the objects are
created and when they are destructed. They also show whether messages are
synchronous or asynchronous
Collaboration Diagram -
They are the same as sequence diagrams but without a time axis:
Their message arrows are numbered to show the sequence of message sending.
They are less complex and less descriptive than sequence diagrams.
These diagrams are very useful during design because you can figure out how objects
communicate with each other.
A.5 Procedure/Algorithm
A.5.1 Task:
Draw a sequence diagram for the case study.
Grade:
B.1 Objects:
(Paste your document including as per format given)
Entity Objects represent the data being stored and manipulated (Vendor, Product,
Raw Material, Bill).
Boundary Objects represent the actors and systems interacting with the system
(User, Server, Database).
Control Objects coordinate the flow of information and manage the interactions
between the boundary and entity objects (interactions between User, Server, and
Database).
Entity Objects:
o Vendor
o Product
o Raw Material
o Bill
Boundary Objects:
o User (actor)
o Server (participant)
o Database
Control Objects:
o The interactions between User, Server, and Database can be considered as
control objects as they coordinate the flow of information between the
boundary and entity objects.
B.4 Conclusion
The prompts and discussions have provided an opportunity to understand key software
engineering concepts such as entity, boundary, and control objects, as well as sequence. This
understanding can be applied to designing and modelling software systems effectively.
Entity Objects: These represent the business data or information that the system
manipulates. They are usually persistent and have a long lifecycle. Examples include
customer, product, and order.
Boundary Objects: These represent the interaction between the system and its
environment, such as the user interface. They encapsulate the interaction between the
user and the system. Examples include forms, screens, and reports.
Control Objects: These coordinate the flow of information between the entity and
boundary objects. They are responsible for managing the interaction and often contain
the business logic. Examples include controllers, managers, and use case controllers.
Sequence Diagrams: These illustrate how objects interact with each other in a
particular scenario of a use case. They show the sequence of messages exchanged
between objects over time. Sequence diagrams focus on the time-ordering of
messages.
Collaboration Diagrams (Communication Diagrams): These also show how
objects interact with each other but focus more on the structural organization of the
objects that participate in the interaction. Collaboration diagrams emphasize the
structural relationships and the message flow between objects.