|
Provided by: Vijay Nathani OOAD UMLAnalysis and Design |
![]() |
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
|
|
||||||||||
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
- 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...

