Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Advance Software Engineering                                                        LAB # 06                              ...
Advance Software Engineering                                                        LAB # 06The UML notation for objects a...
Advance Software Engineering                                                         LAB # 06Sequence Diagrams And Boundar...
Advance Software Engineering                                                                            LAB # 06NOTE1. Sel...
Advance Software Engineering                                                             LAB # 06Delete MessageDelete mess...
Advance Software Engineering                                                          LAB # 06                            ...
Advance Software Engineering                                                      LAB # 06Scenario # 03: Create an sequenc...
Upcoming SlideShare
Loading in …5

Lab # 06


Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Lab # 06

  1. 1. Advance Software Engineering LAB # 06 LAB # 06OBJECTIVE:• Creating Sequence Diagrams.Sequence DiagramsA sequence diagram shows object interactions arranged in time sequence. It depicts the objectsand classes involved in the scenario and the sequence of messages exchanged between theobjects needed to carry out the functionality of the scenario. Sequence diagrams typically areassociated with use case realizations in the Logical View of the system under development. Inthe UML, an object in a sequence diagram is drawn as a rectangle containing the name of theobject, underlined. An object can be named in one of three ways: the object name, the objectname and its class, or just the class name (anonymous object). The three ways of naming anobject are shown in Figure 5-5.Sequence diagrams show a detailed flow for a specific use case or even just part of a specific usecase. They show the calls between the different objects in their sequence And can show, at adetailed level, different calls to different objects.A sequence diagram has two dimensions:• The vertical dimension shows the sequence of messages/calls in the time order that they occur• The horizontal dimension shows the object instances to which the messages are sent.Start at the top left corner with the "driver" class instance that starts the sequence, and thenfollow each message down the diagram. 1
  2. 2. Advance Software Engineering LAB # 06The UML notation for objects and messages in a sequence diagram is shown in Figure 5.6.1. Right-click to select the use case realization in the Logical View of the browser and make the shortcut menu visible.2. Select the New: Sequence Diagram menu choice. An unnamed sequence diagram is added to the browser.3. Double-click on the sequence diagram in the browser to open the diagram.2. Click to select the actor in the browser.3. Drag the actor onto the sequence diagram.4. Click to select the Object icon from the toolbar.5. Click on the sequence diagram window to place the object.6. While the object is still selected, enter the name of the object.7. Repeat the preceding steps for each object and actor in the scenario.8. Click to select the Object Message icon from the toolbar.9. Click on the actor or object sending the message and drag the message line to the actor orobject receiving the message.10. While the message line is still selected, enter the name of the message.11. Repeat steps 7 through 9 for each message in the scenario. 2
  3. 3. Advance Software Engineering LAB # 06Sequence Diagrams And Boundary ClassesBoundary classes are added to sequence diagrams to show the interaction with the user oranother system. In the early analysis phases, the purpose of showing boundary classes on asequence diagram is to capture and document the interface requirements, not to show how theinterface will be implemented.Complexity And Sequence DiagramsEvery time I teach a class, the question "How complex can a sequence diagram be?" is alwaysasked. The answer I always give is "Keep them simple." The beauty of these diagrams is theirsimplicity—it is very easy to see the objects, the object interactions, the messages between theobjects, and the functionality captured by the scenario. The next question is usually "What do Ido about conditional logic?" (all the if, then, else logic that exists in the real world). Here, youagain have a very subjective answer. If the logic is simple, involving only a few messages, Iusually add the logic to one diagram and use notes and scripts to communicate the choices to bemade. On the other hand, if the if, then, else logic involves many complicated messages, Itypically draw a separate diagram—one for the if case, one for the then case, and one for the elsecase. This is done to keep the diagrams simple. If you desire, diagrams may be linked to oneanother. This allows the user to navigate through a set of diagrams. 3
  4. 4. Advance Software Engineering LAB # 06NOTE1. Select the Note icon from the toolbar.2. Click on the diagram to place the note.3. Select the diagram that you wish to link in the browser and drag the diagram onto the note.4. To navigate to the linked diagram, double-click on the note.Call MessageDefinitionA message defines a particular communication between Lifelines of an Interaction. Callmessage is a kind of message that represents an invocation of operation of target lifeline.Properties Name The name of message. Action Type Type action type of the message. Return Value The information to return to caller. Sequence No. The number of message indicates the order of message within an interaction. Documentation Description of message. Asynchronous Determines whether the message is an asynchronous or a synchronous message.Recursive MessageDefinitionA message defines a particular communication between Lifelines of an Interaction. Recursive message is a kind ofmessage that represents the invocation of message of the same lifeline. Its target points to an activation on top of theactivation where the message was invoked from. 4
  5. 5. Advance Software Engineering LAB # 06Delete MessageDelete message (called stop in previous versions of UML) is sent to terminate another lifeline.The lifeline usually ends with a cross in the form of an X at the bottom denoting destructionoccurrence. UML 2.4 specification provides neither specific notation for delete message nor astereotype. Until they provide some notation, we can use custom «destroy» stereotype.Online Bookshop terminates AccountLifelineEach object appearing on a sequence diagram contains a dashed, vertical line, called a lifeline,which represents the location of an object at a particular point in time. The lifeline also serves asa place for messages to start and stop and a place for the focus of control to reside.Lifelines usually represent an object or its class. 5
  6. 6. Advance Software Engineering LAB # 06 TASK TO BE PERFORMEDTask # 01 : Create sequence diagram for the scenarios given below.Scenario # 01The ESU course registration problem will be used as an example throughout this book. Theprocess of assigning professors to courses and the registration of students is a frustrating andtime-consuming experience. After the professors of ESU have decided which courses they aregoing to teach for the semester, the Registrars office enters the information into the computersystem. A batch report is printed for the professors indicating which courses they will teach. Acourse catalog is printed and distributed to the students. The students currently fill out (mulitpart, multicolor) registration forms that indicate their choice in courses, and return the completedforms to the Registrars office. The typical student load is four courses. The staff of theRegistrars office then enters the students’ forms into the mainframe computer system. Once thestudents curriculum for the semester has been entered, a batch job is run overnight to assignstudents to courses. Most of the time the students get their first choice; however, in those caseswhere there is a conflict, the Registrars office talks with each student to get additional choices.Once all the students have been successfully assigned to courses, a hard copy of the studentsschedule is sent to the students for their verification. Most student registrations are processedwithin a week, but some exceptional cases take up to two weeks to solve. Once the initialregistration period is completed, professors receive a student roster for each course they arescheduled to teach.Scenario # 02Youre short on cash, so you walk over to the automated teller machine (ATM), insert your cardinto the card reader, respond to the prompts on the screen, and within a minute you walk awaywith your money and a receipt. These machines can now be found at most supermarkets,convenience stores and travel centers. 6
  7. 7. Advance Software Engineering LAB # 06Scenario # 03: Create an sequence diagram for email account creation.Scenario # 03: Create an sequence diagram Online BookshopScenario # 03: Below an activity diagram is shown. Give an interpretation of the diagram. 7