Vancouver, October 5-6, 2012

The Agile Drupalist

Community, Business and Project Management
Experience Level: 

More and more clients are asking for Agile development for their projects, in particular the Scrum methodology, but do they really know what they are getting into? Both Waterfall and Scrum are viable methodologies, but each is best suited to particular situations, clients, and projects - neither can be considered the better methodology in all circumstances.

This presentation discusses the potential advantages of using Agile development for building sites in Drupal, but also the potential road-bumps and pitfalls. The presenter will use real-world client projects to highlight examples of what worked well and where there were challenges.
Some of the benefits to be discussed include:

* Managing tasks using "epics" and "stories" can be effective at getting developers, themers, and user experience designers working on tasks in parallel rather than having to wait or be dependent on other tasks to be completed first.
* The number and variety of contributed Drupal modules makes it easier to respond to change as there is potentially already a module built which can meet the new requirement(s). This gives projects the flexibility to respond to unforeseen goals and objectives.
* Using the Drupal platform expedites prototype development.
* Agile provides greater visibility to the Product Owner and stakeholders so that developers don't risk wasting time writing custom code where not needed.

Some of the technical challenges to be discussed:

* Although Agile is supposed to be highly responsive to change, needing to change Content Types or the taxonomy during later stages of the project can be time consuming and costly.
* Late stage changes to Views, Blocks, or Panels can have potentially big impacts.
* Highly iterative design can be a real headache for front-end developers.

The presenter will also discuss Drupal best practices when using Agile, such as using the Features module to enable developers to be able to create, manage and export modules more efficiently, and be more adept at responding to changing requirements.

The session will end with a discussion of how Agile and responsive theming can be quite complementary together, an important consideration given the direction in which development is headed to accommodate a large variety of screen sizes.

Session Objectives:

The session objectives focus on answering the following questions:

1. How can Drupal developers use the principles of Agile development to improve the website creation process?
2. What are some of the challenges faced when developing a Drupal project using Agile given that not all aspects of Drupal are easy to change in a project's later stages?
3. Are there any best practices that we can establish around this topic, and share with the Drupal community?
4. When is Scrum maybe not the best methodology, and using Waterfall, hybrid or another methodology might be more suitable?

The Agile Drupalist - Methodologies & Techniques for Running Effective Drupal Projects from Adrian Jones