Five things to dobefore you go Agile Arne Åhlander hlander 安儒宣 3
Five things do do before you go Agile1. Identify your Why2. Inform and Educate3. Define your Engineering Practices4. Define your Product Backlog5. Set your definition of Done 4
• Today many teams and companies are turning to Agile product development. Scrum is among the most popular choices.• The promises from Agile are several. Still it is good advice to do a couple of things before you go Agile.• In the following I will list and discuss five things to do before you go Agile. 5
Identify your Why• Agile in it self is not a goal. Therefore it is of importance for a successful implemen- tation to understand and know why you want to go Agile and what benefits you expect from going Agile.
Why Agile?• Shorten Time to Market;• Increase control of a project;• Increase the quality of the product• Reduce the risk;• Maximize Return on Investment; and,• Increase probability of success. 7
More why• Customers, users, and stakeholders are active participants throughout the project• Requirements change rapidly• Primary focus is on software development rather than processes or documentation• Aim is for simplicity in terms of tools and models used
Benefits of Agile • Simplicity and transparency • Higher customer satisfaction • Greater staff morale and retention • Improved quality deliverables • Improved business value • Quicker Return on Investment (ROI) • Increased productivity and decreased development costs • Ability to rapidly change direction
How to?• Define your vision – Where do you want to go?• Create a guiding coalition – Senior people with decision power
Inform and Educate • Since Agile ways of working often include different ways of thinking than traditional product development it is well adviced to inform and train the team or teams turning Agile as well as the rest of the organization. • Often Agile development will have an effect not only on the development depart- ment but also on other parts of the organization.
Define your Engineering Practices• One of the important parts of Agile is the Engineering Practices. In eXtreme Programming (XP) the engineering practices is an integral part.• In Scrum the are up to the team or the organization to choose. In both cases you benefit from having a base- line of existing practices and a plan on which practices to add and introduce. 12
Define your Product Backlog • The Product Backlog is per- haps the most important artifact of Scrum. It contains the What of product development. • It should be based on the Product Vision and it should constantly be up to date. • Any team having a Product Backlog that is current and up to date will be better at increasing their product- ivity. 13
Define your Definition of Done• In Agile we want frequent feedback. Both on what we have developed and how we are working.• One way of getting feedback is to demonstrate the results after each iteration.The team should focus on developing working Software that is possible to demonstrate and deliver after each iteration.• Developing a Definition of Done helps the team to focus and it helps stakeholders to know on what level they should give feedback. 14
Five things do do before you go Agile1. Identify your Why2. Inform and Educate3. Define your Engineering Practices4. Define your Product Backlog5. Set your definition of Done 15
Agile Manifesto We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have become to value:• Individuals and interactions over processes and tools• Working software over comprehensive documentation• Customer collaboration over contract negotiation• Responding to change over following a plan That is, while there is value on the items on the right, we value the items on the left more 17
Agile Principles 18
Our highest priority isto satisfy the customerthrough early andcontinuous delivery ofvaluable software.
Welcome changingrequirements, evenlate in development.Agile processesharness change for thecustomerscompetitive advantage.
Deliver workingsoftware frequently,from a couple of weeksto a couple of months,with a preference tothe shorter timescale.
Business peopleand developersmust worktogether dailythroughout theproject.
Build projectsaround motivatedindividuals.Give them theenvironment andsupport they need,and trust them toget the job done.
The most efficient andeffective method ofconveying informationto and within adevelopment team isface-to-faceconversation.
Working softwareis the primarymeasure ofprogress.
Agile processespromote sustainabledevelopment. Thesponsors, developers,and users should beable to maintain aconstant paceindefinitely.
Simplicity--the artof maximizing theamount of worknot done--is essential.
The bestarchitectures,requirements, anddesigns emergefrom self-organizing teams.
At regular intervals,the team reflects onhow to becomemore effective, thentunes and adjusts itsbehavioraccordingly.
• Arne Åhlander 安儒宣• email@example.com• www.twitter.com/arneahl• http://www.linkedin.com/in/arneahlander aqqurite