Getting agile with drupal


Published on

Waterfall, Agile, Extreme Programming, Water-gile In this session we will discuss agile strategies that can help you get to done; efficiently, quickly and happier. I will cover the Scrum Framework concepts and some of the lessons learned from using agile strategy to manage a multinational distributed team. that does Drupal every day.

This session is for Managers and team members that want to learn more about agile strategies and how to apply them to Drupal.

Topics Covered

Where we all start, Waterfall.
Why agile is wrong, Agility is right.
Scrum Framework basics
What actions are Agile
What actions are not Agile
Lessons learned working with agile
Challenges of Scrum for small teams
Agility you can implement now

Published in: Technology
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Agile isn’t certifications. Agile is doing
  • Getting agile with drupal

    1. 1. Getting Agile with DrupalJohnnie@promethost.comTwitter: @johnniefoxi
    2. 2. About Promet•Founded in 2003•In 2008, switched focus to open source software andDrupal•Team member locations in the US• Chicago• Texas• Philippines• Europe• Mexico• Tennessee• Ohio• Chicago• Wisconsin• California• Mississippi• New York• Rhode Island
    3. 3. About MeProject StrategistCertified Scrum MasterDrupal/Custom Development/IOS/C#/PHPProjects exceeding 10,000 hoursProject StrategistRecovering Developerhusband • geek• photographer• traveler •motorcyclist •kayaker •traveler•entrepreneur •
    4. 4. Lies about Agile• It is a silver bullet that fixes all problems• Agile is the right approach for all projects• One Agile framework is good for all the projects you do.• Agile will stop you from making bad decisions• Agile will immediately show results• All clients love Agile• Your love life will improve if you adopt agile.
    5. 5. Business Process
    6. 6. Project Models
    7. 7. Waterfall
    8. 8. History of Waterfall•The first formal description of the waterfall modelis often cited as a 1970 article by Winston W.Royce, though Royce did not use the term"waterfall" in this article.•Royce presented this model as an example of aflawed, non-working model.Waterfall model -Wikipedia, the free encyclopedia :taken from -
    9. 9. But Wait… There’s more!•“I believe in this concept, but the implementationdescribed above is risky and invites failure.‖•―The development process has returned to theorigin and one can expect up to a 100-percentoverrun in schedule‖1970. Royce, Winston (1970), "Managing theDevelopment of Large Software Systems",Proceedings of IEEE WESCON 26 (August): 1–9.
    10. 10. Agile Is• Agile software development is a group of software developmentmethods based on iterative and incremental development, whererequirements and solutions evolve through collaboration betweenself-organizing, cross-functional teams.• It promotes adaptive planning, evolutionary development and delivery,a time-boxed iterative approach, and encourages rapid and flexibleresponse to change. It is a conceptual framework that promotesforeseen interactions throughout the development cycle.Agile software development - Wikipedia, the freeencyclopedia : taken from -
    11. 11. Agile Paradigm Shift
    12. 12. Alphabet Soup• Agile Modeling• Agile Unified Process (AUP)• Dynamic Systems Development Method (DSDM)• Essential Unified Process (EssUP)• Exia Process (ExP)• Extreme Programming (XP)• Feature Driven Development (FDD)• Kanban (development) *there is some argument about this one• Scrum• Velocity tracking
    13. 13. How to “be” agile• Possession of a certification alone, will not make yourteam agile
    14. 14. Agility• In general, agility is defined as "theability of a [system] to rapidly respond tochange by adapting its initial stableconfiguration‖• agility or nimbleness is the ability tochange the bodys position efficiently,and requires the integration of isolatedmovement skills using a combination ofbalance, coordination, speed, reflexes,strength, and enduranceAgility - Wikipedia, the free encyclopedia : taken from - from - Author:
    15. 15. The Agile Manifesto• Individuals and interactions over processes and tools• Working software over comprehensive documentation• Customer collaboration over contract negotiation• Responding to change over following a planWe are uncovering better ways of developing software by doing it andhelping others do it. Through this work we have come to value:Agile software development - Wikipedia, the free encyclopedia : taken from - is, while there is value in the items on the right, we value theitems on the left more.
    16. 16. Agile Principles1. Customer satisfaction by rapid delivery of useful software2. Welcome changing requirements, even late in development3. Working software is delivered frequently (weeks rather than months)4. Working software is the principal measure of progress5. Sustainable development, able to maintain a constant pace6. Close, daily cooperation between business people and developers7. Face-to-face conversation is the best form of communication (co-location)8. Projects are built around motivated individuals, who should be trusted9. Continuous attention to technical excellence and good design10. Simplicity—the art of maximizing the amount of work not done—isessential11. Self-organizing teams12. Regular adaptation to changing circumstances
    17. 17. Strategic agilitytaken from - from -
    18. 18. Strategic Agility• Technical• GIT• Features• Vagrant• Chef• Github• Hosting• Fewer modules• Continuous integration• Automated Testing
    19. 19. Strategic Agility• Operations• Sales• Contracts• Communications• Project Management system• Customer involvement• Project plans (not straight jackets)• Process• Teamwork
    20. 20. Tactical Agility• Scrum ceremonies• Daily Scrum meetings• Sprints• Planning• Retrospectives• Backlog
    21. 21. Scrum• The word "scrummage" is amodification of "scrimmage"(the form of the wordpreviously used in rugbyand still usedin American and Canadianfootball), which in turnderives from or is a reflex of"skirmish". :Scrum (rugby) - Wikipedia, the freeencyclopedia : taken from -
    22. 22. Scrum Framework
    23. 23. Scrum Principles• Focus - Because we focus on only a few things at a time, we work welltogether and produce excellent work. We deliver valuable items sooner.• Courage -Because we are not alone, we feel supported and have moreresources at our disposal. This gives us the courage to undertake greaterchallenges.• Openness - As we work together, we practice expressing how were doingand whats in our way. We learn that it is good to express concerns so thatthey can be addressed.• Commitment - Because we have great control over our own destiny, webecome more committed to success.• Respect - As we work together, sharing successes and failures, we cometo respect each other and to help each other become worthy of respect.
    24. 24. Scrum/Agile Roles
    25. 25. Backlog• Conceptually, the Backlog is very simple; it is merely a list ofItems that ―represents everything that anyone interested in theproduct or process has thought is needed or would be a goodidea...‖• The Backlog is used both to prioritize the work, and to enableunderstanding of the work being done.Rawsthorne, Dan; Shimp, Doug (2011-06-29). Exploring Scrum:the Fundamentals: People, Product, and Practices (KindleLocations 1882-1884). . Kindle Edition.
    26. 26. Daily Scrum• Daily Scrum• Stand up is no more than15 minutes• 3 Questions• What did I/you doyesterday• What are you doing today• What are my roadblocks
    27. 27. Sprints• Sprints are 1 – 2 Weeks• Product owner attends Sprints• Past Sprint retrospective• Next sprint goals
    28. 28. Drupal Challenges• Project Size• Dedicated resources• Separation of project skillsets• Front end• Developer• Theming• Dev-ops• Infrastructure
    29. 29. The Co-location challenge• Co-location• Communication• Coffee machine Conversations• Shoulder tap• Non Verbal queues• Team building events• Team meetings• Whiteboards
    30. 30. Multinational challenges• Time differential• Good written communication• Project management system• Time must overlap• Language barriers• Phone call
    31. 31. Top Learning• 10. Simplicity--the art of maximizing the amount of work notdone--is essential.• Avoid Complexity• Offload complexity– Acquia/ Pantheon / Github /• Automate complex tasks• Vagrant
    32. 32. Top 10 ways you know your team isn’t agile1. There is no product backlog2. Lots of up front Requirements3. No team input4. The project is fixed bid5. No daily stand ups6. No retrospectives7. The customer isn’t involved8. Developers not involved in determining who works on project9. No sprints10. No telling it like it is
    33. 33. For Further studyExploring Scrum: The Fundamentals. Dan RawsthorneSucceeding with Agile: Software Development with Scrum by CohnExtreme Programming by Kent Beck
    34. 34. Questions?www.prometsource.comjohnnie@promethost.comTwitter: @johnniefox@PROMETSOURCE