You are on page 1of 6

Available online at www.sciencedirect.

com

ScienceDirect
Procedia Computer Science 104 (2017) 97 – 103

ICTE 2016, December 2016, Riga, Latvia

Introducing Lean Canvas Model Adaptation in the Scrum Software


Testing
Padmaraj Nidagundia, , Leonids Novickisa
a
Division of Software Engineering, Riga Technical University, Riga, Latvia

Abstract

Agile software development and software testing brought new ideas and tools in the software development industry. Day to day
more and more companies are adopting an agile approach in their software development process. Scrum is a one of the agile
software development mythologies. Software is developed in the iterative and incremental way and scrum provides a framework
for managing the process. A software tester plays the key team member role in the scrum software development process also
software tester faces key changes such as time limit to test planning, changing requirements and testing everything in sprints,
changing requirements, regression testing, test automation planning and integration testing. Nowadays scrum software
development adopted many tools in the framework of development, software testing as well as test planning. In recent years
planning and validation purpose lean canvas are used in business and this research paper is focused on possibilities of finding the
lean canvas model adaptation in scrum software testing.
© 2017 The Authors. Published by Elsevier B.V. This is an open access article under the CC BY-NC-ND license
© 2016 The Authors. Published by Elsevier B.V.
(http://creativecommons.org/licenses/by-nc-nd/4.0/).
Peer-review
Peer-review under
under responsibility
responsibility of organizing
of organizing committee
committee of the of the scientific
scientific committee
committee of the international
of the international conference;
conference; ICTE 2016ICTE 2016.

Keywords: Agile software testing; Lean canvas for software testing; Scrum software testing; Software validation

1. Introduction

With the growth of technology, humans are now more dependent on using software in daily routine life and for
business purposes. The growth of the software development industry introduced a lot of frameworks and software
tools to make development and testing more efficient. The basic goal of the software development is to provide a
high-quality software to the end customer. In software testing, if we do not identify a bug on an early stage, its cost

Corresponding author. Tel.: +371-26398508;


E-mail address: padmaraj.nidagundi@gmail.com

1877-0509 © 2017 The Authors. Published by Elsevier B.V. This is an open access article under the CC BY-NC-ND license
(http://creativecommons.org/licenses/by-nc-nd/4.0/).
Peer-review under responsibility of organizing committee of the scientific committee of the international conference; ICTE 2016
doi:10.1016/j.procs.2017.01.078
98 Padmaraj Nidagundi and Leonids Novickis / Procedia Computer Science 104 (2017) 97 – 103

will grow until customer finds that bug in the already developed software. Adopting the appropriate software testing
methodology helps to identify and mitigate early stage bugs to improve the overall software quality. In agile
changing requirements make software development fast, flexible and improve software delivery speed in another
way increase risk of software need to be well tested and error free before delivery to the end customers.
Scrum software development framework promises to deliver the software in iterative and incremental way and
scrum business owner can decide what he wants in between development process known as a requirements
volatility. In such situations scrum provides an empirical approach to understand requirements quickly and move
towards providing solutions to them. In scrum framework software tester faces many challenges such as changing
requirements, last minute changes, continuous testing, test automation, test coverage problems.
This paper is divided into three main sections and sub sections which deal with scrum related research, scrum
testing problems in scrum, transaction between lean canvas life cycle to scrum life cycle and principles of finding
the scrum waste in test process.

2. Scientific novelty of paper and related research

Lean canvas is a white board with several blocks with title names and is used mainly for the evaluation of
business ideas. Its one-page light weight that shows the product design to marketing approaches.
The core contribution is to find proper lean canvas designing that fits in the scrum software testing. Specifically
finding the appropriate lean canvas prototype in scrum for software testing, improving the scrum test planning,
simplifying the scrum test strategy, using the lean principles to create lean canvas design for scrum testing and
finding the circumstances blocks for the scrum lean canvas design.

2.1. Related research

Alexander Osterwalder who worked on business models developed and introduced the business model canvas for
the strategic management for business. It’s a one-page light weight document with number of named blocks. Lean
canvas mode is basically a template to describe the business; nowadays it is very popular in start-up based
companies3.

The life cycle of the lean canvas starts with an idea, with idea collection that is needed to build the product and
the next step to measure the different metrics once the product is ready. Collected data gives a new insight in the
lean planning and a complete loop helps to validate business ideas.

Fig. 1. Lean canvas life cycle.


Padmaraj Nidagundi and Leonids Novickis / Procedia Computer Science 104 (2017) 97 – 103 99

2.2. Lean canvas basic principles

The basic principle used to identify the risk parts of your plan.
1: Creating a document for your plan
2: Identification of waste process or parts of your plan
3: Repetitive test cycles for your plan.
There are three sub stages, which help to identify risk. In the first stage risks are identified with problems and
solutions. In the second stage risks are identified with product and market fit. In the third stage risks are identified
for the scale.

2.3. Lean canvas life cycle and scrum

The core principles of lean canvas from Fig. 1, Lean canvas life cycle are Ideas, build, product, measure, data and
learn. From all these, we are able to identify and generate lean canvas for the business. Now from formulating the
above core lean principles, we able to recognize similar terms in the scrum testing by referring to the Fig. 2, Scrum
testing methodology overview:

1: Ideas = Product backlog, sprint backlog


2: Build = Development
3: Product = Testing
4: Measure = Sprint planning meetings
5: Data = Test data, Burndown charts
6: Learn = Retrospective meetings, sprint review.

3. The problem we tackle

On the one hand, scrum brings many befits and on the other hand, drawbacks mainly in software testing due to
the time limit for each sprint. The tester needs to focus on time management as well as software quality issues. In a
scrum, software needs to be well-tested in each sprint that needs to match with the customer expectations1, 2.
Continuously changing requirements can directly affect software testing.

The most well-known problem we face in agile scrum software testing is that tester needs to be aligned with
changing business requirements4, 5. In scrum business requirements may get changed according to stakeholder needs,
in such situations software tester need to understand the requirements and plan testing and make it error free. In such
situation, we need an experienced tester or a tester who knows business domain very well.

Inaccurate effort estimates for the software development and testing. Scrum suggests that effort estimation can be
done on software development and test item complexity or based on story point. It is hard to assume everything in
advance with business cases.

Team member is not able to write unit or integration test due to short sprint of timing. Scrum sprint duration is
either 2 or 3 weeks, team member develops the software and at the same time needs to write unit and integration test
for the developed software features. When application grows or the application itself becomes too complex, then
team may not be able to cover and do all kinds of needed tests.

Lack of proper test planning for scrum sprints means that each sprint is different either with changing
requirements or changing test scope, in such situations test planning becomes more complex and it may directly
affect software testing. If a tester is not experienced, then it is difficult for him to make a proper test planning.
If a team member leaves the team or takes off for a while software testing gets affected. In a team any team
member takes off for an uncertain time then testing will be effected directly until the team finds a proper
replacement for testing related tasks.
100 Padmaraj Nidagundi and Leonids Novickis / Procedia Computer Science 104 (2017) 97 – 103

It is difficult to make regression tests due to short time if the project itself is complex or it grows overtime. Any
software development code base will grow with new features and in some situations software itself is very complex
then it is very difficult for the tester to cover regression tests in the current sprint.
Software quality may be hard to achieve until the team makes regression test at each sprint. Software quality is
very important to make any software error-free, to reach user satisfaction if the team does not plan for regression test
or tester not able to do it in each sprint then there is high chance of software bugs are appearing to end users.
Least or light weighed test documentation does not capture all testing knowledge for the next phase of software
development. Due to the short time of sprint and light weighed test related documentation may cause a problem
when the application grows and the team forgets to capture all the needed test related process details for further use.

Fig. 2. Scrum testing methodology overview.

Our approach: In scrum software development framework identifying software testing related problems and
possibilities how we can manage to solve them using lean canvas, introducing the lean canvas adoption in the scrum
framework to improve the software testing process and make the test process more effective.

4. Lean canvas life cycle to scrum life cycle transaction

As we have seen from the above section, lean canvas life cycle and identifying the metrics fit in the scrum life
cycle2. Lean canvas life cycle validates business now using the similar principles we have new life cycle for the
scrum.

Fig. 3. Lean canvas life cycle to scrum life cycle.


Padmaraj Nidagundi and Leonids Novickis / Procedia Computer Science 104 (2017) 97 – 103 101

5. Scrum development life cycle & scrum methodology team roles

Scrum is one of the famous agile software development methodology in recent years, using scrum several many
companies successfully increase the development and testing productivity also we scrum failure stories1, 10 come in
light time to time.

Fig. 4. Overview of scrum and scrum software development methodology.

Scrum methodology team roles: Scrum focus on clearly people role in the process, scrum team normally consist
of 3-9 members, these roles sometimes not very strictly followed and it also depends on the business situation5:

Stakeholder – Is a business owner, subject matter experts


Product owner – Define product features, plan for the release date, backlog prioritization, accept or
reject developed backlog, responsible for the product profitability, communicating with stakeholders
constantly
Scrum master – Represents the scrum values, ensure the team productivity, remove obstacles in the
team
The team – Consist of developers, testers & designer and focused on self-organized.

6. Lean principles to finding the scrum waste in test process

Scrum is one of the famous agile software development methodologies, using scrum many companies
successfully increase the development and testing productivity at the same time, we can come across scrum failure
stories8, 10.
In the year 1990 Toyota Production System (TPS) for the first time in Japan introduced and used seven lean
principles. In a lean process, its seven core principles drive to remove the waste “Muda” in the system5, 9, 10.

In early days, lean principals were applied only to the manufacturing system, but in recent years it started to be
adopted in the software industry to drive the value for the customer with fewer resources. Now we investigate how
we can use seven lean principles in the scrum:

Transport – Unnecessary development, unnecessary testing and unnecessary time-consuming scrum


meetings hours
102 Padmaraj Nidagundi and Leonids Novickis / Procedia Computer Science 104 (2017) 97 – 103

Inventory – Started developing a code and at the end team is not able to finish it and moved to the next
sprint and it is same with testing also
Motion – Unnecessary or wrong estimation of the task, in such a situation tasks, following very strict
guidelines for the process
Waiting – Team member is waiting for the other team member to do code review, tester needs to wait until
the code is fully developed and assigned to a tester and process dependency
Overproduction – Finishing the task earlier than the estimated time and waiting for another developer also
finish his task to continue the next stage of development
Over Processing – Not writing an appropriate technical document, following very strict scrum rules,
following inappropriate scum ideology
Defects – Quality errors due to the product owner wrong interpretation of requirements to developer and
tester team.

6.1. Right test metrics identification for lean canvas board from scrum development environment

In the above chapter, we discussed possibilities of finding the waste in the scrum with lean principles. In scrum
when we recognize the test metrics, we add them to the lean board. Collected metrics work like an indicator7.

Fig. 5. Prototype for identifying the appropriate test metrics in the scrum development environment for lean canvas. Board using transformation
models.

As we seen from the above Fig. 5, transformation process takes an input from more than one scrum sources and
at the end provides more accurate metrics indicators to the lean canvas board. Also, it is a not the final step and this
feedback cycle will continue with each planned sprint to get best optimal indicators for the lean canvas board.

7. Conclusion

The study explains the new possible approach to examine the systematically use of the lean canvas model
adaptation in the scrum software testing process that directly impact on improving the software quality. In order to
continue this research topic, it is needed to conclude successfully the following research activities:

to carry out a test to identify lean metrics in the scrum testing process
to develop an algorithm that automatically detects lean metrics in scrum
to design and develop the best fit lean canvas board for displaying the metrics
to do more research about possible development tools and framework to design the lean canvas board
that fits in scrum
to investigate if there is any more improvement or new model needed for the transformation model
prototype.

You might also like