Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Object Oriented.

Slides:



Advertisements
Similar presentations
Modeling Main issues: What do we want to build How do we write this down.
Advertisements

25 February 2009Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department.
13 May 2009Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Introduction.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 12Slide 1 Software Design l Objectives To explain how a software design may be represented.
Abstraction Lecture-4. ADT example: London Underground Map.
Modeling Main issues: What do we want to build How do we write this down ©2008 John Wiley & Sons Ltd. vliet.
Systems Analysis and Design 8th Edition
Object-Oriented Analysis and Design
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
CS-2135 Object Oriented Programming
Introduction To System Analysis and Design
7M701 1 Software Engineering Object-oriented Design Sommerville, Ian (2001) Software Engineering, 6 th edition: Chapter 12 )
1 Chapter 1 Object-Oriented Programming. 2 OO programming and design Object-oriented programming and design can be contrasted with alternative programming.
1 SWE Introduction to Software Engineering Lecture 23 – Architectural Design (Chapter 13)
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
7M701 1 Class Diagram advanced concepts. 7M701 2 Characteristics of Object Oriented Design (OOD) objectData and operations (functions) are combined 
© Copyright Eliyahu Brutman Programming Techniques Course.
7M822 UML Class Diagrams advanced concepts 15 September 2008.
Lecture 13: Object- Oriented Concepts Anita S. Malik Adapted from Schach (2004) Chapter 7.
2-1 © Prentice Hall, 2004 Chapter 2: Introduction to Object Orientation (Adapted) Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra,
10 May 2009Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Formal.
1 INTRODUCTION TO OOP Objective: Know the difference between functional programming and OOP Know basic terminology in OOP Know the importance of OOP Know.
1 INTRODUCTION TO OOP Objective: Know the difference between functional programming and OOP Know basic terminology in OOP Know the importance of OOP Know.
Introduction To System Analysis and design
Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Object Oriented.
CSCI-383 Object-Oriented Programming & Design Lecture 9.
1 CS 456 Software Engineering. 2 Contents 3 Chapter 1: Introduction.
Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Object Oriented.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 18. Review User interface Design principles Design Guidelines.
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.
1. 2 Object-Oriented Concept Class & Object Object-Oriented Characteristics How does it work? Relationships Between Classes Development Tools Advantage.
Eng. Mohammed Timraz Electronics & Communication Engineer University of Palestine Faculty of Engineering and Urban planning Software Engineering Department.
Introduction To System Analysis and Design
Object Oriented System Software Engineering. Object Oriented Analysis & Design - 1 Everything is a class class is a blueprint, abstract object has identity,
Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Object Oriented.
Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Object Oriented.
Systems Analysis & Design 7 th Edition Chapter 5.
IT 21103/41103 System Analysis & Design. Chapter 05 Object Modeling.
To navigate the slide presentation, use the navigation bar on the left OR use your right and left arrow keys. Move your mouse over the key terms throughout.
Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Object Oriented.
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
ניתוח מערכות מידע 1 Unified Modeling Language (UML) § § The Unified Modeling Language (UML) is the industry-standard language for: Specifying, Visualizing,
1 April 2009Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Formal.
Fall 2010 CS4310 Requirements Engineering A Brief Review of UML & OO Dr. Guoqiang Hu Department of Computer Science UTEP 1.
03 May 2009Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Introduction.
Object-Oriented Paradigm and UML1 Introduction to the Object- Oriented Paradigm.
Course Instructor: Kashif Ihsan 1. Chapter # 3 2.
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
1/26 On-demand Learning Series Software Engineering of Web Application - Object-Oriented Development & UML Hunan University, Software School.
OBJECT ORIENTED AND FUNCTION ORIENTED DESIGN 1 Chapter 6.
Source Mastering UML with Rational Rose 2002 Information System Engineering Introduction to UML.
OOP Review CS 124.
Source Mastering UML with Rational Rose 2002 Information System Engineering Introduction to UML.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
Introduction to Classes Intro to Computer Science CS1510, Section 2 Dr. Sarah Diesburg.
Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall Appendix A Object-Oriented Analysis and Design A.1.
Copyright © 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design Second Edition by Tony Gaddis.
MANAGING COMPLEXITY Lecture OO01 Introduction to Object-oriented Analysis and Design Abstract Data Types.
Chapter 11 An introduction to object-oriented design.
CHAPTER 6 OBJECT ANALYSIS.
2-1 © Prentice Hall, 2004 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
UML Diagrams By Daniel Damaris Novarianto S..
Main issues: • What do we want to build • How do we write this down
Object-Oriented Software Engineering Using UML, Patterns, and Java,
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
SNSCT_CSE_PROGRAMMING PARADIGM_CS206
The Object Oriented Approach to Design
Presentation transcript:

Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Object Oriented Analysis & Design Object Concepts part1

Instructor: Tasneem Darwish2 Learning Objectives  Understand what we mean by a software object  Understand how objects can communicate, using messages, to accomplish some task  Understand what happens when an object is no longer needed  Understand what we mean by a class.  Understand how to reuse code.

Instructor: Tasneem Darwish3 Introduction  The object-oriented approach was invented because of the difficulties people were having trying to get good quality systems produced on time and within budget, especially for large systems with many people involved.

Instructor: Tasneem Darwish4 Introduction  Some advantages of object-oriented approach: Code can be reused more easily Objects are easier for people to understand Specialists can communicate better

Instructor: Tasneem Darwish5 What is an object?  An object is a thing (an entity)  All objects have attributes:  Objects also have behaviour: a car can move from one place to another ObjectAttributes A cara manufacturer, a model number, a colour and a price

Instructor: Tasneem Darwish6 What is an object?  In programming terms, objects become stand-alone modules with their own knowledge (attributes) and behaviour  Not all aspects of a real-world object are needed to be considered as attributes or behaviours For example a student object shouldn’t have a height attribute in a university registration software system.

Instructor: Tasneem Darwish7 What is an object?  To create a new object in an object-oriented programming language we can use a creation expression ( a constructor). oldPerson = new Person("Sue Smith");

Instructor: Tasneem Darwish8 Identical or Equal  Consider holding a blue pen in your left hand and a blue pen in your right hand. The pens are equal but not identical.  In every country people see the Sun and its identical because there is only one sun.

Instructor: Tasneem Darwish9 Identical or Equal  To create two Pen objects and their colour is blue. bluePen_1 = new Pen(“blue”); bluePen_2 = new Pen(“blue”);  The bluePen_1 and bluePen_2 are equal because they have the same attributes values “blue” but they are not identical.  The objects bluePen_1 and bluePen_3 are identical bluePen_3 = bluePen_1

Instructor: Tasneem Darwish10 depicting objects  To represent an object on paper we can use a special notation called the Unified Modelling Language (UML) object diagram

Instructor: Tasneem Darwish11 depicting objects  An example of an object is a coffee machine object. (1) we should decide what operations (behaviour) a coffee machine needs: display drinks select drink accept money dispense drink

Instructor: Tasneem Darwish12 depicting objects (2) we should think about what the coffee machine needs to know in order to perform (the attributes) the operations: available drinks drink prices drink recipes

Instructor: Tasneem Darwish13 Encapsulation  Encapsulation refers to an object hiding its attributes behind its operations.  Hidden attributes are said to be private  Private attributes can be accessed through the object operations only.

Instructor: Tasneem Darwish14 Association and aggregation  All objects are connected to other objects, directly or indirectly, strongly or loosely.  When we’re modelling with objects, we can connect them in two principal ways: association or aggregation  Association is a weak form of connection: the objects may be part of a group, or family, of objects but they’re not completely dependent on each other.  Aggregation means putting objects together to make a bigger object.

Instructor: Tasneem Darwish15 Association and aggregation  Association example: A car, a driver, a passenger and another passenger are assosiated The Figure is an association on an object diagram – the attributes and operations have been omitted here in order to emphasize the structure.

Instructor: Tasneem Darwish16 Association and aggregation  Aggregation example: A House is an aggregation object

Instructor: Tasneem Darwish17 Association and aggregation  Some examples of aggregation and association: Friends: We would expect friends to be an association 1.there is no sense in putting the friends together to make a larger friend; 2.friends come and go over time. Components in a television set: its an aggregation 1.The components together form a television 2.If one component is removed the TV will not work Books on a bookshelf: This is an association Windows in an office block: this is an aggregation

Instructor: Tasneem Darwish18 Graphs and Trees  A tree is another name for a hierarchy.  aggregation is often referred to as a tree

Instructor: Tasneem Darwish19 Graphs and Trees  A graph is an arbitrary set of connections between a group of objects.  Objects in an association often form a graph.

Instructor: Tasneem Darwish20 Graphs and Trees  A tree is a special case of a graph  each node (object) in a tree has only one parent node but it can have any number of children.  Any group of connected objects forms an association, but only associations which have one parent for each child structure (aggregations) qualify as trees.