=Paper= {{Paper |id=Vol-2531/paper1 |storemode=property |title=Teaching Software Engineering Principles in Programming and Non-Programming Activities at Schools |pdfUrl=https://ceur-ws.org/Vol-2531/poster01.pdf |volume=Vol-2531 |authors=Claus Pahl,Ilenia Fronza |dblpUrl=https://dblp.org/rec/conf/seuh/PahlF20 }} ==Teaching Software Engineering Principles in Programming and Non-Programming Activities at Schools== https://ceur-ws.org/Vol-2531/poster01.pdf
     Teaching Software Engineering Principles in
   Programming and Non-Programming Activities at
                      Schools
                                      Claus Pahl                                                                            Ilenia Fronza
                        Faculty of Computer Science                                                           Faculty of Computer Science
                      Free University of Bozen-Bolzano                                                      Free University of Bozen-Bolzano
                           Bozen-Bolzano, Italy                                                                  Bozen-Bolzano, Italy




   Abstract—Software engineering principles are relevant to                                      We consider teaching formats that aim at achieving com-
students at school, irrespective of whether they will become                                  puter science objectives and specifically foster SE principles,
professional developers. We discuss two types of situations for                               while also guaranteeing the achievement of the existing cur-
teaching software engineering principles that we covered in a
number of publications. Firstly, we discuss app development and                               ricular learning objectives. Here, EUSE can aid the student’s
robotics examples as more traditional settings for software devel-                            goals, without aiming to transform them into professional
opment. Secondly, we show how the creation of infographics and                                software engineers with targeted direct courses.
videos represents an opportunity to promote agile approaches.                                    The EUSE field has largely focused on adult, mainly
In schools, computer science subjects are often taught in the                                 professional contexts, only a few contributions are dedicated
context of other subjects, which we address through the second
situation above. We focus on a range of activities that aim at                                to schools. Most of these studies target the teaching of agile
fostering software engineering principles, while also considering                             methods, which turn out to be suitable for schools. For
the achievement of the existing curricular learning objectives.                               example, we propose a framework in which a series of agile
   Index Terms—Software Engineering; Software Engineering                                     methods can be adapted for middle schools. We have published
Training and Education; End-User Software Engineering.                                        on the two settings outlined [1]–[4] and will describe the main
                        I. I NTRODUCTION                                                      approach and insights here. We will cover programming and
                                                                                              non-programming activities.
   Bollin et al. [6] looked at the need for teaching Software
Engineering (SE) principles in schools. Their feasibility analy-                                  II. S OFTWARE E NGINEERING P RINCIPLES IN S CHOOLS
sis revealed that this is effective in training skills needed today                              In order to bring the benefits of a Software Engineering
beyond the actual software development. These skills include                                  (SE) approach to end-users, Burnett and Myers recommend
for instance group dynamics, psychology and communication                                     to consider and respect the student’s (i.e., end-users in EUSE
skills as well as general soft skills, but also logic, planning,                              terminology) goals and working style [8]. The latter can often
modelling, and computational thinking as a problem solving                                    be opportunistic and incremental, collaborative, and organised
ability. End-User Software Engineering (EUSE) [7] refers to                                   into trial-and-error phases. Agile methods are consequently a
non-professional, untrained developers – thus a definition that                               good candidate in this endeavor, simply because they inher-
applies to students at school from primary to high school lev-                                ently favor a flexible, iterative approach. Their focus is also
els. The challenge of EUSE in schools is often understanding                                  more on the product than on the production of documentation.
how to leverage existing curricular activities (that do not have                              The latter would negatively impact on students’ motivation.
software development as their main objective) to foster Soft-                                    The existing attempts to introduce agile principles to schools
ware Engineering principles if focussed programming courses                                   have been compared with a long waterfall development ap-
are not part of the curriculum.                                                               proach. Though here the focus was more in the final product,
   Central in this effort for schools are the acquisition of                                  rather than the process through which students developed the
software quality notions from a product perspective, but also                                 product. Adopting agile, as we propose, fills this gap. This is
SE principles from a process perspective. This aim creates                                    also more transferable, e.g., to non-STEM subjects, since the
a number of challenges. Often, direct SE lectures should be                                   agile focus is less in technical product quality. As a conse-
avoided as school pupils often do not realise the usefulness of                               quence, software engineering principles also become relevant
learning SE principles. Furthermore, when computing topics                                    for non-technology oriented students. Software engineers do
are taught as part of other subjects, meeting their core curric-                              not just write programs; they think in terms of satisfying
ular learning objectives becomes difficult.                                                   needs and solving problems. Moreover, following a (software)
   The work presented here has been supported by the COCONATS project                         engineering process teaches how to manage all the steps from
(https://coconats.inf.unibz.it/), Free University of Bozen-Bolzano.                           initial customer inception to the release of the finished product.



S. Krusche, S. Wagner (Hrsg.): SEUH 2020                                                                                                                           68


                         Copyright © 2020 for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).
                                                                     Introduction (2h): tips on infographics/videos but no SE/Agile
   The selection of infographics and videos for our sample
                                                                     Paper-based prototype (6h): small releases (20-min cycles), user
courses had the following reasons. 1) They are transversal           stories (storyboards), on-site customer (10-min with teacher)
to many disciplines, and can be adapted to different types           Creation of infographic (4h): small releases (20-min cycles),
of schools, e.g., creating videos and infographics takes into        testing, on-site customer (10-min revision) + peer evaluation
account the need for visual communication skills. 2) They also       Presentation (2h): conformance with the initial requirements and
                                                                     paper-based prototype user stories and testing
engage them to learn subjects they are not particularly gifted
at. Videos and infographics are good candidates, as the current        Based on frequent small releases, it provides an opportunity
generation of students has grown up with digital media.             for formative assessment. Focusing on the process side (rather
                                                                    than on the product), we have selected a set of XP practices,
                          III. A PPROACH                            which are recommended to be adopted together. The table
   In this work, we focus on middle and high schools, covering      below shows the XP practices that can be implemented.
an age range of 10 to 17 years, with the additional goal             Practice        Description
of connecting to students before they choose their future            On-site         The customer (i.e., teacher) is always present to
                                                                     customer        provide continuous and direct feedback.
career. However, apart from enticing students into computer
                                                                     Testing         Acceptance testing (to allow continuous feedback),
science studies, we realise that not all will become professional                    and test-first (to test as soon as possible thus
developers, but will nonetheless need to be equipped with                            minimizing long-term testing costs).
capabilities suitable for a digitalised world.                       User stories    Informal prototypes (e.g., storyboards) that de-
   We discuss here two different types of activities:                                scribe requirements.
                                                                     Small           Decomposition of activities in short iterations in
   • apps and robots as computing topics, with a clear link to
                                                                     releases        order to obtain timely and continuous feedback.
      programming and development [5],
   • information and media, as concerns of the wider digital                       IV. R ESULTS AND C ONCLUSIONS
      world, without any concrete software connection [3], [4].        We introduced two separate contexts in order to foster soft-
A. Robotics, Apps and Blogs                                         ware engineering skills and principles in schools: a computing-
                                                                    oriented robotics/apps module and a digital media-oriented
   The goal of one proposed teaching module is completing a
                                                                    creation of infographics and videos. In both cases, this was
robotics project. This is accompanied by documenting these
                                                                    an opportunity to promote process-oriented principles (here
development activities in a blog, which is often also of
                                                                    agile) in middle and high schools.
curricular value in school. Writing a blog can link to the
                                                                       Our assessment included both product and process aspects.
students’ interests and social communication habits, and thus
                                                                    We observed a quality improvement of the product throughout
engage them better in the technical work. Here, using smart
                                                                    the iterations. The results also show that students started
phones or other mobile devices to document project activities
                                                                    adopting a software engineering approach, and managed to
also helps towards a more competent and responsible use of
                                                                    organize their activities in order to be able to present a
these devices. The blogs are anyway a good opportunity for
                                                                    prototype at the end of each iteration.
an integration in a traditional curricula.
                                                                       Our future work includes the further verification of
   A module focusses on combining robotics with digital
                                                                    how fostering SE practices through programming and non-
media, consisting of four main parts:
 Introduction and team creation (4 hours);                          programming activities can be beneficial to students when they
 Blogs: introduction and first posts (6 hours);                     start programming. More experiments would be beneficial to
 Unplugged introduction to robotics (4 hours);                      further clarify the effectiveness.
 Robotics project (6 hours).
                                                                                                R EFERENCES
   Here, from a software engineering perspective, a software
                                                                    [1] I Fronza, N El Ioini, C Pahl, L Corral. Bringing the Benefits of Agile
process is clearly applicable. This could be in the form of agile       Techniques Inside the Classroom: A Practical Guide. Agile and Lean
methods with a focus on early implementation and testing,               Concepts for Teaching and Learning, 133-152. 2019.
with intensive interaction with the ‘customer’, which is the        [2] A Colombi, I Fronza, C Pahl, D Basso. COCONATS: Combining
                                                                        Computational Thinking Didactics and Software Engineering in K-12.
instructor in this case. The challenge is here the assessment.          19th SIG Conference on Information Technology Education. 2018.
Generally software quality aspects could be applied, more           [3] I Fronza, C Pahl. End-User Software Engineering in K-12 by Leveraging
research is here needed to develop assessment methods that              Existing Curricular Activities. ICSOFT, 283-289. 2019.
                                                                    [4] I Fronza, C Pahl. Teaching Software Engineering Principles in Non-
will work in a school’s curriculum.                                     Vocational Schools. CSEDU. 2019.
                                                                    [5] I Fronza, L Corral, C Pahl. Combining Block-Based Programming
B. Digital Media                                                        and Hardware Prototyping to Foster Computational Thinking. SIG
   We applied a set of agile (eXtreme Programming XP) prac-             Conference on Information Technology Education (SIGITE ’19). 2019.
                                                                    [6] A. Bollin, S. Pasterk, P. Antonitsch, B. Sabitzer. Software engineering
tices in these courses: a) Incremental development, through             in primary and secondary schools-informatics education is more than
small releases, frequent testing, and user stories; b) Customer         programming. Intl Conf on SE Education and Training, 2016.
involvement, by having the instructor playing this role; and c)     [7] S. Chimalakonda, K. V. Nori. What makes it hard to teach software en-
                                                                        gineering to end users? some directions from adaptive and personalized
Change, through regular system releases, test-first, refactoring,       learning. IEEE Conf on SE Education and Training, 2013.
and continuous integration.                                         [8] M. M. Burnett, B. A. Myers, B. A. Future of end-user software
   The infographics and video course is organised as follows:           engineering: beyond the silos. In Future of Software Engineering. 2014.




S. Krusche, S. Wagner (Hrsg.): SEUH 2020                                                                                                    69