Agile Software Development
Course Content
Introduction to Agile Software Development
Overview of Agile Methodology
- Definition and principles of Agile
- History and evolution of Agile methodologies
- Comparison with traditional Waterfall methodology
Agile Manifesto and Principles
- Understanding the Agile Manifesto
- The 12 principles behind the Agile Manifesto
- Emphasis on individuals and interactions, working software, customer collaboration, and responding to change
Key Concepts and Terminology
- Definitions of terms: user stories, sprints, iterations, backlog, burndown charts, etc.
- Understanding roles: Product Owner, Scrum Master, Development Team
Agile Frameworks and Methodologies
-
Complete course content will be provided when requesting for a quoatation.
Course Materials
Textbooks:
- Agile Estimating and Planning by Mike Cohn
- Scrum: The Art of Doing Twice the Work in Half the Time by Jeff Sutherland
- Extreme Programming Explained by Kent Beck
Online Resources:
- Scrum.org and Scrum Alliance websites
- Agile Alliance resources and articles
- Online courses on platforms like Coursera, edX, and Udacity
Tools and Software:
- Jira, Trello, Asana for project management
- Jenkins, Travis CI, CircleCI for CI/CD
- Git for version control
- Tools for TDD: JUnit, NUnit, pytest
Learning Outcomes
By the end of the training, participants will be able to:
- Understand and apply Agile principles and practices.
- Differentiate between various Agile frameworks and methodologies.
- Plan and execute projects using Agile techniques.
- Implement and manage Agile development practices like TDD, CI/CD, and refactoring.
- Use Agile project management tools effectively.
- Scale Agile practices in larger organizations.
- Lead Agile transformations and foster a culture of continuous improvement.