software design concepts 773.707 spring 2002 dr. sothy vignarajah object oriented programming

8
Software Design Concepts 773.707 Spring 2002 Dr. Sothy Vignarajah Object Oriented Programming

Upload: irma-phelps

Post on 21-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Software Design Concepts 773.707 Spring 2002 Dr. Sothy Vignarajah Object Oriented Programming

Software Design Concepts

773.707 Spring 2002

Dr. Sothy Vignarajah

Object Oriented Programming

Page 2: Software Design Concepts 773.707 Spring 2002 Dr. Sothy Vignarajah Object Oriented Programming

Chapter 11 and Chapter 12

• Objectives:

• Object-Oriented Model

• Object-Oriented Methodology

• Object-Oriented Analysis

• Object-Oriented Design

• Terminology

Page 3: Software Design Concepts 773.707 Spring 2002 Dr. Sothy Vignarajah Object Oriented Programming

Object-Oriented Model

• The fundamental entity –the object receives and sends messages, performs computations and has a local state that can be modified.

• Problems are solved by sending messages to each other. The OO model is made up of 4 components: objects, messages, methods, and classes.

Page 4: Software Design Concepts 773.707 Spring 2002 Dr. Sothy Vignarajah Object Oriented Programming

Object-Oriented Analysis

• Here we identify the abstractions of the problem domain by identifying:

• Objects

• Classes

• Attributes

• Methods

• relationships

Page 5: Software Design Concepts 773.707 Spring 2002 Dr. Sothy Vignarajah Object Oriented Programming

OOD

• Define the problem – understand the structure of the problem space– Understanding is an iterative process. – As you go deeper into the problem you uncover

new aspects of the problem which we may not have recognized before.

– In real world projects, the problem space is described by some type of formal specifications.

Page 6: Software Design Concepts 773.707 Spring 2002 Dr. Sothy Vignarajah Object Oriented Programming

Develop an informal strategy

• Once the highest levels of the problem is understood, create an informal strategy that parallels our view of the world.We first have an intuitive fell for the problem and then tighten up our understanding by evolving more formal descriptions – “it should be recognized that informality will always exist during the formulation of a specification” (Balzer, Goldman & Wile, 1978)

Page 7: Software Design Concepts 773.707 Spring 2002 Dr. Sothy Vignarajah Object Oriented Programming

Formalize the strategy

• An informal strategy – extract the nouns which represent objects, along with qualifying adjectives which represent attributes of each object. As you select the noun phrases, you uncover several types of nouns: common nouns – names of classes of entities (tables, terminals, sensors, switches)

Page 8: Software Design Concepts 773.707 Spring 2002 Dr. Sothy Vignarajah Object Oriented Programming

Formalize the strategyContd.

• Mass nouns and units of measure – quality, activity, substance or a quantity – water, matter, fuel

• Proper nouns and nouns of direct reference – Name of a specific being or entity – nozzle-pressure sensor, my table, abort switch etc.

• (The first two identify abstract data types)