unit 4

13
Unit 4 Object Oriented design process and design axioms

Upload: gopal10scs185

Post on 24-Jan-2015

264 views

Category:

Technology


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Unit 4

Unit 4

Object Oriented design process and design axioms

Page 2: Unit 4

Object Oriented design process

Design calsses, methods, attributes,

associations

Refine UML classDiagrams

Apply design axioms Design

view /access layers and prototype

User satisfaction and usability test based on

use cases

Access layer

•Create mirror class•Identify access layer class relationship•Simplify class and relationship

•Remove redundant class•Method class

Page 3: Unit 4

Object Oriented design axioms

• Axioms– Hypothesized from observation– Common truth– Always valid– No need to prove and derive

• Theorem– It can be proven from axioms

• Corollary– Follows from axioms and theorems

Page 4: Unit 4

Axioms for OOAD• Axiom1

– Maintain the independence of component• While going from requirements and use case to system component, each

component must satisfy requirements without affecting other requirements• Ex:Fridge door

– Req» Access to food» Minimal energy loss

– Vertical door» Access to food» No Minimal energy loss

– Horizontal door» Provides both requiremnt

• Axiom 2– Minimize the information content of the design

Page 5: Unit 4

corollary

• Called design rules

• Derived from axioms

Page 6: Unit 4

corollaries

• Corollary 1– Uncoupled design with less information content

• Corollary 2– Single purpose

• Corollary 3– Large number of single classes

• Corollary 4– Strong mapping

• Corollary 5– standardization

• Corollary 6– Design with inheritance

Page 7: Unit 4

Axiom1

Axiom2

Corollary 1

Corollary 2

Corollary 3

Corollary 6Corollary 5

Corollary 4

Page 8: Unit 4

Corollary 1• Uncoupled design with less information content

– Goal• Maximize cohesiveness• Improve coupling• Less information transaction among objects

– Coupling• Deals interaction among objects

– Types of coupling• Interaction coupling

– Involves the amount and complexity of messages bw components– Tightly coupled objects leads to change in one object reflects changes

in others• Inheritance coupling

– Inheritance is form of coupling bw super and sub class– High Inheritance coupling is desirable

– Cohesion• Deals interaction within a single objects• Reflects single purpose ness• High cohesiveness can lower coupling

Page 9: Unit 4

Corollary 2

• Single purpose– Each class must have a purpose – Clearly defined and necessary in the context

of achieving system’s goals

Page 10: Unit 4

Corollary 3

• Large number of single classes, reusability– The less specialized the classes are, the

more likely future problems can be solved by a recombination of existing classes

– Smaller classes• less specialized• Chance of reusing

– Large and complex classes• More specialized• Less chances of reusing

Page 11: Unit 4

Corollary 4

• Strong mapping– As the model progress from analysis to

implementation, more detail is added, but it remains the same

– Strong mapping links classes identified during analysis and design phase

Page 12: Unit 4

Corollary 5

• Standardization– Documentation

• Knowledge of existing classes helps to identify new classes

Page 13: Unit 4

Corollary 6

• Design with inheritance