TCS2411 Software Engineering1 Object-Oriented Analysis and Design “A system of objects interacting to perform the given tasks”

Slides:



Advertisements
Similar presentations
Introduction to Object Orientation System Analysis and Design
Advertisements

Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
TCS2411 Software Engineering1 Software Design Principles “Producing the software blueprint”
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall A.1.
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
Solutions to Review Questions. 4.1 Define object, class and instance. The UML Glossary gives these definitions: Object: an instance of a class. Class:
TCS2411 Software Engineering1 System Engineering and Analysis “What is the role of the software product?”
Object-Oriented Analysis and Design
Chapter 1 Object-Oriented System Development
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Introduction To System Analysis and Design
1 Software Testing and Quality Assurance Lecture 12 - The Testing Perspective (Chapter 2, A Practical Guide to Testing Object-Oriented Software)
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
Slide 1 Systems Analysis & Design CS183 Spring Semester 2008 Dr. Jonathan Y. Clark Course Website:
Slide 1 Systems Analysis & Design CS183 Spring Semester 2008 Dr. Jonathan Y. Clark Course Website:
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models September 29, 2008.
7M701 1 Class Diagram advanced concepts. 7M701 2 Characteristics of Object Oriented Design (OOD) objectData and operations (functions) are combined 
© Wolfgang Pelz Introduction Object-Oriented Methods: Analysis, Design & Programming Dr. Wolfgang Pelz Dr. Yingcai Xiao The University of Akron.
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 1 Introduction to Object-Oriented Programming and Software Development.
TCS2411 Software Engineering1 Software Requirements Analysis “What does the customer want?”
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 1 Introduction to Object-Oriented Programming and Software Development.
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 1 Introduction to Object-Oriented Programming and Software Development.
1 Object-Oriented Software Engineering CIS 375 Bruce R. Maxim UM-Dearborn.
BACS 287 Basics of Object-Oriented Programming 1.
1 Object Oriented Programming Development z By: Marc Conrad University of Luton z z Room: D104.
Building The Analysis Model. Object-Oriented Analysis The object oriented analysis define all classes, the relationships and behavior associated with.
CPT 140 Programming Constructs1 OBJECT ORIENTED TECHNOLOGY Terminology and Basic Concepts.
Introduction To System Analysis and design
Object Oriented Programming Development
Chapter 6 System Engineering - Computer-based system - System engineering process - “Business process” engineering - Product engineering (Source: Pressman,
These slides are designed to accompany Web Engineering: A Practitioner’s Approach (The McGraw-Hill Companies, Inc.) by Roger Pressman and David Lowe, copyright.
OBJECT AND CLASES: THE BASIC CONCEPTS Pertemuan 8 Matakuliah: Konsep object-oriented Tahun: 2009.
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
Unified Modeling Language, Version 2.0
Eng. Mohammed Timraz Electronics & Communication Engineer University of Palestine Faculty of Engineering and Urban planning Software Engineering Department.
Introduction To System Analysis and Design
11 Chapter 11 Object-Oriented Databases Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
CS3773 Software Engineering Lecture 04 UML Class Diagram.
Developed by Reneta Barneva, SUNY Fredonia for CSIT 425 Requirements Modeling.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 8: Analysis Modeling Software Engineering: A Practitioner’s Approach, 6/e Chapter.
Kal Bugrara, Ph.DSoftware Engineering Northeastern University Fundamentals Of Software Engineering Lecture V.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
What is Object-Oriented?  Organization of software as a collection of discreet objects that incorporate both data structure and behavior.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
Object-Oriented Programming Approaches
Learners Support Publications Object Oriented Programming.
CSC 131 Fall 2006 Lecture # 6 Object-Oriented Concepts.
9-Dec Dec-15  INTRODUCTION.  FEATURES OF OOP.  ORGANIZATION OF DATA & FUNCTION IN OOP.  OOP’S DESIGN.
Basic Concepts of Object Orientation Object-Oriented Analysis CIM2566 Bavy LI.
1 Object Oriented Programming Development z By: Marc Conrad University of Luton z z Room: D104.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
1 Unified Modeling Language, Version 2.0 Chapter 2.
Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A.
Object-Oriented Systems. Goals Object-Oriented Methodologies – The Rumbaugh et al. OMT – The Booch methodology – Jacobson's methodologies.
Chapter 2 Principles of Programming and Software Engineering.
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Appendix A Object-Oriented Analysis and Design A.1.
Slide 1 Objectives Understand the basic characteristics of object-oriented systems. Be familiar with the Unified Modeling Language (UML),V.2.0.
COP 4331 – OOD&P Lecture 7 Object Concepts. What is an Object Programming language definition: An instance of a class Design perspective is different.
Basic Characteristics of Object-Oriented Systems
Chapter 11 An introduction to object-oriented design.
Chapter 5 – System Modeling Lecture 1 1Chapter 5 System modeling.
Elements Of Modeling. 1.Data Modeling  Data modeling answers a set of specific questions that are relevant to any data processing application. e.g. ◦
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
2-1 © Prentice Hall, 2004 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
 The Object Oriented concepts was evolved for solving complex problems. Object- oriented software development started in the 1980s. Object-oriented design.
Cmpe 589 Spring 2006.
Systems Analysis and Design With UML 2
Chapter 20 Object-Oriented Concepts and Principles
Presentation transcript:

TCS2411 Software Engineering1 Object-Oriented Analysis and Design “A system of objects interacting to perform the given tasks”

TCS2411 Software Engineering2 Lecture Objectives zTo introduce the basic concepts of object- oriented analysis and design zTo understand the difference between object-oriented analysis and design and other analysis and design methods zTo describe the main characteristics of object-oriented system

TCS2411 Software Engineering3 An Object-Oriented System Object Message

TCS2411 Software Engineering4 Object-Orientation Object-Oriented Analysis Object-Oriented Design Object-Oriented Programming Problem Solution Object-Oriented Concepts ADT Identity Inheritance

TCS2411 Software Engineering5 Object-Oriented Analysis “A method of analysis that examines requirements from the perspective of classes and objects found in the vocabulary of the problem domain” (Booch, 1994)

TCS2411 Software Engineering6 Object-Oriented Analysis zExamining the problem domain/statement to identify objects zIdentify entities, relationships and operations of the problem domain zUnderstanding the role of the objects by examining the relevant data and processes

TCS2411 Software Engineering7 Object-Oriented Design “[Object-oriented] design is that portion of the lifecycle that prepares definitions as to how the system will accomplish its requirements. The models prepared in analysis are either refined, or transformed, into design models that depict the physical nature of the software product.” (Berard, 1992)

TCS2411 Software Engineering8 Object-Oriented Design zBuild the logical models and hierarchy of the objects and classes for implementation zCreating new classes to complete the functionality of the solution zRefining the classes for smoother operation and efficiency e.g. through migration of operations and creating of subclasses

TCS2411 Software Engineering9 What is Object? zRepresentation of real-world objects and concepts in software domain zTypically a producer or consumer of information item in computer system zAn object consists of attributes and operations zAttributes - data structures/elements zOperations - processes for controlling/manipulating attributes

TCS2411 Software Engineering10 Example of Object Object: Chair Cost : RM30 Dimensions : 1X1X2 Weight: 1kg Location: (2,2,3) Colour: black Move Buy Sell Weigh

TCS2411 Software Engineering11 Typical objects zExternal entities that produce or consume information in a computer-based system zThings that are part of the information domain for the problem zOccurrences or events that occur within the context of system operation zRoles played by people who interact with the system

TCS2411 Software Engineering12 Typical objects (Continued) zOrganisational units that are relevant to an application zPlaces that establish the context of the problem and the overall function of the system zStructures that define a class of objects or, in the extreme, related classes of objects

TCS2411 Software Engineering13 Class zSet of objects with similar attributes and operations zObjects are instances of classes zClasses are ‘frames’ for objects (basically the ‘types’ for the objects)

TCS2411 Software Engineering14 Example of Class Class: Furniture Cost Dimensions Weight Location Colour Move Buy Sell Weigh

TCS2411 Software Engineering15 Object-Oriented Concepts zAbstraction: Identifying the important features of objects to be represented zModularity: software is separated into individual elements that can be grouped together to form the solution zInformation Hiding: the details of implementation are hidden from all program elements outside the object

TCS2411 Software Engineering16 Object-Oriented Concepts (Continued) zEncapsulation: Combination of attributes and operations into a single entity zMessage passing: Mechanism to communicate between objects zInheritance: Relationship between classes that allows a class to inherit all attributes and operations of another class zPolymorphism: Different response to the same message by similar objects

TCS2411 Software Engineering17 Message Passing Program Student Report store marks done print report give marksmarks

TCS2411 Software Engineering18 Inheritance Furniture TableChair Yeoh’s chairAli’s chair

TCS2411 Software Engineering19 Polymorphism Program Hare Tortoise run done run

TCS2411 Software Engineering20 References z“Software Engineering: A Practitioner’s Approach” 5th Ed. by Roger S. Pressman, Mc-Graw-Hill, 2001 z“Object-Oriented Modeling and Design” by James Rumbaugh et al, Prentice Hall, 1991 z“Object Orientation” by Setrag Khoshafian & Razmik Abnous, John Wiley & Sons, 1995