Choosing The Right Agile Prabhat Sinha Methodology Shani Memfy For Your Drupal Project
Speakers Prabhat Sinha Shani Memfy He has been managing product and She’s been managing product and project project since 8 years. After work Prabhat deliveries since 1999. After work you can can be found jogging and socializing at find her on the court shooting hoops with local parks. a local Netball league. Prabhat lives in the bustling city New Delhi Shani lives in a suburban city in Israel with with his wife and 2 kids. her husband and 4 children.
Agenda 1. What is Agile 2. Agile Frameworks ● Scrum ● KANBAN ● Scrumban ● Extreme Programming ● Lean ● Feature Driven development 3. Comparison 4. CYNEFIN
What is Agile? Better ways of developing software is by doing it and helping others do it. Agile gives importance to: ● Individuals and interactions over processes and tools ● Working software over comprehensive documentation ● Customer collaboration over contract negotiation ● Responding to change over following a plan
12 Principles of Agile Manifesto Our highest priority is Welcome changing requirements, Deliver working software frequently, 01 02 03 to satisfy the customer even late in development. Agile from a couple of weeks lo a couple through early and processes harness change for the of months, with a preference to the continuous delivery of customer’s competitive advantage. shorter timescale. valuable software. Business people and Build projects around motivated Agile processes promote 04 05 06 developers must work individuals. Give them the sustainable development. The together daily environment & support they need, sponsors, developers, and users throughout the project. and trust them to get the job done. should be able to maintain a constant pace indefinitely. Working software is The most efficient and effective Continuous attention to technical 07 08 09 the primary measure of method of Conveying information excellence and good design progress. to and within a development team enhances agility. is face-to-face conversation. Simplify--the art of The best architectures, At regular intervals, the team 10 11 12 maximizing the requirements & designs reflects on how to become more amount of work not emerge from self-organizing effective, then tunes and adjusts its done--is essential. teams. behavior accordingly.
Agile Is a Methodology Only There are several agile project management frameworks being successfully used for delivering Drupal projects. Let’s evaluate few popular agile frameworks: 1. Scrum 2. Kanban 3. Scrumban AGILE 4. Extreme Programming 5. Lean Development 6. Feature driven development Scrum Lean In next few slides we will discuss each frameworks Extreme Kanban one by one and Help you choose the most fitting Programming for your projects. (XP) FDD
Scrum Scrum is an Agile framework that brings order to chaos. Scrum comes from Rugby: An ordered formation of players used to restart play The cross functioning team Sprint An ordered formation of players, used to restart play, in which the forwards of a in which the forwards of a team form up with arms interlocked PO, SM & team form up with arms interlocked and heads down, and push forward against a the team and heads down, similar group from the opposing side. and push forward No distractions against a similar group from the opposing side. Scrum doesn’t work when the team is not working to a shared goal
Scrum in a Nutshell Processes & Tools The Team The project requirements ● Sessions ● Clear vision of the end Product Owner, Scrummaster and ○ Scrum Meeting (daily) product Team ○ Backlog Refinement ● A clear set of requirements grooming (1 or 2 per (user stories) Sprint) ○ Product Backlog at ● Well-trained ○ Sprint planning 1 or 2 least for the upcoming ● Specialized per Sprint) 2 sprints ● Capable of Self-management ○ Demo or Review (end ● Communicative of Sprint) ● Objective to add small ● Ability to Make Decisions ○ Retrospective (end of marketable values in each ● Common Goal Sprint) increment ● Self Improving ○ PSP: potentially ● Product Backlog shippable product ● Tools ○ MMF: minimal ○ Scrum Board marketable feature ○ User Stories ○ Burn Down Chart ○ Timeboxing ○ Icebox
When to choose Scrum Tools: Team: Output: ● A clear vision of the end ● The WHOLE scrum team is ● Something to show at the product onboard and committed end of the sprint ● Stakeholders have the ○ There needs to be project as a priority—not enough of a product ● The team gets a full sprint to necessarily a top priority, but backlog for a few sprints produce value without any available for answers (2-3) interruptions ● Team is focused: don't get ■ There can be many interruptions from ● Anything after that may be changes but the everyday business subject to change, this is team shouldn’t ● The team is fully skilled team where a sprint really lives up to match the project stop working to to its name ● The team has the ability to adapt to change communicate frequently and ○ Scrum projects can easily (daily stand ups, etc.) change direction as long as the product backlog is maintained and groomed
When should Scrum turn to Kanban and Scrumban ● Sprint scope frequently changed due to “high priority”/ emergency situations ● Scope isn’t clear or is blocked ● Basic Scrum rules not fully enforce ● Releases start to be ad hoc ● No clear distinction between Project and Product ● Addressing maintenance and support work as main sprint goal ● Team dedication is erratic
KANBAN Kanban is a visual signal that's used to trigger an action. The word kanban is Japanese and roughly translated means: “card you can see.” Toyota introduced and refined the use of kanban in a relay system to standardize the flow of parts in their just-in-time (JIT) production lines in the 1950s. "Kanban promotes flow and reduced cycle-time by limiting WIP and pulling value through in a visible manner." -Torbjörn Gyllebring
KanBan in a Nutshell Processes & Tools The Team The project philosophy ● Sessions ● Kanban doesn’t prohibit ○ Meeting (daily) change, but it doesn’t ● Technical needs as per ■ Often those that have prescribe it either. requirement of the converted from Scrum project to Kanban,are inclined ● Kanban encourages to keep the daily making incremental stand-up Kanban recognizes that there changes to avoid drastic ● Product Backlog may be value in the existing decrease in productivity ○ Team to pull the tickets process, roles and ● Tools responsibilities ● Small course corrections ○ Kanban board ○ WIP limits are also just easier than Take what is working and ■ Limiting the amount of altering the complete preserve it. WIP, at each step in the process process, prevents overproduction and reveals bottlenecks ● Vision of the end product dynamically so that you can address them before they get out of hand.
When to choose Kanban ● Operation support ○ Running a production system as a whole, Focus ● Maintenance work and support projects ● Continuous flow Courage ○ No nee0d to stop to reassess just keep on going and deploying ● When the project requires the maximum flexibility and frequent change of priorities and scope Openness ○ When the goals are not clearly defined ○ Risk of scope creep ● Ad hoc releases required Respect ● Team dedication is erratic ○ When team isn’t focused - responsibilities elsewhere. ● If management isn’t ‘into scrum’ Commitment ○ Management isn’t giving the needed time and attention to the project
SCRUMBAN Mix of scrum and Kanban Scrumban is a management framework that emerges when teams employ Scrum Scrum + Kanban = Scrumban as their chosen way of working to understand and continuously improve how they work and use the Kanban Method as a lens through which to view (kanban board) ● Scrumban comes into play to help teams with the transition from Scrum to Kanban. Can stay here a while ● ● Scrum-ban is still unclear. Is it an improved Scrum or and improved Kanban ● Scrumban is not unique to the software development process
ScrumBan in a Nutshell Processes & Tools The Team The project philosophy ● Sessions (The Scrum) Improvement on; ● Stand up for daily check in ● Roles Like Scrum ● Retro for team ● Work processes ● Cross functional improvement ● Better flows ● Allowing for specialized ● Review- for incremental ● Flexibility teams and functions releases to demo to the client ● Dedicated team ● Product Backlog ● Tools (The Ban) ○ Kanban board ○ Ad hoc release ○ Continuous flow ○ WIP limits ○ Pulling tickets ○ Grooming on demand
When to choose Scrumban Any Scrum with an unstable and/or moving vision ● ○ When the project requires the maximum flexibility and frequent change of priorities and scope ○ When the goals are not clearly defined ○ Constantly evolving product ○ Sprint planning isn’t happening If management isn’t ‘into scrum’ ● ○ Management isn’t giving the needed time and attention to the project ● Any Kanban project that needs the structure of Scrum ○ Hard deadline ■ Still working to the objective ○ Team not focused
Recommend
More recommend