O slideshow foi denunciado.

Introduction to the Unified Modeling Language (UML)

This Lesson covers the following topics :
Exploring the Benefits of Modeling Software
What Is a Model ?
Why Model software ?
OOSD as Model Transformation
Defining the UML
UML Elements
UML Diagrams
UML Diagrams Categories

  • Entre para ver os comentários

Introduction to the Unified Modeling Language (UML)

  1. 1. Introduction to the Unified Modeling Language (UML) By Eng Marwa Ali Eissa
  2. 2. Outline  Exploring the Benefits of Modeling Software  What Is a Model ?  Why Model software ?  OOSD as Model Transformation  Defining the UML  UML Elements  UML Diagrams  UML Diagrams Categories  UML CASE Tools
  3. 3. Exploring the Benefits of Modeling Software  The inception of every software project starts as an idea in someone's mind .  To construct a realization of that idea , the development team must create a series of conceptual models that transform the idea into a production system.
  4. 4. What Is a Model ?  Modeling is Describing a system at a high level of abstraction  “A model is a simplification of reality .”  A model is an abstract conceptualization of some entity (such as building) or a system (such as software).  Different views show the model from different perspectives
  5. 5. Why Model Software ?  We build models so that we can better understand the system we are developing . Specifically , modeling enables you to :  Visualize new or existing systems  Communicate decisions to the project stakeholders  Document the decisions made in each OOSD workflow  Specify the structure (static)and behavior(dynamic) elements of a system  Use a template for constructing the software solution
  6. 6. OOSD as Model Transformation Software development can be viewed as a series of transformations from the Stockholder's mental model to the actual code :
  7. 7. Defining the UML  UML stands for Unified Modeling Language  "A graphical language for visualizing, specifying, constructing, and documenting the artifacts of a software-intensive system .“  UML was created by Object Management Group (OMG) and UML 1.0 specification draft was proposed to the OMG in January 1997.  UML is a pictorial language used to make software blue prints.  UML provides notations for capturing the results of requirements analysis and design .UML does so by providing 14 different kinds of diagrams that are designed to describe the requirements , architecture, mechanisms and implementation of the system  Using the UML , a model is composed of :  Elements(things and relationships)  Diagrams (build from elements )
  8. 8. UML Elements
  9. 9. UML Diagrams
  10. 10. UML Diagrams Categories
  11. 11. UML CASE Tools  Many CASE Tools exist that implement the UML.  These CASE tools provide diagram-specific editors for the 13 diagram types of UML • Smart line routing—The editor will route the arrows and other lines to help ensure that the lines don’t cross each other. • Cross-referencing—The tools will automatically provide cross- references and hyperlinks between the various diagrams and other information that you enter into the tool. • Checking and testing—Most tools will check whether the various diagrams and the accompanying text are consistent with each other.
  12. 12. UML CASE Tools – Cont. • Advanced analysis— Some tools will analyze your diagrams and find conceptual and timing inconsistencies in them. These tests are more advanced than the basic checking and testing that almost all tools provide. • Document generation—Many tools automatically generate documentation from the specification. • Code generation—Many tools will generate Java, SQL, C++, Visual Basic or other source code for you. • Code reverse engineering—Some tools will read your source code and generate the UML diagrams from the code. • Group tools—Most of the tools provide assistance for groups to work together in developing complex systems. For example, the tool might include version management capabilities
  13. 13. UML CASE Tools – Cont.  List of UML tools http://en.wikipedia.org/wiki/List_of_UML_tools  Here is a list of some of the more common CASE Tools that are available. • Rational Rose • Visio • Paradigm Plus • Together/J from Object International • Visual UML • TAU from TeleLogic • Rhapsody from iLogix for Real Time Systems