Who should attend
As an introductory course, there is no technical prerequisite for students looking to attend. If you are looking to learn about Agile methods, and are considering implementing these within your software development team, then you will be welcome on this course.
Typical students include project managers, developers, programmers, testers, and software architects.
The Introduction to Agile course teaches the concepts, principles, and methods which underpin the Agile methodology, and is designed to provide students with the foundation skills required to implement Agile within their own team. Students will also learn, from industry professionals, the pros and cons of Agile software development.
You will also be instructed in the level of collaboration and communication required (between the customer and developers) to execute Agile effectively. The whole course is delivered by an expert teacher.
On completing this course, students should be able to implement an Agile development methodology within their team.
Module 1: Why Agile – What are the problems that Agile is addressing?
Software Development has historically been plagued by many problems including inadequate requirements that lead to products that customers aren’t happy with and sometimes can’t use.We will start the class by making the case for a shift to an Agile approach to solve the problems inherent in software development.
Exercise: As a class we will discuss the various problems that the class has experienced in their own projects so that we can then understand how Agile will help them address these problems. The class will understand from this exercise that they are not alone with a set of problems that others don’t also experience.
Module 2: The Agile Paradigm Shift – Software Development is Complex
The problems of software development are frequently the result of treating it like it is a manufacturing process designed to replicate the same outcomes on each pass through the process.We will learn how software development is a complex endeavor more like driving on a freeway with high variation of experience each time we do it.We will discuss the importance of building feedback loops into the process to accommodate variation.
Module 3: The Agile Foundation – The Agile Manifesto and Principles
The word Agile was adopted in 2001 to describe approaches that had evolved over the previous decade to address the problems of software development.In 2001 several experienced software development practitioners came together and through collaboration, formalized these practices under the auspices of Agile.We will understand the Agile Manifesto and Principles that resulted from this collaboration.
Module 4: Agile Methodologies – What’s trending?
In this section we will review the Agile methodologies that are trending.We will visit first Lean which is foundational and influences all other Agile methodologies.Then we will do a overview of Scrum.Scrum is the most popular Agile methodology and is great for projects.Scrum or Scrum variants are being used by about 75% of those doing Agile, but Scrum is not the only Agile approach.We’ll then see how Kanban might be a better answer for operations and sustainment work.We will then review the Extreme Programming practices that can be used mixed into other Agile approaches to help us rapidly accommodate change.
Module 5: Building the Agile Team
Traditional software development focuses on results needed from a project.Agile focuses on creating a team that can deliver results over and over.In this section we will discuss what makes a high-performing team and how to build that team.The section will also cover the team roles associated with an Agile approach.
Exercise: The class will discuss great teams that they have experienced and identify what made those teams great. The class will then discuss how to design a kick-off that will send a team off towards becoming a high-performing team.
Module 6: Inspect and Adapt – Continuous Improvement
The power of Agile comes from the fact that continuous improvement is built into the Agile system.In this section we will review how People, Product and Process improve themselves through a frequent inspect and adapt process.We will discuss the main Agile ceremonies that help us accomplish this: Iteration Review/Demo and the Retrospective.
Module 7: Agile Adoption – Insuring the Success of your Adoption Efforts
Agile Adoption can be accomplished with different approaches and at different speeds.In this section we will review the best practices of Organizational Change Management as it applies to an Agile adoption and consider the primary reasons for adoption failure.We will wrap the course up and end with a discussion on where do you go from here.