Object Oriented Software Engineering
To learn the advanced software engineering principles and methodologies for effective software development
Learning Outcomes:
On successful completion of this course, the learner will be able to
- To learn about software prototyping, analysis and design
- To learn UML and its usage
- Case studies to apply the principles
Course Contents:
- INTRODUCTION Software Engineering Paradigms - Software Development process models - Project & Process -Project management – Process & Project metrics - Object Oriented concepts & Principles.
- PLANNING & SCHEDULING Software prototyping - Software project planning – Scope – Resources - Software Estimation -Empirical Estimation Models-Planning-Risk Management - Software Project Scheduling – Object oriented Estimation & Scheduling.
- ANALYSIS & DESIGN : Analysis Modeling - Data Modeling - Functional Modeling & Information Flow- Behavioral Modeling-Structured Analysis - Object Oriented Analysis - Domain Analysis-Object oriented Analysis process - Object Relationship Model - Object Behaviour Model; Design Concepts & Principles - Design Process - Design Concepts - Modular Design –Design Effective Modularity - Introduction to Software Architecture - Data Design – Transform Mapping – Transaction Mapping – OOD - Design System design process- Object design process -Design Patterns.
- IMPLEMENTATION & TESTING: Top-Down , Bottom-Up , object oriented product Implemention & Integration. Software Testing methods-White Box, Basis Path-Control Structure –Black Box-Unit Testing- Integration testing-Validation & System testing.Testing OOA & OOD models-Object oriented testing strategies.
- MAINTENANCE: Maintenance process-System documentation-program evolution dynamics-Maintenance costs-Maintainability measurement – Case Studies