Apple made news after sources said there was a shift from the plan for electric cars this month. Executives confirmed hundreds would be cut…
It is always delightful to find and work with high performance teams. In one of our recent business endeavors, I met an exceptional web and software development company.
Experts in Drupal and related web development technologies; its delivery methodology of choice is Agile, and more specifically, the SCRUM methodology. Anyone involved in the systems development life cycle will confirm that beyond the methodology and tools, and myriad of awesome technologies applied in systems or web development, people are, without a doubt the core focus of the work environment. And people are naturally dynamic and, therefore, a variable that is difficult to definitively manage and control. Another key challenge is a constantly changing and dynamic world, where the cycle of “cradle-to-grave” is becoming shorter and shorter. Often what is needed one day, changes the next day, and traditional delivery mechanisms have been found inadequate in this regard.
So what behaviours and mental shifts are then required to ensure that the application of an agile methodology in a software or web development environment would facilitate delivery success? According to founders of the company, and agile practitioners, Ryan Purchase and Dewald Herbst, there are six key things to keep in mind if you are considering implementing scrum.
1. Forget “waterfall”
Try and change how you think about and approach project scope/requirements analysis, planning and costing. SCRUM embraces change and is honest about what is known about a project at any given time. It can be difficult to drop the waterfall “analysis paralysis” approach and pretend you can think of and plan for everything upfront. The truth is you don’t and can’t possibly now everything up front!
2. Communicate using a cloud based project management tool
We are still shocked at how many project teams use e-mails. Based on our experience, e-mail is a terrible way to communicate with stakeholders about a project. There are many online project management tools available. Some specifically support an agile process, others not, but the key point here is to have a central place for all project resources and discussions. This way all stakeholders have access to the entire project history at any time.
3. Be transparent
Transparency between team members, project managers and client stakeholders are crucial to a healthy agile implementation. Being open about mistakes can be a trying experience for some. But, the key is to let go of individuality and keep self and team learning top of mind. Avoid hiding uncertainties and mistakes – share these openly!. Honesty and transparency can see a failing project through to success.
4. Be a purist
Choose an agile methodology and try your best to implement it fully and stick to it throughout the project lifecycle. Don’t fall into the trap of implementing a “hybrid” waterfall/agile process. In general, that just doesn’t work. Our opinion is that the methodologies are not compatible.
5. Adopt to adapt
If your experience is mainly in applying the traditional waterfall approach, you need to be extra committed and diligent about your shift to agile / SCRUM. How you think about and document project requirements analysis, planning and costing will need to change with unyielding commitment. SCRUM embraces change and is honest about what is known about a project at any given point. Don’t pretend you can think of and plan for everything upfront – it’s not realistic! Instead embrace the agile concept of “iterate -> review/retrospective -> adapt …”.
6. Practice to continually learn and improve
Agile as a methodology is simple to understand, but difficult to master. To ensure continuous learning and improvements, the best way to discover how SCRUM will work for your team is to dive in and practice. Learn from your mistakes and successes, revisit the various free online resources as you iterate and adapt your own agile process.
In our dynamic world of people and constantly changing technology and market environments, there is overwhelming evidence to suggest that the current traditional waterfall approach to delivery is fundamentally flawed. We just cannot predict what people would do, or what the next day holds. It therefore, stands to reason that to face these challenges, we need methodologies or processes that places people and change at its heart.
As can be seen by what Ryan and Dewald are doing, these challenges are faced through an iterative and Agile approach to their development process.