Unified Modeling Part I Overview of UML - PowerPoint PPT Presentation

About This Presentation
Title:

Unified Modeling Part I Overview of UML

Description:

To communicate the desired structure and behavior of a system ... Flies. Idle (Parked) Taking. Off. Flying. Landing. High Level Statechart for Wright Flyer ... – PowerPoint PPT presentation

Number of Views:43
Avg rating:3.0/5.0
Slides: 28
Provided by: SCS6
Learn more at: http://www.cs.cmu.edu
Category:

less

Transcript and Presenter's Notes

Title: Unified Modeling Part I Overview of UML


1
Unified Modeling (Part I)Overview of UML
Modeling
  • Elizabeth Bigelow
  • Carnegie Mellon University

2
Todays Lecture
  • Modeling
  • Software Architecture
  • Introducing UML
  • Software Development Life Cycle

3
Modeling
  • Why model?
  • Kinds of models
  • Why is it important?
  • Principles of Modeling
  • Object-Oriented Modeling

4
Why Model?
  • To communicate the desired structure and behavior
    of a system
  • To visualize and control the architecture
  • To better understand a system and manage risk
  • To reason about alternatives

5
Kinds of Models
  • Iconic (example model airplane)
  • Analogic (example electrical network modeling
    the flow of liquid through pipes some
    properties, some structure)
  • Analytic (example set of differential equations
    claiming to describe how prices change)

6
What is a model?
  • A simplification of reality (abstraction)-- not
    the truth, the whole truth and nothing but the
    truth
  • At the same time, we choose to make certain parts
    rigorous

7
Why is Modeling Important?
  • We cannot visualize a system in its
    entirety--limits to the human ability to
    understand complexity

8
Principles of Modeling
  • Choice of model has profound influence on how a
    problem is attacked and how solution is shaped
  • Every model may be expressed at different levels
    of precision
  • The best models are connected to reality
  • No single model is sufficient

9
The hard part
  • Many models of the same thing are nearly
    independent (at least in preparation)
  • The hard part fitting them all together

10
Object Oriented Modeling
  • The primary strength of object oriented modeling
    is helping to pull the various models together
  • Traditional methods algorithmically based--tend
    to be brittle, hard to change
  • Does not mean that implementation must be object
    oriented, or even in an object oriented language

11
Software Architecture
  • Shaw Garlan
  • Software Architecture is the system level
    organization of components (units of code) and
    connectors (method invocation, RPC,
  • network protocols, etc.)
  • Another definition is that software architecture
    is the highest level of system organization in
    which one can discern or impose order.

12
Architectural Decisions
  • Organization of a software system
  • Selection of structural elements and their
    interfaces by which the system is composed
  • Behavior (collaboration among elements)
  • Composition into progressively larger subsystems
  • Architectural style (patterns, pipe-filter,
    functional decomposition, object-oriented, main
    line procedure call, event system)

13
Modeling a Systems Architecture
Design View
Implementation View
Use Case View
Process View
Deployment View
14
Design View
  • Classes, interfaces collaborations
  • Services that should be provided to end users
  • Static aspects captured in class diagrams and
    object diagrams
  • Dynamic aspects are captured in interaction
    diagrams, statecharts, and activity diagrams

15
Process View
  • Threads and processes that form a systems
    concurrency and synchronization mechanisms
  • Addresses performance, scalability and throughput
    of the system (focus on active classes)

16
Implementation View
  • Components and files used to assemble and realize
    the physical system
  • Diagrams component diagrams (static) and
    interaction diagrams, statechart diagrams and
    activity diagrams

17
Deployment View
  • Hardware topology on which the system executes
  • Distribution, deliver and installation of the
    parts that make up the physical system
  • Deployment diagrams (static) and interaction,
    statechart, and activity diagrams (dynamic)

18
Use Case View
  • Use cases describe the system as seen by its end
    users, analysts and testers
  • Static aspects are captured in use case diagrams
    and dynamic are captured in interaction diagrams,
    statechart diagrams and activity diagrams

19
UML Conceptual Model
  • Building blocks--things, relationships and
    diagrams
  • Rules on how the blocks may be put together
    (names, scope, visibility, integrity, execution)
  • Common mechanisms (specifications, adornments,
    common divisions, extensibility mechanisms)

20
Classes and Objects
  • A class is a set of objects that share the same
    attributes, relationships and semantics.
  • An object is an instance of a class--an entity
    with a well defined boundary and identity that
    encapsulates state and behavior

21
Key Abstractions
  • Structural Things (class, interface)
  • Behavioral Things (dynamic, interaction-messages,
    state machines)
  • Grouping Things (packages)
  • Annotational Things (comments, constraints)
  • Relationships (dependency, association,
    generalization, realization

22
Diagrams
  • Class diagrams
  • Object diagram
  • Use case diagram
  • Sequence diagram
  • Collaboration diagram
  • Statechart diagram
  • Activity diagram
  • Component diagram
  • Deployment diagram

23
Examples
Pilot
Wright Flyer

1

Flies
Name Weight
Take Off () Land () Turn()
Increase Throttle() Brake () Decrease Throttle()
1
1
1
1
2
2
Wing
Canard
Rudder
Engine
24
High Level Statechart for Wright Flyer
Taking Off
Flying
Idle (Parked)
Landing
25
ltltextendsgtgt
Wright Flyer
Starts Engine
Flexes Wing
Orville
Releases Catapult
Says Start Engine
Wilbur
USE CASE DIAGRAM
26
The Lifecycle According to Booch, Rumbaugh and
Jacobson
  • Inception
  • Business Modeling Requirements
  • Elaboration
  • Analysis, Design, Implementation, Test
  • Construction
  • Analysis, Design, Implementation, Test
  • Transition
  • Implementation, Test, Deployment

27
Next Time
  • Basic Structural Modeling
Write a Comment
User Comments (0)
About PowerShow.com