Keywords

1 Introduction

Software engineering is becoming more and more changeable, adaptable and updatable, according to the evolution of technology. It has become necessary to generate and apply new concepts, techniques and theories on how to plan, analyse, design, build and test softwares [1], as well as the teaching of this discipline and being at the same level with these updates. The SWEBOK guide [2] proposes a series of themes and guidelines which can be applied to Educational concepts and one of the proposed area is Requirements Engineering, which presents fundamental theoretical and practical aspects in software development. This document describes the process of creating and applying a series of guides in the teaching of Requirements Engineering in a Systems and Computer Engineering Program at the Universidad Pedagógica y Tecnológica de Colombia (UPTC) [3].

In the beginning, a study was conducted on the situation in the area of Requirements Engineering before the implementation of the guides, addressing the state of the contents, pedagogical strategies used and learning achieved, based on different information extraction methods and as a reference to the contents and strategies proposed by the SWEBOK Guide. Later, the analysis of different pedagogical strategies useful to the teaching process of the Requirements Engineering area are presented, which allowed to propose a Learning - Teaching model that integrates the contents proposed by the SWEBOK guide and the pedagogical strategies in accordance with the discipline. Finally, the process of applying the guidelines developed for this purpose and the validation of the model to verify the feasibility of it in the Academic Program of Systems and Computer Engineering is described.

From the above, a series of templates were generated that use pedagogical strategies to be applied in the construction of guides that allow students to expand their knowledge and to broaden their interest and learning in the area of Software Engineering, specifically Requirements Engineering. These templates were used for the generation of pedagogical workshops that applied the themes and strategies posed in this work and that aim to achieve an improvement of the Learning-Teaching process in the area of Software Requirements in the academic context.

2 Background and Preliminary Aspects

This section presents some important preliminary aspects about Requirements Engineering in the Systems and Computer Engineering Program and in the SWEBOK guide.

2.1 Contextualization of the Requirements Engineering in Systems and Computer Engineering Program of the UPTC

One of the purposes of this research work is to contribute to the optimization of the teaching-learning process of Software Engineering based on the SWEBOK guide, which is based on the identification of the current state of the Requirements Engineering area of the Systems and Computer Engineering Program of the UPTC, as well as the distribution and location of the them within the academic context. Taking into account the above, two techniques are mainly applied to the collection of information such as documentary exploration and interview, which at the end was applied to students as well as teachers of the program and from the information collected, this was obtained:

In the academic program case study, there is the Academic Educational Plan, which is the document that regulates various academic and legal aspects, among these are the programmatic content of the subjects, area distribution, credits and modalities of work, among others. The Academic Educational Plan proposes within its structure the distribution of contents in four areas: General, Interdisciplinary, Discipline and Expansion. Specifically for the disciplinary and expansion area, the areas addressed are presented in Fig. 1.

Fig. 1.
figure 1

Distribution and expansion disciplinary area [4]

As shown in Fig. 1, 12% of the subjects belong to the Software Engineering area, and within this, the first subject is Requirements Engineering, found in the fifth semester and whose topics are distributed in 5 units as shown in Fig. 2.

Fig. 2.
figure 2

Requirements engineering subject content distribution [4]

However, in the development of the subject between the period 2012–2014, and according to the results of the surveys applied in 2014, it was identified that the most used strategies are those corresponding to theoretical modalities: Exhibitions (Presentations), debates, project-based learning, panel discussion, which has led to the fact that knowledge is not assimilated in the best way, and even if students pass the subject, there are gaps that lead to deficiencies in professional performance.

2.2 SWEBOK

SoftWare Engineering Body of Knowledge (SWEBOK) is understood as a concrete compendium about the areas related to Software Engineering, in order to educate new generations about the approaches and uses of this guide [5]. It is for this reason that it has been applied to such diverse areas, highlighting aspects of the academic part of Software Engineering, to touch aspects related to the industrial process of software development.

Essentially, SWEBOK is a guide proposed and approved by the IEEE Computer Society, ISO, CEI and others, with the purpose of gathering criteria that establish the accepted knowledge in software engineering, in such a way that from it, suitable practices are established to carry out a good process of development of solutions or software products, establishing ten fundamental areas that are presented in Fig. 3.

Fig. 3.
figure 3

Knowledge areas of software engineering according to SWEBOK

Regarding the area of Requirements Engineering, SWEBOK proposes some general contents that include: fundamentals of software requirements, Requirements Process, requirements elicitation, requirements analysis, requirements specification, requirements validation and practical considerations.

3 Pedagogical Guidelines Developed in the Research

From the study of pedagogical strategies useful in the teaching process in software engineering and diverse experiences, some guidelines are proposed to promote the optimization of the process in the area of Requirements Engineering. Below is a overview of some pedagogical strategies and then the process of construction of the pedagogical guides are described later.

3.1 Types of Pedagogical Strategies

There are several proposals regarding the compilation of pedagogical strategies, one of these is Bloom’s taxonomy [6,7,8] which includes six components (Knowledge, Understanding, Application, Analysis, Synthesis, Evaluation), and from three of these are the grouping of certain strategies (See Fig. 4) [4].

Fig. 4.
figure 4

Strategies by level of taxonomy

3.2 Construction of Pedagogical Guides

A group of specific strategies is selected that can be applied in such a way that they allow to cover the levels of understanding, application and analysis, which foster the assimilation, appropriation and integral evaluation of learning in the students. Additionally, the strategies are grouped taking into account that some may be implicit in others therefore the following basis are taking into account:

  • Writing

  • Presentations

  • Visual representations

  • Key examples (Inductive learning)

  • Test

  • Discussion

  • Puzzle technique

  • Roleplay

  • Projects

  • Algorithms

Based on these strategies, the teaching templates are structured, based on the guidelines of the SWEBOK Guide, and which considers certain aspects for each selected strategy, which is aimed at helping the teacher to give the necessary focus to optimize the learning and development of skills, abilities and motivation in students at a maximum level. As for the proposed templates, they are composed of seven parts. See Table 1.

Table 1. Sections of the templates for teaching guides

In the development of the research, from the templates for the teaching guides, the main themes of the subject addressed are structured, also taking into account the strategies identified and the themes suggested in SWEBOK.

4 Application of the Developed Guides and Validation of the Model

In order to confirm the feasibility of the application of the guides in the Academic Program, the evaluation of learning objectives included in each guide was defined by subject, for this the qualitative and quantitative data were taken through the instruments: scale of rank (3 to 15) and objective tests that allowed the defining of the level of learning obtained by each student from a total of 16 enrolled in the course of Requirements Engineering (Semester I of 2016) selected for the application of the instrument. The implementation of the guides was carried out in a collaborative way, considering the following pillars [9]: shared interaction, individual responsibility and positive integration. Where individual responsibility indicates that each member must assume a role and excute a task responsibly and thus contribute to the development of a product, for this reason, despite the fact that the guides were applied in teamworks, the evaluation was made on individual basis.

4.1 Guides Application Schedule

The application of the teaching and learning guides was carried out in the first academic semester of the year 2015, in the course of seven weeks (see Table 2), and one of the proposed guides for the subject, Requirements Engineering, was applied in each of the week.

Table 2. Timetable for the implementation of the teaching and learning guides.

4.2 Evaluation Scales

For this work, the grading scale of trials currently used in the evaluation process of UPTC for self-evaluation of the academic programs was used [10], summarized in the Table 3.

Table 3. UPTC trial grading scale.

4.3 Application Process of the Guides

The process covers the phases of initiation, process and exit. It is worth mentioning that for all the guidelines the beginning phase was oriented to the conformation of group works, as well as the presentation and explanation of the methodology, in Table 4. The description of the process is briefly presented, which is determined in each guide and finally the output, products developed by the students.

Table 4. Application process of the guide [11]

4.4 Information Analysis

Taking into account the statistical information of the qualifications obtained in the Requirements Engineering course in the period 2005–2013, from the Information System of Academic Registration (Sistema de Información de Registro Académico – SIRA) of the Institution, in Fig. 5. It is observed that the behavior of the performance by the students, which on average at this time is 3.62, framed in an “Acceptable” performance, before the application of the guides developed.

Fig. 5.
figure 5

Requirements engineering average grades 2005–2013 [4]

With the information obtained through the application of the guides, the data were prepared and tabulated quantitatively and with the application of the Kolmogorov-Smirnov model [12, 13], T - Student [14, 15], supported with 2013 SPPS tool. A set of data was processed to identify the validity and applicability of the guidelines and the proposed pedagogical model. Below is the analysis of the results of the implementation of the first teaching and learning guide, and in this same way the analysis is made for the others.

Application Analysis of the Guide 1. Basics of Software Requirements.

It is observed that the T-Student calculated was 1.03 and that of the critical table (according to the T-Student method) at 15° of freedom and level of significance of 0.05 was 1.761. Therefore the T calculated is less critical, which means that through the strategy of “Visual Representations” for the theme of “Requirements Basics” results are obtained in the ratings equal to 4.0, because when performing the analysis by means of the real statistic, the value of the mean plus an error margin of 0.05 results in a value of 4.09, approximating to a value of 4.1. Which means that from the visual representations strategy, grades greater than 4.0 would be obtained (Fig. 6) [11], improving the average of the grades of the years 2005–2013, as mentioned above.

Fig. 6.
figure 6

Graphical representation of the T-Student test for guide 1–requirements basis [11]

With the quantitative information obtained in application of all the guides, it was analysed, based on the validated and implemented strategy, scores obtained would be higher than those obtained with the strategies applied in the initial diagnosis of the project. As well as being considered what were the most representative attitudinal characteristics that influenced positively and negatively in the development of the activities by the students during the execution of the investigation.

After the data collection and analysis, it is observed in Table 5 that in six of the subjects, of the total number of students, the percentage that achieved total grades within the “High grade” level (4.0 to 4.6) was higher than the percentage of students who obtained grades within the “Acceptable” level (3.0 to 3.9), which was only higher in the Requirements Process area with 54%.

Table 5. List of qualifications and strategies in the requirements engineering course [11].

In Fig. 7, one observes the performance of the competencies: Interpretive and propositive argumentative, where it is observed that the first and the second is where the average highest grade is presented, this happens in six of the seven themes, which shows that the Teaching and learning guides facilitated the understanding, analysis and articulation of concepts and processes by students. While for the propositive competition the average was lower, which means that the strategy developed in the guide allows students in a lower grade to propose the creation of new hypotheses and the possibility of new solution alternatives.

Fig. 7.
figure 7

Performance by competences [11]

On the other hand, the performance of the students was compared before the implementation of the guides with the performance obtained after, from which the following information is observed:

The final qualification of Requirements Engineering subject achieved before the implementation of the validated strategies (according to the SIRA 2005–2013 system report) was 3.62. However, the average grade obtained by the students enrolled at the time of application of the guide was 4.2, improving from an “Acceptable” compliance level to a “High grade” compliance level. Also, the Thematic Requirements Analysis and Practical Considerations were within an “Unsatisfactory” level indicating that the strategies used up to that moment did not have a positive implication with the learning in students, now with the implementation and validation of the project strategy, the learning levels increased by 27% and 31%, respectively progressing in two levels, remaining in “High grade”; On the other hand, there was less evidence of an increase in the thematic basics of requirements with 3.8% and specification of requirements with 4.8%, which were within an “Acceptable” level, increasing only one level, also remaining within “High grade”.

5 Conclusions

The Requirements Engineering area in the academic program, before the application of the guidelines, used to a greater extent the strategies that apply to the level of “Understanding”, indicating that if these strategies are used for topics that require levels of “Analysis” or “Application”, one loses competences and skills that are only obtained through the use of strategies that apply to these levels. With the application of the guides, it is possible to understand the theoretical aspects as well as bringing the student closer to practical and real contexts that allow assimilation of the contents of the subject.

The teaching templates facilitate the organization, planning and structuring of contents, also allowing the proper management of the pedagogical strategies that are to be implemented. The teaching-learning guides allow the contents, activities, objectives, evaluation, bibliography to be captured and products that can be used for the application of knowledge, potentializing according to the selected strategy including the abilities, skills and aptitudes that the student must have.

The structure of the guides allowed them to be implemented experimentally and face-to-face to students enrolled in the Software Requirements subjects, bearing in mind that the guide has established a methodological strategy and an activity to be carried out by the students, which facilitated the process of the implementation, since the activity consisted in following the proposed indications.

Through the T-student distribution model, a correlational analysis was carried out for each one of the guides, which concluded that the implementation of the same leads to the students achieving grades above the high grade level.

Based on the results obtained, the School of Systems and Computer Engineering, taken as a case study, can take this research as a reference to adjust the topics corresponding to the subject of Requirements Engineering according to the guidelines established by SWEBOK.