OOD 1 - Metadesign

advertisement
Object Oriented Concepts
Introduction
1
Unnat-e Infotech
Agenda








Design, Software design
Definitions of OO constructs
Class Diagrams, Sequence Diagrams, State
Diagrams
Some principles of design
Case Study
Back To OO
OO in maintenance projects
What it is not!
– It is not a UML session
– Less syntax specific, more conceptual
Unnat-e Infotech
2
Modeling



a small scale replica of the system
a simplification of reality
Uses
– Communication with clients
– Visualization of the system
– Discussion of strengths and weaknesses of proposed
system before implementation
– Provides the big picture
– Handling complexity by providing different views of
thesystem
– Documents the tradeoffs that we make
3
Unnat-e Infotech
Abstraction
The selective examination of part of the
system
 The amplification of the relevant and
elimination of the irrelevant
 Technique for dealing with complexity
 Different applications will abstract
different aspects of an object

4
Unnat-e Infotech
Constructs
Classes
 Objects
 Relationships

– Association
– Aggregation
– Inheritance

Polymorphism
5
Unnat-e Infotech
Use cases






Used in analysis phase
Describes an interaction of one or more users
with the system
Simple Use case diagram depicts the interaction
in a graphical format
Complex use case diagrams depict actors, system
boundary, and use cases of a system. They also
depict the relationship between use cases
A use case can use another use case
A use case can extend another use case
6
Unnat-e Infotech
Simple use case – item
checkout
Customer sets item on counter
 Sales clerk swipes bar code reader on item
code
 System looks up UPC code
 System shows item code and price
 System adds price to bill amount
 Error code 1 : item code unreadable
 Error code 2: item code not found

7
Unnat-e Infotech
Case Study

Problem statement
– Must be in users language
– Can involve UML diagrams for analysis
– Analysis may lead to restatement of problem as issues
become more clear




Use Cases
Class diagram
Sequence Diagram
State Diagram
8
Unnat-e Infotech
Back to OO – Some principles
Abstraction
 Open closed principle
 Single responsibility principle

9
Unnat-e Infotech
Back to OO

Benefits
–
–
–
–
–
Abstraction
Encapsulation
Communication
Different views of the same system
Same terminology from requirements to
implementation
– Loosely coupled systems
– Cleaner interfaces between systems
– Reuse????????
10
Unnat-e Infotech
OO in maintenance projects

Agile methods – Extreme Programming
–
–
–
–
–
–
Standup meetings
Pair programming
Client involvement
Small frequent releases
Use Cases
Continuous Refactoring and testing
11
Unnat-e Infotech
Summary
Basic concepts covered using a
programming language
 Case study
 Benefits/drawbacks of OO

12
Unnat-e Infotech
OO Tools
ArgoUML
 Poseidon
 Together C
 Rational Rose

13
Unnat-e Infotech
References

Books
– Object oriented Modelling and Design – Rumbaugh
– UML User guide – Booch, Rumbaugh, Jacobson
– UML distilled – Martin Fowler

URLs
–
–
–
–
www.martinfowler.com
www.holub.com
www.omg.org, www.uml.org
http://www.intelligentedu.com/newly_researched_free
_training/UML.html
– www.objectmentor.com
14
Unnat-e Infotech
Download