Slides chapter 8

3,816 views
3,407 views

Published on

Software Engineering
By Roger Pressman

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,816
On SlideShare
0
From Embeds
0
Number of Embeds
29
Actions
Shares
0
Downloads
194
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Slides chapter 8

  1. 1. Chapter 8 Analysis Engineering Software Engineering: A Practitioner’s Approach by Roger S. Pressman
  2. 2. Analysis Model Elements of the analysis model
  3. 3. Scenario-Based Modeling
  4. 4. Use-case Diagram Use-case diagram for surveillance function
  5. 5. Alternative Actions <ul><li>Can the actor take some other action at this point? </li></ul><ul><li>Is it possible that the actor will encounter some error condition at this point? </li></ul><ul><li>Is it possible that the actor will encounter behavior invoked by some event outside the actor’s control? </li></ul>
  6. 6. Activity diagram for Access camera surveillance—display camera views function
  7. 7. Swimlane diagram
  8. 8. Flow-Oriented Modeling
  9. 9. Guidelines <ul><li>Depict the system as single bubble in level 0. </li></ul><ul><li>Carefully note primary input and output. </li></ul><ul><li>Refine by isolating candidate processes and their associated data objects and data stores. </li></ul><ul><li>Label all elements with meaningful names. </li></ul><ul><li>Maintain information conformity between levels. </li></ul><ul><li>Refine one bubble at a time. </li></ul>
  10. 10. Data Flow Diagram Context-level DFD for SafeHome security function
  11. 11. Grammatical Parse <ul><li>The SafeHome security function enables the homeowner to configure the security system when it is installed , monitors all sensors connected to the security system, and interacts with the homeowner through the Internet , a PC , or a control panel . </li></ul><ul><li>During installation , the SafeHome PC is used to program and configure the system. Each sensor is assigned a number and type , a master password is programmed for arming and disarming the system, and telephone number(s) are input for dialing when a sensor event occurs. </li></ul><ul><li>When a sensor event is recognized , the software invokes an audible alarm attached to the system. After a delay time that is specified by the homeowner during system configuration activities, the software dials a telephone number of a monitoring service , provides information about the location , reporting the nature of the event that has been detected . The telephone number will be redialed every 20 seconds until a telephone connection is obtained . </li></ul><ul><li>The homeowner receives security information via a control panel, the PC, or a browser, collectively called an interface . The interface displays prompting messages and system status information on the control panel, the PC, or the browser window. Homeowner interaction takes the following form… </li></ul>
  12. 13. Level 2 DFD that refines the monitor sensors process
  13. 14. Control Flow Diagram State diagram for SafeHome security function
  14. 15. Class-Based Modeling
  15. 16. Identifying Analysis Classes <ul><li>External entities that produce or consume information </li></ul><ul><li>Things that are part of the information domain </li></ul><ul><li>Occurrences or events </li></ul><ul><li>Roles played by people who interact with the system </li></ul><ul><li>Organizational units </li></ul><ul><li>Places that establish context </li></ul><ul><li>Structures that define a class of objects </li></ul>
  16. 17. Class Selection Criteria <ul><li>Retained information </li></ul><ul><li>Needed services </li></ul><ul><li>Multiple attributes </li></ul><ul><li>Common attributes </li></ul><ul><li>Common operations </li></ul><ul><li>Essential requirements </li></ul>
  17. 18. Identifying Classes reject: 1, 2 fail organizational unit; ee monitoring service accept: 1 fails external entity audible alarm accept occurrence sensor event reject: 3 fails thing telephone number reject: 3 fails thing master password reject: 3 fails not objects, attributes number, type accept thing (security) system reject occurrence installation accept external entity control panel accept external entity sensor reject: 1, 2 fail role; external entity homeowner Accept / Reject Classification Potential class
  18. 19. Class Diagram Class diagram for the system class
  19. 20. Class Diagram Class diagram for FloorPlan
  20. 21. CRC Modeling A CRC model index card for FloorPlan class
  21. 22. Class Responsibilities <ul><li>Distribute system intelligence across classes. </li></ul><ul><li>State each responsibility as generally as possible. </li></ul><ul><li>Put information and the behavior related to it in the same class. </li></ul><ul><li>Localize information about one thing rather than distributing it across multiple classes. </li></ul><ul><li>Share responsibilities among related classes, when appropriate. </li></ul>
  22. 23. Class Collaborations <ul><li>Relationships between classes: </li></ul><ul><ul><li>is-part-of — used when classes are part of an aggregate class. </li></ul></ul><ul><ul><li>has-knowledge-of — used when one class must acquire information from another class. </li></ul></ul><ul><ul><li>depends-on — used in all other cases. </li></ul></ul>
  23. 24. Class Diagrams Top: Multiplicity Bottom: Dependencies
  24. 25. Behavioral Modeling
  25. 26. Identifying Events <ul><li>A use-case is examined for points of information exchange . </li></ul><ul><li>The homeowner uses the keypad to key in a four-digit password . The password is compared with the valid password stored in the system . If the password in incorrect, the control panel will beep once and reset itself for additional input. If the password is correct, the control panel awaits further action. </li></ul>
  26. 27. State Diagram State diagram for the ControlPanel class
  27. 28. Sequence Diagram Sequence diagram (partial) for the SafeHome security function

×