Agile software development
Being a "Waterfall" child, this was an aspect of my last management position that I didn't feel I fully understood. Having now now been part of an Agile team for over 2 years I feel I have a total understanding of the concept and the pitfalls in implementation.
In an attempt to provide some detail I've made some notes around our experience of the philosophy:
- Adaptive vs. predictive
We are (the business requires this, possibly too much) very much on the adaptive side.
- Iterative vs. waterfall
Iterative isn't always positive, our iteration has been across entire versions and many sprints resulting in code fragmentation. I've tried to help this along by using Proof of Concept (POC) work to ensure that specifications are detailed enough to reverse engineer sufficiently details user stories alloing for development and test to better understand the entire ambit of the work. This has been very successful.
- Code vs. documentation
There was no documentation and almost no comments in the code. I've tried to the get the team to make comments and it was marginaly sucessful in getting devs to include examples of REST calls in their receiving controllers.
We have a standup every day, and even had a qualified scrum master for a few months, that includes Devs, PMs and Testers - this has helped to bring the various members to better mutual understandings and aided effective communication.
Happy to work as an Employee, Consultant, Contractor / Self Employed or via Limited Company