1 / 31

ARCH-05 Application Prophecy UML 101

ARCH-05 Application Prophecy UML 101. Peter Varhol Principal Product Manager. Agenda. History and goals of UML Why learn UML Types of diagrams Diagramming in detail Applying use cases Summary and conclusions. History of UML. Diagrams became a part of software engineering practice

Download Presentation

ARCH-05 Application Prophecy UML 101

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. ARCH-05Application Prophecy UML 101 Peter Varhol Principal Product Manager

  2. Agenda • History and goals of UML • Why learn UML • Types of diagrams • Diagramming in detail • Applying use cases • Summary and conclusions ARCH-05 UML 101

  3. History of UML • Diagrams became a part of software engineering practice • Flow charts • Data flow diagrams • State transition diagrams • Modernlanguages and design emerge (1980s) • More formal and structuredmodeling techniques (early 1990s) • OMT, Booch, State Charts • UML • Booch + OMT + Others ARCH-05 UML 101

  4. The Result • Full view of application • Fundamental views • Architecture, behavior, collaboration • System/application states • State chart, activity diagram • Interactions and physical structures • Sequence, component, deployment • Why multiple diagrams? ARCH-05 UML 101

  5. Goals of UML • Provide a visual way of building and exchanging models • Provide ways to extend the core concepts • Be independent of programming language and development processes • Provide a formal basis for working with models • Support higher-level development concepts • Frameworks, patterns and components • Integrate best practices ARCH-05 UML 101

  6. Agenda Slide • History and goals of UML • Why learn UML • Types of diagrams • Diagramming in detail • Applying use cases • Summary and conclusions ARCH-05 UML 101

  7. Why Learn About Modeling? • Promotes better communication earlier • Within the development team • With customers • Enables architects and designers to think about solving the business problem • Implementation details don’t impede solution • Can produce software that better meets customers’ needs ARCH-05 UML 101

  8. Why Learn UML in Particular? • Becoming the de facto standard for modeling • Provides for formal modeling • Models can be proven consistent and correct • Models can be tested • Accurate code generation is possible • Can connect the business problem to the technology solution ARCH-05 UML 101

  9. Agenda Slide • History and goals of UML • Why learn UML • Types of diagrams • Diagramming in detail • Applying use cases • Summary and conclusions ARCH-05 UML 101

  10. Types of Diagrams • Use case diagrams • Shows the relationship among actors and cases • Class diagrams • Show class structure and contents • Interaction diagrams • Sequence diagrams • display the time sequence of component interactions • Collaboration diagrams • display components and their links to one another ARCH-05 UML 101

  11. Types of Diagrams • State diagrams • Shows the sequences of states an application goes through • Activity diagrams • Focuses on flows driven by processing • Physical diagrams • Component diagrams • shows the high level structure of the code itself • Deployment diagrams • shows the configuration of elements at runtime ARCH-05 UML 101

  12. Agenda Slide • History and goals of UML • Why learn UML • Types of diagrams • Diagramming in detail • Applying use cases • Summary and conclusions ARCH-05 UML 101

  13. Use Case Diagrams • Using use case diagrams • Visualizing functional requirements • How to draw use case diagrams • Actors and cases ARCH-05 UML 101

  14. Class Diagrams • Class diagrams – describe types of components in a system and their relationships • Consist of a name, attributes, and operations ARCH-05 UML 101

  15. Sequence diagrams and collaboration diagrams are used to demonstrate the interaction of components in a use case Sequence diagrams Components and messages/data Interaction Diagrams ARCH-05 UML 101

  16. Interaction Diagrams • Collaboration diagram • Relationships between components • Ordering of messages ARCH-05 UML 101

  17. State diagrams – notes changes of state in the system Adds state, activity, and transition State Diagrams ARCH-05 UML 101

  18. Activity diagrams Workflow and behavior Think of the old dataflow diagram Activity Diagrams ARCH-05 UML 101

  19. Physical Diagrams • Physical diagrams are used when development is complete • Descriptions of physical information • Component and deployment diagrams • Component diagrams • Dependencies among code components ARCH-05 UML 101

  20. Deployment diagram Contains nodes and connections The two diagrams are often combined Physical Diagrams ARCH-05 UML 101

  21. Common Questions on UML • Why multiple diagram types? • Different views into the same application • Mostly orthogonal • Needed to represent very different systems • Are they all necessary? • Not for most applications • Concentrate on the ABCs • Architecture, Behavior, Collaboration ARCH-05 UML 101

  22. Agenda Slide • History and goals of UML • Why learn UML • Types of diagrams • Diagramming in detail • Applying use cases • Summary and conclusions ARCH-05 UML 101

  23. Always start with your use cases Help you determine what to build Establish effective communication with users An auto dealership application Applying UML ARCH-05 UML 101

  24. Define the Architecture • Class diagrams – How will the application be structured? • The data structure of the auto customer ARCH-05 UML 101

  25. Look at Application Behavior • Activity diagram • Steps in requesting a test drive ARCH-05 UML 101

  26. Study Collaboration Between Components • Collaboration diagrams show interactions • How the auto dealer application components work together ARCH-05 UML 101

  27. Applying UML • You have enough to get started coding • Involve other diagrams when different views are needed • Don’t hesitate to modify or add a view if the situation requires • These are living diagrams • The purpose is to communicate ARCH-05 UML 101

  28. In Summary • Using UML helps create applications that achieve important business goals • Better meet customer needs • Higher quality application • Better communication between designers, developers, and customers ARCH-05 UML 101

  29. Questions? ARCH-05 UML 101

  30. Thank you for your time! ARCH-05 UML 101

  31. ARCH-05 UML 101

More Related