Modeling as a Design Technique Chapter 2 Part 1: Modeling Concepts Object-Oriented Modeling and Design Byung-Hyun Ha

Slides:



Advertisements
Similar presentations
ARCH-05 Application Prophecy UML 101 Peter Varhol Principal Product Manager.
Advertisements

A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
CS3773 Software Engineering Lecture 03 UML Use Cases.
Introduction To System Analysis and Design
Software Testing and Quality Assurance
Capturing the requirements
1 Introduction to Software Engineering Lecture 42 – Communication Skills.
Chapter 1 Software Development. Copyright © 2005 Pearson Addison-Wesley. All rights reserved. 1-2 Chapter Objectives Discuss the goals of software development.
Unified Modeling (Part I) Overview of UML & Modeling
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
© Copyright Eliyahu Brutman Programming Techniques Course.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix.
Itntroduction to UML, page 1 Introduction to UML.
Sharif University of Technology Session # 7.  Contents  Systems Analysis and Design  Planning the approach  Asking questions and collecting data 
Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Software Engineering CS B Prof. George Heineman.
Modelling information systems
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 8: Modelling Interactions and Behaviour.
SOFTWARE ENGINEERING BIT-8 APRIL, 16,2008 Introduction to UML.
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 A Discipline of Software Design.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix A Object-Oriented.
1 WXGC6102: Object-Oriented Techniques Modelling Concepts References: Chapter 5 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and Design.
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
SOFTWARE DESIGN.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4 th edition, Prentice Hall, Hans Van Vliet, Software.
1 Introduction to Software Engineering Lecture 1.
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Lecture 18: Object-Oriented Design – Interaction and State Diagrams Anita S. Malik Adapted from Schach (2004) Chapter 12.
Fall 2010 CS4310 Requirements Engineering A Brief Review of UML & OO Dr. Guoqiang Hu Department of Computer Science UTEP 1.
T3: Enterprise Systems Modeling Fall 2013 Chin-Sheng Chen Florida International University.
 What is Modeling What is Modeling  Why do we Model Why do we Model  Models in OMT Models in OMT  Principles of Modeling Principles of Modeling 
Course Instructor: Kashif Ihsan 1. Chapter # 3 2.
Computing and SE II Chapter 9: Design Methods and Design Models Er-Yu Ding Software Institute, NJU.
1/26 On-demand Learning Series Software Engineering of Web Application - Object-Oriented Development & UML Hunan University, Software School.
Design? !… When it needs? To understand, to communicate with customers Complex problem What is good design? Separate What to do?(Policy) and How to do(mechanism)
What is Object-Oriented?  Organization of software as a collection of discreet objects that incorporate both data structure and behavior.
Requirements Engineering-Based Conceptual Modelling From: Requirements Engineering E. Insfran, O. Pastor and R. Wieringa Presented by Chin-Yi Tsai.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
Chapter 5 System Modeling. What is System modeling? System modeling is the process of developing abstract models of a system, with each model presenting.
Lecture 14 22/10/15. The Object-Oriented Analysis and Design  Process of progressively developing representation of a system component (or object) through.
Introduction to Modeling Extracted from textbook: Object Oriented Modeling and Design with UML M. Blaha, J. Rumbaugh.
Enterprise Systems Modeling EGN 5623 Enterprise Systems Optimization Fall, 2012.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Design and implementation Chapter 7 – Lecture 1. Design and implementation Software design and implementation is the stage in the software engineering.
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Appendix A Object-Oriented Analysis and Design A.1.
CSCI 383 Object-Oriented Programming & Design Lecture 7 Martin van Bommel.
Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4 th edition, Prentice Hall, Hans Van Vliet, Software.
Methodology Review Chapter 7 Part 2: Design Methodology Object-Oriented Modeling and Design Byung-Hyun Ha
Application Analysis. Application Interaction Model The purpose of analysis is to understand the problem so.
WELCOME TO OUR PRESENTATION UNIFIED MODELING LANGUAGE (UML)
Enterprise Systems Modeling EGN 5621 Enterprise Systems Collaboration (Professional MSEM) Fall, 2012.
Chapter 5 – System Modeling Lecture 1 1Chapter 5 System modeling.
Introduction to Software Modeling
Information systems modeling tools
Object-Oriented Software Engineering Using UML, Patterns, and Java,
Unified Modeling Language
Object Oriented Analysis and Design
Unified Modeling Language
Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4th edition, Prentice Hall, Hans Van Vliet, Software Engineering:
Dynamic Modeling Lecture # 37.
Software Engineering System Modeling Chapter 5 (Part 1) Dr.Doaa Sami
Uml diagrams In ooad.
Information systems modeling tools
UML Design for an Automated Registration System
Presentation transcript:

Modeling as a Design Technique Chapter 2 Part 1: Modeling Concepts Object-Oriented Modeling and Design Byung-Hyun Ha

Lecture Outline  Organization of the Textbook  Introduction  Modeling  Object Modeling Technique

Organization of the Textbook  Part 1: modeling concepts  Object/dynamic/functional modeling  Part 2: design methodology  Analysis, system design, object design  Comparison of methodologies  Part 3: implementation  From design to implementation  Programming style  Object-oriented languages and non-OO languages  Relational databases  Part 4: Applications

Introduction  Abstraction  Fundamental human capability that permits us to deal with complexity  Selective examination of certain aspect of problem Abstraction must always be for some purpose, because the purpose determines what is and is not important  “All abstractions are incomplete and inaccurate. Reality is seamless web. Anything we say about it, and description of it, is an abridgement. All human words and language are abstractions—incomplete descriptions of the real world.”  “This does not destroy their usefulness. The purpose of an abstraction is to limit the universe so we can do things.”  In building models, therefore you must not search for absolute truth but for adequacy for some purpose. There is no single correct model of a situation, only adequate and inadequate ones.

Introduction  A model  An abstraction of something for the purpose of understanding it before building it  Easier to manipulate than the original entity, because a model omits nonessential details  Engineers, artists, and craftsman have built models for thousand of years to try out designs before executing them  To build complex system  Developer must abstract different views of the systems, build models using precise notations, verify that the models satisfy the requirements of the system, and gradually add detail to transform the model into an implementation.

Modeling  Purposes  Testing a physical entity before building it  Communication with customers  Visualization  Reduction of complexity  A good model  Captures the crucial aspects of a problem and omits the others  A model that contains extraneous detail unnecessarily limits your choice of design decisions and diverts attention from the real issues.  As industrial engineers?

Object Modeling Technique (OMT)  Three views of modeling systems  Object model static, structural, “data” aspects of a system  Dynamic model temporal, behavioral “control” aspects of a system  Functional model transformational, “function” aspects of a system  Typical software procedure  It uses data structures (object model)  It sequences operations in time (dynamic model)  It transforms values (functional model)  Orthogonal views for a system

Three Models of OMT (rev.)  Object model  Describe static structure of objects in system and relationships  Contain object diagrams which is a graph nodes: object classes, arcs: relationships among classes  Dynamic model  Describe aspects of a system that change over time  Specify control aspect of system  Contain state diagrams which is a graph nodes: states, arcs: transition between states caused by events  Functional model  Describe data value transformation within system  Contain data flow diagram which is graph nodes: processes, arcs: data flows