CS 425/625 Software Engineering System Models - PowerPoint PPT Presentation

About This Presentation
Title:

CS 425/625 Software Engineering System Models

Description:

System models are used to specify the system to be built in a more detailed way ... In practice, various models, not bound to methods, could be combined to describe ... – PowerPoint PPT presentation

Number of Views:180
Avg rating:3.0/5.0
Slides: 30
Provided by: sergium
Learn more at: https://www.cse.unr.edu
Category:

less

Transcript and Presenter's Notes

Title: CS 425/625 Software Engineering System Models


1
CS 425/625 Software Engineering System Models
  • Based on Chapter 7 of the textbook Somm00 Ian
    Sommerville,
  • Software Engineering, 6th Ed., Addison-Wesley,
    2000 and on
  • Ch7 PowerPoint presentation available at the
    books web-site
  • www.comp.lancs.ac.uk/computing/resources/IanS/SE6/
    Slides/index.html
  • September 29, 2003

2
Outline
  • System Models
  • Contextual Models
  • Behavioral Models
  • Data Models
  • Object Models

3
Introduction.
  • System models are used to specify the system to
    be built in a more detailed way
  • Typically, system models are graphical
    descriptions of the system, its services and its
    constraints
  • Various perspectives for system modeling
  • Context
  • Behavior
  • Structure

4
.Introduction
  • The production of system models is usually guided
    by methods, e.g., SSA (Structured Systems
    Analysis), SADT (Structured Analysis and Design
    Technique), OMT (Object Modeling Technique), etc.
  • In practice, various models, not bound to
    methods, could be combined to describe the system
    and its requirements
  • Main types of system models
  • Data Processing Models
  • Composition Models
  • Architectural Models
  • Classification Models
  • Stimulus-Response Models

5
Context Models
  • Contextual models show the system and its
    environment
  • Ideally, the boundaries between the system and
    its environment are identified clearly
  • Dependencies between the computer-based system
    and systems from the environment are highlighted

6
.Context Models..
  • Various models can be used for context modeling
  • Very simple, high level architectural models show
    the system and its connections with environmental
    components
  • High level process models indicate main process
    activities
  • High-level data-flow diagrams depict data
    transformations and data transfers

7
..Context Models.
  • Example of architectural model for system context
    specification an ATM system and its environment
    Fig. 7.1, Somm00

8
Context Models
  • Example of process model for system context
    specification an equipment procurement system
    Fig. 7.2, Somm00

9
Behavioral Models.
  • Behavioral models specify the overall behavior of
    the system
  • Data-flow models (or data-flow diagrams, DFD) are
    suitable for data-driven systems
  • State machine models (or stimulus-response
    models) are appropriate for event-driven systems

10
.Behavioral Models...
  • Data-flow models show the system in terms of
  • Data stores
  • graphical representation rectangles
  • Data transformations (data processing operations)
  • graphical representation rounded rectangles
  • Data movements (data transfers)
  • graphical representation directed lines

11
..Behavioral Models..
  • State machine models describe system behavior
    using two main modeling elements
  • States
  • represented using rounded rectangles
  • Transitions
  • shown as directed links between states

12
Behavioral Models....
  • A DFD example an order processing system Fig.
    7.3, Somm00

13
.Behavioral Models
  • State machine diagrams depict the behavior of the
    system in terms of responses to events
  • Real-time systems are essentially event-driven
    systems
  • The system is assumed to be in one of its
    possible states at any given moment of time. A
    transition to another state is triggered by the
    occurrence of an event
  • David Harels statecharts are included in the UML
    (Unified Modeling Language) DFDs are not part of
    UML

14
..Behavioral Models..
  • Example of state machine diagram A microwave
    oven controller Fig. 7.5, Somm00

15
...Behavioral Models.
  • The statecharts notation used in UML allows
  • Specification of composite states (states that
    have sub-states), thus supporting model
    decomposition
  • Description of actions performed while in a
    state
  • Entry actions
  • State actions (activities)
  • Exit actions
  • Description of transitions
  • Events that trigger the transition
  • Conditions under which transitions occur
  • Actions on transitions, if any

16
....Behavioral Models
  • Example of composite state microwave oven Fig.
    7.7, Somm00

17
Semantic Data Models
  • Data models describe the logical structure of
    data processed by the system
  • The Entity-Relationship-Attribute model, ERA
    (also known as Entity-Relationship model, ER)
    shows
  • Entities in the system
  • Relationships between entities
  • Attributes of entities and relationships
  • Cardinality constraints (e.g., one or many)

18
.Semantic Data Models..
  • Data dictionaries are repositories of information
    pertaining to the elements of the system models.
    They are useful to manage the namespace of the
    system models as well as to supply a
    cross-reference tool for analysis, design,
    implementation, and evolution.

19
..Semantic Data Models.
  • An ERA example a software design description
    Fig. 7.8, Somm00

20
Semantic Data Models
  • Data dictionary examples of data entries Fig.
    7.9, Somm00

21
Object Models..
  • Objected-oriented modeling is centered around the
    concepts of object and class
  • An object is an entity described in terms of
    attributes (data) and operations (functionality)
  • A class is a template for objects that have
    similar features (attributes and operations).
  • More exactly, the objects that belong to the same
    class have the same structure and behavior, e.g.,
    davidsAlarmClock is an object (instantiation) of
    the class AlarmClock

22
.Object Models.
  • The distinguishing principles of object-oriented
    (OO) technology are
  • Encapsulation
  • Inheritance
  • Polymorphism

23
..Object Models
  • Objects provide more natural ways to model
    real-life entities
  • Both structure (class diagrams) and behavior
    (e.g., interaction diagrams and state diagrams)
    can be described
  • A class diagram shows
  • Classes
  • Relationships between classes
  • Constraints
  • Annotations

24
Object Models..
  • The value of OO comes from
  • Greater modeling power
  • Increased reusability and extensibility
  • Improved control of complexity

25
.Object Models.
  • Example of class hierarchy a library system
    Fig. 7.10, Somm00

26
..Object Models
  • Another example of class hierarchy Library
    users Fig. 7.11, Somm00

27
Object Models..
  • Example of multiple inheritance Fig. 7.12,
    Somm00

28
.Object Models.
  • Example of class structure with aggregation Fig.
    7.13, Somm00

29
..Object Models
  • Example of sequence diagram Fig. 7.14, Somm00
Write a Comment
User Comments (0)
About PowerShow.com