the requirements model and
play

The Requirements Model, and The Dynamic Analysis Model Instructor: - PowerPoint PPT Presentation

UML Diagrams: Sequence Diagrams The Requirements Model, and The Dynamic Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU Outline Review of previous Lecture The Requirements Model


  1. UML Diagrams: Sequence Diagrams The Requirements Model, and The Dynamic Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU

  2. Outline  Review of previous Lecture  The Requirements Model and the Analysis model  Importance of Sequence Diagrams  Rules of sequence diagrams  Use Cases and Sequence Diagrams  The System Sequence Diagrams  The Sound Recorder Example  The E-Commerce Example  Other Examples

  3. Review of Previous lecture Review of development phases and UML Development - Overview   Introduction and importance of Use Case Diagrams  Use Case Diagram Rules  Examples of Use Case diagrams  Requirements Elicitation Process Identify Actors 1. Identify Scenarios 2. Identify Use Cases 3. Refine Use Cases 4. Identify Relationships between actors and Use Cases 5. Identify Initial Analysis Objects 6. Identify Non-functional requirements 7.

  4. Requirements, Use cases, and Scenarios

  5. UML Development - Overview ACTORS USE CASES REQUIREMENTS Time ELICITATION D SCENARIOS Requirements System/Object A SEQUENCE T Engineering DIAG. A ANALYSIS ANALYSIS StateChart CLASS DIAGRAM(S) Specify Domain DIAGRAMs D Objects I OPERATION CONTRACTS C T Architectural I Design SUBSYSTEM CLASS/ DESIGN SEQUENCE DIAG. DEPLOYMENT DIAGRAM O Include OR COMPONENT N Design Objects DIAGRAMS DESIGN DIAGRAMS A R Detailed DESIGN Y Object IMPLEMENTATION IMPLEMENTATION Design Activity DIAGRAMS CHOICES IMPLEMENTATION PROGRAM

  6. Where are we in the Requirements Engineering ?  Requirements Engineering focus: elicitation and analysis

  7. The Requirements Model and the Analysis Model The Requirements Functional/ Use Case Diagrams/ Elicitation Nonfunctional Sequence Diagrams Process Requirements (the system level) The Object-Oriented Static Analysis - Class Diagrams Analysis Dynamic Analysis - State Diagrams/ Process Refined Sequence Diagrams (The object level)

  8. Outline  The Requirements Model and the Analysis model  Introduction to Requirements Engineering  Importance of Sequence Diagrams  Rules of sequence diagrams  Use Cases and Sequence Diagrams  The System Sequence Diagrams  The Sound Recorder Example  The E-Commerce Example  Other Examples

  9. Importance of Sequence Diagrams  Depict object interactions in a given scenario identified for a given Use Case  Specify the messages passed between objects using horizontal arrows including messages to/from external actors  Time increases from Top to bottom

  10. Rules of Sequence Diagrams  Sequence Initiation Object1:C1 Object2:C2 Click Update Button updateStatus( ) User

  11. Rules of Sequence Diagrams  Identify objects needed to support use cases, determine sequence of internal events following the external initiating event  Diagrams that are not initiated with an external actor represent only a partial sequence  Partial sequence diagrams should clearly identify the actor initiated sequence diagrams from which they are launched

  12. Example of Sequence Diagrams Notation

  13. Rules of Sequence Diagrams  Messages specified on interactions can be synchronous or asynchronous Object1:C1 Object2:C2 Object1:C1 Object2:C2 Object3:C3 updateStatus( ) calcRoute( ) generateMessage( ) route Explicit Return Implicit Returns Synchronous call

  14. Rules of Sequence Diagrams Asynchronous call Object1:C1 Object2:C2 {active} {active} asynchronous_Call () callBack ()

  15. Rules of Sequence Diagrams  Display operation names on call arrows factory: c:client cmd_pktCToCHeaderFactory header: cmd_pktCToCCommandHeader buildHeader( char * ) «create» header

  16. Rules of Sequence Diagrams Compound and Simple Iteration :Interface :DiscreteFD :Subsystem :Resource :InterfaceContainer :Interface :DiscreteFD getInterfaceContainer() * [for all Interfaces in { Find( ) Container] setState( ) amMasterSI( ) * [for all Interfaces in Container] publishState() setOn( ) / setOff( )

  17. Numbering the Sequence of Interactions

  18. ‘included’ sequence diagrams CMM:process target:process Application Process with CIF <<includes>> Process Command Request sequence Command Request Command Request Command Response Command Response <<includes>> Process Command Response sequence

  19. Showing alternate behavior in a sequence diagram :CmdHandler :CmdValidater :CmdRouter :EventLog :StatusDialog issueCommand( ) validateCommand( ) User Application [if valid command] routeCommand( ) [if invalid command] logError( ) display(status)

  20. Showing Extension Point :CmdHandler :CmdValidater :CmdRouter :StatusDialog issueCommand( ) validateCommand( ) User Application routeCommand( ) Extension Point [invalid command] abort command request and send system message display( status)

  21. Rules of Sequence Diagrams Showing alternate behavior in a sequence diagram

  22. Communication/Collaboration Diagrams They Specify similar information of interactions without the time axis

  23. Specifying Timing Requirements CMM : process target : process User Application a: Command Create Transaction b: Command {b.receiveTime  a.sendTime + 50ms} c: Response Remove Transaction d: Response {d.receiveTime  a.sendTime + 1s}

  24. Specifying Timing Requirements

  25. Specifying Timing Requirements (Data rates in notes)

  26. Specifying Timing Requirements: on interactions

  27. Specifying Timing Requirements (ave and max)

  28. Specifying Timing Requirements: (Timeout events)

  29. Outline  The Requirements Model and the Analysis model  Introduction to Requirements Engineering  Importance of Sequence Diagrams  Rules of sequence diagrams  Use Cases and Sequence Diagrams  The System Sequence Diagrams  The Sound Recorder Example  The E-Commerce Example  Other Examples

  30. Recall Requirements Elicitation Process The process of requirements elicitation  consists of the following steps Identify Actors 1. Identify Scenarios 2. Identify Use Cases 3. Refine Use Cases 4. Identify Relationships between actors and Use 5. Cases Identify Initial Analysis Objects 6. Identify Non-functional requirements 7.

  31. Requirements Elicitation Process Step 4. Refining Use Cases System Sequence Diagrams  System sequence diagrams establish the dynamic behavior in terms of key scenarios of the system for each use case  The system sequence diagram models a scenario of the system interactions with the environment for a given use case  Input/output events are clearly identified in each sequence diagram,  The State of the system before and after each event are also depicted  Different diagrams model scenarios with the normal flow of events and the abnormal flow of events

  32. Sequence Diagrams and Use Cases System Sequence Diagram System: S Actor2 Actor1 S 1 E 11 List of Guide Words S 2 E 12 E 21 List of Guide Words List of Guide Words S 3 E 31 E 2 2 The use case diagram List of Guide Words List of Guide Words S 4 Of system S E 32 E 41 List of Guide Words List of Guide Words The sequence diagram of use case UC1 for system S

  33. UML Use Case Diagrams: The Requirements Model Case Study

  34. UML Use Case Diagrams: The Requirements Model- System Seq. Diags. Digital Sound Recorder Case Study  A sequence diagram displays object interactions arranged in a time sequence capturing a specific scenario of interactions in a use case supported by the system System Sequence Diagram for Play Massage Scenario: Normal Flow Time

  35. Sys. Seq. Diagram for Alarm sounding while playing Massage Scenario

  36. Sys. Seq. Diag. for Alarm while stand-by followed by No-power event.

  37. The ATM Example

  38. This is for the Banking Service Subsystem

  39. Example: Use Case Diagram of the E-Commerce System Browse Catalog Process Delivery Order Confirm Shipment Customer Supplier Place Requisition Send Invoice Bank Confirm Delivery

  40. Place Requisition Scenario

  41. Confirm Delivery Scenario

  42. Send Invoice Scenario

  43. Confirm Shipment Scenario

  44. Another Example: Pace Maker Use-Case model

  45. Pace Maker Sys. Seq. Diag

  46. Seq. Diag. at the object level (The Analysis Model)

  47. A Simple Example of Using UML2  EXAMPLE: SATELLITE CONTROL SYSTEM

  48. Example of Software Architecture Using UML2  SATELLITE CONTROL SYSTEM Architecture

  49. A Simple Example Using UML2  SATELLITE CONTROL SYSTEM Architectural behavior

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend