Introduction%20to%20Modeling - PowerPoint PPT Presentation

About This Presentation
Title:

Introduction%20to%20Modeling

Description:

Extracted from textbook: Object Oriented Modeling and Design with UML M. Blaha, J. Rumbaugh – PowerPoint PPT presentation

Number of Views:116
Avg rating:3.0/5.0
Slides: 16
Provided by: eduj60
Category:

less

Transcript and Presenter's Notes

Title: Introduction%20to%20Modeling


1
Introduction to Modeling
  • Extracted from textbook
  • Object Oriented Modeling and Design with UML
  • M. Blaha, J. Rumbaugh

2
What is a Model?
  • Software Modeling plays an important role in
    software engineering.
  • Current trends MDSE (Model Driven SE).
  • A model is an abstraction of something for the
    purpose of understanding it before building it.
    Because a model omits nonessential details, it is
    easier to manipulate than the original entity. (A
    model is an abstract, simplified or incomplete
    description/representation of a part of the real
    word)

3
Modeling
  • It is the process of creating models.
  • Modeling is often practiced in all engineering
    disciplines.
  • Modeling require a power of abstraction
  • Persons that cannot THINK ABSTRACTLY fail to
    learn modeling skills.

4
Abstraction
  • Selective examination of certain aspects of a
    problem or system.
  • Goal
  • Isolate those aspects that are important for some
    purpose and suppress those aspects that are not
    important essential versus details.
  • Abstraction must always be for some purpose.
  • Many different abstractions of the same system
    are possible depending on their purposes.

5
Abstraction
  • Abstractions are incomplete and inaccurate.
  • Dont search for absolute truth but for the
    adequacy for some purpose.
  • A good model captures the crucial aspects of a
    problem and ignore the rest.

6
Why Modeling?
  • Communication with customers
  • Products engineers/architects build models to
    show to customers.
  • Prototypes/Mock ups demonstration that imitate
    some of or all of the external behavior of a
    system

7
Why Modeling?
  • Reduction of complexity
  • The main reason for modeling is to deal with
    systems that are too complex to understand
    directly.
  • The human mind cope with only a small amount of
    information at one time.
  • Models reduce complexity by separating out a
    small number of important things to deal with at
    a time.

8
What to model?
  • Real World Modeling
  • Usage1 facilitate understanding of a problem in
    the real world without the intention of
    developing an application based on the model.
  • Example1 Business process reengineering
    (business improvement goal)
  • Example2 Requirement elicitation step (software
    development)
  • Usage2 Develop an application that simulates
    the real world.
  • Example Aircraft flight simulation
  • Ref Object oriented real-world modeling
    revisited Sadahiro Isoda

9
What to model?
  • Cyber Real World
  • Usage Develop an application that automates
    business in the real world
  • Examples
  • Automating University library
  • Automating Student Registration
  • Ref Object oriented real-world modeling
    revisited Sadahiro Isoda

10
Modeling in SE
  • Model-Driven Software Engineering (MDSE) based on
    the idea that SE life cycle phases produce and
    consume models.
  • Models produced during a given phase will be
    consumed and used in next phases.
  • Artifacts requirement models, analysis models,
    design models, testing models, implementation
    model (code).

11
Uses of Models in SE
  • Models as sketches Developers find it useful to
    sketch descriptions of requirements, design or
    deployment concepts on whiteboards or paper when
    discussing their ideas with other developers or
    customer representatives
  • Models as analysis artifacts Developers build
    analyzable models to check specified properties
    (e.g., consistency and satisfiability
    properties), to predict implementation qualities
    (e.g., performance), or to simulate implemented
    behavior
  • Models as the basis for code generation or
    synthesis of software artifacts Models can be
    built for the purpose of generating
    implementations, test cases, deployment or
    software configuration scripts, or other software
    artifacts.

12
Modeling in SE
  • It is useful to model a system from different but
    related viewpoints.
  • Each viewpoint captures important aspects of the
    system.
  • A combination of these viewpoints must capture a
    complete description of the system.
  • Each model is intended to describe one
    aspect/viewpoint of a system but contains
    references to the other models.

13
Which viewpoints to model?
  • Functional/process aspect.
  • Structural/Data aspect
  • Behavioral/Dynamic aspect
  • Interaction/collaboration aspect

14
How to express Models?
  • Need of modeling languages to express models.
  • Modeling languages should be simple enough to be
    comprehensible and usable by modelers.
  • Modeling languages should be expressive and
    abstract.

15
Typology of modeling languages
  • Various criteria may be used to make a
    classification of modeling languages
  • Textual versus diagram based syntax.
  • General purpose or Domain based modeling
    languages
Write a Comment
User Comments (0)
About PowerShow.com