CIE354 Agile Software Development Syllabus:
CIE354 Agile Software Development Syllabus – Anna University Regulation 2021
COURSE OBJECTIVES:
• To provide students with a theoretical as well as practical understanding of agile software development practices and how small teams can apply them to create highquality software.
• To provide a good understanding of software design and a set of software technologies and APIs.
• To do a detailed examination and demonstration of Agile development and testing techniques.
• To understand the benefits and pitfalls of working in an Agile team.
• To understand Agile development and testing.
UNIT I AGILE METHODOLOGY
Theories for Agile management – agile software development – traditional model vs. agile model – classification of agile methods – agile manifesto and principles – agile project management – agile team interactions – ethics in agile teams – agility in design, testing – agile documentations – agile drivers, capabilities and values.
UNIT II AGILE PROCESSES
Lean production – SCRUM, Crystal, Feature Driven Development, Adaptive Software Development, and Extreme Programming: Method overview – lifecycle – work products, roles and practices.
UNIT III AGILITY AND KNOWLEDGE MANAGEMENT
Agile information systems – agile decision making – Earl’s schools of KM – institutional knowledge evolution cycle – development, acquisition, refinement, distribution, deployment, leveraging – KM in software engineering – managing software knowledge – challenges of migrating to agile methodologies – agile knowledge sharing – role of story-cards – Story-card Maturity Model (SMM).
UNIT IV AGILITY AND REQUIREMENTS ENGINEERING
Impact of agile processes in RE – current agile practices – variance – overview of RE using agile – managing unstable requirements – requirements elicitation – agile requirements abstraction model – requirements management in agile environment, agile requirements prioritization – agile requirements modeling and generation – concurrency in agile requirements generation.
UNIT V AGILITY AND QUALITY ASSURANCE
Agile Interaction Design – Agile product development – Agile Metrics – Feature Driven Development (FDD) – Financial and Production Metrics in FDD – Agile approach to Quality Assurance – Test Driven Development – Pair programming: Issues and Challenges – Agile approach to Global Software Development.
TOTAL: 45 PERIODS
COURSE OUTCOMES:
Upon completion of the course, the students will be able to:
CO1: Realize the importance of interacting with business stakeholders in determining the requirements for a software system
CO2: Perform iterative software development processes: how to plan them, how to execute them.
CO3: Point out the impact of social aspects on software development success.
CO4: Develop techniques and tools for improving team collaboration and software quality. Perform Software process improvement as an ongoing task for development teams
CO5: Show how agile approaches can be scaled up to the enterprise level.
TEXT BOOKS:
1. David J. Anderson and Eli Schragenheim, ―Agile Management for Software Engineering: Applying the Theory of Constraints for Business Results‖, Prentice Hall, 2003.
2. Hazza and Dubinsky, ―Agile Software Engineering, Series: Undergraduate Topics in Computer Science‖, Springer, 2009.
REFERENCES:
1. Dingsoyr, Torgeir, Dyba, Tore, Moe, Nils Brede (Eds.), ―Agile Software Development, Current Research and Future Directions‖, Springer-Verlag Berlin Heidelberg, 2010
2. David J. Anderson; Eli Schragenheim, ―Agile Management for Software Engineering: Applying the Theory of Constraints for Business Results‖, Prentice Hall, 2003
3. Hazza & Dubinsky, ―Agile Software Engineering, Series: Undergraduate Topics in Computer Science‖, Springer, VIII edition, 2009
4. Craig Larman, ―Agile and Iterative Development: A manager‗s Guide‖, Addison-Wesley, 2004
5. Kevin C. Desouza, ―Agile information systems: conceptualization, construction, and management‖, Butterworth-Heinemann, 20
