ims5024 week 61 ims 5024 object orientation (1). ims5024 week 62 content individual assignment date...
Post on 21-Dec-2015
216 views
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