1. OO Paradigm(model)
1.1. Programming Paradigm
1.1.1. Procedural Paradigm
1.1.2. OO Paradigm
2. Principal of Object Orientation
2.1. why ?
2.1.1. Modularization
2.1.2. Abstraction
2.1.3. Hierarchy
2.1.4. Encapsulation & Information Hiding
2.1.4.1. Encapsulation
2.1.4.2. information hiding
2.1.5. improved maintainability
2.2. relationship
2.2.1. class
2.2.2. object
2.2.2.1. state
2.2.2.2. behavior
2.2.2.3. identiy
2.3. Advantage
3. UML Diagrams
3.1. Structural diagram
3.1.1. Deployment diagram
3.1.2. package diagram
3.1.3. component diagram
3.1.4. class diagram
3.1.5. object diagram
3.1.6. composite structure diagram
3.2. Behavior diagram
3.2.1. Use-case diagram
3.2.1.1. Actor
3.2.1.2. use-case
3.2.1.3. interaction
3.2.1.3.1. association
3.2.1.3.2. inclusion
3.2.1.3.3. extension
3.2.1.4. System boundary
3.2.1.5. <<furtherDetails>>
3.2.1.5.1. Analyze & Design
3.2.1.5.2. specification
3.2.2. Activity diagram
3.2.2.1. Action nodes
3.2.2.2. control nodes
3.2.2.2.1. initial node
3.2.2.2.2. final node
3.2.2.2.3. decision & merge
3.2.2.2.4. fork and join
3.2.2.3. object nodes
3.2.3. State machine diagram
3.2.3.1. state
3.2.3.2. transition
3.2.4. interaction diagram
3.2.4.1. sequence diagram
3.2.4.2. interaction over-view diagram
3.2.4.3. Timing diagram
3.2.4.4. communication diagram
4. Phases in delivering a S/W
4.1. initiation
4.2. requirement gathering
4.3. specification
4.4. design
4.5. implementation
4.6. testing & integration
4.7. maintainance
5. Complexity
5.1. Simple
5.2. complex
5.2.1. why ?
5.2.1.1. Complexity of problem domain
5.2.1.1.1. Contradictory/competing requirements
5.2.1.1.2. impedance mismatch
5.2.1.1.3. often requirement changing
5.2.1.2. difficulties in managing SDLC
5.2.1.3. Flexibility through Software
5.2.1.4. problems in characterizing behavior of discrete systems
5.2.2. Consequences of Unrestrained complexity (Software Crisis)
5.2.2.1. Delay
5.2.2.2. Over-budget
5.2.2.3. deficient in their stated requirements
5.2.3. Structure of Complex System
5.2.3.1. Attributes
5.2.3.1.1. Hierarchic structure
5.2.3.1.2. relative Premitives
5.2.3.1.3. Separation of Concern
5.2.3.1.4. Common patterns
5.2.3.1.5. stable intermediate forms
5.2.4. Simplifying the complexity
5.2.4.1. System Analysis & Design
5.2.4.1.1. Decomposition
5.2.4.1.2. Abstraction
5.2.4.1.3. Hierarchy