Report on Problem Based Learning for Software Engineering ∗ Lene Sørensen Morten Falch Knud Erik Skouby Electronic Systems, CMI Electronic Systems, CMI Electronic Systems, CMI Aalborg University Copenhagen Aalborg University Copenhagen Aalborg University Copenhagen Copenhagen S, Denmark Copenhagen S, Denmark Copenhagen S, Denmark ls@cmi.aau.dk falch@cmi.aau.dk skouby@cmi.aau.dk ABSTRACT becomes clear that software engineering as a discipline is based on more than 17 Knowledge Areas and related disciplines and that Software Engineering is far more than programming and each of these represent a discipline in itself. All in all, these areas requirements specifications. In the SWEBOK, software employ techniques of math, science, engineering and design and engineering is defined through 15 different disciplines and topics cater for strong analytical and problem-solving skills as well as also covering soft skills such as project management and inter- communication and interpersonal skills [2]. cooperation between teams. Problem Based Learning, PBL, is a The interdisciplinary and application oriented focus of software pedagogical learning approach used amongst others at AAU. This engineering challenges the traditional teacher centred learning paper discusses how PBL can support software engineering and methods, as hands-on experience is crucial for developing provide soft skills called for in industry and investigates how competences within software engineering. The software Ph.D. students with a traditional software engineering engineering industry demands that software engineers have skills background understand and perceive PBL. The paper is based on of creativity, problem solving, analytic, cooperative, and a case study prepared as a part of the European Erasmus Project interpersonal skills [3]. With a tighter focus on stakeholder needs, Paths Ways to Ph.D. In this project skills in software engineering and agile development, the software engineer must be able to has been exchanged and developed for the target countries Russia interrelate with stakeholders and not only able to program the and Jordan as a way to support their process of developing Ph.D. software [3]. programs in software engineering. This paper discuss how these challenges can be met by the use of CCS CONCEPTS alternative methods of teaching with less focus on one-way • Social and professional topics~Software engineering education teaching, which better can activate. The paper reports on the experiences with project-oriented problem-based learning KEYWORDS (POPBL or PBL) as an inherent pedagogy within software SWEBOK, Problem Based Learning, Software Engineering engineering in the two-year ERASMUS+ project Joint Programs and Framework for Doctoral Education in Software Engineering, ACM Reference format: pws@phd. More precisely, the paper analyses how the Ph.D Lene Sørensen, Morten Falch and Knud Erik Skouby. 2018. Report on students participating in the project have found the PBL useful for Problem Based Learning for Software Engineering . In Proceedings of the their Ph.D. work. The PBL ideology has been used throughout the 2018 Workshop on PhD Software Engineering Education: Challenges, Trends, project and has initiated new discussions amongst the and Programs (SWEPHD2018). St. Petersburg, Russia, 6 pages. participating partners and has placed focus on the “soft skills” in discussions about new Software Engineering Ph.D. programmes in Russia and Jordan. 1 Introduction Software engineering is a discipline with a broad definition and Problem Based Learning, PBL, has in many years been used as the includes numerous competence areas. Moreover software primary teaching and learning form of active learning at engineering has an application oriented focus, which incorporates universities such as Aalborg University. PBL is a pedagogical theories and methodologies from many different disciplines approach in which students work with authentic problems, self- within engineering, science and economics. If looking at the governed group work and collaborate in problem solving and Guide to the Software Engineering Body of Knowledge [1], it learning [4]. The skills students achieve through working and learning PBL resemble the skills, which are asked for in real Copyright © 2018 for the individual papers by the papers' authors. Copying permitted for private and academic purposes. This volume is published and software engineering work [3]. PBL is therefore often considered copyrighted by its editors. to be a fundamental basis for learning and for securing students’ The 2018 Workshop on PhD Software Engineering Education: Challenges, Trends, can work in industries with real challenges. and Programs, September 17th, 2018, St. Petersburg, Russia The paper is organized as follows: Section 2 outlines the analytical framework for the paper. In section 3, the pws@phd project is PhD SWE, September, 2018, St Petersburg, Russia L. Sørensen et al. described in more detail to understand the foundation of the (students) were present in a school room while providing the reporting. Section 4 describes the SWEBOK and how the skills input to the survey which secured that all of them delivered the achieved from Problem Based Learning are linked. The teaching survey. The survey results have afterwards been analysed for and learning perspectives of the PBL approach and how they have perspectives and themes which have been raised by the students been used in the project are described in section 5. Additionally, and interpreted. This process is referred in [10], p. 184-185) to be section 5 includes an overview of a survey which has been given a common way of analysing qualitative data. to students in the project after taking classes in PBL. Section 6 discusses the learnings from the project and the conclusion. 3 PWS@PHD – the Project In order to enhance PhD training in software engineering the European Erasmus+ K2 project, Joint Programs and Framework for Doctoral Education in Software Engineering, pws@phd was initiated in 2015. It is a 3-year project where 11 partners from 2 Analytical Framework Finland, UK, Germany, Russia, Jordan and Denmark collaborate Various versions of the technology adoption model, TAM [5]), and exchange knowledge and expertise between institutions have been applied for studies of teaching technologies such as e- (fase.it.lut.fi). The purpose of the project is to develop guidelines learning [6], Massive Open Online Courses (MOOC) [7], and for Russia and Jordan with respect to setting up their own Ph.D. Learning Management Systems (LMS). PBL does not presuppose programs in Software Engineering, and through intensive schools the use of any specific technology (although LMS systems are in the project to illustrate content and areas of expertise to include widely used). Still PBL can be seen as a kind of teaching in the national Ph.D. programmes. The project has conducted technology, and thus TAM will be an appropriate framework for seven two-weeks PhD schools each focusing on one particular analysing the adoption of PBL. In this paper we are dealing with topic within software engineering. With the exception of the the use of PBL within a specific study discipline (Software school, which focused problem-based teaching methods, all topics engineering), we suggest to use the Technology Task Fit model were defined by the SWEBOK. (TTF) [8], which also has been applied for studies on the adoption of MOOCs [7] and studies of LMS [9]. The project has created a network of universities that all have expertise in various areas of Software Engineering. Russia and According to this framework, the main factors affecting Jordan are so-called target countries for the project. The target performance of a particular technology are technology countries have a limited number of degree programs in Software characteristics and task characteristics, how these fit together and Engineering especially at the Ph.D. level, where no specific how the technology is utilized (see Figure 1). programmes are available. The purpose of the project is therefore twofold: To make guidelines for the target countries with respect to Figure 1 Link from Technology to performance internationalisation and creation of Software Engineering Programmes for PhDs; and to exchange knowledge and information on key areas within software engineering which can motivate content for the proposed Ph.D. Programmes. The exchange of knowledge and information takes place through the 7 intensive schools held by partner universities. The 7 intensive schools each represent knowledge areas and disciplines related to key areas in Software Engineering and for a typical knowledge and skills that a Ph.D. student within Software Source: [8] Engineering would need to acquire. The schools are organized through 2 weeks of intense course for Ph.D. students from the The technology-task fit framework, as well as many other TAM partner universities. The students can select which of the schools models are created with the purpose of preparing a quantitative they would like to attend and therefore do not need to attend them analysis of the statistical relationship among the various factors all. based on input from questionnaires. This approach will not be applied in this case. Even though quantitative data have been The topics for the seven intensive schools were: Research collected, they are not suitable for this kind of analysis. We will methods; Problem Based Learning; Advanced Software therefore in this paper focus on a qualitative analysis. Engineering Methods and Tools; Math and Computing Foundation’s; Software Engineering Models and Modelling; A qualitative analysis has been made of data collected through Human Computer Interaction and Business and Economic open-ended questions delivered in a survey. The participants Viewpoints. Details can be found at fase.it.lut.fi. Report on Problem Based Learning for Software Engineering PhD SWE, September, 2018, St Petersburg, Russia 4. To provide a topical access to the Software Engineering During the project period the researchers involved in the project Body of Knowledge have conducted a number workshops and seminars to produce 5. To provide a foundation for curriculum development guidelines for the target countries with respect to how they and for individual certification and licensing material. should set-up Ph.D. programmes in Software Engineering and what the content could be. However, the actual implementation The 15 knowledge areas about software are (Bourquet and Fairley, of the guidelines is highly dependent on the political and 2014): organizational set-up in the target countries, which is outside the 1. Requirements scope of the project. 2. Design 3. Construction The goal of the project is to motivate the target countries to create 4. Testing Ph.D. students in software engineering with an understanding of 5. Maintenance the international education programmes and with skills that can 6. Configuration Management create international possibilities and interest in them, as well as 7. Engineering Management 8. Engineering Process local industry relevance and possibilities. Local industries in 9. Engineering Models and Methods Russia and Jordan call for specialized Software Engineering 10. Quality experts with international skill and knowledge. 11. Engineering Professional Practice 12. Engineering Economics A total of approximately 180 students has attended the 7 schools 13. Computing Foundations from the partner countries. Some of these (around 10) have 14. Mathematical Foundations attended more than one school. 15. Engineering Foundations. The pws@phd project covers requirements (1), design (2), 4 SWEBOK and PBL construction (3), testing (4), models and methods (9), economics The skills that are achieved by Problem Based Learning is and mathematical foundations (14) as well as engineering applicable as skills in Software Engineering. management 7). For details about the content and definition of the knowledge areas, see [11]. 4.1 About the SWEBOK Generally, the SWEBOK covers multiple disciplines and The Software Engineering and Systems Engineering Vocabulary knowledge areas and many of these are related to: managing the hosted by IEEE offers two different definitions: (1) “systematic software process or parts of this process; involving and application of scientific and technological knowledge, methods, understanding stakeholders of the software and the software and experience to the design, implementation, testing, and process; as well as cooperating between different disciplines. The documentation of software” (2) “application of a systematic, essence of these activities is creativity, cooperation, problem disciplined, quantifiable approach to the development, operation, solving and team work – all features of the PBL approach. More and maintenance of software; that is, the application of formal, the SWEBOK includes the following non-technical skills engineering to software”. (http://www.computer.org/sevocab). [2]: Professionalism (ethics, economics impact of software, legal The latter is the definition referred to in the widely recognized issues etc.); Group Dynamics and Psychology (group dynamics, SWEBOK. The major difference between the two definitions is the individual cognition, dealing with problem complexity, focus on a quantifiable approach. It should however be noted that interacting with stakeholders etc.); and Communication Skills SWEBOK includes qualitative as well as quantitative methods. (writing, team and group communication, presentation skills). The SWEBOK [11] is a body of knowledge which describes 4.2 About Problem Based Learning generally accepted knowledge about software engineering. Software engineering is presented within 15 knowledge areas and Problem based learning was first introduced at McMaster basic concepts. A total of 150 reviewers representing 33 countries University in Canada back in 1969 [12]. Here teaching of medical have worked on the book (ibid). It is published within the IEEE students were presented to problem based cases, which were used Computer Society. The purpose of the SWEBOK is (Bourquet and as a point of departure for their learning. In the 1970’s different Fairley, 2014): variations of problem based learning was introduced in a number of other countries including Netherlands, Australia, Sweden and 1. To promote a consistent view of software engineering Denmark. worldwide 2. To specify the scope of, and clarify the place of software In this period two new universities were established in Denmark: engineering with respect to other disciplines such as Roskilde University (RUC) in 1972 and Aalborg University (AAU) computer science, project management, computer in 1974. Here PBL was introduced as the main pedagogical model engineering, and mathematics 3. To characterize the contents of the software for teaching right from the beginning. The model applied was a engineering discipline further development of the case based PBL model introduced at PhD SWE, September, 2018, St Petersburg, Russia L. Sørensen et al. McMaster University, as the key learning activity was project solving skills. The authors think that there are too little emphasis work carried out in groups. This variation of PBL can be denoted in ads about soft skills. Project Oriented Problem Based Learning. At Aalborg University the basic principles of the PBLmodel are [4]: Sedelmaier and Landes (2014) developed a Software Engineering Body of Skills (SWEBOS). Based on the hierarchy made in the • Project organization creates the framework of problem- SWEBOK, [2] has developed a similar hierarchy divided into the based learning following competence areas: Competences for the professional • Courses support the project work collaboration with others; Communicative competences,; • Cooperation is a driving force in problem-based project Competences for structuring one’s own way of working; Personal work Competences; Capability to understand complex processes, • The problem-based project work of the groups must be exemplary systems and relationships; Capability to apply one’s individual • Students are responsible for their own learning knowledge and skills to concrete and novel situations; and achievements additional competences such as accepting responsibility etc. Each semester, the students must do a new project in 5.2 PBL what do students think? collaboration with other students. They should spend half time At the intense school in Copenhagen in 2016, 25 Ph.D. students working on project work and half time attending courses. A from the pws@phd project participated in an intense school with common theme for the projects is defined in the curriculum, but focus on problem-based learning and the link to software it is the task of the students to decide on their own topic, engineering. The school was organized by Aalborg University and formulate a problem formulation for the project, and argue how took place during 2 weeks in August, 2016. A survey was this can be linked to the semester goals. Working with software distributed to the students during the intense school and after to engineering this often means a combination of many different understand which skills they achieved. The survey was formed as skills is necessary to carry out the project. a collection of closed questions using a Likert scale and an option to write-in. Additionally, some questions were completely open 5 PBL and SE for write in for the students. The students answered to the Problem Based Learning is a key for working in interdisciplinary questionnaires during the school and on paper, which secured teams, finding new solutions and being creative. Essentially, these that all students participated. (however differing answers for each elements are sought when working with software engineering question since some students did not answer to all questions) both in industry and at university level. During the school, the students were experiencing a combination 5.1 About Soft skills in Software Engineering of different teaching and learning forms: presentations about PBL from university staff; presentations from industrial Within the project pws@phd, PBL has been taught at a school in representatives who came to talk about important skills to achieve Copenhagen in 2016. At this school, Ph.D. students from partner as an engineer to work in industry; exercises and group work countries were taught about the principles of PBL and they tried (exercising the PBL elements) on understanding software to work with PBL principles in order gain a better understanding engineering and on producing abstracts and performing reviews of their own research work in Software Engineering. as a process linked to be an academic and do disseminations. Furthermore, industrial representatives presented their views on important skills for Ph.D. students going into industry. One of the The PhD students particularly liked the presentations and the presenters from Microsoft, Denmark, pointed to team work and possibility to talk with industrial representatives. 17 out of 21 of the development of interpersonal, creative and problem-solving the Ph.D. students were very satisfied or extremely satisfied with skills as the most important skills of a software engineer. This is these visits and wanted to have more time and to get more insight backed up by [13] who has described soft skills required as a into the companies. software engineer in Microsoft. He points to skills such as: change management (being able to work with different methods and The PhD students liked the group work where they themselves procedures amongst others); self-development (keeping up to date should try out the principles of PBL in a small group work over a in knowledge and education); composure (stress management); couple of days. Asked about how they liked the group work 16 out problem solving skills (relates to bug fixing, general problems, of 20 students were very satisfied or extremely satisfied with the analytical and methodological procedures); other soft skills (such group work and though it was a useful experience and that could as interpersonal communication skills, being able to communicate add to insights on alternative perspectives on how the group with all). participants thought about the topics. On top of this also some PhD students experienced that the dynamics of the group work In [3] the authors have made an analysis of 500 advertisements was not so easy and that good group dynamics were extremely for IT positions with a focus on identified the soft skills mentioned important for the performance and learning. in the ads. The outcome is that communication and interpersonal skills are in high demand as well as analytical and problem- Report on Problem Based Learning for Software Engineering PhD SWE, September, 2018, St Petersburg, Russia The students were asked directly on which three elements from intense school only lasted 2 weeks, the students could not acquire the first week, they found most interesting. The elements skills in project planning or in understanding of practical, identified were: Group work (13 students wrote that); abstract complex problems. exercise (11 students); company visits (9 students) – additionally, the students mentioned that they liked the networking, Generally, there is a call for soft skills within software teamwork, the learning process, communication with other PhD development. As already mentioned, Ahmed et al (2012) have students. analysed more than 500 advertisements for IT positions and have looked at which soft skills are demanded. Communication skills is In the second week, the students were asked to work with the the absolute highest demand in all adds. After this follows concept of wicked problems [14], which basically explains that not interpersonal skills, analytic and problem-solving skills and team all questions are well-defined and can be solved by mathematical players. solutions but wicked problems need more work and are related to the principles of PBL. The students were happy about the exercises [2] has developed a Software Engineering Body of Skills on wicked problems, where 8 of the 19 students answering were (SWEBOS). In this they have identified and categorised the soft satisfied or extremely satisfied. skills that relates to the non-technical side of the SWEBOK. As part of having competencies for professional cooperation, the When asking the students about the skills they thought they software developer needs to have competences in cooperating acquired during the school, they mentioned the following with others, communication, presenting skills, self-reflection and perspectives: respect for others, to mention a few (Ibid). As part of the competences for structuring own’s own way of working there is • Communication skills mentioned analytical thinking and problem structuring skills • Thinking outside the box (ibid). and as part of the competences in solving problems, there • Time management is mentioned that the software engineer must have create • Knowledge sharing potential, and must be capable to evaluating different approaches • Presentation training etc. (ibid). The SWEBOS (ibid) include • Working in groups • Discussions • Understanding of problem solving and problem 6 Conclusion formulation This paper has focused on understanding how Ph.D. students who • Better understanding of PhD in other countries generally come from a traditional Software Engineering • Understanding wicked problems background can understand the need for also acquiring soft skills • Relevance for PhD students to enhancing skills for use in future works. From the empirical study carried out, it is regarding thesis work clear that the students during the intense course in Problem Based • Reacting calm to criticism Learning have acquired skills within a number of relevant soft • Communication skills categories. • Solving problems through game strategy. The paper shows that Problem Based Learning train students’ These skills link very well to the topics which were covered and skills in important soft skills relating to software development. exercised during the intense school. The soft skills are important for the students to become a full member of organisations where software development is being 5.3 Overall Themes exercised. Analysing the data and the number of answers received in each category, there can be identified the following overall themes Based on the experiences from the project pws@phd, it can be relating to the survey answers and to which skills the students concluded that such a project has potential and significance to think they have acquired during the Problem-Based Learning exchange knowledge and skills for the future software engineers. school: There is a high likelihood that the software engineering Ph.D.s who have participated in schools during the project period, has a • Communication skills higher chance to understand the requirements and needs for • Team and group working skills becoming internationally compliant software engineers by • Language skills acquiring early understanding also on soft skills. • Understanding wicked problems • Presentation skills ACKNOWLEDGMENTS • Problem Solving The authors of the paper appreciate students’ participation in the • Creativity and critical thinking survey. The paper is made as part of an Erasmus+ K2 grant. These themes were covered more or less as topics and experience working with the Problem-based Learning principles. Since the REFERENCES PhD SWE, September, 2018, St Petersburg, Russia L. Sørensen et al. [1] P. Bourque and R.E. Fairley (Eds.). 2014. Guide to the Software Engineering Body of Knowledge, Version 3.0, IEEE Computer Society, www.swebok.org. [2] Y. Sedelmaier and D. Landes. 2014. Software Engineering Body of Skills (SWEBOS), 3-5 April 2014, Military Museum and Cultural Center, Harbiye, Istanbul, Turkey, IEEE Global Engineering Education Conference (EDUCON). [3] F. Ahmed, L.F. Capretz and P. Campbell. 2012. Evaluating the Demand for Soft Skills in Software Development. IT Pro, January/February 2012, Published b the IEEE Computer Society. [4] I. Askehave, H. L. Prehn, J. Pedersen and M.T. PEdersen. 2015. PBL Problem Based Learning. Aalborg University, www.aau.dk. [5] F.D. Davis, 1993. User Acceptance of Information Technology: System Characteristics, User Perceptions and Behavioural Impacts. International Journal of Man-Machine Studies, 38(3): 475-487. [6] Ertl, B., Winkler, K., & Mandle, H. (2007). E'Learing: Trends and Future Development. In Advances in computer-supported learning (pp. 122-144). IGI Global. [7] B. Wu, & X. Chen, 2017. Continuance intention to use MOOCs: Integrating the technology acceptance model (TAM) and task technology fit (TTF) model. Computers in Human Behavior, 67, 221-232. [8] D. Goodhue. 1995. Understanding User Evaluations of Information Systems. Management Science, 41(2), 1827-1844 [9] T.J. McGill and J.E. Klobas. 2008. A Task-Technology Fit View of Learning Management System Impact. Computers and Education 52(2), 496-508. [10] J.W. Creswell, 2009. Research Design. Qualitative, Quantitative and Mixed Methods Approaches. Sage Publishers, 3rd Edition. [11] P. Bourque and R.E. Fairley (Eds.). 2014. Guide to the Software Engineering Body of Knowledge, Version 3.0, IEEE Computer Society, www.swebok.org. [12] J.E. Holgaard, T. Ryberg, N. Stegeager, D Stentoft and A.O. Thomassen. 2014. Problembaseret Læring og Projektarbejde ved De videregående Uddannelser. Samfundslitteratur. IN DANISH. [13] M. Orsted. 2000. Software Development Engineer in Microsoft. A Subjective View of Soft Skills Required. ICSE, 2000 Limerick, Ireland. [14] J.C. Caillus. 2008. Strategy as a Wicked Problem. Harvard Business Reviews, May 2008.