You are on page 1of 13

Learning Agile Scrum Methodology

Using the Groupware Tool Trello R

Through Collaborative Working

Nitin Naik1(B) , Paul Jenkins1 , and David Newell2


1
Defence School of Communications and Information Systems, Ministry of Defence,
Blandford Forum, UK
{nitin.naik100,paul.jenkins683}@mod.gov.uk
2
Department of Computing and Informatics, Bournemouth University,
Bournemouth, UK
dnewell@bournemouth.ac.uk

Abstract. Agile is a project management philosophy for collaborative


working which consists of a set of values and principles that can be
employed in any sector. It is adopted by the software development com-
munity a long time ago and now several methodologies based on agile
principles have become established as a method of software development.
These agile based software development methodologies have developed
as an integral part of the software engineering and software develop-
ment curricula for many computing degree courses. One such agile based
methodology is Scrum which is widely used in the software industry and
thus in teaching. Several agile Scrum tools are available for software
development, however, for teaching and learning purposes, this would
not be affordable for many institutions due to its cost or learning curve.
This necessitates the requirement for a free or open-source Scrum tool
without any learning curve. Trello which is a free project management
and collaborative working tool but not particularly designed for Scrum.
However, its functionality and features can be transformed to make it
a basic Scrum tool for teaching and learning purposes at no cost. This
paper presents a systematic development and application of Trello-based
agile Scrum methodology not just for teaching and learning purposes
but for real project development. It is employed in the delivery of the
software engineering module in BSc courses and subsequently, in the
development of the BSc final year project at Bournemouth University,
UK. This implementation of Trello-based agile Scrum methodology in the
project development is compared against the simple agile Scrum based
project development practice to demonstrate the success and learning
improvement of this proposed methodology.

Keywords: Agile Scrum methodology · Trello · Groupware ·


e-learning · Software engineering · Collaborative working

c Crown 2020
L. Barolli et al. (Eds.): CISIS 2019, AISC 993, pp. 343–355, 2020.
https://doi.org/10.1007/978-3-030-22354-0_31
344 N. Naik et al.

1 Introduction
Software engineering methodologies and their application in project development
is a key element of learning and accomplishing the computing degree. Today,
agile is one of the most successful software development approaches employed
by the majority of software development companies [1]. As a result, the teaching
focus has moved towards the learning of various types of agile methodologies
such as Scrum, eXtreme Programming (XP), Crystal and Dynamic Systems
Development Method (DSDM), and away from the traditional methodologies
[13,21]. Amongst all, Scrum is the most popular agile methodology employed
in software development by a large number of software development companies
[9,11,16]. While teaching software engineering concepts and these agile method-
ologies, it is equally important for students to understand the methodology in
a way that they can employ in their actual project development at later stage.
If the teaching and learning is based on practicals and utilises some tools or
apps then it would be more effective than simply learning concepts without any
learning aids, this is especially true for the kinaesthetic learner [5,12]. Teaching
agile Scrum practicals is possible as there are several commercial tools available
for use, however, they are mostly utilised by large software development com-
panies due to their high price. This necessitates the requirement to resource a
free or open source tool for teaching and learning the Scrum methodology. There
are many free project management tools available; however, they are not partic-
ularly designed to implement agile Scrum methodology, nevertheless some can
be utilised for it. One such tool is Trello, a project management and collabora-
tive working tool which is not specifically designed for agile Scrum methodology.
Nonetheless, it has potential to be utilised as an agile Scrum tool, which requires
a careful transformation of the features of Trello into its corresponding compo-
nents of the agile Scrum methodology. However, there is no proven research
relating to Trello being used as an agile Scrum tool in the past including in the
teaching and learning arena.
Therefore, this paper presents a systematic development and application of
Trello-based agile Scrum methodology for both a teaching and learning and real-
life project development. In this Trello-based agile Scrum methodology, three
main components of Trello: Boards, Lists and Cards are transformed into agile
Scrum components. The Trello board is considered as an agile Scrum project on
which the entire Scrum team is working; Lists are utilised to design various back-
logs: product backlog, release backlog and sprint backlog; and cards are used to
represent the tasks or features (i.e. user stories). Subsequently, this Trello-based
developed methodology is utilised in teaching of agile Scrum methodology in the
Software Engineering module of the BSc course at Bournemouth University, UK.
Finally, this Trello-based agile Scrum methodology is adopted for the BSc final
year computing project which is sponsored by industry partners. The analysis of
the project results revealed a significant improvement in the overall performance
(i.e. each individual student) and this Trello-based practical and collaborative
working assisted all students in understanding, clarifying and correcting their
project activities in a timely manner.
Learning Agile Scrum Methodology Using the Groupware Tool Trello 345

The remaining paper consists of the following sections: Sect. 2 explains the
agile Scrum methodology; Sect. 3 discusses Trello and its important features;
Sect. 4 present the development and delivery of agile Scrum methodology using
Trello; Sect. 5 presents the application of this Trello-based methodology in
project development. Section 6 presents the results and analysis of this Trello-
based agile Scrum methodology; Sect. 7 presents the summary of the paper and
possible future work.

2 Agile Scrum Methodology


Scrum is one of the agile software development methodologies which was pro-
posed by Sutherland and Schwaber [15]. It is a complete process from design
through to the development of a product, all based upon a set of guidelines for
managing that development. Combining the iterative and incremental process
models to overcome the issues with the traditional models [14]. It focusses on
the process adaptability and customer satisfaction by rapid delivery of working
software products [15]. This is achieved by breaking the product into a number
of small incremental builds [1]. These builds are provided in iterations. Each
iteration has an elapsed time of typically 3–30 days (1–4 weeks), with iterations
involving cross functional teams working simultaneously on various topics such
as planning, requirements analysis, design, coding, unit testing, and acceptance
testing. Each iteration ends in a Sprint where a working/shippable product is
presented to the customer and important stakeholders (See Fig. 1). A significant
issue in any software development project is changing requirements. Agile Scrum
accepts the reality of change versus the desire for complete, rigid specifications
[16], some of its main principles are:

1. User involvement is crucial


2. The development team must be empowered to make decisions
3. Requirements can change or evolve however the time scale is fixed
4. Requirements Capture is at a high-level, lightweight and visual process
5. Develop small, incremental releases and iterate
6. Frequent delivery of products is focussed on
7. Complete each feature before moving on to the next feature
8. Apply the 80/20 rule (i.e. Pareto Principal)
9. The project lifecycle integrates the testing throughout its development
10. A collaborative and cooperative approach between all stakeholders is
essential

2.1 User Stories


Users describe the interaction of the user with the system through a mechanism
of writing user stories, thus indirectly collecting the requirements [18]. It specifies
the users and their roles both in the current and future system to be developed,
describing the types of user, what they want and why. This process is not a highly
346 N. Naik et al.

Fig. 1. Agile Scrum methodology

documented requirement but rather it should be very short narrative able to be


mounted on a sticky note or card [18]. If the user stories are detailed they can
be termed as an Epic or a Theme. An Epic is a short description containing a
few stories, whereas a Theme is a detailed description that usually contains few
epics. A good user story uses the INVEST model [4,18]:

 Independent: Reduced dependencies - Easier to plan


 Negotiable: Details added via collaboration
 Valuable: Provides value to the customer
 Estimable: Too big or too vague - Not estimable
 Small: Can be done in less than a week by the team
 Testable: Good acceptance criteria

The INVEST model is a commonly accepted set of criteria for assessing the
quality of a user story. If the story fails to meet one of these criteria, then the
Scrum team may want to reword it, or even consider a rewrite.

 Template/Syntax of User Stories:


• As a <role>, I want <feature> so that <reason> OR
• As a <types of user>, I want <goal> so that <receive benefit>

2.2 Product Backlog

The product backlog is an ordered list of everything (i.e. a wish list) which is
identified to be necessary in the product. This is the single source of requirements
for any changes to be made to the product [19]. Replacing the conventional soft-
ware requirements specification (SRS) format. The tasks/features of a product
backlog can have a technical nature or can be user-centric in the form of user
Learning Agile Scrum Methodology Using the Groupware Tool Trello 347

stories [17]. Originally, a product backlog is developed with some initial require-
ments and it is never complete. This product backlog evolves as the product
and the environment in which it will be used evolves. The product backlog is
dynamic; it constantly changes to identify what the product requires in order
to be appropriate, competitive, and useful [19]. If a product exists, its prod-
uct backlog also exists. The responsibility for the product backlog lies with the
product owner, including its content, availability, and ordering.

2.3 Release Backlog

A release backlog is a subset of the product backlog that is planned to be deliv-


ered in the next release, normally a three- to six-month horizon [2]. It would
presumably contain the prioritised and selected features of the product backlog
for the current release. In the agile Scrum development, in addition to the tra-
ditional product and sprint backlogs, the release backlog may or may not exist
depending on the development requirement.

2.4 Sprint Backlog

The sprint backlog is a list of prioritised and selected features by the Scrum team
to be completed during the current Scrum sprint. These features are selected
from the product backlog (or release backlog if it exists) by the Scrum develop-
ment team during the sprint planning meeting. The sprint backlog is a projection
by the Scrum development team about what functionality will be in the next
increment and the work required to deliver that functionality [20]. The Scrum
development team makes changes to the sprint backlog throughout the sprint.
During the development of a sprint, team members are expected to modify the
sprint backlog as and when new information is available, but minimally once per
day or at the time of daily Scrum meeting [20]. The sprint backlog is a extremely
visible, real-time presentation of the work that the development team plans to
accomplish during the sprint, and it belongs only to the development team [20].

2.5 Burndown Chart

The burndown chart is a graph that shows how quickly or slowly the Scrum
development team are working (burning) through customer’s user stories. Using
a burndown chart is a means of visually depicting what work is left and the time
left to complete it. The chart is a graphical illustration, presenting in an image
what a thousand words might not be able to communicate as evidently. The
burndown chart displays the total effort against the amount of work for each
sprint. The quantity of work remaining is presented on a vertical axis, while the
time that has passed since beginning the project is displayed horizontally on
the burndown chart, illustrating the past and the future. The burndown chart
is available to all stakeholders to update the status of the current sprint and the
Scrum team updates it frequently to provide the most accurate information.
348 N. Naik et al.

3 Trello - A Groupware Tool for Collaborative Working


Trello is one of the most popular project management and collaboration systems.
The features available in Trello such as boards, lists, and cards enable the orga-
nization and prioritisation of projects in an engaging, flexible, and rewarding
way [22]. Trello utilizes the concept of boards (which corresponds to projects)
and within boards, there are lists (group of tasks) and cards (which represent
tasks). The cards within lists can be used to track the progress of a project or to
simply categorize events [3]. It allows integration of apps that the development
team already uses directly into your workflow. This power of Trello converts its
boards into living applications to meet the team’s unique business needs [22].
Furthermore, it permits synchronisation across all of devices and sites. Offer-
ing real-time updates meaning everyone is able to share the same perspective. In
terms of devices, it is available on a desktop browser and mobile devices whether
online or offline. The GUI interface is very user-friendly and productive with a
minimal interface so as not to impede the work. Some of the important features
of Trello are given in Table 1 [3].

Table 1. Trello Features

No. Features No. Features


1 Easy to learn and simple GUI 11 SSL encryption of data
2 Customisable boards for easy design 12 Easy uploading of files and
attachments
3 Mobile functionality to access boards 13 Archiving of card records
on the go (e.g. comments and changes)
4 Free or zero pricing for the basic 14 Information retrieval and
service back-up
5 Native notifications 15 Voting feature and search
function
6 In-line editing and data filtering 16 Deadline reminders and
email notifications
7 Checklists, with progress meter 17 Task assignment and activity
log
8 Visibility Scope 18 Power-ups features
9 Easy organization with features such 19 Easy move, swap, drag and
as tags, labels and categories drop functionality
10 Quick overview on front and back of 20 Developer API
cards

4 Development and Delivery of Agile Scrum Methodology


Using Trello
Trello is a project management and collaboration system which can be used for
various purposes where team working is required. Trello is not an agile Scrum tool
Learning Agile Scrum Methodology Using the Groupware Tool Trello 349

but it has several similarities with the popular agile Scrum tools and can be a free
alternative for expensive agile Scrum tools. However, there is no proven research
of Trello being used as an agile Scrum tool in the past, even for teaching and
learning purposes. Therefore, this section presents a systematic development of
Trello-based agile Scrum methodology for teaching and learning purposes and for
the real life project development. In this Trello-based methodology, three main
components of Trello Boards, Lists and Cards are transformed into agile Scrum
components. The Trello board is considered as an agile Scrum project on which
entire team is working, Lists are utilised to design various backlogs: product
backlog, release backlog and sprint backlog, and cards are used to represents the
tasks or features (i.e. user stories).
Figure 2 shows a template of an agile Scrum project and its components
developed on the Trello board. This example Scrum project consists of seven
components in the form of seven lists and three Scrum team members. The
first component is the product backlog which contains several example tasks
from the user stories and prioritised as high, medium and low priority. Later,
this complete product backlog is divided into two release backlogs and each
release backlog is divided into two sprints. To aid learning about the Trello-
based sprint design, an example sprint is shown in Fig. 3 explaining its associated
components in the form of Trello features. It also contains the most critical
sprint component a burndown chart to show the current progress of this sprint
to everyone. Those who are not a member of the Scrum development team (e.g.
product owner and other stakeholders) can subscribe to the complete sprint
to get regular updates, therefore, they know the current status of the sprint.
Finally, each task is designed on the Trello card utilising all the card features
as shown in the example task in Fig. 4. It contains several features such as due
date, checklist, attachment, description, watch and comment, which are very
useful for managing and communicating about the task.
This developed Trello-based agile Scrum methodology is very useful in teach-
ing software development methodologies through a practical approach, by stu-
dents applying their learning of the agile Scrum methodology to the given sce-
nario of the project case study in a collaborative manner. This Trello-based
developed methodology is utilised in teaching of agile Scrum methodology in
the Software Engineering module of the BSc course at Bournemouth Univer-
sity, UK. Students develop a complete Scrum project in Trello based on the
given scenario as a part of their learning, therefore, they are able to apply this
knowledge in their final year project at a later stage. This practical approach of
learning the agile Scrum methodology provides the students with greater oppor-
tunities to work as team, communicate and discuss with each other solving the
problem, and designing an acceptable solution in a limited time. The successful
implementation of this practical approach based on Trello is demonstrated in
the next section where its application for the BSc final year project is discussed.
350 N. Naik et al.

Fig. 2. Illustration of an example agile Scrum project and its components on the Trello
board

Fig. 3. Illustration of Fig. 4. Illustration of an agile Scrum task and its components
an agile Scrum sprint on the Trello card
and its components
on the Trello list
Learning Agile Scrum Methodology Using the Groupware Tool Trello 351

5 Practical Application of Trello Based Agile Scrum


Methodology in the Development of Real Projects
This developed Trello-based agile Scrum methodology adopted for the BSc final
year computing projects at Bournemouth University, and are sponsored by indus-
try partners. Students complete these complex engineering or computing projects
towards the partial fulfilment of the requirements to obtain their BSc degree
alongside industry training. The project is a year-long assignment consisting
of 2–3 students working as a group on a collaborative piece of academic work
which produces a project prototype and final project report. The projects arise
from suggestions proposed by industry partners, with the person proposing the
project becoming the sponsor for the project team representing the industry
partner. In addition to the industry partner, an in-house tutor is allocated to
ensure that students gain practical industry skills by working on this extended
project and that academic standards and a suitable learning environment is pro-
vided to allow the students to investigate an engaging, complex problem in a
safe learning environment. This Project Based Learning (PBL) method assists
students in developing teamwork and problem-solving skills in addition to the
ability to communicate effectively with a variety of stakeholders at varying levels
within the organisation [6,7].
The agile Scrum development methodology is selected due to the time con-
straint for the development of the project. During this development, students are
required to maintain a number of records in a collaborative working environment.
Having been taught the developed Trello-based agile Scrum methodology during
their Software Engineering module of their course, where students are taught
the methodology. Trello was demonstrated as a groupware and web based tool
for structuring and managing the stages and components of the project through
the use of the Scrum methodology in a collaborative manner. This collaborative
working requires regular interaction and communication amongst the project
team which typically consists of the project sponsor (external- industry expert
and can be considered as a product owner), the project tutor (internal- subject
expert and can be considered as a Scrum master), and a number of students
(can be considered as a Scrum development team). The first task is to prepare
a proposal based on meetings with both external and internal supervisors and
the team. They seek to establish the requirements and user stories, in order
to begin the design process, producing the first component of the project, the
Terms of Reference (ToR). The students utilise Trello to manage the commu-
nication amongst all the members of the project team and their internal and
external sponsors. This means that when meetings are held with these stake-
holders, everyone is informed of the progress to-date as Trello constantly sends
updates of the progress made to the project team. This leads to more tar-
geted meetings addressing meaningful issues thus reducing wasted time in the
meetings.
As soon as they start their project development and build their user stories
as a part of their product backlog in Trello, which is communicated to all the
team members as they are uploaded to Trello. These user stories once verified
352 N. Naik et al.

by the team and the internal and external stakeholders forms the initial product
backlog and once complete, means the project can progress to the next stage of
the process. Subsequently, the product backlog is split into number of release
backlogs and sprints depending on the requirement of the project with mutual
negotiations. Every sprint is a shippable product and its progress is managed
in Trello through the burndown chart. This burndown chart is created at the
beginning of each sprint and updated regularly to inform of any change/ update
in the sprint throughout the sprint life cycle. Upon completion of the sprint,
it is reviewed by the external sponsor alongside the internal tutor during the
sprint review meeting. If both are content and said DoD (Definition of Done)
then the project team proceeds to the development of the next sprint. The same
process is repeated for all the sprints until the project is complete. It cannot be
underestimated the value of utilising Trello and the skills and experience gained
from employing an agile Scrum software development methodology in a real-life
project. The Trello software works well in this collaborative environment and
due to its clean and user-friendly intuitive UI, it is effortless to learn and assim-
ilate. Therefore, teaching time is minimal and students can produce meaningful
information efficiently and effortlessly [8].
Furthermore, Students make use of Trello to maintain their Project Devel-
opment Records (PDR), which are records of progress, thoughts and issues,
held on Trello, these can easily be compiled into their PDR for presentation
on project completion. In addition, internal and external tutor contact is main-
tained and where coaching intervention is required by academic staff, it can be
provided promptly through Trello. Overall, the experience of using Trello for
managing a complex, problem-solving challenge has been successful, with over-
all project marks improving from one year to the next. Moreover, it has brought
together skills they have learned during their Software Engineering lectures and
allowed the students to apply the agile Scrum methodology and free software
tools (Trello) to the project work in a groupware and e-learning environment.

6 Results and Analysis


The previous section explained the successful development and delivery of the
Trello-based agile Scrum methodology in the Software Engineering module, and
later its application into the BSc final year projects. Having introduced this
methodology, it was important to investigate the effect and success of this Trello-
based methodology. Therefore, the project results when Trello-based methodol-
ogy is employed were further analysed and compared against project results when
agile Scrum methodology is also employed for the project but without Trello.
This whole process was employed in practice for the two cohorts, therefore their
projects results were compared against the previous cohort who developed their
projects using agile Scrum methodology but without Trello based learning. There
was a slight improvement in the overall project results (<2%) for both cohorts
but it was not a significant finding for Trello-based methodology because this
improvement could be attributed to several other components of the project.
Learning Agile Scrum Methodology Using the Groupware Tool Trello 353

However, when the results for both cohorts were examined in more detail and
a grouped frequency distribution analysis performed, there was an interesting
pattern seen in both results when compared with and without Trello-based agile
Scrum methodology. The use of Trello-based agile Scrum in project development
showed a significant improvement in the overall performance (i.e. each individual
student) of class with minimum standard deviation for the both cohorts as shown
in Figs. 5 and 6. This was encouraging because it showed that the Trello-based
practicals and collaborative working helped all students in understanding, clari-
fying and correcting their project activities in a timely manner. Trello-based agile
Scrum methodology was one of the major components of the project throughout
its life cycle, however, the completion of the actual project requires several other
stages and is important for its success. For this reason, analysing the results
and its improvement may not explicitly reflect the success of the Trello-based
methodology but the improvement in the class performance (i.e. each individual
student) is a strong indication of the success of this proposed methodology [10].
Nonetheless, in the future, it is important to explicitly evaluate the effect and
success of this Trello-based methodology in the development of the project by
creating a separate mechanism for its evaluation.

Fig. 5. Grouped frequency distribution Fig. 6. Grouped frequency distribution


of project results using with and with- of project results using with and with-
out Trello-based agile Scrum method- out Trello-based agile Scrum method-
ology for Cohort1 ology for Cohort2

7 Conclusion
This paper presented the development of a Trello-based agile Scrum methodol-
ogy, where Trello features were transformed to convert it to a basic Scrum tool
for teaching and learning purposes at no cost. Later, it was employed in the
delivery of the software engineering module in BSc courses and subsequently,
in the development of the BSc final year project at Bournemouth University,
UK. The effect and success of this Trello-based methodology was evaluated by
354 N. Naik et al.

comparing the project results of the two cohorts with and without Trello-based
Scrum methodology. The comparative analysis of the project results revealed a
significant improvement in the overall performance (i.e. each individual student)
and this Trello-based practical and collaborative working helped all students in
understanding, clarifying and correcting their project activities in a timely man-
ner. Nonetheless, in the future, it is important to explicitly evaluate the effect and
success of this Trello-based methodology in the development of the project by
creating a separate mechanism for its evaluation. Additionally, it would be more
useful to develop some case studies of this Trello-based agile Scrum methodology,
which could be incorporated into this Trello-based method.

References
1. Beck, K., Beedle, M., Van Bennekum, A., Cockburn, A., Cunningham, W., Fowler,
M., Grenning, J., Highsmith, J., Hunt, A., Jeffries, R., et al.: Manifesto for agile
software development (2001)
2. Cohn, M.: Why there should not be a release backlog (2018). https://www.
mountaingoatsoftware.com/blog/why-there-should-not-be-a-release-backlog
3. Financesonline.com: Trello review collaboration software (2019). https://reviews.
financesonline.com/p/trello/
4. Hartman, B.: New to agile? INVEST in good user stories (2009). https://agileforall.
com/new-to-agile-invest-in-good-user-stories/
5. Naik, N., Price, D.: Take it easy, it is games not mathematics. In: The 2nd HEA
Future Directions for Higher Education in Wales Conference, Aberystwyth, UK
(2014)
6. Naik, N.: A comparative evaluation of game-based learning: digital or non-digital
games? In: European Conference on Games Based Learning, vol. 2, p. 437 (2014)
7. Naik, N.: Non-digital game-based learning in the teaching of mathematics in higher
education. In: European Conference on Games Based Learning, vol. 2, p. 431 (2014)
8. Naik, N.: Non-digital game-based learning in higher education: a teacher’s perspec-
tive. In: European Conference on Games Based Learning, p. 402 (2015)
9. Naik, N.: Crowdsourcing, open-sourcing, outsourcing and insourcing software
development: a comparative analysis. In: 2016 IEEE Symposium on Service-
Oriented System Engineering (SOSE), pp. 380–385. IEEE (2016)
10. Naik, N.: Dual powerpoint presentation approach for students with special educa-
tional needs and note-takers. Eur. J. Spec. Needs Educ. 32(1), 146–152 (2017)
11. Naik, N.: Software CROWD-sourcing. In: 2017 11th International Conference on
Research Challenges in Information Science (RCIS), pp. 463–464. IEEE (2017)
12. Naik, N.: The use of GBL to teach mathematics in higher education. Innov. Educ.
Teach. Int. 54(3), 238–246 (2017)
13. Pressman, R.S.: Software Engineering: A Practitioner’s Approach. McGraw-Hill
Education, New York (2014)
14. Schwaber, K.: Agile project management with Scrum. Microsoft Press (2004)
15. Schwaber, K., Beedle, M.: Agile software development with Scrum, vol. 1. Prentice
Hall, Upper Saddle River (2002)
16. Schwaber, K., Sutherland, J.: The scrum guide. Scrum Alliance 21 (2011)
17. Scrum-institute.org: The scrum product backlog (2019). https://www.scrum-
institute.org/The Scrum Product Backlog.php
Learning Agile Scrum Methodology Using the Groupware Tool Trello 355

18. Scrumalliance.org: New to user stories (2019). https://www.scrumalliance.org/


community/articles/2010/april/new-to-user-stories
19. Scrum.org: What is a product backlog? (2019). https://www.scrum.org/resources/
what-is-a-product-backlog
20. Scrum.org: What is a sprint backlog? (2019). https://www.scrum.org/resources/
what-is-a-sprint-backlog
21. Sommerville, I.: Software Engineering, 10th edn. (2015). ISBN-10, ISBN-13
1292096136
22. Trello.com: Trello lets you work more collaboratively and get more done (2019).
https://trello.com/en

You might also like