Agile Boot Camp: ICP Fundamentals Certification

As a ICAgile Certified Professional designation course, this Agile training course offers hands-on practices in Iteration Planning, Product Roadmap and Backlog, Estimating Practices, User Story Development and Iteration Execution. There is more to Agile development than simply a different style of programming. That's often the easy part. Agile development methods change your approach for requirements gathering, estimation, planning, team development, stakeholder interactions and more. While not a silver bullet, Agile Methodologies have become the most practical way to create outstanding software. We'll explore the leading Agile methodologies. You'll learn the basic premises and techniques behind Agility — so that you can apply them to your projects. The classroom will be broken up into Agile teams and your expert instructor will drive each team through the Agile process from planning through execution. Your instructor will answer questions with real-world experience, and you will leave the class with practical knowledge and a clear roadmap for your team's success.

Skills Gained

Attendees who complete this course automatically receive the ICP designation after course completion, based on their exposure to the Agile Fundamentals learning objectives, which is covered in this course. The ICP designation verifies that the attendee has been introduced to these five areas through training:

Agile History & Mindset

Individuals & Interactions

Value–Driven Development

Consumer & User Involvement

Planning and Adapting

Who Can Benefit

Because this is an immersion course and the intent is to engage in the practices every Agile team will employ, this course is recommended for all team members responsible for delivering outstanding software. That includes, but is not limited to, the following roles:

Business Analyst

Technical Analyst

Project Manager

Software Engineer/Programmer

Development Manager

Product Manager

Product Analyst

Tester

QA Engineer

Documentation Specialist

Course Details

Since the ICP is required to attain any ICAgile Expert certification, it is an excellent way to jumpstart your Agile career. You can include the industry–recognized designation in your signature, resumes, and also display your newly learned Agile skills from the class.

Structure a team with generalizing specialists so the team can develop working software incrementally

Practice and maintain a regular cadence when delivering working software each iteration

Follow the team approach; start as a team, finish as a team — and focus on delivering value to the organization

Learn the different approach to Agile architecture and design that supports a more incremental and emergent project.

Gain knowledge and understanding of Agile principles and why they are so important for each team

Embrace the five levels of planning and recognize the value of continuous planning

Build a backlog of prioritized and estimated user stories that provides emergent requirements for analysis and foster customer engagement and understanding

Engage in more effective estimating (story points) and become more accurate by being less precise

Create accurate Agile release plans that connect you back to business expectations – including hard date commitments and fixed price models

Why Agile?

Team Exercise:

We will explore as a class what problems plague software development so that we can recognize how Agile is an answer to real world problems.

Becoming Agile

Agile Mental Models

Agile Manifesto

Agile Principles

Agile Practices

Team Exercise

Teams will engage in a fun exercise that will reinforce the importance of, and power behind, self-organizing teams. As with sports teams, individual roles are important, but even more important is the need to work toward a common goal together. At times that means blurring the lines of traditional roles. Great teams will not define themselves by their individual roles.

Building an Agile Team

Team Exercise:

We will discuss as a class what makes a great team based on teams we've participated on that were great.

Agile Project Planning

Vision

Roadmap

User Roles and Personas

Team Exercise:

Teams will practice turning User Roles into full fleshed personas.

Backlog Planning

Writing User Stories

Prioritization

Estimating

Team Exercise:

Each team will conduct a brainstorming session for creating a product backlog in the form of user stories. Each team will present some of their user stories and the instructor will lead discussion about where teams hit the mark and areas for improvement (Instructor will not have all of the ideas, this is a great opportunity for team dynamic). After some feedback and sharing, each team will take a second pass at creating some user stories.

Team Exercise:

Teams are tasked with assigning a priority to their user stories at the appropriate level of detail.

Team Exercise:

Teams are tasked with assigning story point estimates to enough user stories to extend at least a few iterations into the future. The methods for determining the story point estimates will be Planning Poker and Affinity estimating. Teams will be given enough time to begin to see some consistency in their team and triangulate relative sizing of their stories. Teams are then asked to estimate their team's velocity.

Release Planning

Team Exercise:

Teams are tasked with building a release plan by incorporating priority, story point estimates, team velocity and customer/product owner input to assign stories to iterations for the desired release.

Measuring and Communicating Progress

Actual effort and remaining effort

Burndown charts

Tools and Reporting

Your company specific measures

Course discussion: Instructor will lead a discussion on the effectiveness of the measurements appropriate for Your company. We need to have further discussion regarding what measurement and communication tools are needed/expected at your company.

Story Review

Iteration Planning

Team Exercise:

Teams are tasked with discussing the details of the stories that, based on the estimated team velocity, may be completed in the first iteration. As the details are discussed, the tasks will be identified that would be needed to achieve the desired result. Next, with all of the tasks identified, teams assign actual time estimates to the tasks identified. Finally, the team will revisit the sizing of the iteration to determine if they have the appropriate time and resources to meet their commitment.

Iteration Execution

The Daily Scrum

Visual Management

Agile Metrics

Team Exercise:

Taskboards are an invaluable communication tool during each iteration. Each team is tasked with coming up with their taskboard that communicates clearly their commitments for the iteration and progress against those commitments.

Inspect and Adapt

The Iteration Review

The Demo

The Retrospective

Team Exercise:

Teams will discuss what things they can do the day after class ends to take what they've learned and implement it immediately so that they don't lose what they've learned.