Advance Software Engineering                                                           LAB # 01


                                          LAB # 01

OBJECTIVE:
   •   Introduction To Unified Modeling Language


What is UML?

• UML = Unified Modeling Language
• A standard language for specifying, visualizing, constructing, and documenting software
 artifacts.
• Standardized by Object Management Group (OMG).
• Uses mostly graphical notations.
• Helps project teams communicate, explore potential designs, and validate the requirements and
 architectural design of the software system


Goals of UML

• Provide users with a ready-to-use, expressive visual modeling language so they can develop
 and exchange meaningful models.
• Provide extensibility and specialization mechanisms to extend the core concepts.
• Be independent of particular programming languages and development processes.
• Provide a formal basis for understanding the modeling language.
• Encourage the growth of the OO tools market.
• Support higher-level development concepts such as collaborations, frameworks, patterns and
 components
• Integrate best practices.


Why do we model?

• Unified Modeling Language
• Provide structure for problem solving
• Furnish abstractions to manage complexity
• Experiment to explore multiple solutions



                                                                                              1
Advance Software Engineering                                                         LAB # 01


Why do we model graphically

• Graphics reveal content, structure, …
• 1 bitmap = 1 megaword


History of UML

• OO modeling languages appeared in 1980s as various methodologists experimented with
 different approaches to object-oriented analysis and design.
• The number of OO modeling languages exploded during early 1990s .
• Many users had trouble finding complete satisfaction in any one modeling language, fueling
 the "method wars”.
• By the mid-1990s, revisions of these methods began to appear that incorporated each other’s
 techniques.


Our Focus: Unified Modeling Language

• Language = syntax + semantics
   – Syntax = rules by which language elements (e.g., words) are assembled into expressions
      (e.g., phrases, clauses).
   – Semantics = rules by which syntactic expressions are assigned meanings.
• The basic building blocks (syntax) of UML are:
   – Model elements (classes, interfaces, components, use cases)
   – Relationships (associations, generalization, dependencies)
   – Diagrams (class diagrams, use case diagrams, interaction diagrams)
• Used to create large, complex structures

• Each UML diagram is designed to let developers and customers view a software system from a
 different perspective and in varying degrees of abstraction.




                                                                                           2

Lab 1

  • 1.
    Advance Software Engineering LAB # 01 LAB # 01 OBJECTIVE: • Introduction To Unified Modeling Language What is UML? • UML = Unified Modeling Language • A standard language for specifying, visualizing, constructing, and documenting software artifacts. • Standardized by Object Management Group (OMG). • Uses mostly graphical notations. • Helps project teams communicate, explore potential designs, and validate the requirements and architectural design of the software system Goals of UML • Provide users with a ready-to-use, expressive visual modeling language so they can develop and exchange meaningful models. • Provide extensibility and specialization mechanisms to extend the core concepts. • Be independent of particular programming languages and development processes. • Provide a formal basis for understanding the modeling language. • Encourage the growth of the OO tools market. • Support higher-level development concepts such as collaborations, frameworks, patterns and components • Integrate best practices. Why do we model? • Unified Modeling Language • Provide structure for problem solving • Furnish abstractions to manage complexity • Experiment to explore multiple solutions 1
  • 2.
    Advance Software Engineering LAB # 01 Why do we model graphically • Graphics reveal content, structure, … • 1 bitmap = 1 megaword History of UML • OO modeling languages appeared in 1980s as various methodologists experimented with different approaches to object-oriented analysis and design. • The number of OO modeling languages exploded during early 1990s . • Many users had trouble finding complete satisfaction in any one modeling language, fueling the "method wars”. • By the mid-1990s, revisions of these methods began to appear that incorporated each other’s techniques. Our Focus: Unified Modeling Language • Language = syntax + semantics – Syntax = rules by which language elements (e.g., words) are assembled into expressions (e.g., phrases, clauses). – Semantics = rules by which syntactic expressions are assigned meanings. • The basic building blocks (syntax) of UML are: – Model elements (classes, interfaces, components, use cases) – Relationships (associations, generalization, dependencies) – Diagrams (class diagrams, use case diagrams, interaction diagrams) • Used to create large, complex structures • Each UML diagram is designed to let developers and customers view a software system from a different perspective and in varying degrees of abstraction. 2