Time management and agile development

This week we were introduced to "Agile", which is a collective term for methodologies that increase flexibility in project management. Agile approaches include Scrum, Lean, PRINCE2, XP and Kanban. On this course we primarily focus on the Scrum method. Scrum is arguably the most used Agile approach, it provides a framework within which teams can identify and prioritise the work required and commit to subset priority items they estimate can be delivered within each two to four week iteration (also known as "sprints") (Cooke, 2017). Agile techniques can help a team focus on providing immediate incremental benefits to their product/ business, improve communication with one another and reduce the amount of planning required (Wright, 2014).

Diagram showing the Scrum method's iterative process, based on sprints of fixed duration (adapted from Deuff & Cosquer, 2013)

In the 1990s, projects tended to rely heavily on the "Waterfall" method for project management, wherein all the stages of the product lifecycle are undertaken serially with no overlap, the next stage can only begin once the previous stages have been fully completed (Cooke, 2017). The waterfall approach to project management fails to take into consideration the inherent variability and uncertainty involved in the delivery of knowledge-based products like software (Measey et al, 2015), and instead hinges on the risky assumption that large amounts of analysis and design result in a deep understanding of a system. A team working in this manner spends a lot of time planning and consulting on the requirements and design for a project before any work can even begin (Wright, 2014).

The Waterfall method (adapted from Waldock, 2015)

Waldock (2015) explains how instead of taking a linear start-to-finish waterfall approach and trying to complete a project in one pass without allowing space for rework and change, the Agile approach enables us to build traction and momentum towards a solution that we know delivers value early and then continuously improve and scale it incrementally. Software applications developed through the Agile process have a much higher success rate than those developed through the Waterfall method and significantly lower time and cost overruns (Standish, 2002). The Agile process ensures scope to change by not committing too many resources upfront and instead breaking down the work into deliverable parts that can be undertaken in the form of multiple cycles through the process (Waldock, 2015).

Overview of a simplified generic Agile process (adapted from Measey et al, 2015)

A fundamental principle of Agile is that testing is integrated throughout the entirety of the project - testing is implemented early and continuously (Measey et al, 2015). Continous testing and feedback is vital in reducing risk. It helps us to gauge whether the solutions we are creating are likely to be successful and to test any assumptions we may have (Waldock, 2015). It is important to test early and gather small-scale data when there is still time to course-correct (Knapp et al, 2016).

Although Agile methodologies are traditionally and primarily applied to the world of software development, they can theoretically be applied to any type of project (Deuff & Cosquer, 2013). The benefits of understanding and then adopting Agile techniques both in my professional and personal contexts are numerous: for instance, saving time and avoiding waste. According to Knapp et al (2016), sprints are very versatile and can be transformative, you can even use them to try and change something in your own personal life like a habit or a routine that just isn't working.

During the course of the Development Practice module we will be auditing our skills, learning to evaluate our performance through the practice of reflection and start to formulate a plan for our own personal development. This habit of self-evaluation through critical reflection mirrors the practice of sprint retrospectives in Agile work environments. Sprint retrospectives celebrate continuous improvement and process optimisation (Measey et al, 2015). They are fundamental to identifying opportunities for improvements in future sprints and getting to grips with any skill-set or knowledge gaps. I am looking forward to seeing my own personal development and the development of my peers over the next couple months as we begin to put Agile theory into action!

References

Cooke, J. L. (2012). Everything you want to know about Agile : how to get Agile results in a less-than-agile organization. IT Governance Publishing.

Deuff, D., & Cosquer, M. (2013). User-Centered Agile method. ISTE Ltd/John Wiley and Sons Inc.

Knapp, J., Zeratsky, J. and Kowitz, B. (2016) Sprint: How to solve big problems and test new ideas in just five days. Simon & Schuster.

Measey, P., Berridge, C., Gray, A., Lazaro, W., Oliver, L., Roberts, B., Short, M. and Wilmshurst, D. (2015). Agile Foundations: Principles, practices and frameworks. BCS Learning & Development Limited, Swindon.

Standish. (2002). ‘The Chaos Manifesto‘. Available at www.standishgroup.com/ (Accessed 23 September, 2021).

Waldock, B. (2015). Being agile in business: discover faster, smarter, leaner, ways to work. Pearson Education.

Wright, C. (2014). Agile versus Waterfall. In Agile Governance and Audit: An overview for auditors and agile teams (pp. 32–40). IT Governance Publishing.

© 2022 Camilla. All Rights Reserved.

Designed in Figma,
knitted with Webflow :)