Table of Contents
Welcome
Roadmap
Motivation for Analysis and DesignWhy do we model?
Motivation for Analysis and Design The Model as an Abstraction of the Reality
What is the UML?Goals
What is the UML not?
History of UML
The Roots of UML
Competitors of UML
Acceptance of UMLThe UML Partner Consortium
Views supported by UML
Diagrams of UML
Ongoing ExampleCalendar Manager “CALENDARIUM” (1/2)
Ongoing ExampleCalendar Manager “CALENDARIUM” (2/2)
Process for Introducing UMLPhases (1/2)
Process for Introducing UML Phases (2/2)
Roadmap
Phase 1: Requirements Specification
Models of the Requirements Specification Phase
Results of theRequirements Specification Phase
Use Case ModelSystem, Actor and Use Case
Use Case Diagram CALENDARIUM
Actor (1/2)
Actor (2/2)
Use Case
Relationships Between Use Cases (1/4)
Relationships Between Use Cases (2/4)
Relationships Between Use Cases (3/4)
Relationships Between Use Cases (4/4)
Use Case Diagram CALENDARIUM (refined, 1/2)
Use Case Diagram CALENDARIUM (refined, 2/2)
Excursion (1/4)Semantics of the «include»-Relationship
Excursion (2/4)Semantics of the «extend»-Relationship
Excursion (3/4)Semantics of the Generalization Relationship
Excursion (4/4)Generalization Relationship between Actors
Partitioning Use Case DiagramsPackage (1/3)
Partitioning Use Case DiagramsPackage (2/3)
Partitioning Use Case DiagramsPackage (3/3)
Excursion (1/4)Description of Use Case
Excursion (2/4)Description of Use Case - “Insert Appointment”
Excursion (3/4)Description of Use Case - “Insert appointment”
Excursion (4/4)Description of Use Case - “Insert appointment”
Problem Domain Model
Class and Object
Characteristics of a Class
Abstract Class
Excursion (1/3)Identification of Classes
Excursion (2/3)Identification of Attributes
Excursion (3/3)Identification of Operations
Classes in Different Phases
Association (1/3)
Association (2/3)Multiplicity
Association (3/3)Role
Properties of Associations (1/2)
Properties of Associations (2/2)
Qualified Association
Association Class (1/2)
Association Class (2/2)Object Class ? Association Class
N-ary Association
Aggregation
Weak Aggregation
Composition
Aggregation Semantics Standard Classification
Composition vs. AssociationRules of Thumb
Generalization (1/2)
Generalization (2/2)
Generalization of Associations
Template Class
Interface
Example CALENDARIUMInterface “SMTPServer”
Benefits of Interfaces
Interface Model
User Interface SpecificationExample (1/2 - Poor Man’s Prototype)
User Interface SpecificationExample (2/2 - GUI Builder Prototype)
UML Extensibility Mechanisms (1/3)
UML Extensibility Mechanisms (2/3)Visualization of Stereotypes
UML Extensibility Mechanisms (3/3)Example of a Constraint
UML - Metamodel (1/3)
UML - Metamodel (2/3)Small Extract of the Metamodel
UML-Metamodel (3/3)Extensibility Mechanisms in the Metamodel
Overview
Phase 2: Analysis
Models of the Analysis Phase
Results of the Analysis Phase
Structure Model
Example CALENDARIUMExtract of the Class Diagram (1/2)
Example CALENDARIUMExtract of the Class Diagram (2/2)
Partitioning of the Class DiagramPackage
Dependencies between Packages
Kinds of Packages
Packages and Subsystems
Generalization
Example CALENDARIUMPackages
ExcursionEmployment of Packages
Behavioral Model
Interaction Diagrams
Interaction Diagrams Sequence and Collaboration Diagram
Interaction Diagrams Sequence Diagram
Interaction DiagramsSequence Diagram - Example
Interaction DiagramsCollaboration Diagram
Interaction Diagrams Collaboration Diagram - Example
Interaction Diagrams Relationships & Roles in Collaboration Diagrams
Interaction Diagrams Collaboration Diagram - Example
Interaction Diagrams Numbering of Messages
Interaction Diagrams Kinds of Control Flow
Example CALENDARIUMSequence Diagram “Insert Appointment” (1/2)
Example CALENDARIUMSequence Diagram “Insert Appointment” (2/2)
Statechart Diagram
Statechart Diagram Kinds of Events
Statechart Diagrams State
Statechart Diagram State Transition
Statechart Diagram Example
Statechart Diagram Refining Statechart Diagrams
Statechart Diagram Example “Appointment” (1/2)
Statechart Diagram Example “Appointment” (2/2)
Statechart Diagram History State (1/2)
Statechart Diagram History State (2/2)
Statechart Diagram Semantics of AND-Refinements
Statechart DiagramStubbed State
Statechart Diagram Synch State
Activity DiagramConcepts (1/5)
Activity DiagramConcepts (2/5)
Activity DiagramConcepts (3/5)
Activity DiagramConcepts (4/5)
Activity DiagramConcepts (5/5)
Activity DiagramExample (1/2)
Activity DiagramExample (2/2)
Roadmap
Phase 3: Design
Models of the Design Phase
Results of the Design Phase
DistributionDistribution Alternatives (1/2)
DistributionDistribution Alternatives (2/2)
DistributionComponent Diagram
Distribution Deployment Diagram (1/3)
DistributionDeployment Diagram (2/3)
DistributionDeployment Diagram (3/3)
DistributionMigration between Nodes
System DesignConcurrency
Concurrency in Sequence Diagrams (1/2)
Concurrency in Sequence Diagrams (2/2)
Concurrency in Collaboration Diagrams
System DesignReal-Time (1/2)
System DesignReal-Time (2/2)
System Design Persistence
Persistence Connecting to Relational DB - Alternative 1
Persistence Connecting to Relational DB - Alternative 2
Persistence Connecting to Relational DB - Alternative 3
PersistenceCoupling Alternatives (1/2)
Persistence Coupling Alternatives (2/2)
Example CALENDARIUMDB Access for “Insert Appointment”
Detailed DesignCompleting Classes
Detailed DesignRealizing Relationships
Detailed DesignPattern - Framework - Component
Patterns in UMLExample “Observer Pattern”
Schema of the Observer Pattern
Observer Pattern in CALENDARIUMUpdating the Calendar Views
Literature (1/4)
Literature (2/4)
Literature (3/4)
Literature (4/4)
UML Web addresses
|