1 / 18

Analysis Modeling

Analysis Modeling. Dynamic Modeling. Requirements analysis. Results in static and dynamic models Scenario models: use cases (static), swimlane diagrams (dynamic) Class diagrams (static) Flow oriented diagrams (dynamic)

lajos
Download Presentation

Analysis Modeling

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Analysis Modeling Dynamic Modeling

  2. Requirements analysis • Results in static and dynamic models • Scenario models: use cases (static), swimlane diagrams (dynamic) • Class diagrams (static) • Flow oriented diagrams (dynamic) • Behavioral models: sequence diagrams (dynamic), state diagrams (dynamic) • These models bridge the gap between requirements and implementation (code)

  3. Activity/Swimlane diagrams • Help us visualize the flows associated with use cases • A swimlane diagram has multiple actors; an activity diagram is the same thing, but no concrete actors are distinguished

  4. Other syntax Fork/Branch • Concurrency can be modeled by fork/join • We can include one diagram inside of another • Enables reuse Join

  5. Swimlane diagrams • Start circle • Ends in bulls-eye • Decisions are diamonds (must always have a guard on all branches)

  6. In-class exercise • Let’s do a swimlane diagram for the canonical use case U1 for the Quiz Game

  7. Sequence diagrams • Used to model interactions between classes/objects • Emphasis on time ordering • Message passing between objects

  8. Sequence Diagram Example • Take notes as I describe the parts in class! Synchronous message Asynchronous message Return message

  9. Messages in sequence diagrams • Messages, along horizontal lines, correspond to operations in your class diagram; i.e. they are method calls • Three main types • Synchronous: expects return • Asynchronous: does not expect return • Return argument: dashed line Synchronous message Asynchronous message Return message

  10. Bad Example! • What are the problems here?

  11. Sequence Diagram: option

  12. Sequence diagram: Alternate/else

  13. Sequence diagram: loop

  14. In-class exercise • Let’s do a sequence diagram for the canonical use case U1 for the Quiz Game

  15. State diagrams • Once sequence diagrams have been constructed for each use case, a state diagram can be built for the system • Can model the: • State of each class • State of the system as viewed from the outside

  16. State diagram syntax State Name (verb in current tense) (Optional) actions happening during state [age <= 20] [age > 20] [age <= 20]/setFlag(false) Guards: Use to describe event that causes a state transition happens (ALL transitions should have guards) Name Examples: sorting validating updating status … Action: If something happens while transitioning to another state. (Optional)

  17. Example • What are some states for an ATM? • For the class CheckingAccount? • For the machine itself as viewed by a customer? • What are the triggers and transitions between theses states?

  18. TeamExercise • Examine the Quiz Game description/use cases • In your teams, come up with at least: • One swimlane diagram • One sequence diagram • One state diagram for a class • One state diagram for the system • Turn in this assignment through XP-Dev

More Related