How to Successfully Implement an Agile Project VALUES visibility Agility is… Working Software STRATEGY RELEASE ITERATION DAILY CONTINUOUS How to Successfully Implement an Agile Project Presented by Patrick van Abbema 1 1
WHAT IS AGILE?
THE AGILE MANIFESTO We are uncovering better ways of delivering value by doing it and helping others do it. Agile Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. It allows us to rapidly and repeatedly inspect actual working services and/or software (every two weeks to one month). The business sets priorities. Teams self-organize to determine the best way to deliver the highest priority features.
THE AGILE MANIFESTO THE AGILE MANIFESTO IS BASED ON 12 PRINCIPLES Twelve principles underlie the Agile Manifesto, including: Face-to-face conversation is the best form of communication (co-location) Projects are built around motivated individuals, who should be trusted Continuous attention to technical excellence and good design Simplicity - the art of maximizing the amount of work not done - is essential Self-organizing teams Regular adaptation to changing circumstances Customer satisfaction by rapid delivery of measurable value Welcome changing requirements, even late in development Sustainable development, able to maintain a constant pace Close, daily co-operation between business people and developers Measurable deliverables is delivered frequently (weeks rather than months) Deliverables is the principal measure of progress THE AGILE MANIFESTO IS BASED ON 12 PRINCIPLES
VS THE AGILE MANIFESTO AGILE TRADITIONAL CUSTOMER COLLABORATION RESPONDING TO CHANGE WORKING SOLUTIONS HIGHEST BUSINESS VALUE IN THE SHORTEST TIME CONTRACT NEGOTIATION FOLLOWING A PLAN DOCUMENTATION DEFERRED BUSINESS VALUE VIA LONGER DELIVERY TIME AGILE METHODOLOGY – DEFINITION Agile methodology promotes an environment of adaptation, teamwork, self-organization and rapid delivery that allows for a high level of customer involvement early in project planning. It is a framework that is used to structure, plan, and control iterative and incremental development where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams.
WHY ADOPT AGILE?
IT IS A CHANGE IN FOCUS Focus less on predictive up front planning Focus more on delivering value Focus more on collaboration with the business Focus more on engaging the team
1/8/2008 Agile is a risk mitigation technique when our assumptions about predictability do not hold
How often to we really take process cost into consideration when planning our projects?
STILL ANSWERING THE FIVE QUESTIONS… When will the project be done? How much will it cost? Do we all agree on what done looks like? What are the risks to getting done on time and on schedule? How will we mitigate these risks so we can get done
…BUT TAKING A DIFFERENT APPROACH Deliver working product in short cycles Keep the evolving product highly visible Inspect outcomes frequently Change our product or processes as we learn more to ensure acceptable outcomes Do less work that will change
HOW DOES AGILE WORK?
PLAN ITERATIONS (SPRINTS) AND REALEASES Overview Timeboxed – Frozen features Variable scope – Shippable result
AGILE PROJECT MANAGEMENT AND BUSINESS ANALYSIS Process PRODUCT VISION PROJECT DEFINITION INITIAL RELEASE PLAN CONTRACTUAL AGREEMENTS PRESALES # 1 INCREMENT FEATURES LIST # 1 USER FEEDBACK + FEATURES LIST # 2 + FEATURES LIST # 3 AGILE PROJECT MANAGEMENT AND BUSINESS ANALYSIS # 2 # 3
AGILE PROJECT MANAGEMENT AND BUSINESS ANALYSIS Process STAKEHOLDERS Agile Project Management Product Backlog Management Release Planning Release Backlog Management RELEASE 1.0 RELEASE 2.0 RELEASE 1.5 DEVELOPMENT REQUEST PRODUCT OWNER / Business Analyst GATHERS AND FILTERS MARKET REQUIREMENTS FROM KEY STAKEHOLDERS CREATES STORIES
AGILE METHODOLOGY AGILE LIFECYCLE Development Cycle YES NO DEVELOPMENT 1 DEVELOPMENT 2 DEVELOPMENT N RELEASE FEEDBACK REVIEW ACCEPT AGILE LIFECYCLE NEXT ITERATION ADJUST AND TRACK RECORD AND INCORPORATE CHANGES Integrate and Test Continuous Visibility CLIENT DEVELOPERS USERS START Initiate project Define requirements High level requirements YES RELEASE TO MARKET
WATERFALL VS. AGILE METHODOLOGY TIME BUDGET Requirements Defined and Documented Design and Architecture Testing and Verification Deployment Development and Coding Deliverable(s) WATERFALL Development of the software flows sequentially from the start point to the end point. TIME BUDGET Deliverables sprint AGILE Agile method proposes incremental and iterative approach to software design.
AGILE RELEASE PLANNER Timeline 2015 2016 PHASE Iteration 0 Iteration 1 JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC PHASE Iteration 0 Iteration 1 Iteration 2 Iteration 3 Iteration 4 Iteration 5 Iteration 6 Main Delivery Teams Dependency Team 1 Dependency Team 2 Dependency Team 3 Goals 7** so on… 2015 2016 DESCRIPTION TEXT Description text
AGILE ROADMAP EXAMPLE USING A BIMODAL APPROACH TO DETERMINE GOALS AND OUTCOMES GOALS WORK STREAM 1 WORK STREAM 2 CATEGORY 2 CATEGORY 3 CATEGORY 1 2018 2019 TEXT PLACEHOLDER ACTION JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC
Questions?