110 likes | 153 Views
Learn the essentials of Unified Modeling Language (UML) for effectively visualizing, specifying, and documenting software systems. Explore the building blocks, diagrams, and benefits of modeling complex software. Ideal for software engineers and construction professionals.
E N D
Software Construction Engr. Arta Iftikhar Engr. Kanwal Yousaf
Contents • Why model ? • What is UML ? • Building Blocks of the UML • Diagrams
Why Model? • A model is a simplified representation of a complex reality. • Complex systems and software cannot be understood without properly modeling them. • Today, software are getting complex and consequently we need to understand them through modeling. • Analyse the problem-domain • simplify reality • capture requirements • visualize the system • specify the structure and/or behaviour of the system. • Design the solution • document the solution - in terms of its structure, behavior, etc.
What is UML? • UML is a “Visual Modeling Language’ that enables system builders to create blueprints that capture their vision in a standard, easy to understand way, and provide a mechanism to effectively share and communicate these visions with others. [reference: UML 24 hours]
More on UML... UML is a modeling language for visualising, specifying, constructing and documenting the artifacts of software systems. Visualising- a picture is worth a thousand words; a graphical notation articulates and unambiguously communicates the overall view of the system (problem-domain).
More on UML... Specifying - UML provides the means to model precisely, unambiguously and completely, the system in question. Constructing - models built with UML have a “design” dimension to it; these are language independent and can be implemented in any programming language.
More on UML... Documenting - every software project involves a lot of documentation - from the inception phase to the deliverables. UML provides the notations for documenting some of these artifacts Documentation is (among others) for: • Requirements • Design • Tests
Building Blocks of UML • Things • Relationships • Diagrams
UML Building Blocks Things Relationships Diagrams • Structural • Behavioral • Class Diagram • Activity Diagram • Use Case Diagram • Sequence Diagram • Deployment Diagram etc. • Dependency • Association • Generalization • Realization
Diagrams The graphical presentation of the model. Represented as a connected graph - vertices (things) connected by arcs (relationships). UML includes nine diagrams - each capturing a different dimension of a software-system architecture. • State chart Diagram • Activity Diagram • Component Diagram • Deployment Diagram • Class Diagram • Object Diagram • Use Case Diagram • Sequence Diagram • Collaboration Diagram