160 likes | 365 Views
Object Oriented Concepts. Introduction. 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
E N D
Object Oriented Concepts Introduction 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
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 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 Unnat-e Infotech
Constructs • Classes • Objects • Relationships • Association • Aggregation • Inheritance • Polymorphism 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 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 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 Unnat-e Infotech
Back to OO – Some principles • Abstraction • Open closed principle • Single responsibility principle 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???????? 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 Unnat-e Infotech
Summary • Basic concepts covered using a programming language • Case study • Benefits/drawbacks of OO Unnat-e Infotech
OO Tools • ArgoUML • Poseidon • Together C • Rational Rose 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 Unnat-e Infotech