Agile Building Blocks

Agile Building Blocks

Agile is a general term that refers to all lightweight software methodologies that adhere to the agile manifesto. It is becoming a very popular method for software development. Agile principles and manifesto are well-known to anyone who is familiar with agile. In this article, I will focus on five key building blocks of agile. 1. Definition of Done: In agile, certain user stories (also known as features) are completed in short iterations lasting between 1-4 weeks. Definition of Done describes what it means to be done with user stories/sprints/releases. This concept is also known by the ‘done done’ criteria. One example of what is considered done is when all code has been tested, built, tested, and passed the acceptance test. Iteration occurs when all user stories have been completed and passed the acceptance test. Product owner has also accepted it. Defects can be fixed or postponed as per agreement with product owner. Release is when, in addition to the iteration done criteria stress testing, security validation, and disaster recovery are all successfully performed. 2. Time-box: Agile, iterations, and even meetings (daily standing up, iteration plan, iteration review, and retrospectives) use the time-box concept. The time-box concept is non-negotiable and fixed. However, scope can be negotiated. If 9 out of 10 user stories are completed within a given time period, but one user story requires more time, then instead of prolonging iteration by one day, the user story can be carried over to the next iteration. The short time box solves the problems of Parkinson law (work expands to time available) or Student syndrome (Eleventh-hour seriousness). 3. The Sashimi technique combines time-box with definition of done. It requires that each piece of functionality be completed in an iteration according to the definition of done. 4. Progressive elaboration is a method of elaborating near-term plans while keeping the distant future plan at a summary level. Once the project is close to those items, the distant future plans can be developed. Micro planning is only done when there is more certainty or clarity about the planning items. This is a combination of release plan and iteration plan in agile. Release plan consists of an overall release plan and detailed iteration planning at the beginning of each iteration. This technique is used in agile to plan and define scope. 5. Incremental delivery: Product is delivered in small quantities of shippable quality at the end each short time-boxed iteration. Agile believes that working code is the best measure of progress. This incremental delivery model not only allows customers to shape the product correctly by providing feedback during iteration demos but also allows them to go to market earlier and realize a better return on their investment (ROI). Author : SrinivasanVenkatachalam

Author: Alexander