Chapter 3 System Models

Size: px
Start display at page:

Download "Chapter 3 System Models"

Transcription

1 March 16, 2009

2 Introduction Graphical models aid in requirements and development

3 Introduction Graphical models aid in requirements and development Different perspectives are possible: external: context or environment modeling behavioral structural: system or data architecture

4 Introduction Graphical models aid in requirements and development Different perspectives are possible: external: context or environment modeling behavioral structural: system or data architecture Leave out details representation, abstraction

5 Introduction Graphical models aid in requirements and development Different perspectives are possible: external: context or environment modeling behavioral structural: system or data architecture Leave out details representation, abstraction types of models: data-flow model architectural model classification model: object model stimulus-response model: state-transition diagrams

6 Introduction Graphical models aid in requirements and development Different perspectives are possible: external: context or environment modeling behavioral structural: system or data architecture Leave out details representation, abstraction types of models: data-flow model architectural model classification model: object model stimulus-response model: state-transition diagrams use UML

7 Outline 1 Context Models 2 Behavioral Models 3 Data Models 4 Object Models

8 Context Models decide early on system boundaries

9 Context Models decide early on system boundaries easy in some cases; flexible in other example: replace existing manual system

10 Context Models decide early on system boundaries easy in some cases; flexible in other example: replace existing manual system next develop context model show context and dependencies on environment detailed relationships are note shown use process or data-flow models

11 Context Model for an ATM System

12 Process Model for Equipment Producrement

13 Outline 1 Context Models 2 Behavioral Models 3 Data Models 4 Object Models

14 Introductiom Describe overall behavior of system Two types: data-flow models state machine models

15 Introductiom Describe overall behavior of system Two types: data-flow models state machine models Businesses rely mostly on data or information use data-flow models for modeling behavior

16 Introductiom Describe overall behavior of system Two types: data-flow models state machine models Businesses rely mostly on data or information use data-flow models for modeling behavior Real-time systems are event driven with minimal data processing use state machines for preseting behavior

17 Data-Flow Models Shows how the system processes data e.g.: filter duplicate records from a customer database

18 Data-Flow Models Shows how the system processes data e.g.: filter duplicate records from a customer database Convention: rounded rectangles: data processing square rectangles: data stores labelled arrows: data flow through system

19 DFD for Order Processing

20 DFD for Insulin Pump

21 Use and Advantages of DFD show a functional perspective each transformation represents a single function or process show end-to-end processing

22 Use and Advantages of DFD show a functional perspective each transformation represents a single function or process show end-to-end processing Simple and intuitive

23 Use and Advantages of DFD show a functional perspective each transformation represents a single function or process show end-to-end processing Simple and intuitive Understandable by system users

24 Use and Advantages of DFD show a functional perspective each transformation represents a single function or process show end-to-end processing Simple and intuitive Understandable by system users Top-down approach, in principle

25 State Machine Models System s responses to internal or external events

26 State Machine Models System s responses to internal or external events Shows system states (one at a time) events that cause transformation between states

27 State Machine Model of a Microwave Oven Figure: UML-based state machine model

28 Microwave Oven States

29 Microwave Oven Stimuli

30 Some Issues with State Machine Models Can grow exponentially with size of system

31 Some Issues with State Machine Models Can grow exponentially with size of system One solution: use super and sub states

32 Microwave Operation Super-state

33 Outline 1 Context Models 2 Behavioral Models 3 Data Models 4 Object Models

34 Data Most software systems focus on data

35 Data Most software systems focus on data independent of system created for the system

36 Data Most software systems focus on data independent of system created for the system Semantic data models: logical form of the data

37 Data Most software systems focus on data independent of system created for the system Semantic data models: logical form of the data

38 Semantic Data Models Most common:

39 Semantic Data Models Most common: entity-relation-attribute model

40 Semantic Data Models Most common: entity-relation-attribute model Usually in third normal form

41 Semantic Data Models Most common: entity-relation-attribute model Usually in third normal form Easy to tranform to OO design

42 Sample ERA mdoel

43 Semantic Data Models Since graphical, lacks details

44 Semantic Data Models Since graphical, lacks details Use data dictionary

45 Semantic Data Models Since graphical, lacks details Use data dictionary keep detailed description of all names

46 Semantic Data Models Since graphical, lacks details Use data dictionary keep detailed description of all names name management

47 Semantic Data Models Since graphical, lacks details Use data dictionary keep detailed description of all names name management organization information storage

48 Data Dictionary

49 Outline 1 Context Models 2 Behavioral Models 3 Data Models 4 Object Models

50 Object-Oriented Modeling Identify classes of objects used in the domain

51 Object-Oriented Modeling Identify classes of objects used in the domain Most commonly modeling technique today

52 Object-Oriented Modeling Identify classes of objects used in the domain Most commonly modeling technique today particularly for interactive systems as compared to what?

53 Object-Oriented Modeling Identify classes of objects used in the domain Most commonly modeling technique today particularly for interactive systems as compared to what? Involves:

54 Object-Oriented Modeling Identify classes of objects used in the domain Most commonly modeling technique today particularly for interactive systems as compared to what? Involves: system requirements in object model

55 Object-Oriented Modeling Identify classes of objects used in the domain Most commonly modeling technique today particularly for interactive systems as compared to what? Involves: system requirements in object model design using objects

56 Object-Oriented Modeling Identify classes of objects used in the domain Most commonly modeling technique today particularly for interactive systems as compared to what? Involves: system requirements in object model design using objects develop in an OO language (Java, C++, Smalltalk,...)

57 Object-Oriented Modeling Identify classes of objects used in the domain Most commonly modeling technique today particularly for interactive systems as compared to what? Involves: system requirements in object model design using objects develop in an OO language (Java, C++, Smalltalk,...) We will learn more in OO design

58 Object-Oriented Modeling Identify classes of objects used in the domain Most commonly modeling technique today particularly for interactive systems as compared to what? Involves: system requirements in object model design using objects develop in an OO language (Java, C++, Smalltalk,...) We will learn more in OO design Represent: data and its processing

59 Object Model Class

60 Object Model Class abstraction over set of objects

61 Object Model Class abstraction over set of objects identifies common attributes and services

62 Object Model Class abstraction over set of objects identifies common attributes and services Object

63 Object Model Class abstraction over set of objects identifies common attributes and services Object executable entity instantiated from a class

64 Object Model Class abstraction over set of objects identifies common attributes and services Object executable entity instantiated from a class models developed during requirements phase focus on: classes relationships not details of objects

65 Object Model Class abstraction over set of objects identifies common attributes and services Object executable entity instantiated from a class models developed during requirements phase focus on: classes relationships not details of objects identification of objects is difficult

66 Unified Modeling Language Developed specifically for OO, circa 1999

67 Unified Modeling Language Developed specifically for OO, circa 1999 Standard graphical language with several notation scheme

68 Unified Modeling Language Developed specifically for OO, circa 1999 Standard graphical language with several notation scheme Class represented as rectangle with sections: name attributes operations

69 UML Example

70 Inheritance Models Class model is organized into a taxonomy

71 Inheritance Models Class model is organized into a taxonomy classification scheme showing how classes are related

72 Inheritance Models Class model is organized into a taxonomy classification scheme showing how classes are related Taxonomy is often shown by inheritance diagram

73 Inheritance Models Class model is organized into a taxonomy classification scheme showing how classes are related Taxonomy is often shown by inheritance diagram general object at top specialized objects at bottom sharing attributes and services

74 Inheritance Models Class model is organized into a taxonomy classification scheme showing how classes are related Taxonomy is often shown by inheritance diagram general object at top specialized objects at bottom sharing attributes and services inheritance show upwards/downwards

75 Inheritance Models Class model is organized into a taxonomy classification scheme showing how classes are related Taxonomy is often shown by inheritance diagram general object at top specialized objects at bottom sharing attributes and services inheritance show upwards/downwards point from subclass to super class

76 Inheritance Models Class model is organized into a taxonomy classification scheme showing how classes are related Taxonomy is often shown by inheritance diagram general object at top specialized objects at bottom sharing attributes and services inheritance show upwards/downwards point from subclass to super class inheritance generalization relationship in UML

77 Library Item Inheritance Model

78 Library User Inheritance Model

79 Object Modeling Requires domain knowledge; subtle issues are common

80 Object Modeling Requires domain knowledge; subtle issues are common For e.g.: why is the title not in Library Item?

81 Object Modeling Requires domain knowledge; subtle issues are common For e.g.: why is the title not in Library Item? how much generalization?

82 Object Modeling Requires domain knowledge; subtle issues are common For e.g.: why is the title not in Library Item? how much generalization?

83 Multiple Inheritance Can inherit from multiple parent classes

84 Multiple Inheritance Can inherit from multiple parent classes

85 Multiple Inheritance Can inherit from multiple parent classes Issues:

86 Multiple Inheritance Can inherit from multiple parent classes Issues: should not inherit unnecessary attributes

87 Multiple Inheritance Can inherit from multiple parent classes Issues: should not inherit unnecessary attributes reorganizing is difficult

88 Multiple Inheritance Can inherit from multiple parent classes Issues: should not inherit unnecessary attributes reorganizing is difficult name clashes

89 Multiple Inheritance Can inherit from multiple parent classes Issues: should not inherit unnecessary attributes reorganizing is difficult name clashes more problematic at programming stage

90 Object Aggregation An object may contain other objects

91 Object Aggregation An object may contain other objects

System Models. Minsoo Ryu. Hanyang University. Real-Time Computing and Communications Lab., Hanyang University

System Models. Minsoo Ryu. Hanyang University. Real-Time Computing and Communications Lab., Hanyang University System Models Minsoo Ryu Hanyang University 1. Context Models 2. Structural Model 3. Behavioural Models 4. Object Models Contents 2 2 Building a System Model User requirements should be written in natural

More information

Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 8 Slide 1

Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 8 Slide 1 System models Slide 1 Objectives To explain why the context of a system should be modelled as part of the RE process To describe behavioural modelling, data modelling and object modelling To introduce

More information

System models Abstract descriptions of systems whose requirements are being analysed. System modelling. Structured methods

System models Abstract descriptions of systems whose requirements are being analysed. System modelling. Structured methods System models Abstract descriptions of systems whose requirements are being analysed Ian Sommerville 995/2000 (Modified by Spiros Mancoridis 999) Software Engineering, 6th edition. Chapter 7 Slide System

More information

Lesson 06. Requirement Engineering Processes

Lesson 06. Requirement Engineering Processes Lesson 06 Requirement Engineering Processes W.C.Uduwela Department of Mathematics and Computer Science Objectives To describe the principal requirements engineering activities and their relationships To

More information

Software Engineering

Software Engineering Software Engineering Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net pk.linkedin.com/in/armahmood

More information

Chapter 5 System modeling

Chapter 5 System modeling Chapter 5 System Modeling Lecture 1 1 Topics covered Context models Interaction models Structural models Behavioral models Model-driven driven engineering 2 System modeling System modeling is the process

More information

Ch t 8 Chapter 8. System Models

Ch t 8 Chapter 8. System Models Ch t 8 Chapter 8. System Models Objectives To explain why the context t of a system should be modelled d as a part of requirements engineering process To describe behavioural modelling, data modelling

More information

Unified Modeling Language (UML) Class Diagram

Unified Modeling Language (UML) Class Diagram 1 / 10 Unified Modeling Language (UML) Class Diagram Miaoqing Huang University of Arkansas Spring 2010 2 / 10 Outline 1 2 3 / 10 Class Diagram Class diagrams show the static structure of the classes that

More information

UML diagrams. Software artifacts include: SRS, SDS, test cases, source code, technical/user manual, software architecture, etc.

UML diagrams. Software artifacts include: SRS, SDS, test cases, source code, technical/user manual, software architecture, etc. UML Modeling UML diagrams UML (Unified Modeling Language) is a general purpose visual modeling language that provides different types of diagrammatic techniques and notations to specify, visualize, analyze,

More information

Object-Oriented Systems Analysis and Design Using UML

Object-Oriented Systems Analysis and Design Using UML 10 Object-Oriented Systems Analysis and Design Using UML Systems Analysis and Design, 8e Kendall & Kendall Copyright 2011 Pearson Education, Inc. Publishing as Prentice Hall Learning Objectives Understand

More information

Software Service Engineering

Software Service Engineering Software Service Engineering Lecture 4: Unified Modeling Language Doctor Guangyu Gao Some contents and notes selected from Fowler, M. UML Distilled, 3rd edition. Addison-Wesley Unified Modeling Language

More information

Object oriented Programming

Object oriented Programming Object-Oriented Programming Chapter 4 Object oriented Programming 91 Chapter 4 Object oriented Programming Chapter 4 Object oriented Programming System modelling helps the analyst to understand the functionality

More information

2. SYSTEM MODELS, DESIGN AND IMPLEMENTATION

2. SYSTEM MODELS, DESIGN AND IMPLEMENTATION SYSTEM MODELS 2. SYSTEM MODELS, DESIGN AND IMPLEMENTATION Software Engineering [15CS42] System modeling is the process of developing abstract models of a system, with each model presenting a different

More information

OO Techniques & UML Class Diagrams

OO Techniques & UML Class Diagrams OO Techniques & UML Class Diagrams SE3A04 Tutorial Jason Jaskolka Department of Computing and Software Faculty of Engineering McMaster University Hamilton, Ontario, Canada jaskolj@mcmaster.ca October 17,

More information

Chapter 8: Enhanced ER Model

Chapter 8: Enhanced ER Model Chapter 8: Enhanced ER Model Subclasses, Superclasses, and Inheritance Specialization and Generalization Constraints and Characteristics of Specialization and Generalization Hierarchies Modeling of UNION

More information

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN NOTES ON OBJECT-ORIENTED MODELING AND DESIGN Stephen W. Clyde Brigham Young University Provo, UT 86402 Abstract: A review of the Object Modeling Technique (OMT) is presented. OMT is an object-oriented

More information

SOFTWARE ENGINEERING UML FUNDAMENTALS. Saulius Ragaišis.

SOFTWARE ENGINEERING UML FUNDAMENTALS. Saulius Ragaišis. SOFTWARE ENGINEERING UML FUNDAMENTALS Saulius Ragaišis saulius.ragaisis@mif.vu.lt Information source Slides are prepared on the basis of Bernd Oestereich, Developing Software with UML: Object- Oriented

More information

Solved Question Paper June 2017

Solved Question Paper June 2017 Solved Question Paper June 2017 1.a) What are the benefits of Object Oriented Methodology in real life applications? Briefly explain each element of the state diagram with respect to dynamic modeling.

More information

Data Flow Diagrams System Analysis ( (

Data Flow Diagrams System Analysis ( ( 7 Data Flow Diagrams System Analysis (1932475( Kendall & Kendall 7-1 Data Flow Diagrams A top down approach to diagramming data movement, it moves from general to specific. Graphically characterize data

More information

Managing Change and Complexity

Managing Change and Complexity Managing Change and Complexity The reality of software development Overview Some more Philosophy Reality, representations and descriptions Some more history Managing complexity Managing change Some more

More information

Unit 6 - Software Design and Development LESSON 10 DESIGN TOOLS, INPUTS, OUTPUTS, STORYBOARDS

Unit 6 - Software Design and Development LESSON 10 DESIGN TOOLS, INPUTS, OUTPUTS, STORYBOARDS Unit 6 - Software Design and Development LESSON 10 DESIGN TOOLS, INPUTS, OUTPUTS, STORYBOARDS Previously Key features of programming languages Software Development Lifecycle Using tools to demonstrate

More information

Module Outline. What is Object-Oriented? Some Possible Definitions. Why Object-oriented? Fundamentals of Object Orientation

Module Outline. What is Object-Oriented? Some Possible Definitions. Why Object-oriented? Fundamentals of Object Orientation Module Outline Fundamentals of Object Positioning Object Oriented Analysis Fundamentals of Object 1. Encapsulation 2. Abstraction 3. Inheritance 4. Polymorphism The need of Modeling Unified modeling language

More information

Object-Oriented Systems Development: Using the Unified Modeling Language

Object-Oriented Systems Development: Using the Unified Modeling Language Object-Oriented Systems Development: Using the Unified Modeling Language Chapter 8: Identifying Object Relationships, Attributes, and Methods Goals Analyzing relationships among classes. Identifying association.

More information

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin

Chapter 10. Object-Oriented Analysis and Modeling Using the UML. McGraw-Hill/Irwin Chapter 10 Object-Oriented Analysis and Modeling Using the UML McGraw-Hill/Irwin Copyright 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Objectives 10-2 Define object modeling and explain

More information

Unified Modeling Language (UML) and Modeling

Unified Modeling Language (UML) and Modeling LECTURE-11 Unified Modeling Language (UML) and Modeling UML is a graphical notation useful for OO analysis and design Allows representing various aspects of the system Various notations are used to build

More information

MCQS for Midterm cs504 Combined by Anees Ahmad

MCQS for Midterm cs504 Combined by Anees Ahmad MCQS for Midterm cs504 Combined by Anees Ahmad The best way to conduct a requirements validation review is to examine the system model for errors have the customer look over the requirements send them

More information

Data Warehouse and Data Mining

Data Warehouse and Data Mining Data Warehouse and Data Mining Lecture No. 05 Data Modeling Naeem Ahmed Email: naeemmahoto@gmail.com Department of Software Engineering Mehran Univeristy of Engineering and Technology Jamshoro Data Modeling

More information

CSCU9T4: Managing Information

CSCU9T4: Managing Information CSCU9T4: Managing Information CSCU9T4 Spring 2016 1 The Module Module co-ordinator: Dr Gabriela Ochoa Lectures by: Prof Leslie Smith (l.s.smith@cs.stir.ac.uk) and Dr Nadarajen Veerapen (nve@cs.stir.ac.uk)

More information

06. Analysis Modeling

06. Analysis Modeling 06. Analysis Modeling Division of Computer Science, College of Computing Hanyang University ERICA Campus 1 st Semester 2017 Overview of Analysis Modeling 1 Requirement Analysis 2 Analysis Modeling Approaches

More information

SOFTWARE DESIGN COSC 4353 / Dr. Raj Singh

SOFTWARE DESIGN COSC 4353 / Dr. Raj Singh SOFTWARE DESIGN COSC 4353 / 6353 Dr. Raj Singh UML - History 2 The Unified Modeling Language (UML) is a general purpose modeling language designed to provide a standard way to visualize the design of a

More information

Introduction to UML. Danang Wahyu utomo

Introduction to UML. Danang Wahyu utomo Introduction to UML Danang Wahyu utomo danang.wu@dsn.dinus.ac.id 085 740 955 623 Evolution of OO Development Methods History of OOAD leading to UML Why Model? Analyse the problem domain - Simplify reality

More information

Object-Oriented Analysis Techniques Coad s OOA Technique Short History Terminological Comparison Postscript and Remarks

Object-Oriented Analysis Techniques Coad s OOA Technique Short History Terminological Comparison Postscript and Remarks Object-Oriented Analysis Object-Oriented Analysis Techniques Coad s OOA Technique Short History Terminological Comparison Postscript and Remarks Object-Oriented Analysis -- 1 Object-Oriented Analysis Object-Oriented

More information

CSE 403: Software Engineering, Spring courses.cs.washington.edu/courses/cse403/15sp/ UML Class Diagrams. Emina Torlak

CSE 403: Software Engineering, Spring courses.cs.washington.edu/courses/cse403/15sp/ UML Class Diagrams. Emina Torlak CSE 403: Software Engineering, Spring 2015 courses.cs.washington.edu/courses/cse403/15sp/ UML Class Diagrams Emina Torlak emina@cs.washington.edu Outline Designing classes Overview of UML UML class diagrams

More information

SE310 Analysis and Design of Software Systems

SE310 Analysis and Design of Software Systems SE310 Analysis and Design of Software Systems Lecture 2 OO Examples and Process Introduction January 8, 2015 Sam Siewert Overall Learning Objectives What to Build? Requirements as Capabilities Methods

More information

UML Fundamental. OutLine. NetFusion Tech. Co., Ltd. Jack Lee. Use-case diagram Class diagram Sequence diagram

UML Fundamental. OutLine. NetFusion Tech. Co., Ltd. Jack Lee. Use-case diagram Class diagram Sequence diagram UML Fundamental NetFusion Tech. Co., Ltd. Jack Lee 2008/4/7 1 Use-case diagram Class diagram Sequence diagram OutLine Communication diagram State machine Activity diagram 2 1 What is UML? Unified Modeling

More information

An Introduction To Object Modeling System Concept for Object Modeling The Overall View Components of UML Diagram

An Introduction To Object Modeling System Concept for Object Modeling The Overall View Components of UML Diagram An Introduction To Object Modeling System Concept for Object Modeling The Overall View Components of UML Diagram After studying this chapter you should be able to: Define an object. Understand the terms

More information

Fundamentals of Health Workflow Process Analysis and Redesign

Fundamentals of Health Workflow Process Analysis and Redesign Fundamentals of Health Workflow Process Analysis and Redesign Unit 10.3d Process Mapping Gane-Sarson Notation Slide 1 Welcome to the Gane-Sarson Notation for Data Flow Diagrams Subunit. This is the third

More information

Inheritance and Interfaces

Inheritance and Interfaces Inheritance and Interfaces Object Orientated Programming in Java Benjamin Kenwright Outline Review What is Inheritance? Why we need Inheritance? Syntax, Formatting,.. What is an Interface? Today s Practical

More information

UML Tutorial. Unified Modeling Language UML Tutorial

UML Tutorial. Unified Modeling Language UML Tutorial UML Tutorial Unified Modeling Language UML Tutorial A Unified Modeling Language is a language for specifying, constructing, visualizing and documenting the software system and its components. UML is a

More information

SOFTWARE MODELING AND DESIGN. UML, Use Cases, Patterns, and. Software Architectures. Ki Cambridge UNIVERSITY PRESS. Hassan Gomaa

SOFTWARE MODELING AND DESIGN. UML, Use Cases, Patterns, and. Software Architectures. Ki Cambridge UNIVERSITY PRESS. Hassan Gomaa SOFTWARE MODELING AND DESIGN UML, Use Cases, Patterns, and Software Architectures Hassan Gomaa George Mason University, Fairfax, Virginia Ki Cambridge UNIVERSITY PRESS Contents Preface P"U

More information

Object-Oriented Modeling Using UML. CS151 Chris Pollett Aug. 29, 2005.

Object-Oriented Modeling Using UML. CS151 Chris Pollett Aug. 29, 2005. Object-Oriented Modeling Using UML CS151 Chris Pollett Aug. 29, 2005. Outline Objects and Classes Modeling Relationships and Structures Some Terms and Concepts Objects and classes are fundamental to OO

More information

Object-oriented development. Object-oriented Design. Objectives. Characteristics of OOD. Interacting objects. Topics covered

Object-oriented development. Object-oriented Design. Objectives. Characteristics of OOD. Interacting objects. Topics covered Object-oriented development Object-oriented Design Object-oriented analysis, design and programming are related but distinct. OOA is concerned with developing an object model of the application domain.

More information

SRI VENKATESWARA COLLEGE OF ENGINERRING AND TECHNOLOGY THIRUPACHUR,THIRUVALLUR UNIT I OOAD PART A

SRI VENKATESWARA COLLEGE OF ENGINERRING AND TECHNOLOGY THIRUPACHUR,THIRUVALLUR UNIT I OOAD PART A SRI VENKATESWARA COLLEGE OF ENGINERRING AND TECHNOLOGY THIRUPACHUR,THIRUVALLUR UNIT I OOAD PART A 1. What is an object? An object is a combination of data and logic; the representation of some realworld

More information

Today s Agenda UML. CompSci 280 S Introduction to Software Development. 1.Introduction UML Diagrams. Topics: Reading:

Today s Agenda UML. CompSci 280 S Introduction to Software Development. 1.Introduction UML Diagrams. Topics: Reading: CompSci 280 S2 2107 Introduction to Software Development Today s Agenda Topics: Introduction Activity Diagram Object interaction Sequence Diagram Reading: Booch G.,The Unified Modeling Language User Guide,

More information

Basic Object-Orientation

Basic Object-Orientation Basic Object-Orientation Chapters 2 and 4 / Hour 2 2002, Delroy A. Brinkerhoff Basic Object-Orientation Slide 1 of 21 Chapters 2 and 4 / Hour 2 # Objects and Classes # Abstraction and classification (generalization)

More information

SDC Design patterns GoF

SDC Design patterns GoF SDC Design patterns GoF Design Patterns The design pattern concept can be viewed as an abstraction of imitating useful parts of other software products. The design pattern is a description of communicating

More information

Slide 1 Welcome to Fundamentals of Health Workflow Process Analysis and Redesign: Process Mapping: Gane-Sarson Notation. This is Lecture d.

Slide 1 Welcome to Fundamentals of Health Workflow Process Analysis and Redesign: Process Mapping: Gane-Sarson Notation. This is Lecture d. WORKFLOW ANALYSIS Audio Transcript Component 10 Unit 3 Lecture D Fundamentals of Health Workflow Process Analysis & Redesign Interpreting and Creating Process Diagrams Process Mapping Gane-Sarson Notation

More information

Methods for requirements engineering

Methods for requirements engineering Methods for requirements engineering Objectives To explain the role of methods and techniques in requirements engineering To introduce data-flow modelling To introduce semantic data modelling To introduce

More information

Computer Science for Engineers

Computer Science for Engineers Computer Science for Engineers Lecture 5 Object Orientation part 3 Prof. Dr. Dr.-Ing. Jivka Ovtcharova Dipl. Wi.-Ing. Dan Gutu 27 th of November 2009 Aggregation and Composition (1) A special case of an

More information

(Murlidhar Group of Institutions,Bhavnagar Road, Rajkot) by:-assit. Prof. Vijay Vora (SOOADM) MCA-III

(Murlidhar Group of Institutions,Bhavnagar Road, Rajkot) by:-assit. Prof. Vijay Vora (SOOADM) MCA-III Analysis Modeling What is Analysis Modeling? Analysis modeling uses a combination of text and diagrammatic forms to depict(represent) requirements for data, function, and behavior These text and diagrammatic

More information

CMPT 354 Database Systems I

CMPT 354 Database Systems I CMPT 354 Database Systems I Chapter 2 Entity Relationship Data Modeling Data models A data model is the specifications for designing data organization in a system. Specify database schema using a data

More information

Chapter No. 2 Class modeling CO:-Sketch Class,object models using fundamental relationships Contents 2.1 Object and Class Concepts (12M) Objects,

Chapter No. 2 Class modeling CO:-Sketch Class,object models using fundamental relationships Contents 2.1 Object and Class Concepts (12M) Objects, Chapter No. 2 Class modeling CO:-Sketch Class,object models using fundamental relationships Contents 2.1 Object and Class Concepts (12M) Objects, Classes, Class Diagrams Values and Attributes Operations

More information

administrivia today UML start design patterns Tuesday, September 28, 2010

administrivia today UML start design patterns Tuesday, September 28, 2010 administrivia Assignment 2? promise to get past assignment 1 back soon exam on monday review slides are posted your responsibility to review covers through last week today UML start design patterns 1 Unified

More information

2.0.3 attributes: A named property of a class that describes the range of values that the class or its instances (i.e., objects) may hold.

2.0.3 attributes: A named property of a class that describes the range of values that the class or its instances (i.e., objects) may hold. T0/04-023 revision 2 Date: September 06, 2005 To: T0 Committee (SCSI) From: George Penokie (IBM/Tivoli) Subject: SAM-4: Converting to UML part Overview The current SCSI architecture follows no particular

More information

Software Development Cycle. Unified Modeling Language. Unified Modeling Language. Unified Modeling Language. Unified Modeling Language.

Software Development Cycle. Unified Modeling Language. Unified Modeling Language. Unified Modeling Language. Unified Modeling Language. Plan for today Software Design and UML Building a software system Documenting your design using UML Process for software development People management Work management Team management Caveat: These processes

More information

2.0.3 attributes: A named property of a class that describes the range of values that the class or its instances (i.e., objects) may hold.

2.0.3 attributes: A named property of a class that describes the range of values that the class or its instances (i.e., objects) may hold. T0/06-6 revision 2 Date: May 22, 2006 To: T0 Committee (SCSI) From: George Penokie (IBM/Tivoli) Subject: SAM-4: Converting to UML part Overview The current SCSI architecture follows no particular documentation

More information

Object-Oriented Introduction

Object-Oriented Introduction Object-Oriented Introduction Or: Your Honor, I Object... Jonathan Sprinkle 1 University of Arizona Department of Electrical and Computer Engineering PO Box 210104, Tucson, AZ 85721, USA August 22, 2012

More information

2. Classes & Inheritance. Classes. Classes. Éric Tanter Objects and Design in Smalltalk. How do you create objects?

2. Classes & Inheritance. Classes. Classes. Éric Tanter Objects and Design in Smalltalk. How do you create objects? Objects and Design in Smalltalk 2. Classes & Inheritance Éric Tanter etanter@dcc.uchile.cl 1 Classes How do you create objects? Ex-nihilo in prototype-based languages With a class in class-based languages

More information

Lecture Notes UML UNIT-II. Subject: OOAD Semester: 8TH Course No: CSE-802

Lecture Notes UML UNIT-II. Subject: OOAD Semester: 8TH Course No: CSE-802 UNIT-II Lecture Notes On UML IMPORTANCE OF MODELING, BRIEF OVERVIEW OF OBJECT MODELING TECHNOLOGY (OMT) BY RAMBAUGH, BOOCH METHODOLOGY, USE CASE DRIVE APPROACH (OOSE) BY JACKOBSON. KHALID AMIN AKHOON 1

More information

OO is considered to be supported in three points which are usually symbolized as the three vertexes of a triangle: Encapsulació i ocultació

OO is considered to be supported in three points which are usually symbolized as the three vertexes of a triangle: Encapsulació i ocultació Object Orientation Its origin is placed at the beginning of the 70 s in a friendly environment project that Xerox Company developed in Palo lto with a team made up of lan Kay, dele Goldberg and Dan Ingalls.

More information

Unit Wise Questions. Unit-1 Concepts

Unit Wise Questions. Unit-1 Concepts Unit Wise Questions Unit-1 Concepts Q1. What is UML? Ans. Unified Modelling Language. It is a Industry standard graphical language for modelling and hence visualizing a blue print of all the aspects of

More information

Software Design and Analysis CSCI 2040

Software Design and Analysis CSCI 2040 Software Design and Analysis CSCI 2040 Introduce UML State Machine Diagram Notation. Create State Machine Diagrams for Classes and Use Cases. Advanced techniques in Activity Diagrams. Software Design and

More information

Enterprise Architect. User Guide Series. Domain Models

Enterprise Architect. User Guide Series. Domain Models Enterprise Architect User Guide Series Domain Models What support for modeling domains? Sparx Systems Enterprise Architect supports a range of modeling languages, technologies and methods that can be used

More information

Software Development. Designing Software

Software Development. Designing Software Software Development Designing Software Modules Modular programming is a software design technique that emphasizes separating the functionality of a program into independent, interchangeable modules, such

More information

Relationships. Association Aggregation/Composition Multiplicity Dependencies

Relationships. Association Aggregation/Composition Multiplicity Dependencies 1/13/2004 1 Association Aggregation/Composition Dependencies 1/13/2004 2 Relationships Very few classes stand alone in an OO system Three kinds of class/object relationships are defined to help model abstractions

More information

2.0.3 attributes: A named property of a class that describes the range of values that the class or its instances (i.e., objects) may hold.

2.0.3 attributes: A named property of a class that describes the range of values that the class or its instances (i.e., objects) may hold. T0/06-6 revision 0 Date: March 0, 2006 To: T0 Committee (SCSI) From: George Penokie (IBM/Tivoli) Subject: SAM-4: Converting to UML part Overview The current SCSI architecture follows no particular documentation

More information

Object- Oriented Design with UML and Java Part I: Fundamentals

Object- Oriented Design with UML and Java Part I: Fundamentals Object- Oriented Design with UML and Java Part I: Fundamentals University of Colorado 1999-2002 CSCI-4448 - Object-Oriented Programming and Design These notes as free PDF files: http://www.softwarefederation.com/cs4448.html

More information

12 Tutorial on UML. TIMe TIMe Electronic Textbook

12 Tutorial on UML. TIMe TIMe Electronic Textbook TIMe TIMe Electronic Textbook 12 Tutorial on UML Introduction......................................................2.................................................3 Diagrams in UML..................................................3

More information

Business Process Modelling

Business Process Modelling CS565 - Business Process & Workflow Management Systems Business Process Modelling CS 565 - Lecture 2 20/2/17 1 Business Process Lifecycle Enactment: Operation Monitoring Maintenance Evaluation: Process

More information

Comparative Analysis of Architectural Views Based on UML

Comparative Analysis of Architectural Views Based on UML Electronic Notes in Theoretical Computer Science 65 No. 4 (2002) URL: http://www.elsevier.nl/locate/entcs/volume65.html 12 pages Comparative Analysis of Architectural Views Based on UML Lyrene Fernandes

More information

Design Patterns. Design Patterns

Design Patterns. Design Patterns Design Patterns As software engineers, we commonly have to make decisions about how to create complex objects, how to encapsulate some actions, how to allow for the undoing of certain operations, etc.

More information

Unified Modeling Language (UML)

Unified Modeling Language (UML) Unified Modeling Language (UML) Troy Mockenhaupt Chi-Hang ( Alex) Lin Pejman ( PJ ) Yedidsion Overview Definition History Behavior Diagrams Interaction Diagrams Structural Diagrams Tools Effect on Software

More information

Structured and Object Oriented Analysis and Design

Structured and Object Oriented Analysis and Design RAMRAO ADIK INSTITUTE OF TECHNOLOGY, NERUL Department of Computer Engineering Lab Manual Structured and Object Oriented Analysis and Design 2015-2016 List of Experiments Subject: Structured and object

More information

Chapter 7 Design and Implementation

Chapter 7 Design and Implementation Chapter 7 Design and Implementation Chapter 7 Design and Implementation Slide 1 Topics covered Object-oriented design using the UML Design patterns Implementation issues Reuse Configuration management

More information

From Analysis to Design. LTOOD/OOAD Verified Software Systems

From Analysis to Design. LTOOD/OOAD Verified Software Systems From Analysis to Design 1 Use Cases: Notation Overview Actor Use case System X System boundary UCBase «extend» UCExt Actor A UCVar1 UCVar2 Extending case Generalization «include» Actor B UCIncl Included

More information

Geog 469 GIS Workshop. System Requirements - Data

Geog 469 GIS Workshop. System Requirements - Data Geog 469 GIS Workshop System Requirements - Data Outline 1. What are some principles of project management? 2. What are some fundamental issues associated with system requirements? 3. What are some issues

More information

Overview. Elements of Programming Languages. Objects. Self-Reference

Overview. Elements of Programming Languages. Objects. Self-Reference Overview Elements of Programming Languages Lecture 10: James Cheney University of Edinburgh October 23, 2017 Last time: programming in the large Programs, packages/namespaces, importing Modules and interfaces

More information

Inheritance Metrics: What do they Measure?

Inheritance Metrics: What do they Measure? Inheritance Metrics: What do they Measure? G. Sri Krishna and Rushikesh K. Joshi Department of Computer Science and Engineering Indian Institute of Technology Bombay Mumbai, 400 076, India Email:{srikrishna,rkj}@cse.iitb.ac.in

More information

Models versus Ontologies - What's the Difference and where does it Matter?

Models versus Ontologies - What's the Difference and where does it Matter? Models versus Ontologies - What's the Difference and where does it Matter? Colin Atkinson University of Mannheim Presentation for University of Birmingham April 19th 2007 1 Brief History Ontologies originated

More information

CS352 Lecture - Data Models

CS352 Lecture - Data Models CS352 Lecture - Data Models Objectives: 1. To briefly introduce the entity-relationship model 2. To introduce the relational model. 3. To introduce relational algebra Last revised January 18, 2017 Materials:

More information

CSC207 Week 3. Larry Zhang

CSC207 Week 3. Larry Zhang CSC207 Week 3 Larry Zhang 1 Announcements Readings will be posted before the lecture Lab 1 marks available in your repo 1 point for creating the correct project. 1 point for creating the correct classes.

More information

UML Views of a System

UML Views of a System UML Views of a System The architecture of a system is the fundamental organization of the system as a whole. The five UML Views: Use Case View: focuses on scenarios Design View: focuses on the vocabulary

More information

Software Engineering. Part 3. Design. - Application Architectures - Object-Oriented Design - Real-Time Software Design

Software Engineering. Part 3. Design. - Application Architectures - Object-Oriented Design - Real-Time Software Design Software Engineering Part 3. Design - Application Architectures - Object-Oriented Design - Real-Time Software Design Ver. 1.7 This lecture note is based on materials from Ian Sommerville 2006. Anyone can

More information

Course 3 7 March

Course 3 7 March Course 3 7 March adiftene@info.uaic.ro 1 From Courses 1, 2 Modeling Modeling Languages Graphic Languages UML History UML Definition UML Diagram Types UML Use Case Diagram Actors Use Case UML Class Diagrams

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecturer: Raman Ramsin Lecture 9: Generalization/Specialization 1 Analysis Workflow: Analyze a Use Case The analysis workflow consists of the following activities: Architectural

More information

Inheritance and Encapsulation. Amit Gupta

Inheritance and Encapsulation. Amit Gupta Inheritance and Encapsulation Amit Gupta Project 1 How did it go? What did you like about it? What did you not like? What can we do to help? Suggestions Ask questions if you don t understand a concept

More information

Topic 3 Unified Modeling Language UML. Objective: Student will use UML to represent relationshiops between objects, its structure and dynamics.

Topic 3 Unified Modeling Language UML. Objective: Student will use UML to represent relationshiops between objects, its structure and dynamics. Topic 3 Unified Modeling Language UML Objective: Student will use UML to represent relationshiops between objects, its structure and dynamics. Contents: 1. Structure diagrams 2. Behavior diagrams What

More information

CS504-Softwere Engineering -1 Solved Objective Midterm Papers For Preparation of Midterm Exam

CS504-Softwere Engineering -1 Solved Objective Midterm Papers For Preparation of Midterm Exam CS504-Softwere Engineering -1 Solved Objective Midterm Papers For Preparation of Midterm Exam MIDTERM EXAMINATION 2010 Question No: 1 ( Marks: 1 ) - Please choose one By following modern system engineering

More information

UML & OO FUNDAMENTALS CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 3 08/30/2011

UML & OO FUNDAMENTALS CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 3 08/30/2011 UML & OO FUNDAMENTALS CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 3 08/30/2011 1 Goals of the Lecture Review the material in Chapter 2 of the Textbook Cover key parts of the UML notation

More information

Object Oriented Design. Program Design. Analysis Phase. Part 2. Analysis Design Implementation. Functional Specification

Object Oriented Design. Program Design. Analysis Phase. Part 2. Analysis Design Implementation. Functional Specification Object Oriented Design Part 2 Analysis Design Implementation Program Design Analysis Phase Functional Specification Completely defines tasks to be solved Free from internal contradictions Readable both

More information

Programming Methods. Simple things should be simple, complex things should be possible.

Programming Methods. Simple things should be simple, complex things should be possible. S m a l l t a l k Object-oriented programming is a fifth-generation style which emphasizes simulation of the behavior of objects. Smalltalk was the first pure object-oriented (oo) language; Java is the

More information

For 100% Result Oriented IGNOU Coaching and Project Training Call CPD: ,

For 100% Result Oriented IGNOU Coaching and Project Training Call CPD: , Q.1 What is Object Orientation? Explain the concept of class, objects, instance, generalization, and associations. Ans :-- In the past, information systems used to be defined primarily by their functionality:

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecture 14: Design Workflow Department of Computer Engineering Sharif University of Technology 1 UP iterations and workflow Workflows Requirements Analysis Phases Inception Elaboration

More information

Design and UML Class Diagrams

Design and UML Class Diagrams Design and UML Class Diagrams 1 Suggested reading: Practical UML: A hands on introduction for developers http://dn.codegear.com/article/31863 UML DistilledCh. 3, by M. Fowler How do people draw / write

More information

Rules of Writing Software Requirement Specifications

Rules of Writing Software Requirement Specifications Short Note. Version 1a, FGCU April 10, 2018 A properly written Software Requirements Specification should adhere to a number of rules that can be expressed as matching the following properties: 1) Clarity

More information

UML Class Diagrams Revisited

UML Class Diagrams Revisited 9/25/2003 1 UML Class diagrams Organizing attributes and operations Class relationships Association Aggregation/Composition Multiplicity Dependencies 9/25/2003 2 UML Class Diagrams Revisited In the analysis

More information

Vidyalankar. T.Y. Diploma : Sem. VI [IF/CM] Object Oriented Modeling and Design Prelim Question Paper Solution

Vidyalankar. T.Y. Diploma : Sem. VI [IF/CM] Object Oriented Modeling and Design Prelim Question Paper Solution T.Y. Diploma : Sem. VI [IF/CM] Object Oriented Modeling and Design Prelim Question Paper Solution Q.1(a) Attempt any THREE of the following [12] Q.1(a) (i) What is modeling? Also state its four features.

More information

Requirements Engineering

Requirements Engineering Chapter 3: Requirements Modeling Requirements Engineering Objectives In this chapter, you will learn about: Functional requirements Modeling requirements Overview of basic modeling paradigms Gus Requirements

More information

UML Component Diagrams A.Y 2018/2019

UML Component Diagrams A.Y 2018/2019 UML Component Diagrams A.Y 2018/2019 Component diagrams Component diagrams are integral to building your software system. Drawn out with UML diagramming software, they help your team understand the structure

More information

Notation Part 1. Object Orientated Analysis and Design. Benjamin Kenwright

Notation Part 1. Object Orientated Analysis and Design. Benjamin Kenwright Notation Part 1 Object Orientated Analysis and Design Benjamin Kenwright Version Control Example Team Princess 3 Members 3 Github Users e.g., Elva1997, michelle0924hhx, KimJaeHwang Each user can join and

More information