• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Introducing Agile Scrum XP and Kanban
 

Introducing Agile Scrum XP and Kanban

on

  • 15,089 views

 

Statistics

Views

Total Views
15,089
Views on SlideShare
14,680
Embed Views
409

Actions

Likes
25
Downloads
584
Comments
0

8 Embeds 409

http://www.torak.com 210
http://www.scoop.it 53
http://torak.com 44
http://www.agiletestingframework.com 34
http://scrumban.fr 32
http://www.linkedin.com 29
https://www.linkedin.com 4
https://twitter.com 3
More...

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Introducing Agile Scrum XP and Kanban Introducing Agile Scrum XP and Kanban Presentation Transcript

    • Introducing Agile methodologies Scrum, XP and Kanban Kanban Board www.torak.com
    • About Dimitri Ponomareff Agile Coach ● American Express ● Charles Schwab ● JP Morgan Chase ● Bank of America ● LifeLock ● First Solar ● Mayo Clinic ● AAA Insurance ● Phoenix Children's Hospital ● Choice Hotels International ● State of Arizona - First Things First, ADOT, ADE ● Wolters Kluwer ● Apriva ● JDA Software Group Facilitator of “The 7 Habits of Highly Effective People” Certifications ● Project Management Professional (PMP) ● Agile Certified Practitioner (PMI-ACP) ● Certified ScrumMaster (CSM) ● Certified Scrum Practitioner (CSP) IT Professional ● CIO - Concord Software ● Vice President Communications - PMI Phoenix ● Director of Web Technologies - I-ology www.torak.com
    • Agile Overview ●Agile Manifesto ●Lean software development principles ●Flavors of Agile and timeline ●Prescriptive vs. Adaptive ●Sequential vs. Overlapping ●Envision / Explore cycles ●PDCA www.torak.com
    • The Agile Manifesto We are uncovering better ways of developing software by doing it and helping others do it. 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 in the items on the right, we value the items on the left more. Source: www.agilemanifesto.org www.torak.com
    • 12 Principles of Agile Software 1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. 2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage. 3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale. 4. Business people and developers must work together daily throughout the project. 5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. 6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. 7. Working software is the primary measure of progress. 8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely. 9. Continuous attention to technical excellence and good design enhances agility. 10. Simplicity--the art of maximizing the amount of work not done--is essential. 11. The best architectures, requirements, and designs emerge from self-organizing teams. 12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly. Source: www.agilemanifesto.org www.torak.com
    • Lean software development principles 1. Eliminate waste 2. Amplify learning 3. Decide as late as possible 4. Deliver as fast as possible 5. Empower the team 6. Build integrity in 7. See the whole www.torak.com
    • Flavors of Agile Dynamic System Development Method (DSDM) Dane Faulkner Extreme Programming (XP) Kent Beck Feature Driven Development (FDD) Jeff DeLuca Scrum Ken Schwaber Lean Software Development Mary Poppendieck and Tom Poppendieck Adaptive Software Development (ASD) Jim Highsmith Crystal Clear Allistair Cockburn Behavior driven development (BDD) www.torak.com
    • Agile Timeline 1970 1980 1990 2000 Waterfall Spiral, RAD, RUP Scrum, XP Predictive: phases, documentation-centric, functional handoffs, get it right the first time Iterative: process framework, phases, tool driven, artifact heavy Adaptive: iterative, self-organizing teams, value driven, transparent www.torak.com
    • Prescriptive vs. Adaptive 120+ 13 9 6 0 RUP XP Scrum Kanban Do Whatever More Prescriptive More Adaptive (roles, activities & artifacts) Source: Kanban and Scrum, making the most of both. Henrik Kniberg & Mattias Skarin www.torak.com
    • Prescriptive vs. Adaptive Waterfall Predictive Process The plan creates cost and schedule estimates Constraints Estimates Scope (requirements) Cost Time Plan Driven Agile Adaptive Process The vision creates feature estimates Cost Time Scope (features) Value/Vision Driven www.torak.com
    • Sequential vs. Overlapping development Requirements Design Code Test Source: “The New New Product Development Game” by Takeuchi and Nonaka. Harvard Business Review, January 1986. Rather than doing all of one thing at a time... Agile teams do a little of everything all the time. www.torak.com
    • Software development process Time Analysis Design Code Test Agile Analysis Design Code Test Time Traditional 50% complete? 0% usable 25% complete 100% usable www.torak.com
    • Envision / Explore cycles Constant User Interactions www.torak.com
    • PDCA - Plan, Do, Check, Act ACT PLAN DO PDCA Cycle CHECK Continuous Improvements www.torak.com
    • Agile Methodologies ●Scrum ●XP - Extreme Programming ●Kanban www.torak.com
    • Origins ... Scrum ● 1986, Hirotaka Takeuchi and Ikujiro Nonaka described a new approach to commercial product development "holistic or rugby approach" ● 1991, DeGrace and Stahl first referred to this as the scrum approach. Ken Schwaber used such an approach at his company, Advanced Development Methods, and Jeff Sutherland, with John Scumniotales and Jeff McKenna, developed a similar approach at Easel Corporation, and were the first to refer to it using the single word Scrum. ● 1995, Sutherland and Schwaber jointly presented a paper describing the Scrum methodology ● 2001, Ken Schwaber teamed up with Mike Beedle to describe the method in the book "Agile Software Development with Scrum". XP - Extreme Programming ● created by Kent Beck during his work on the Chrysler Comprehensive Compensation System (C3) payroll project, who worked with Don Wells, Ron Jeffries, Martin Fowler and Chet Hendrickson ● takes software development "best practices" to extreme levels Kanban for development ● Japanese for "signboard" ● Taiichi Onho developed 1940/1950 kanbans to control production between processes and to implement Just n Time (JIT) manufacturing at Toyota manufacturing plants in Japan. ● 2003, David J. Anderson formulated the Kanban Method as an approach to incremental, evolutionary process and systems change for organizations www.torak.com
    • Scrum Product Backlog (prioritized) Sprint Backlog Sprint Planning Sprint Retrospective Sprint Review Daily Scrum Product Increment Sprint Task Board Sprint Burndown Scrum Master Product Owner Team Stakeholders Users Roles www.torak.com
    • Scrum ● focus on delivering the highest business value in the shortest time ● allows to rapidly and repeatedly inspect actual working software ● the business sets the priorities & teams self-organize to determine the best way to deliver the work ● every sprint (1-4 weeks) anyone can see real working software and decide to release it as is, or continue to enhance it for another sprint www.torak.com
    • Scrum 1. Roles ● Product Owner ● ScrumMaster ● Team 2. Ceremonies ● Daily scrum ● Sprint planning ● Sprint review ● Sprint retrospective 3. Artifacts ● Product backlog, sprint backlog, user stories ● Burn-down chart www.torak.com
    • XP - Extreme Programming ● improve software quality and responsiveness to changing customer requirements ● frequent releases in short development cycles ● improve productivity and regular checkpoints with the customer ● paired programming www.torak.com
    • www.torak.com
    • XP www.torak.com
    • Kanban - 3 basic principles 1. Start with what you do now ● Kanban does not prescribe a specific set of roles or process steps 2. Agree to pursue incremental, evolutionary change ● continuous small changes that stick vs. sweeping changes that fail due to resistance and fear in the organization 3. Respect the current process, roles, responsibilities & titles ● gain support, reduce fear/resistance to change and experience the benefits as a team Kanban Board www.torak.com
    • Kanban - 5 Core Properties 1. Visualize the workflow ● Kanban literally means "signboard" or "billboard" 2. Limit Work In Process (WIP) ● use a pull system - establish and respect your ideal capacity 3. Manage Flow ● monitor, measure and report the flow of work through each state 4. Make Process Policies Explicit ● describe the process accurately in order to improve it 5. Improve Collaboratively ● using models & the scientific method (empirical) to implement continuous, incremental and evolutionary changes Kanban Board www.torak.com
    • Kanban source: http://finance.groups.yahoo.com/group/kanbandev/ www.torak.com
    • Kanban: Start 1 a b to do in process done Start with a simple task board with 3 columns: to do, in process and done. Each card represent a work item in the current scope. Names can be associated with the cards. The key is to setup an easy way to visualize the work, and create an area for social interactions. c www.torak.com
    • Kanban: Start 2 a b to do in process done Start with a simple task board with 3 columns: to do, in process and done. Each card represent a work item in the current scope. Names can be associated with the cards. The key is to setup an easy way to visualize the work, and create an area for social interactions. b a to do in process done A problem with such a simplistic board, is the lack of rules and the concept of time- boxing. A typical problem is accumulating too much work in progress (WIP). Kanban is more than just adding work items on a board, it's also applying a PULL process. a b a b a c c c a c www.torak.com
    • Kanban: Start 3 a b to do in process done Start with a simple task board with 3 columns: to do, in process and done. Each card represent a work item in the current scope. Names can be associated with the cards. The key is to setup an easy way to visualize the work, and create an area for social interactions. b a to do in process done A problem with such a simplistic board, is the lack of rules and the concept of time- boxing. A typical problem is accumulating too much work in progress (WIP). Kanban is more than just adding work items on a board, it's also applying a PULL process. a b a b a c c c a to do in process done To truly embrace Kanban, we must regulate the volume of cards on the board. This can easily be accomplished by identifying clear thresholds associated to better defined stages of work (columns). Another improvement is to set a multi-tasking limit per user (2) and using late binding of tasks to owners. Note that not all team members must have 2 tasks with their names, this is a maximum of 2. b c a ready 2 5 a c c www.torak.com
    • Kanban: Mechanics to do in process done b c a ready 2 5 a c to do in process done b c a ready 2 5 a c to do in process done b c a ready 2 5 a c a 1. Team member A completes a card and moves it to the "done" column. 2. Team member A pulls a new card from the "ready" column and starts working on it by placing it in the "in process" column. 3. The team responds to the pull event and selects the next priority card by moving it to the "ready" column. www.torak.com
    • Scrumban: Flow to do in process done b c ready 2 5 a c b to do specify done b c ready 2 3 a c b execute 2 Now that we have established our team capacity and we have a pull system, we can streamline the ideal flow. www.torak.com
    • Kanban: Flow to do in process done b c ready 2 5 a c b to do specify done b c ready 2 3 a c b execute 2 Now that we have established our team capacity and we have a pull system, we can streamline the ideal flow. a backlog specify done b ready 2 3 a c b complete execute 3 c 8 www.torak.com
    • Highlights from each ... Scrum ● ceremonies (daily scrum, review and retrospective) ● time-boxed work using sprints ● burn-down charts XP - Extreme Programming ● best practices ○ coding (standards, collective code ownership, simple design, metaphor) ○ continuous integration ○ test driven development (unit tests, automated testing, acceptance testing) ■ When a Bug is found tests are created before the bug is addressed (a bug is not an error in logic, it is a test you forgot to write) Kanban for development ● visual board ● pull system ● JIT backlog/work ● continuous flow www.torak.com
    • Visualizing the work is KEY! www.torak.com
    • Scaled Agile Framework - Big Picture www.torak.com
    • Resources ● http://www.extremeprogramming.org/ ● http://xprogramming.com/ ● http://finance.groups.yahoo.com/group/kanbandev/ ● Takeuchi, Hirotaka; Nonaka, Ikujiro. "The New New Product Development Game". Harvard Business Review. ● DeGrace, Peter; Stahl, Leslie Hulet (1990-10-01). Wicked problems, righteous solutions. Prentice Hall. ● Kanban: Successful Evolutionary Change for Your Technology Business by David J. Anderson ● Agile Software Development with Scrum by Ken Schwaber and Mike Beedle ● Mary Poppendieck, Tom Poppendieck (2003), "Lean Software Development: An Agile Toolkit" www.torak.com
    • Agile Coaching, Staffing and Training. Learn more at www.torak.com
    • Thank You www.torak.com
    • This presentation was inspired by the work of many people and we have done our very best to attribute all authors of texts and images, and recognize any copyrights. If you think that anything in this presentation should be changed, added or removed, please contact us. http://creativecommons.org/licenses/by-nc-nd/3.0/ www.torak.com