Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A.

Slides:



Advertisements
Similar presentations
Object-Oriented Analysis and Design: Object Modeling – Class Diagrams
Advertisements

Systems Analysis and Design 8th Edition
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
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.
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.
Lecture 11: Chapter 22 Topics –Object Oriented Modeling –UML –Use case.
Basic OOP Concepts and Terms
Lecturer: Dr. AJ Bieszczad Chapter 66-1 Object-Oriented analysis and design Special nature of OO development Use cases Design with UML OO system design.
9-1 © Prentice Hall, 2004 Chapter 9, Part II: System Behavior - Interactions (Adapted) Object-Oriented Systems Analysis and Design Joey F. George, Dinesh.
Systems Analysis & Design Sixth Edition Systems Analysis & Design Sixth Edition Toolkit Part 5.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix.
Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A. Hoffer
2-1 © Prentice Hall, 2004 Chapter 2: Introduction to Object Orientation (Adapted) Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra,
Object-Oriented Analysis and Design
Chapter 7: The Object-Oriented Approach to Requirements
Object-Oriented Systems Analysis and Design Using UML
The Software Development Life Cycle: An Overview Presented by Maxwell Drew and Dan Kaiser Southwest State University Computer Science Program.
Introduction to the Unified Modeling Language “The act of drawing a diagram does not constitute analysis or design. … Still, having a well-defined and.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix A Object-Oriented.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Slide 1 UML Review Chapter 2: Introduction to Object-Oriented Systems Analysis and Design with the Unified Modeling Language, Version 2.0 Alan Dennis,
Unified Modeling Language, Version 2.0
11 Chapter 11 Object-Oriented Databases Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
System Analysis System Analysis - Mr. Ahmad Al-Ghoul System Analysis and Design.
1 UML Basic Training. UML Basic training2 Agenda  Definitions: requirements, design  Basics of Unified Modeling Language 1.4  SysML.
Chapter 18 Object-Oriented Systems Analysis and Design Using UML
CH06: Considering Objects TECH Computer Science  Set, Class, Type  …of…  Objects, Actors, Agents  Data and Actions Object-Oriented Design and Development.
CS3773 Software Engineering Lecture 04 UML Class Diagram.
7-1 © Prentice Hall, 2004 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,
7-1 © Prentice Hall, 2007 Chapter 7: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,
7-1 © Prentice Hall, 2007 Week 5: Conceptual Data Modeling Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich,
Systems Analysis & Design 7 th Edition Chapter 5.
IT 21103/41103 System Analysis & Design. Chapter 05 Object Modeling.
Systems Analysis and Design 8 th Edition Chapter 6 Object Modeling.
9-1 © Prentice Hall, 2004 Chapter 9: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
An Introduction to the Unified Modeling Language
Basic OOP Concepts and Terms. In this class, we will cover: Objects and examples of different object types Classes and how they relate to objects Object.
Object-Oriented Paradigm and UML1 Introduction to the Object- Oriented Paradigm.
UML The Unified Modeling Language A Practical Introduction Al-Ayham Saleh Aleppo University
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
Design Model Lecture p6 T120B pavasario sem.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
Chapter 12 Object-oriented design for more than one class.
1 Unified Modeling Language, Version 2.0 Chapter 2.
4-1 © Prentice Hall, 2007 Topic 4: Structuring Systems Requirements: Use Case Description and Diagrams Object-Oriented Systems Analysis and Design Joey.
7-1 © Prentice Hall, 2007 Topic 7: Analysis Classes Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey.
Chapter 6: Structuring Requirements: Use Case Description and Diagrams Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Unit 1 Object-Oriented Design Concepts. Key Concepts Development methodologies Classes and objects Attributes and methods Inheritance and polymorphism.
Basic Characteristics of Object-Oriented Systems
1 An Overview of UML. 2 The Unified Modeling Language UML is a graphical language used by software engineers to model software systems during development.
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.
Appendix 3 Object-Oriented Analysis and Design
Object-Oriented Analysis and Design
Systems Analysis and Design With UML 2
Systems Analysis and Design With UML 2
ניתוח מערכות מידע א' הרצאה 3
Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A. Hoffer
Chapter 20 Object-Oriented Analysis and Design
Appendix A Object-Oriented Analysis and Design
Copyright 2007 Oxford Consulting, Ltd
Basic OOP Concepts and Terms
Chapter 5.
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Appendix A Object-Oriented Analysis and Design
Appendix A Object-Oriented Analysis and Design
Presentation transcript:

Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A. Hoffer

Chapter Objectives Af ter studying this chapter you should be able to: – Define an object. – Understand the terms class, attribute, and operations. – Explain generalization, polymorphism, and inheritance. – Define association. – Describe modeling and the Unified Modeling Language.

What is an Object? An entity that encapsulates data/attributes and behavior/operations - Objects are categorized into classes - Each individual object is an instance of a class

What is a Class? A category of objects that share the same data attributes, and operational behavior All objects are instances of classes Classes are like templates, or blueprints, or types for objects

What is Encapsulation? The characteristic of object-orientation in which data and behavior are bundled into a class and hidden from the outside world Access to the data and behavior is provided and controlled through an object’s interface, aka. API (application programming interface)

Name Attributes Operations

What is an Attribute? Attribute – is a named property of a class that describes the various characteristics that objects within the class will have Attributes are the way classes encapsulate data Attributes are mostly nouns

Attributes are properties containing values Minus sign indicates these are private (hidden)

What is an Operation? A behavior for an object Implemented in OO classes as methods A method is where the program code resides Methods are identified and invoked by their signatures, including their names and parameters Methods are mostly verbs

A method signature identifies the interface to the method A method implements the behavior

Method signatures Plus sign indicates these are public (accessible)

What is Generalization? A relationship between a parent class (more general) class and a child class (more specific) The more specific the class is, the more additional attributes and operations it has A parent class Vehicle is more general A child class Car is more specific

What is Inheritance? The mechanism by which the more specific (child) class in a generalization relationship includes the attributes and operations of the more general (parent) class

A generalization relationship is represented by an arrow from the subclass to the superclass Subclasses inherit all attributes and operations of superclasses

What is a Message? A message is the way one method or process invokes (calls) another method or process The message will include the name of the method, and the value of parameters the method expects in parenthesis Example: add_order(123456)

What is Polymorphism? The ability for different subclasses to respond to identical messages in different ways Polymorphism = “having many forms” Different behaviors for the same message Each subclass (e.g. FullTimeEmp, PartTimeEmp) will implement the same method (e.g. calcSalary) differently

Here, each type of vehicle has its own version of calcPrice( )

What is a Component? A replaceable part of a system providing a clearly defined function through a set of interfaces Group of classes working together toward a common end; a subsystem

What is an Interface? The mechanism by which users of a component invoke its behaviors and manipulate its properties The interface is implemented by method signatures

What is a Package? A general-purpose mechanism for organizing elements into groups Group of classes sharing similar characteristics or purposes A Package is akin to a folder on your operating system

The Sales package might include: a product, inventory and customer classes

What is an Association? A relationship or a link between two or more classes Three types: – Simple associations: no ownership (e.g. people, places) – Aggregations: whole-part relationships where the part can exist independently of the whole (e.g. team, player) – Compositions: whole-part relationships where the part is fully dependent on whole, and cannot exist without it (e.g. sales_order and sales_order_line items)

What is Association Multiplicity? Identifies the number of associated entities that can exist for an entity Three types: – One to One: one entity is associated with a single entity – One to Many: one entity is associated with zero or more entities – Many to Many: one entity “A” is associated with zero or more entities “B”, and one entity “B” is associated with zero or more entities “A”

This is a association, showing roles and multiplicities

Unified Modeling Language (UML) A standard notation for representing object-oriented systems created by Grady Booch, James Rumbaugh, and Ivar Jacobson Boxes represent classes, components, packages, objects –Containing attributes and operations –Provide interfaces to external entities Lines represent relationships, (either generalization and association)

Sample UML Diagram

UML Diagrams Class Diagram – shows classes and relationships. Use Case Diagram – describes sequences of action involving actors. Sequence Diagram – shows interaction with objects in a time-ordered manner. Collaboration Diagram – interaction with objects without time relevance. Activity Diagram – shows data flow from one activity to another. Similar to flow chart diagrams Statechart Diagram – shows transition of an object from one state to another as a response to an event Package Diagram – shows components in packages.

Recap Af ter studying this chapter we learned to: – Define an object. – Understand the terms class, attribute, and operations. – Explain generalization, polymorphism, and inheritance. – Define association. – Describe modeling and the Unified Modeling Language.