Software Modeling - PowerPoint PPT Presentation

1 / 18
About This Presentation
Title:

Software Modeling

Description:

1996 The 'three amigos' rename the Unified Method to the Unified Modeling Language ... Kings College London. Andrew Sutton. Kent State University. 18 ... – PowerPoint PPT presentation

Number of Views:50
Avg rating:3.0/5.0
Slides: 19
Provided by: jonathon3
Category:

less

Transcript and Presenter's Notes

Title: Software Modeling


1
Software Modeling
  • Andrew Sutton
  • ltSDMLgt
  • Department of Computer Science
  • Kent State University

2
Overview
  • What is software modeling?
  • Why do we model software?
  • Modeling past and present
  • Modeling in the future
  • Modeling Tools

3
Definition of Model
  • A schematic description of a system, theory, or
    phenomenon that accounts for its known or
    inferred properties and may be used for further
    study of its characteristics a model of
    generative grammar a model of an atom an
    economic modelwww.dictionary.com

4
Definition of Software Model
  • Software Model A description (textual or
    visual) of any aspect of a software system such
    as requirements, architecture, behavior,
    deployment the development process model, a
    requirements model, concurrency model.me
  • Software Modeling The practice of creating and
    analyzing software models.me again

5
Examples of Software Models
  • Development methodologies are models of how
    people collaborate to produce software.
  • A system design is a model of the structure of
    classes or modules in a system's implementation.
  • A flow chart visually models an algorithm's
    logic.
  • Pseudo code textually models an algorithm's logic.

6
Why Do We Model Software?
  • Several camps in modeling
  • Those who use models to communicate about
    software
  • Those who use models to validate software
  • Those who use models to generate software

7
A History of Software Modeling
  • Pseudo-code The orginal software model
  • Has origins in mathematics
  • Used to informally describe the behavior of
    algorithms using code-like constructs
  • Flowcharts mid 20th century?
  • Probably came from the business world
  • Used to visually model processes, business logic

8
Modeling State and Sequence
  • Statecharts mid 20th century?
  • Specification Description Language (SDL) 1976
  • Describes state machines, events and constraints
  • Used by telecom industry to validate WAN protocol
    stacks
  • Has both textual description language and visual
    representations

9
Modeling State and Sequence
  • Message Sequence Charts (MCS) mid 80's
  • Describes sequence of state changes and
    communications between objects/modules
  • State machines don't show time ordering
  • Extended MCS (EMCS) combines SDL, MCS for more
    accurate sequence modeling

10
Data Modeling
  • Various data models late 60's to early 80's
  • Network model, file system model, hierarchy model
  • Entity-Relation Model Chen, 1976
  • Formal definition of entities and relations
  • Supercedes previous data models
  • Entity-relation diagrams (ERD)

11
Object-Oriented Modeling
  • OO Modeling (in general) starts in late 70's
  • Typically associated with engineering
    methodologies
  • Descriptive (not formal) visual representations
    of classes in a software system
  • During the 80's number of OO modeling languages
    or techniques jumps from 10 to 50
  • Modeling Language
  • Set of elements used to pictorally represent ideas

12
Object Oriented Modeling
  • Three personalities
  • Grady Booch, Ivar Jacobson, James Rumbaugh
  • Introduce engineering methodology with software
    modeling
  • OMT Rumbaugh 1991
  • Provides notation for static and dynamic software
    modeling (classes and behaviors)

13
Object Oriented Modeling
  • OOSE Jacobson 1992
  • Describes visual notation for use cases
    (requirements modeling)
  • OOSE is a use case driven approach to
    engineering
  • The Booch Method Booch 1993
  • Combines different models for logical, physical,
    static and dynamic aspects of a system

14
The Origins of UML
  • 1994 Booch, Rumbaugh join Rational, anounce
    merging of methodologies at OOPSLA
  • 1995 Booch, Rumbaugh publish the Unified Method
    at OOPSLA, Jabson joins Rational
  • 1996 The three amigos rename the Unified
    Method to the Unified Modeling Language

15
The Standardization of UML
  • 1997 Rational proposes UML as a standard
    notation to the Object Management Group, UML 1.1
    adopted
  • 2003 OMG publishes UML 1.5, most recent
    stable version of UML
  • 2004 OMG publishes UML 2.0, the newest version
    of the standard

16
Who Is the OMG?
  • Object Management Group
  • Consortium of corporations collaborting on
    industry (not ISO) standards.
  • Responsible for CORBA
  • Who is involved?
  • See next slide

17
OMG Members
  • Borland
  • DaimlerChrysler
  • Computer Associates
  • EDS
  • Hewlitt Packard
  • Sun Microsystems
  • Fujitsu
  • Raytheon
  • Lockheed Martin
  • W3C
  • Boeing
  • GNOME
  • Motorola
  • NEC
  • Nokia
  • Gentelware
  • DARPA
  • Bank of America
  • France Telecom RD
  • GE Transportation
  • Honeywell
  • GlaxoSmithKline
  • Oracle
  • Sandia National Laboratories
  • NATO
  • Arizona State University
  • Ohio University
  • Johns Hopkins University
  • Syracuse University
  • Kings College London

18
Modeling Now and Later
  • Model Driven Architecture (MDA)
  • Generate software through models (code
    generation, generative programming)
  • Metamodeling
  • Define or extend modeling languages for different
    purposes
  • Model transformations, mappings, etc.
Write a Comment
User Comments (0)
About PowerShow.com