440 likes | 701 Views
ARCH-2: UML 101 - From Design to Implementation using UML. Frank Beusenberg. Senior Technical Consultant. Theory vs. Practice. The difference between theory and practice is that, in theory, there is no difference between theory and practice. Shu-Ha-Ri. Shu - Learning Ha - Understanding
E N D
ARCH-2: UML 101 - From Design to Implementation using UML Frank Beusenberg Senior Technical Consultant
Theory vs. Practice The difference between theory and practice is that, in theory, there is no difference between theory and practice. ARCH-2: UML 101 - From Design to Implementation using UML
Shu-Ha-Ri Shu - Learning Ha - Understanding Ri - Be creative ARCH-2: UML 101 - From Design to Implementation using UML
Agenda • Introduction • UML 2.0 Diagrams • Use Case View • Logical View • Dynamic View • Implementation View • Demonstration • Q&A ARCH-2: UML 101 - From Design to Implementation using UML
Introduction What is UML? Facts • UML = Unified Modeling Language • First UML spec in 1997 • Current version = 2.0 • Object Management Group (OMG) • Graphical language • Object Oriented in nature • Has syntax rules • Can be extended using stereotypes • NOT a methodology! ARCH-2: UML 101 - From Design to Implementation using UML
Introduction What is UML? ARCH-2: UML 101 - From Design to Implementation using UML
Introduction Why model? • Manage complexity • Mitigate risk • Facilitate communication • Modeling provides ability to visualize entire systems, assess options and designs • Software has grown from do-it-yourself into highly complex systems • Software is integral part of business process, so has to be well planned • Software has become capital equipment that cannot just be removed/changed ARCH-2: UML 101 - From Design to Implementation using UML
Introduction Why use UML? • Specify, visualize, and document models of software systems • Current and new systems • Structure and design • Behavior and interaction • De facto standard (Tool Support!) • Unambiguous and consistent notation • Documentation ARCH-2: UML 101 - From Design to Implementation using UML
Agenda • Introduction • UML 2.0 Diagrams • Use Case View • Logical View • Dynamic View • Implementation View • Demonstration • Q&A ARCH-2: UML 101 - From Design to Implementation using UML
UML 2.0 Diagrams UML 2.0 Types of Diagrams – Behavior Diagrams ARCH-2: UML 101 - From Design to Implementation using UML
UML 2.0 Behavioral Diagrams UML Use Case Diagram • Describes the functional requirements of the system ARCH-2: UML 101 - From Design to Implementation using UML
UML 2.0 Behavioral Diagrams UML Activity Diagram • Describe procedural logic, business processes and workflow ARCH-2: UML 101 - From Design to Implementation using UML
UML 2.0 Behavioral Diagrams UML Sequence Diagram • Describes the message flow between objects in chronological order ARCH-2: UML 101 - From Design to Implementation using UML
UML 2.0 Diagrams UML 2.0 Types of Diagrams – Structure Diagrams ARCH-2: UML 101 - From Design to Implementation using UML
UML 2.0 Structural Diagrams UML Class Diagram • Captures logical structure of system ARCH-2: UML 101 - From Design to Implementation using UML
UML 2.0 Structural Diagrams UML Component Diagram • Illustrates the pieces of software that will make up a system. ARCH-2: UML 101 - From Design to Implementation using UML
UML 2.0 Structural Diagrams UML Deployment Diagram • Shows how and where the system will be deployed. ARCH-2: UML 101 - From Design to Implementation using UML
UML Modeling Logical View Implementation View Use Case View Dynamic View Deployment View ARCH-2: UML 101 - From Design to Implementation using UML
Model-Driven Architecture (MDA) ARCH-2: UML 101 - From Design to Implementation using UML
Agenda • Introduction • UML 2.0 Diagrams • Use Case View • Logical View • Dynamic View • Implementation View • Demonstration • Q&A ARCH-2: UML 101 - From Design to Implementation using UML
AutoPark - Use Case View Describing system functionality • Gathering requirements • Functional & non-functional requirements • Document functional requirements • UML Use Case Diagram • Use Case Description Documents • Identify actor(s) and association to use case • Create different levels of use cases (re-use!) ARCH-2: UML 101 - From Design to Implementation using UML
AutoPark - Use Case View Use Case Packages ARCH-2: UML 101 - From Design to Implementation using UML
AutoPark - Use Case View Use Case Diagram ARCH-2: UML 101 - From Design to Implementation using UML
AutoPark - Use Case View Describing use case scenario(s) • Scenario = Use Case Activity Flow • Basic Scenario • Alternate Scenario(s) • UML Activity Diagram • Describe what happens, now how! ARCH-2: UML 101 - From Design to Implementation using UML
AutoPark - Use Case View Activity Diagram ARCH-2: UML 101 - From Design to Implementation using UML
AutoPark - Use Case View Creating Test Scenarios • Identify paths in activity diagram • Create minimal test-scenarios (using each path once) • Create all possible test-scenarios (combining all paths to create unique scenarios) ARCH-2: UML 101 - From Design to Implementation using UML
Agenda • Introduction • UML 2.0 Diagrams • Use Case View • Logical View • Dynamic View • Implementation View • Demonstration • Q&A ARCH-2: UML 101 - From Design to Implementation using UML
AutoPark - Logical View Designing The System Structure • Identify entities/things used in use case • Identify attributes • Identify operations • Identify entity relations • Identify multiplicity • Create class diagram ARCH-2: UML 101 - From Design to Implementation using UML
AutoPark - Logical View Class Diagram ARCH-2: UML 101 - From Design to Implementation using UML
AutoPark - Logical View Patterns • "A pattern is a proven solution to a problem in a context." ARCH-2: UML 101 - From Design to Implementation using UML
Agenda • Introduction • UML 2.0 Diagrams • Requirements • Logical View • Dynamic View • Implementation View • Demonstration • Q&A ARCH-2: UML 101 - From Design to Implementation using UML
AutoPark - Dynamic View Describing Behavior • Identify objects involved • Identify interactions (messages) • Use public operations • Describe how things work ARCH-2: UML 101 - From Design to Implementation using UML
AutoPark - Dynamic View Describing Behavior ARCH-2: UML 101 - From Design to Implementation using UML
Agenda • Introduction • UML 2.0 Diagrams • Requirements • Logical View • Dynamic View • Implementation View • Demonstration • Q&A ARCH-2: UML 101 - From Design to Implementation using UML
AutoPark - Implementation View ARCH-2: UML 101 - From Design to Implementation using UML
Agenda • Introduction • UML 2.0 Diagrams • Requirements • Logical View • Dynamic View • Implementation View • Demonstration • Q&A ARCH-2: UML 101 - From Design to Implementation using UML
Demonstration ARCH-2: UML 101 - From Design to Implementation using UML
In Summary • Model & Design • Manage complexity • Minimize risk • Facilitate communication • Use UML • De facto standard • Unambiguous • Documentation ARCH-2: UML 101 - From Design to Implementation using UML
For More Information, go to… Relevant Exchange Sessions • ARCH-6: UML Modeling with Enterprise Architect ARCH-2: UML 101 - From Design to Implementation using UML
For More Information, go to… Relevant Web Resources • Object Management Group • http://www.omg.org • Hillside.net Patterns Library • http://hillside.net/patterns ARCH-2: UML 101 - From Design to Implementation using UML
For More Information, go to… Relevant Literature • Addison-Wesley Object Technology Series • UML Distilled Third Edition • Martin Fowler – ISBN 0-321-19368-7 • Use Case Driven Object Modeling with UML • Doug Rosenberg – ISBN 0-201-43289-7 • Developing Software with UML • Bernd Oestereich – ISBN 0-201-75603-X ARCH-2: UML 101 - From Design to Implementation using UML
Questions? ARCH-2: UML 101 - From Design to Implementation using UML
Thank you foryour time ARCH-2: UML 101 - From Design to Implementation using UML