IMS5024 Week 61 IMS 5024 Object orientation (1). IMS5024 Week 62 Content Individual assignment date Group assignment What is object orientation? n Place.

Post on 21-Dec-2015

214 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

Transcript

IMS5024 Week 6 1

IMS 5024

Object orientation (1)

IMS5024 Week 6 2

Content

Individual assignment date Group assignment What is object orientation? n n Place in ISD Evaluation of Object orientation Reading list

IMS5024 Week 6 3

Reminder - Date for the individual assignment

30 August 2001 in class

IMS5024 Week 6 4

History of object orientation

Developed in the 1970’s Various places – computer architecture,

operating systems, databases, cognitive science, artificial intelligence

Programming language Simula and Smalltalk

IMS5024 Week 6 5

Why popular now

Popularity of graphical interfaces Acceptance of C++ Cost cutting by business Increase in the power of technology Shift from mainframes to distributed

computing

IMS5024 Week 6 6

Object orientation describe:

Structure (data) Behaviour Function (too a lesser degree?)

Of Objects

IMS5024 Week 6 7

Object orientation help to present:

The objectStateBehaviour described by actions

Of objects

IMS5024 Week 6 8

Other characteristics

AbstractionInheritance EncapsulationPolymorphism

IMS5024 Week 6 9

Techniques used in Object orientation Object model – object diagrams Dynamic model – state transition

diagrams Functional model – action data flow

diagrams, use case

IMS5024 Week 6 10

Object

‘is something to which action is directed, it has an identity, a state and exhibits behaviour’

Can be anything concrete or conceptual Is an abstraction of the real world

IMS5024 Week 6 11

Class

‘A group of object exhibiting the same characteristics such as structure and behaviour’

Abstraction Inheritance

IMS5024 Week 6 12

Message/signal

Objects interact with one another through signal or message

Signals are generated by an event Event occur when the object’s state changes Change the state of an object through an

objects methods Has to conform to the interface of the object

IMS5024 Week 6 13

Notation for a class

Object name

Attributes

Processes/Methods

Public part

IMS5024 Week 6 14

Aggregation/ whole/part class

Car

WheelEngineBody

CylinderCamshaft

IMS5024 Week 6 15

Generalisation/Specialisation

Account

Basicaccount

Checking account

Loan

ServiceAccount

IMS5024 Week 6 16

Steps

Develop a summary paragraph Identify objects of interest Identify method/processes Define attributes of objects Perform class analysis Draw state transition diagram

IMS5024 Week 6 17

Develop a summary paragraph

Write declarative sentences Write each sentence on its own line Review paragraph carefully to ensure:

– All desired functions are represented– All major information and processes are

identified– All sentences are at the same level of

abstraction and importance

IMS5024 Week 6 18

Example of declarative sentences

IMS5024 Week 6 19

Identify objects of interest

Underline all nouns in summary paragraph

List underlined nouns separately Evaluate each noun to ensure it is an

object Determine whether object is solution or

problem space Name each object in solution space

IMS5024 Week 6 20

Example of objects

IMS5024 Week 6 21

Identify processes

Circle all verbs in the summary paragraph List verbs on a separate paper Evaluate each verb Determine whether the process is solution or

problem space Name each unique process in the solution

space Assign object to verbs if the objects is

transformed or read by the process Evaluate object assignments

IMS5024 Week 6 22

Example of processes

IMS5024 Week 6 23

Define attributes of objects

Attributes – named fields or properties that describe a class or object

A set of attributes values describe an object or instance

Primary key – unique set of values

IMS5024 Week 6 24

Example of attributes

IMS5024 Week 6 25

Define attributes of processes

Assign attributes which were set aside during object or process definition

Review the original problem description and any notes

Review the summary paragraph to find implied attributes

IMS5024 Week 6 26

Perform class analysis

Look for shared attributes and processes across class/objects to define inheritance class

Evaluate the class/objects for specialization Evaluate the class/objects for component part

relationships Define common class objects Define meta-class

IMS5024 Week 6 27

Example of class analysis

IMS5024 Week 6 28

Thinking in Object orientation

Hard Vs Soft ?? Perspective

– Objective vs Subjective– Nature of the organisation

IMS5024 Week 6 29

Evaluation of object orientated modelling

Problem oriented Product oriented

Concep-tual

Structured analysis

Entity relationship modelling

Logical construction of systems

Modern structured analysis

Object oriented analysis

Structured design

Object oriented design

Formal PSL/PSA

JSD

VDM

Levels of abstraction

Stepwise refinement

Proof of correctness

Data abstraction

JSP

Object oriented programming

IMS5024 Week 6 30

Advantages/ Benefits of object orientation It unifies many aspects of the information

systems development process. It facilitates re-use of software code – make

application development quicker and more robust

Ability to tackle more complex problems Improve user/analyst relations ??? Improvement in the consistency of results Represent factors for change in the model

IMS5024 Week 6 31

Disadvantages of object orientation Only now starting to be used Case tools are not readily available Not easily understood by novice users Difficult to master for some analysts +

designers + programmers Inefficiency (need a lot of ‘power) Others??

IMS5024 Week 6 32

Object orientation view of ISD

Development group

Objectives

Environment

Object system

ObjectsystemChange

process

Hirschheim et al see reading list

IMS5024 Week 6 33

Reading for next week Iivari, J. (1995) Object orientation as structural,

functional and behavioural modelling: a comparison of six methods for object-orientated analysis. Information and Software Technology, vol 37, no. 3, pp. 155-163

Jacobsen, I., Booch, G., Rumbaugh, J. (1999). The unified software development process. Addison Wesley Longman, Inc. USA. Chapter 3, 7.4.3.

Rumbaugh, J., Blaha, M., Premerlani, W., Eddy, F., Lorensen, W. (1991) Object oriented modeling and design. Prentice Hall, Inc. USA. Chapter 5.1 – 5.3

top related