DataPDF Available
Infusing Design Thinking Into a
Software Engineering Capstone
Course
Maria Palacin-Silva, Jayden Khakurel, Ari
Happonen, Timo Hynninen, Jari Porras
firstname.lastname@lut.fi
Motivation
SE educators are challenged to balance the scope and
depth in their courses to train students in skills which
fulfill industry needs.
Project/Problem Based Learning (PBL) is an effective way to train
SE students to face real world challenges.
A popular way to bring PBL into SE education is through
capstone courses. These allow engage students to engineer a
solution to a problem from the beginning to the end, and expose
them to practical project working, team level collaboration and
project management.
We present the design of a human-centric SE capstone,
infusing design thinking methods and agile practices into
the project life-cycle knowhow.
Background
Lappeenranta University of Technology offers
Computer science Bachelor , 3 years, 180 ects, 10
ects Bachelor’s thesis
Computer science Master , 2 years, 120 ects, 30 ects
Master’s thesis
Bachelor’s programme is rather practically oriented with
emphasis on programming skills
Master’s programme is more scientific
Many courses had practical parts but missing a real
“capstone” project
Approaches to PBL
Visited Aalborg University to get familiar their approach
A teaching paradigm utilized throughout the schools
and programmes both in bachelor and master level
A teacher collaboration method enabling teachers
(from different disciplines) to work together
A practical learning approach based on real work
and experiences transforming knowledge and skills
into capabilities
A project focused semester structure so that other
courses support the project
LUT approach
Running a software project course, 3 ects (=84h of work)
Focus on master’s level, implementation twice
First year fall, project management practice
First year spring, practical project
Failure already at first fall !!
Too small course
No real life connections
Not really PBL
Two projects (which could not be helped at that
point)
The spring project was planned bigger than 3 ects
Spring implementation
Running a software project course as the practical course
and the following courses supporting
Green IT and sustainable computing (most course
tasks were applied to the software project)
Software as a service (never realized)
Theme for the course was local challenges related to
the WWF’s Urban Solutions for a Living Planet
report
Cities are new hot spots
Running a software project - story
Goal
Design and implement a human-centric software engineering
capstone course that infuses design thinking methods to software
development project and links to the other courses
Design Thinking is a design methodology that provides a solution-
based approach to solving problems. It’s extremely useful in tackling
complex problems that are ill-defined or unknown, by understanding
the human needs involved, by re-framing the problem in human-
centric ways, by creating many ideas in brainstorming sessions, and
by adopting a hands-on approach in prototyping and testing.
BY
RIKKE DAM
AND
TEO SIANG
|
2 WEEKS AGO
150
!
"
#
!"#$%&'()$&*$&%'$#'+',"#$%&'-".)/,/0/%1'.)+.'23/4$,"#'+'#/05.$/&67+#",'+223/+8)'./
#/04$&%'23/70"-#9':.;#'"<.3"-"01'5#"=50'$&'.+8*0$&%'8/-20"<'23/70"-#'.)+.'+3"'$006,">&",'/3
5&*&/?&@'71'5&,"3#.+&,$&%'.)"'
)5-+&'&"",#
'$&4/04",@'71'3"6=3+-$&%'.)"'23/70"-'$&')5-+&6
8"&.3$8'?+1#@'71'83"+.$&%'-+&1'$,"+#'$&'
73+$&#./3-$&%
'#"##$/&#@'+&,'71'+,/2.$&%'+')+&,#6
/&'+223/+8)'$&'
23/./.12$&%
'+&,'."#.$&%9'A&,"3#.+&,$&%'.)"#"'>4"'#.+%"#'/='
!"#$%&'()$&*$&%
?$00'"-2/?"3'+&1/&"'./'+2201'.)"'!"#$%&'()$&*$&%'-".)/,#'$&'/3,"3'./'#/04"'8/-20"<
23/70"-#'.)+.'/8853'+3/5&,'5#'B'$&'/53'8/-2+&$"#@'/53'8/5&.3$"#@'+&,'"4"&'/53'20+&".9
:&')$#'CDED'#"-$&+0'."<.'/&',"#$%&'-".)/,#@'F
()"'G8$"&8"#'/='.)"'H3.$>8$+0
@I'J/7"0'K3$L"
0+53"+."'M"37"3.'G$-/&'/5.0$&",'/&"'/='.)"'>3#.'=/3-+0'-/,"0#'/='.)"'!"#$%&'()$&*$&%
23/8"##9'G$-/&N#'-/,"0'8/&#$#.#'/='#"4"&'-+O/3'#.+%"#@'"+8)'?$.)'8/-2/&"&.'#.+%"#'+&,
+8.$4$.$"#@'+&,'?+#'0+3%"01'$&P5"&.$+0'$&'#)+2$&%'#/-"'/='.)"'-/#.'?$,"01'5#",'!"#$%&
()$&*$&%'23/8"##'-/,"0#'./,+19'()"3"'+3"'-+&1'4+3$+&.#'/='.)"'!"#$%&'()$&*$&%'23/8"##'$&
5 Stages in the Design Thinking
Process
5 Stages in the Design Thinking Process | Interaction Design ... https://www.interaction-design.org/literature/article/5-stages-i...
1 of 2 08/11/2017, 23.11
Learning objectives
Plan, estimate and monitor a software project in an iterative
and incremental manner;
Understand design thinking methods and usability techniques
and, their practical application into a project’s life-cycle
Implement as software system from scratch
Familiarize with contemporary development tools and
environments
Use modern software engineering practices to plan, monitor
and deliver a realistic software project that meets
stakeholders needs, is highly usable and sustainable.
Understand the new business challenges and opportunities
for their software projects
Course Design
Course Design
The course's teaching sessions consisted of:
in-class activities with a short intro to the topic by a lecturer, and
a practical assignment. The lessons had flipped-classroom
elements
mentoring sessions, where teams were able to get tutoring by the
teaching staff
Grading was based on a number of components which
supported the both project working and attending in-class
events
the project itself, and other individual deliverables (storyboards,
idea presentations, test reports) were the basis for grading
student work
individual questionnaires and reflections were required elements
for completing the course
Teams
29 students, 6 teams based on interests through moodle forums.
We analysed team structures using belbin tests. Teams used this
test to identify their key interests and skills.
The projects
Activate
LUT Events
Ostracon
Blood4Life
Ostaap
Blood4Life
Watchdog
Personas (3 different)
9
3 USER EXPERIENCE DESIGN
The purpose of this design helped us to target our users, and base our design on the feelings
and perception that the user will have when interfacing with the application.
The process for the UX portfolio started with the creation of the personas, scenarios and
storyboard in which we provide how people would need the use of Watchdog application.
The journey maps where created in order to observe the steps that the user and administrator
need to follow and the motivation of why they need to use our application.
3.1 Personas
Scenarios & storyboard
11
3.2 Scenarios
3.3 Story board
Journey maps
12
3.4 Journey Maps
15
3.4 Journey Maps
Paper prototyping
13
3.5 Prototypes
Figure 1 User mobile interface prototype
Figure 2 Administrator interface prototype
Public paper prototype
testing
development
Public testing of the solution
Results and lessons learned
Lessons learned
Design Thinking Perspective
Personas: Creating personas inspired students to look at problems from
the perspective of a group of target application users, rather than from a
technological and own perspective.
Storyboards: Expressing ideas with real behaviours and actions of users
through storyboarding helped students to further understand who, what,
when, where, and how the application is used and identify the social and
ethical implications. For example with storyboard classroom presentation,
one team found out that their idea could invade the privacy of users. As a
result, the idea was improved.
Journey mapping: user journey map helped students to improve and
enhance their design thinking by helping them understand the emotions of
the application users in the early stages. In mentoring session, students
pointed out that through the user journey map they managed to
understand the deeper feelings of the users of the application, which might
have been difficult otherwise.
Prototyping: students found the prototype design to be very helpful in
improving their design process. For example, one of the teams pointed out
during the mentoring session that having feedback from users during the
prototype process was useful in outlining the user interface.
Lessons learned
Lecturer Perspective
Challenging students to solve real world problems made
students create solutions with potential value for
society. This was pointed out by an external jury from
the local municipality.
Students took ownership of the projects and got
involved into entrepreneurial initiatives in and out
campus. As a result, two of the projects have continued
into start-ups and one as a open source project.
The course design was effective to motivate students to
participate actively in the entire course. As a result
dropout rate was zero.
Interaction between students and lecturers was heavy,
a teaching assistant per team could help ease this.
Lessons learned
Lecturer Perspective
5 person teams should have worked
582h
None of the teams even close
Measuring work ?
The measurement of worked hours as
such is not a useful probe of learning
behaviour and outcomes. Therefore,
we need to use additional measures
to understand the student workload
and avoid burnout.
5
portfolio and b) Evaluate how well the solution meets the
quality in use standard. In second activity public testing,
booths were set up for each team in a popular area of
university. They had to show their solutions to anyone
passing by including, students and university staff. Each
user had to fill a survey after testing a solution (They
had to rate statements in a ve point scale from strongly
disagree to strongly agree). Those surveys were designed
based on the ten statements from the systems usability
scale (see table II) from [57], [58]. Finally students
processed these surveys and used the results as inputs
for the maintenance stage.
TABLE II
SURVEY STATE ME N TS FROM T HE SYSTEMS USABILITY SCALE [57], [58]
Systems Usability Scale Statements
I think that I would like to use this system frequently
I found the system unnecessarily complex
I thought the system was easy to use
I think that I would need the support of a technical person to be able to use this system
I found the various functions in this system were well integrated
I thought there was too much inconsistency in this system
I would imagine that most people would learn to use this system very quickly
I found the system very cumbersome to use
I felt very confident using the system
I needed to learn a lot of things before I could get going with this system
Maintenance: This stage aimed at wrapping-up the stages
students had completed before, it lasted three weeks.
This, stage started with a lecture about software main-
tenance practices and workshop to review teams perfor-
mance, practices, success stories and current issues. Stu-
dents had to improve their solutions using the feedback
gathered in the public testing day. They went through all
DT stages to solve certain issues they did not expect.
Presenting Project Solutions: Industry stakeholders and
the local government were invited as jury for the final
projects presentation. They evaluated the content of the
final reports, the ideas and the project implementation.
The feedback was positive and as detailed in section VI,
they will play the clients role for this course in future.
B. The Teaching Process
The teaching team was composed by the authors of this
article. The course was led by MSc. Maria Palacin-Silva,
special lectures and mentoring - in particular topics- were
given by MSc. Jayden Khakurel (DT techniques and usability
design), DSc. Ari Happonen (Team dynamics) and MSc. Timo
Hynninen (software quality testing).
The course had one session per project stage (Fig 3). Each
session started with a 5 to 10 minutes progress presentation
by each team. This would be followed by one hour lecture on
a particular topic (e.g software quality testing). Then teams
would have an in-class practical exercise to complete (e.g
paper prototyping, in figure 4). Afterwards,students would
receive an assignment to apply the session teachings onto
their own projects and generate a deliverable (which would
get presented during the following session). In addition, two
sessions were fully dedicated to evaluate the teams detailed
progress (a mid-term and a final presentation). Finally, one
Fig. 4. Paper prototyping in-class exercise
mentoring session per project stage was organized for the
teams.
This course used moodle as a platform for sharing the
reading and lecture materials, exercises, deliverables and dis-
cussion forums (e.g. a forum was set for students to brainstorm
ideas and join teams).
IV. THE TEAMS
Project teams of four to ve students were formed in the
early stage of the course (via the forum tool of Moodle). In
order to promote inter-cultural diversity, students were advised
to team up with students of different nationalities.Students
posted their interests and skills and searched for students
matching their interests. Teams were formed among students
with closest interests. Each team had to appoint clear roles
for each team member and divide responsibilities from the
beginning of the project. Students had to record their project
work hours and report them on a weekly basis. Figure 5
presents a summary of cumulative work hours per team (this
figure includes all team members).
Fig. 5. Total worked hours per project
Teams had a total of nine deliverables consisting
project plan, UX design portfolio, code repository,
architecture, verification and validation review, usability
testing results, weekly reports, belbin tests [59] and final
report. Teams also had progress presentations by the
end of each project stage. The two main presentations,
a mid-term and a final presentation, were evaluated
and rated by other teams and invited panel of external
experts. Teams also had a possibility to receive bonus
Lessons learned
Students Perspective
Students highlighted that in this course they had learned that:
Project management matters
Conceptualizing an idea before developing is important
To work in a multicultural team
Share responsibilities and meet deadlines in a systematic way
How to develop a software project from scratch. From an idea to
user validation.
Your users are not engineers
Importance of understanding the user behaviour
Master new development frameworks
To explore business opportunities
To explain your application to potential users
To own a project
Lessons learned
Students feedback
”We did learn a lot about team and project management dynamics
(including documentation, project time tables, skills and work
division, collaboration and so on).”
“We did learn team skills and we noticed that knowing others
specialties and skills is important Step-by-step course approach but
everyone as responsible person in some part of the course.”
“When you are a normal user of different applications you are not
conscious about the real steps that were taken to develop it. You
assume that to develop an application someone needs just to code.
What we learned from this course is that there are certain processes
that should be carried out, as much important as the coding itself.
UX Design is one of them. Storyboards, Personas, Scenarios are all
crucial to understand what user really needs... of the general
message, most of the course reflection did pin point.”
Conclusion
We presented a 16 week software engineering capstone course
that infuses design thinking (DT) methods and agile practices
into the SE project life-cycle to address the existing gap between
applying design thinking into software development, and skills
taught in SE education.
DT was used to prompt project-based learning, requirements
elicitation, software design and development.
DT methods were proven to be a hands- and minds-on method to
engage students and improve soft skills (e.g. team working)
important in industry.
The approach allowed students to be self-directed which increased
their motivation and reduced dropouts to minimum.
Additionally, out of the 26 students and their six projects, two
projects are being continued as entrepreneurial initiatives and
one as an open-source project.
... As a side note, one of the reasons might be that waste and waste-related matters are not among fancy topics and are less attractive for solution developers in comparison with other available subjects. Therefore, it would make a lot of sense for municipalities to network more with universities and collaborate with them to integrate recycling and re-purposing related topics, for example to software engineering capstone courses [62] and/or promote recycling and waste management related innovative solution development in the form of Hackathon and Code Camp events [63,64,65,66]. ...
... campaigns run by cities to increase their recycling rates). And also, the impact of adding ideologies like design thinking [62] and local culture aspects investigation into the development paths of solutions like these might be very important in achieving similar results in other cultural and user context. As Fox the Recycler version 2.0. ...
Conference Paper
Full-text available
In August 2018, the City of Kuopio, student apartments (Kuopion Opiskelija-asunnot Oy), regional waste management and recycling company (Jätekukko Oy), and Savonia University of Applied Sciences set up an event called 3R Game Jam. The aim of the event was to different sources of motivation, which could improve young adults’ interests towards recycling. Additionally, the goal was to study gamified solutions, designed to boost recycling activities within the students age group. The game called “Fox the Recycler” won the competition and was selected for further development. In the fall of 2018, the next version of the game was piloted in student apartments where 90 % of all young adults (250) installed the game. The best rate of monthly users was 235, daily users over 50 to 30 persons. After the pilot, the recycling rate of biowaste increased from 76 % to 97 %. The recycling rate of plastic also increased significantly: 84 % of the inhabitants currently recycle plastic, while only 25 % of them did so before the pilot. The study found that the gamification-based solutions can be used efficiently to support a change in consumers’ behavior. such solutions have a wide range of applications in many different recycling and other contexts, and in different environments. The 2.0 version of the game will be piloted for primary school children to further study educational and cultural change in recycling during 2019.
... 108 User journey can be defined as a visual illustration of touchpoints in chronological order, which users will experience while engaging with a software product. 109 These DT techniques help to empathize with users, examine their behaviors, and produce outcomes focused on users' demand. 110 The term "Dual-Track" was first used in 2005 as an approach to combine aspects of agile development and UCD. 111 This related conference paper uses the example of Alias corporation to illustrate the conceptual framework and practical applicability of the methodology, which was also used by Autodesk (the successor of Alias) in another software development project 2 years later. ...
Article
Full-text available
Integrating user‐centered approaches into development processes is one of the main challenges nowadays that derives from different objectives of software engineering (SE) and human‐computer interaction (HCI) fields. For SE experts, the main goal is quality code creation, whereas for HCI professionals, it is the continuous product interaction with the users. The major question is what tools and timings can be used together to achieve these goals effectively. Therefore, this article provides comparative, exploratory, and qualitative research about possible solutions on how practitioners transfer HCI values and practices to SE processes. The current practice of software companies was studied by conducting interviews on a sample of 13 Hungarian Information Technology companies to explore the SE processes in respect of several dimensions (applied development models, the integrity of user‐centered methods, and the user experience [UX] maturity). According to preliminary expectations, the development processes of the various companies proceed in different steps; nevertheless, they can be well grouped together based on the UX methods applied. The results representing the various user‐centered processes can be considered useful for future decision makers of software companies worldwide. Integrating user‐centered approaches into development processes is one of the main challenges nowadays that derives from different objectives of software engineering (SE) and human‐computer interaction (HCI) fields. Therefore, this article provides comparative, exploratory, and qualitative research about possible solutions on how practitioners transfer HCI values and practices to SE processes. The results representing the various user‐centered processes can be considered useful for future decision makers of software companies worldwide.
ResearchGate has not been able to resolve any references for this publication.