Introduction to the Unified Modeling Language (UML)
Introduction to the Unified Modeling Language (UML)
What is the UML
The UML is a family of graphical notations, backed by single meta-model, that help in describing and designing software systems, particularly software systems built using the object-oriented (OO) style.
— Martin Fowler
• Object Management Group standard — Version 2.0
• Set of diagrams which are formally defined (meta-model)
• Targeted at OO A/D
Ways of Using UML
• Sketch
• Blueprint
• Programming Language
UML as Sketch
• Help informally communicate some aspects of a system — explorative
• Selectivity — only select important issues
• Short sessions: minutes, hours depending on scope
• Collaborative — focus on communication not completeness or correctness
• Forward engineering — sketch UML diagrams before you write code
• Reverse engineering — builds a UML diagram from existing code
UML as Blueprint
• Completeness — definitive
• Forward engineering — Waterfall approach incompatible with agile, iterative methods
• Reverse engineering — useful as documentation, or graphic window into the code
• Round-trip CASE tools
• Some code generation
UML as Programming Language
• UML compiled into executable code
• Early versions of C++ gave C code
• iLogix STATEMATE
• Model Driven Architecture (MDA) — standard approach to UMLPL
• An alternative abstraction........
Introduction to the Unified Modeling Language (UML)
What is the UML
The UML is a family of graphical notations, backed by single meta-model, that help in describing and designing software systems, particularly software systems built using the object-oriented (OO) style.
— Martin Fowler
• Object Management Group standard — Version 2.0
• Set of diagrams which are formally defined (meta-model)
• Targeted at OO A/D
Ways of Using UML
• Sketch
• Blueprint
• Programming Language
UML as Sketch
• Help informally communicate some aspects of a system — explorative
• Selectivity — only select important issues
• Short sessions: minutes, hours depending on scope
• Collaborative — focus on communication not completeness or correctness
• Forward engineering — sketch UML diagrams before you write code
• Reverse engineering — builds a UML diagram from existing code
UML as Blueprint
• Completeness — definitive
• Forward engineering — Waterfall approach incompatible with agile, iterative methods
• Reverse engineering — useful as documentation, or graphic window into the code
• Round-trip CASE tools
• Some code generation
UML as Programming Language
• UML compiled into executable code
• Early versions of C++ gave C code
• iLogix STATEMATE
• Model Driven Architecture (MDA) — standard approach to UMLPL
• An alternative abstraction........
Introduction to the Unified Modeling Language (UML)
0 commentaires: