Advanced Software Engineering

Course Code: MCA512

Course Title: Advanced Software Engineering  (4 Credits)

Back

 

Course Contents

 

Unit 1: Software Engineering Basics – Introduction, Software Engineering Terminologies, Product Life Cycle, Project Life Cycle Models- Spiral model, Waterfall model, Evolutionary prototyping model, Reusable software model.

 

Unit 2: Software Engineering Methodologies- Introduction, Components of Software Engineering, Software Development Models- Capability Maturity Model, Rapid Application Development model, Incremental model.

 

Unit 3: Predictive Versus Adaptive Approaches to SDLC- Introduction, Traditional Predictive Approaches to SDLC, Adaptive Approaches to SDLC, Separation of Design and Construction, Unpredictability of Requirements.

 

Unit 4: Agile Programming- Introduction, Flavors of Agile Development, Agile Manifesto, Refactoring Techniques, Limitations of The Agile Process.

 

Unit 5: Extreme Programming (XP)- Introduction, XP Equation, XP Values, Assuming Sufficiency- Sufficient time and resources, Constant change of cost, Developer effectiveness, Freedom to experiment.

 

Unit 6: Extreme Programming Practices- Introduction, Coding Practices, Developer Practices, Business Practices.

 

Unit 7: XP Events- Introduction, Iteration Planning- Stories and tasks, Estimates and schedules, First iteration, Iteration, Releasing.

 

Unit 8: Extreme Programming Practices- Introduction, Story Cards, Task Cards, Bullpens.

 

Unit 9: Roles in Extreme Programming- Introduction, Customer’s Roles, Developer’s Roles, Supplementary Roles.

 

Unit 10: Coding XP Style- Introduction, Balance Functionality with Simplicity, Implement Only the Needed Features, Eliminate Repetition.

 

Unit 11: Adopting XP- Introduction, Before Commencing XP, Eliminating Fear and Working Together, Starting Feedback, Including Managers and Customers.

 

Unit 12: Agile Modeling with XP- Introduction, Agile Modeling – Principles, Comparing XP and Agile Modeling,  Scrum Methodology- The roles of Scrum, Advantages of Scrum.

 

Unit 13: Dynamic Systems Development Methodology- Introduction, Overview of DSDM, the Principles of DSDM, Phases of DSDM, Core Techniques Used in DSDM.

 

Unit 14: XP Tools- Introduction, JAVA and XP, Tools and Philosophies, Open source Toolkit.

 

Back