“Health is Wealth” – this line sounds more meaningful nowadays than it did in the past as consumers are now worried about the food they eat, activities they do and the effect of these on their health. This consciousness of well-being that makes consumers avoid unhealthy habits that have a negative impact on the system has influenced even software development, and this phenomenon is called “Lean Software Development”.
Lean Software Development is the advanced part of the Agile Process, in which every part of the process is addressed more efficiently by focusing on the throughput while reducing the risk. This is put in practice by identifying the waste and delays in the process.
As these changes are necessary for the effective development of software, how to adopt the methodologies and strategies to achieve quality is a major challenge faced by the testers.
Testing in Lean Software Development yields benefits such as a good understanding of the flow that is directly proportional to the throughput. It helps in identifying the gaps that increase the time spent on estimating and planning test products, thereby achieving Quality in the shortest time possible to deliver value to the customer.
The process of testing in Lean Development model requires a committed QA team to ensure continuous improvement in order to understand the process within the context of business needs and to plan the testing process accordingly. The prime focus should be on adding value while improving the ability to achieve goals in the limited amount of time.
Aggressive testing strategy and futuristic planning (like taking notes from User Stories and Release Planning meeting) will help the testing team to zero in on requirements which, in turn, help in formulating test cases, scenarios and other testing artifacts.
Constant analysis is done on the factors that cause the time delay and hindrances to the progress of the sprint. Thus, noted points are added to the team retrospective and are discussed during the Retrospective Meeting.
Lean Development design is effective because every aspect of the process is designed in a way that the tasks carried out resemble a flow of events. This flow is the key to achieve Quality.
The testing process is redesigned in the lean development model wherein the bottlenecks that halt the progress are identified and eliminated. To achieve this, each task is broken down at the resource level. This process helps the cycle in two ways: identifies the exact number of tasks that can be carried out by the app testing team and injects a sense of ownership and responsibility to each member of the team.
Hence, each individual in the testing team is fully aware of his responsibilities and tasks and will be clear in contacting the concerned developer for carrying out the task given to him. This eliminates the wastage of overburden on the team which leads to delay in the delivery of a quality product.
Automating the testing process is an effective way to improve the time utilization for testing and thus plays a prominent role in the Lean environment. Automating the process also helps in achieving quality in a reduced time. Identifying the areas where automation is required is the challenge the team needs to address for its effective implementation. Having a thorough knowledge on the requirements helps in deciding this.
Regression testing in Lean environment plays a vital role in deciding the quality of the product while keeping time constraints in check. As a tester, the challenge is to keep the time short without compromising product quality.
For this the process of prioritizing the testing aspects during the regression is crucial. One needs to identify the areas which might be affected the most and which are affected the minimum. This helps in framing the time stamps for the regression process.
“Shrinking the Testing Duration without any compromise in Quality” is the defining line that describes the testing in Lean Software Development mode.
Bhargava Yellamraju works as Senior QA Engineer at [x]cubeLABS. He has 5 years of experience in Mobile, Web Application and Security Testing and has built significant expertise in various domains like Health Care, Finance, Banking and Procurement.
Tags: Lean software testing