1 / 32

Software Specification using the Unified Modeling Language

Software Specification using the Unified Modeling Language. By Diana Chan, Ben Craig, Watson Fagan, Wenping Li, Suhasini Varadhan. Sources. Object Management Group, Inc. OMG Unified Modeling Language Specification. Version 1.5, March 2003.

lilah
Download Presentation

Software Specification using the Unified Modeling Language

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. Software Specification using the Unified Modeling Language By Diana Chan, Ben Craig, Watson Fagan, Wenping Li, Suhasini Varadhan

  2. Sources • Object Management Group, Inc. OMG Unified Modeling Language Specification. Version 1.5, March 2003. • Borland, “Practical UML: A Hands-On Introduction for Developers”, http://bdn.borland.com/article/0,1410,31863,00.html (current 8 Sept. 2004). • Drexel University, “Object Oriented Analysis and Design Using UML”, http://www.pages.drexel.edu/~ap62/index.html (current 8 Sept. 2004).

  3. Introduction • What is the Unified Modeling Language (UML)? • Standard software modeling language developed in the mid-1990’s • Graphical language designed for expressing object-oriented (OO) designed software • UML provides a framework for communicating different aspects of an OO software system • Enhances communication between software designers • Leads to better planning, which in turn reduces the time & cost of the software development process

  4. UML Modeling Diagrams • The UML’s main core is made up of ten modeling diagrams [OMG] & [Drexel]: • Use case diagrams (Requirement Phase) • Class diagrams (Design Phase) • Sequence diagrams (Design Phase) • Collaboration diagrams (Design Phase) • State Chart diagrams (Design Phase) • Activity diagrams (Design Phase) • Object diagrams (Design Phase) • Package diagrams (Implementation Phase) • Component diagrams (Implementation Phase) • Deployment diagrams (Implementation Phase)

  5. Where the UML diagrams fit in

  6. Where the UML diagrams fit in

  7. Use Case • What is a Use Case? • An action that an actor performs with a system to achieve a particular goal [Drexel] • What is an actor? • Anything outside of the system that interacts with the system (e.g., a computer operator) • What is a system? • A system, subsystem, or class of the software being developed

  8. Identifying Use Cases • An Actor-based approach [Drexel]: • Identify actors • Identify the goals of each actor • Create Use Cases that satisfy each goal

  9. Identify the actors • Two actors for the missile system • Missile System Operator (Operator) • Missile System Commander (Commander) • Operator • Performs basic actions with the missile system • Commander • Interacts with the missile system when critical actions and authorizations are necessary

  10. Identify goals of actors • Goals of Operator • Needs access to the missile system • Needs the missile to be configured properly • Needs the missile to be working properly • Needs to be able to fire the missile • Goals of Commander • Needs access to the missile system • Needs to be able to give permission to launch the missile

  11. Complete the Use Cases • Recall how we defined a Use Case • An action that an actor performs with a system to achieve a particular goal [Drexel] • We have already identified the actors, system, & goals • Actors – operator, commander • System – pre-launch/launch sub-system • Goals – identified in previous stage • We need to come up with actions that satisfy each of the identified goals • Once we have the actions filled in, we have identified all the underlined properties and we have generated our Use Cases

  12. Operator Goals Needs access Needs missile configured properly Needs missile to work properly Needs to fire missile Commander Goals Needs access Needs to give permission for launch Satisfying Actions Logs into the system Inputs target info & waypoints Initiates diagnostic test Initiates launch operation Satisfying Actions Logs into the system Enters authorization input into the system Actions that satisfy each goal

  13. Use Case Diagrams (UCDs) • UCDs are beneficial to designers in several ways [Borland]: • Good for determining requirements • Improve communication with clients • Help generate test cases

  14. Use Case Diagram

  15. Use Case Diagram

  16. Use Case Diagram

  17. Expanding Use Case Diagrams • Three common features that may be added to UCDs to provide more information [Borland]: • Include relationships • Generalizations • Extend relationships

  18. Use Case Diagram

  19. Use Case Diagram

  20. Use Case Diagram

  21. Software Specification using the Unified Modeling Language By Diana Chan, Ben Craig, Watson Fagan, Wenping Li, Suhasini Varadhan

  22. Sources • Andy Pols, “Use Case Zone”, http://www.pols.co.uk/use-case-zone/index.html (current 13 Sept. 2004). • UseCases.org, “Templates Online”, http://alistair.cockburn.us/usecases/usecases.html (current 13 Sept. 2004).

More Related