Custom Search
Provided by: Vijay Nathani

OOAD UML

Analysis and Design

Vijay Nathani
Training Provided by Vijay Nathani This course cover all the object oriented design principles. It is helpful for people who want to do effective design using an OO language.
Related Jobs or Careers: Developer
This is primarily ilt training
Contact Vijay Nathani for more information
Course Level:advanced
Duration:3 days
Training Presented in:English
OOAD UML Pre-requisite: The participant must know
- The basics of at least one object oriented language like C or C# or Java.
- Basic OO concepts like Inheritance and polymorphism.

This course covers the important design principles and UML notations. The participant will be able to recognize a good design from a poor one at the end of course. The participant will have a clear idea of how analysis and design is done using UML notations. A tool like Rational or equivalent will be used to draw the UML diagrams.

Day 1:
Complexity of Software, Software Crisis
What is Analysis and Design?
SDLC
What is an Object? State, Behavior and Identity of an object.
Abstraction, Encapsulation, Modularity, Inheritance, Polymorphism
Introduction to UML, Goals of UML
Class Diagram in UML. Attributes, operations, visibility, Association, role naming, Association class, Multiplicity, Aggregation, Composition, Generalization, Dependency, Realization, Interface, Nested class
Use Case Diagram in UML. Main Flow, Alternate flow. Relationships between use cases.
Finding classes in an application

Day 2:
Sequence diagram. Different types of messages
Communication diagram
Activity diagram. Swim lanes.
State chart diagram. Transitions. Actions. Events. Nested sub states. Concurrency. History.
Design Principles: Liscov's substitution principle, DRY (Don't Repeat Yourself), Samurai principle, Single Responsibility principle, Interface Segregation principle,
Self documenting design and code
Null pattern
Mutable vs. Immutable objects


Day 3:
Package diagram
Component diagram
Deployment diagram
Forward and Reverse engineering.
Design Principles: Law of Demeter; Tell, don't ask; open closed principle; Dependency Inversion Principle; Common closure principle; Acyclic Dependency Principle; Stable Dependency Principle.
Problems with getters and setters in a class
Coupling between classes and packages.
Designing business logic: Transaction script, Table Module, Domain Module. Advantages and disadvantages of each.
Layering. Project Architecture. Bounded context. Context map.
Guidelines of good design and effective UML
About The Training Provider: Vijay Nathani
Vijay Nathani - I am a trainer for various subjects of Information Technology. I give trainings in - Agile Software Development with Scrum, XP and Lean. - Agile Acceptance Testing - Test Driven Development - Design Patterns - UML and OOAD I customize my training as per the needs of the client. For my detailed profile, please visit http://sites. google. com/ site/ nathanivijay/ I am a...
tcw11-gfc-v396M-11/21/09-11:51:01-()[B]-[B]-[B] -04:20:44