1 / 18

NASA OSMA SAS '03

This presentation explores Use Case Quality Attributes, emphasizing the importance of correct, complete, and testable system requirements. The Unified Modeling Language (UML) and Use Cases are discussed, with a focus on the role they play in system development. Research initiatives, validating use cases, risk indicators, and use case metrics are also covered, providing insights into enhancing software quality. Learn about the Requirements Use Case Tool and its significance in managing understandable, buildable, and verifiable functional requirements for large projects.

rubenc
Download Presentation

NASA OSMA SAS '03

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. NASA OSMA SAS '03 Use Case Quality Attributes James R. McCoy SRS Technologies Software Assurance Technology Center http://satc.gsfc.nasa.gov james.mccoy@gsfc.nasa.gov Use Case Quality Attributes

  2. Overview • Introduction to the UML & Use Cases • Research Initiative • Validating Use Cases, Risk Indicators & Use Case Metrics • Requirements Use case Tool • Summary Use Case Quality Attributes

  3. Introduction • System requirements are the foundation upon which an entire system is built • Correct, complete & testable requirements are critical; success of a project is directly affected by the quality of requirements • Traditional vehicle for capturing & communicating requirements is the Software Requirements Specification (SRS) • Use cases provide a more user-centered approach for specifying requirements Use Case Quality Attributes

  4. Unified Modeling Language • The Unified Modeling Language (UML) is the industry-standard language for specifying, visualizing, constructing & documenting artifacts of complex software systems • The UML: • Is a language • Applies to modeling and systems • Is based on the object-oriented paradigm Use Case Quality Attributes

  5. Use Cases • At the heart of the UML are use cases • The use case diagram is the driver for the eight remaining diagrams that compose the UML • Use cases form the basis of how the system interacts with the outside world (users, other systems, etc.) Use Case Quality Attributes

  6. Use Case Model • Use cases were designed to capture, via a combination of structured text & graphics, the functional requirements of a system • Use cases are usually described in a textual document that accompanies a use case diagram; the combination of these use case diagrams & their supporting documentation is known as a use case model Use Case Quality Attributes

  7. Use Case Model • Use case models: • Illustrate a system’s intended functions (use cases), its surroundings (actors) & the relationships between them (use case diagrams) • Are used to communicate • Provide a vehicle used by customers & developers to discuss the system’s functionality Use Case Quality Attributes

  8. UML Use Case Diagram Fowler, M., & Scott, K., UML Distilled: Applying the Standard Object Modeling Language, Addison-Wesley, 1997. Use Case Quality Attributes

  9. Research Initiative • Extensive research has been conducted on expressing software requirements in natural language & has resulted in the development of a tool for evaluating them • Initiative is to enhance & refine a use case tool that provides a more methodological basis for specifying & managing understandable, buildable & verifiable functional requirements—especially for large, object-oriented projects Use Case Quality Attributes

  10. Research Goals • Identify the attributes of quality use cases • Level of validity • Risk indicators • Metrics • Develop software tool for analyzing use cases based on these characteristics Use Case Quality Attributes

  11. Validating Use Cases • Is the use case complete? • Is the actor’s goal going to be met? • Are there any changes that would simplify the process depicted in the use case? • Are there any additional goals that are not addressed? • Are there any additional actors that are not represented? Use Case Quality Attributes

  12. Risk Indicators • Optionsgive the developer latitude in satisfying the specification statements that contain them. • Can • May • Optionally Use Case Quality Attributes

  13. Risk Indicators • Incompletes provide a basis for expanding a requirement or adding future requirements. • TBD • TBS • TBE • TBC • TBR • Not defined • Not determined • But not limited to • As a minimum Use Case Quality Attributes

  14. Risk Indicators • Weak phrases are clauses that are apt to cause uncertainty and leave room for multiple interpretations. • Adequate • As appropriate • Be able to • Be capable of • Capability of • Capability to • Effective • As required • Normal • Provided for • Timely • Easy to Use Case Quality Attributes

  15. Use Case Metrics • Ambiguity= # Weak Phrases + # Options • Completeness = # Incompletes • Volatility= # Changes / # Requirements • Traceability = # Use Cases Traced to Test Cases Use Case Quality Attributes

  16. Requirements Use case Tool • The Requirements Use case Tool (RUT) provides assistance to managers, customers & developers in assessing the quality of use cases • In addition, RUT serves as a database repository for requirements developed as use cases • RUT is a valuable resource for collecting, evaluating & maintaining software requirements gathered as use cases Use Case Quality Attributes

  17. RUT Features • Web-based; multi-user • Open source; multi-platform • Use case repository • Standard use case template • Integration with Rational Rose • Configuration management • Risk analysis • Metrics • Test case generation & traceability Use Case Quality Attributes

  18. Summary • Extensive research has been conducted on writing quality software requirements in a natural language, resulting in guidelines for writing effective requirements & a tool for evaluating them • Current software development practices provide a more methodological basis for specifying & managing quality requirements • The goal of the Requirements Use case Tool is to provide a clear evaluation technique for software requirements written as use cases • Future work is needed to introduce this tool to NASA projects Use Case Quality Attributes

More Related