1 / 38

Real-time requirements

Real-time requirements. Intro to Software Engineering Software Development Process Models Formal methods in software specification Structured Analysis Object-oriented analysis and the UML Use Cases. Object-oriented analysis– Use Case. Use Case diagram of inertial measurement system. .

christina
Download Presentation

Real-time requirements

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. Real-time requirements • Intro to Software Engineering • Software Development Process Models • Formal methods in software specification • Structured Analysis • Object-oriented analysis and the UML • Use Cases

  2. Object-oriented analysis– Use Case Use Case diagram of inertial measurement system.

  3. Context diagram Inertial Measurement System

  4. Example: Library Use Case Diagram A computerized library system for a university keeps track of all books and periodicals in the library and their check-out status. Checkout and return are automated through a bar code reader (an external device). The library system also interfaces with an external relational database which stores information about the library users (students, faculty, and staff), including whether they have any library items checked out. . Library users can access the catalog and recall books and periodicals. Library employees have the same access as well as additional capabilities (e.g., listing the status of an item). (Note: the library catalog is part of the library computer system so it is not shown as an actor.)

  5. Use Case for Employee Login • Employee initiates use case by entering user name • System prompts for password • If password is valid, employee is logged on and now has access to employee commands • Starting and Ending Conditions? • Exceptions? e.g., cannot find the employee login

  6. Use Case for Check book availability • User/Employee initiates use case by selecting the check book availability option • System prompts for choice of search by title, author, or call number • User makes selection and enters title, author or call number • System performs search through the library catalog database • If a match is found, system displays item status (not checked out, checked out and due date, overdue) Starting and Ending Conditions? Exceptions?

  7. <<Include>>: Functional Decomposition • Problem: • A function in the original problem statement is too complex to be solvable immediately • Solution: • Describe the function as the aggregation of a set of simpler functions. The associated use case is decomposed into smaller use cases CreateDocument <<include>> <<include>> <<include>> Check OCR Scan

  8. <<Include>>: Reuse of Existing Functionality • Problem: • How can we reuseexisting functions? • Solution: • The include association (“A delegates to B”) • Note: The base case cannot exist alone. It is always called with the supplier use case <<include>> OpenIncident Base Use Case ViewMap <<include>> Supplier Use Case AllocateResources

  9. Home Automation example – factor out common functionality

  10. Another Home Automation example – factor out common functionality

  11. Base Use Case B Help FieldOfficer A <<extend>> ReportEmergency <<Extend>> Association for Use Cases • Problem: • The functionality in the original problem statement needs to be extended. • Solution: • An extend association: B is an extension of A. • Note: In an extend association, the base use case can be executed without the use case extension

  12. Home Automation example

  13. Generalization association in use cases • Problem: • You have common behavior among use cases and want to factor this out. • Solution: • The generalization association factors out common behavior. CheckPassword Parent Case Child Use Case ValidateUser CheckFingerprint

  14. Example using <<extend>>

  15. Simplified with an abstract use case

  16. Anesthesia Machine Use Cases

  17. Decomposition of the Deliver Anesthesia Use Case

  18. Use Case Activity Breakdown

  19. Ventilator Use Cases

  20. User Interface Use Cases

  21. Vaporizer Use Cases

  22. SPO2 Monitor Use Cases

  23. CO2 Monitor Use Cases

  24. Agent Monitor Use Cases

  25. Breathing Circuit Use Cases

  26. Bad Use Case Modeling

  27. Adding a Textural Characterization

  28. Use Case Relations

  29. Relating Text and Scenarios

  30. Use Case Sequence Diagram

  31. Deliver Anesthesia Collaboration

  32. Elaborated Scenario Part 1

  33. Elaborated Scenario Part 2

  34. Alarm On Critical Event Statechart

  35. Statecharts and Sequence Diagrams

  36. Display Waveform Activity Diagram

  37. Use Case Timing Diagram

  38. Best practices in specifying requirements • Bad: • The systems shall be completely reliable. • The system shall be modular. • The system shall be maintainable. • The system will be fast. • Errors shall be less than 99%. • Better: • Response times for all level one actions will be less than 100 ms. • The cyclomatic complexity of each module shall be in the range or 10 to 40. • 95% of the transactions shall be processed in less than 1 s. • An operator shall not have to wait for the transaction to complete. • MTBF shall be 100 hours of continuous operation.

More Related