A Conceptual Framework for Software Engineering Education: Project Based Learning Approach Integrated with Industrial Collaboration
Автор: Jamilurahman Faizi, Mohammad Sarosh Umar
Журнал: International Journal of Education and Management Engineering @ijeme
Статья в выпуске: 5 vol.11, 2021 года.
Бесплатный доступ
A vital portion of software engineering education is practical learning and experience of principles, methods and procedures for the development of real-time software. Yet, software engineering educators have been using the traditional approaches for SE education since long back, which is being revealed as an inefficient method of learning approach and bring up the gap between graduates and software industries. Therefore, instructors are required to train their students based on professional skills, real-time experience and well prepare them for real time environment upon graduation. This paper presents an educational framework for the implementation of PBL (Project Based Learning) approach with industry collaboration in order to reduce the gap between both parties. This is an effective and efficient approach for teaching and learning SE education as compared to the traditional and lecture-based approach, in which students are trained with real-time projects and market-oriented aspects, which is not seen in the traditional approach. Moreover, it helps students to gain complete knowledge of software engineering concepts, Hard and Soft skills, Software design process and principles with more confidence over real-time projects.
Software Engineering Education, Project-Based Learning, Industries
Короткий адрес: https://sciup.org/15017861
IDR: 15017861 | DOI: 10.5815/ijeme.2021.05.05
Текст научной статьи A Conceptual Framework for Software Engineering Education: Project Based Learning Approach Integrated with Industrial Collaboration
-
1. Introduction
-
2. Purpose of the Study
-
3. Objectives
Software engineering education is witnessing dynamic changes and evolves due to innovation, update curriculum, research activity, software industries and rapid upgrading of today's technology. Efforts have been made to facilitate the students by projecting the true nature of software development and cultivating the required knowledge, skills and attitude needed by the industry as well as to bridge the gap between industry and academia [1]. Software Engineers often needs critical thinking and problem-solving techniques to analyze and evaluate the problems and apply various alternative approaches to develop an effective solution. Since, they always use the proven practice. Thus, software engineers need to gain new knowledge and skills in their carriers and improve the ability to learn on their own, Therefore, self-directed learning is essential [2]. Similarly, working in collaboration and exhibiting excellent communication skills and professionalism in the field always yields a positive result [2]. The traditional method to Software Engineering Education, which is a lecture-based approach attended by lab exercise, where students are mostly passive learners and don't participate actively in the learning process [3] which is a key challenge for both software engineering educators and academia. While, several researchers have observed that this kind of learning environment is not useful and it is not learning at all [4,6]. Similarly, many times students do not have enough experience with a realtime project and disconnection from the industry is another major problem for academia [5]. Furthermore, Software engineering education which is deeply linked with a practical aspect should also consider various skills such as communication, managerial, soft and hard skills as well. Therefore, many new pedagogies and learning models have been developed to bridge the gap, while the current classroom learning model which is unfulfilling the requirement of the subjects and expectations of the society is not an effective method [7]. Therefore, the main objective of this paper is the emphasize on exploiting integrated project-based and problem-based learning environment as a teaching method to effectively address the learning process, similarly, industry collaboration with academia and educational institutes in term of real time project execution will help them produce quality output. Moreover, real-time and open-ended problem-based learning method is the one which has been shown the large no of student's interest and motivation [8]. Additionally, we have designed a conceptual framework that facilitates the industry collaboration with academia in which a real-time project execution will be built by industry within the campus and all studetns will have access to it in order to practice real-time experience. Since, the proposed framework consists of six modules. Thus, it prepares the students to work in real time projects upon their graduation. The rest of the paper is organized as: in section II, Teaching Strategy for the proposed model is discussed, whereas in section III, purpose of the study and motivation of the study is described, in section IV, the PBL approach is briefed, in section V, the proposed framework is covered finally section VI ended with the conclusion of the study.
The main purpose of the study is to bridge the gap between industries and academia and explore learning approaches with industry collaboration for teaching software engineering course to give an essential experience to students in software engineering fields as well as preparing students with the right set of knowledge and skills required for real time working environment. Consequently, such outcome cannot be obtained with traditional and lab driven methods while they are not relevant to industry, market and society expectations at all. Moreover, this method will also improve quality and utilization of the project as well as reduces the total cost of project from industry point of view.
-
• Developing a practical framework for implementing PBL in software engineering education
-
• Improving student’s skills and knowledge of SE education by implementing PBL method along with industry collaboration
-
• Reducing the project budged through utilization of student’s force
-
4. Litreatur review
-
> Project-Based Learning (PBL) Approach
Project-Based Learning (PBL) is considered to be one of the vital and significant part of the student-centered educational approaches, broadly covered engineering, computing science, software engineering and information systems courses [1,2,3,4,5,6,7]. PBL objective is to make pupils ability more robust by providing them to come up with the conclusive solutions through different means such as collaborative and proactive, within a teamwork, contextualize and creator learning environment [8]. In addition to this, he added that constructivism makes the students smart to create their own blueprints from the available input data and believes, however, in this process of learning students are not acting as a passive receivers of knowledge [8]. Moreover, in PBL process, the pupils in PBL, students are employed in real-life problems where they learn on working such open-ended projects to find out the best solutions in their course of time [9, 3]. Additionally, in such type of educational model, students are facing real-time problems and challenges and work collaboratively in a group to provide and find out the best solutions. [10]. In the long run, this educational Model (PBL) gives different presents on many occasions and challenges while applied in the earlier college degree programs. It grows pupils to get familiarize with industry standards processes and tools, like agile methodology as well as version control, in addition to this, they will be ready to industry employee upon their graduation [8]. On the other hand, this may cause overwhelmed to fresher’s when expected them to create a sophisticated design without a prior mature.
-
> Characteristics of PBL
In most of the universities, especially in software engineering courses, the faculties are assigning different assignments to their students to experiences their practical problems. Still, according to [3] such type of assignments is not enough to implement the project-based learning approach, as these mini projects are not open-ended and real-time projects, however, students are supposed engaged with a specific path to the solution. Be that as it may, in PBL approach, the learning process is a drive with the developing and creating projects where pupils encounter with meaningful problems to investigate, applies and use their knowledge and skills to come up with a better solution. Moreover, here the teacher acts as a facilitator rather than a knowledge provider. The instructor provides adequate Feedback on students’ activities and helps them out to reflect and provide useful guides in order to achieve the learning objectives and outcomes. As per [9] this educational model contains five characteristics as:

Fig.1. Characteristics of PBL
In the above figure, five main characteristics of PBL approach is defined, wherein it clearly describes that the first characteristic which is project description in the form a question or in the form of a problem without pointing out to the solutions, here the project which is giving to students should be a real-world project and realistic, Moreover, the project should let the students to work collaboratively and in a well-organized team with peers and educators to create knowledge, in addition to this, it should results a series of artifacts that point out to the driving question and problem, in the long run, students should decide on how to achieve their goals with the negotiation of some aspects of the project.
As per [12] PBL main focus is on real-world projects as well as problems and covers decision making, problemsolving and suggests that PBL focuses on real-world problems and challenges and relies on problem-solving, decision making and interrogative skills. On the other hand, [10] says that PBL projects focus on reliable challenges results from the real world and for this require robust teamwork; additionally, PBL consist of five vital elements as per the below figure.

-
Fig.2. key elements of PBL
The above figure states five key elements of the PBL approach, where the base of posing questions is referred to the anchor element, whereas; driving question facilitates the overall goal for the PBL project. Moreover, the authentic achievement emphasizes that the real-world scenarios should stem from the learning stemming projects, be that as it may, the artifacts covers the tools created during a project and responsible for giving suitable solutions the problem, finally, the student voice and choice element facilitates the opportunity for the students have vital role and voice in the selection of the project as well as in the statement of question. Additionally, [4] formalized a list of recommendations from software engineering course over six semesters as:

Fig.3. Recommendation list
In the above figure total of seven key recommendation list organized by [4], as PBL is based on a collaborative team, so the minimum number of a team requires to be at least 4 to create dynamic solutions to the problem. However, more number of members in a team cause coordination problem. On the other hand, students should free to select their favorite projects as this increase their commitments in the completion of the Project, Moreover to this, for the execution of the project there should a well-defined timeline and schedule as this increase the grading and monitoring and each student are well aware of the project progress, the use of common technologies and tools can affect the quality of the project and it seems to use the common project management tools as well the instructors are required to define set of necessary and optional technologies. Considering these for the evaluation of each individual contribution a well-defined mechanism should be available to for the final course grade of the students to maintain fairness. Additionally, when there is not external client attached to the project, the teaching assistant, as well as the course instructor, requires to act as an external client and they meet with the team on regular bases and allocated time periods in order to help plan the project and provide better solutions. In the long run, the project which is covered in the semester should be included in the syllabus and need to support the development of the project.
-
> Challenges and Issues related to the use of PBL in SEE
According to various studies in this area, they have indicated some key challenges and issues related to PBL model in software engineering education as followings
-
1. Educational Method
-
2. Setup of PBL Courses
-
3. Meaningful Projects selection
-
4. Tracking Students Progress and Learning Outcomes
-
5. Teamwork and Different Types of Learning
Furthermore, when PBL approach is used as an educational method, the issues which arise in the role of teachers and students are the main challenge for the teachers which migrate from knowledge transfer to knowledge facilitator i.e. they lose control on the pupils' activities. [13]. With respect to the students' role, [13] suggests, that in some educational contexts most of the students are not familiarized with such a system, therefore, they come up with the rejection of this approach because losing their feeling in this regard in addition to this, [7] get shed light on assessment of this methodology and break it down into four main problems as:
-
1. Ambiguity of Educational Effectiveness
-
2. Quantitative Measurement of the Education Process
-
3. Difficulty in Quantifying Personal Characteristics
-
4. Difficulty in identifying the Learning Process
-
5. The Proposed Framework
The second key issue of PBL, which is set up of PBL courses, [13] discusses it as challenging for teachers to design the activities of this methodology to achieve the required characteristics of this approach. This is all because of non-existence of a detailed framework to support facilitators in implementing and setting up courses through this educational method. The selection of meaningful projects is the more vital and significant step wherein PBL project selection plays a key role and it requires selecting a project which provides a better balance in size, complexity and realty. [14] Pointing out that "projects need not to be too shallow and yet not be too idealistic either" In addition to this, prioritizing the realistic of the project in the selection of real-world projects from stakeholders would lead to some specific challenges. Moreover, instructors encounter the issues of establishing partnerships with the industry [15]. The next key element is the Tracking students' progress and learning outcomes as per [13] project based learning mostly deals with unstructured problems as central problems. Finally, teamwork and different types of learning suggest that each facilitator who is responsible for the implementation of PBL, must be careful about the organizing team and its members [7]. Moreover, students will be affected differently by this PBL approach because of their different learning styles.
In the proposed framework, a laboratory for the development of engineering applications have to be established by industries and university encompasses the full equipment’s and required tools in the department of software engineering in order to support studetns skills and bring enough collaboration among both parties. The project had to be directed by both the instructors and industry expert team, while the professor the department are the in charging board of management which advise the activates and define the strategies of learning approaches. It relieves the professors from operational activities and let them chance to compromise their academic activities. The framework further contains multi-functional project teams such as requirement and analysis, design and implementation, testing and quality control, usability, process engineering and project management. The project must target to introduce the teaching aspirations while improving the logical, investigative and communicational skills of the students. However, project always comes with a challenge and participants and students apply their knowledge and skills to solve the problem and give a better solution. The methodology of Project-based learning integrated with industrial project execution for software engineering education present a practical framework for realizing the concepts, skills, tools and techniques in such a way that gives a better result and preparing the students interacting with real-time problems. Thus, students may explore their given solutions and ideas to the challenge. Furthermore, the project may be appointed by the industry and software engineering department of the university where the faculty of the same department would be guiding the execution of the whole project along with industry staff. Considering this, the project can be divided into a different module and assigned to the students where they can have discussions, teamwork and a suitable attention on each stage of the project progress and development such as “requirements specification, analysis, design, construction, quality assurance and project management” [7]. Finally, by the completion, the project will bring creative, justified and proactive solutions that satisfy the needs of the industry and fulfill the requirement of the complete software engineering development process. Moreover, it will give the students more experience in the software engineering development process, considering all norms and principles and get a well enough experience of real-time working. Furthermore, this approach encourages the learning process and improves the skills and knowledge of the topics with a real practice which help the project achieve the success. This framework consists of six key phases (see Fig. 5) where each of them further covers some key concepts; it helps academia and instructors to better train software engineering students in the development of real-world projects while they do not encompass all the requirements of the projects obviously, as per [16] other factors such as classroom, university culture, curriculum and policies which are playing a key role in PBL approach.

Fig.4. Proposed Model of PBL
In the meanwhile, the proposed approach also considers the following steps during the implementation.

Fig.5. PBL Implementation Steps
> Initiation
Project selection plays an important role in this approach and must be considered more technically. It should be selected based on SE engineering education principles and concepts in such a way that better train the students with a real-time problem-solving experience. It will also improve student's critical thinking, brainstorming on a complex problem, and proper solutions to the projects. Industry and academia collaboration is fruitful in the selection process of real-world projects.
> Requirement Gathering
In this stage, information can be collected through multiple views, such as views given on what is to be developed? [17]. Requirements gathering in PBL approach is mostly carried out by the students whom they are working as a group and teamwork for the successful implementation of the project, here the quality of information must be considered while conducting this stage [18]. Moreover, the main reason why most of the software projects fail can be the lack of good quality information requirements [19]. According to the reports, the success rate of software projects is only 28% and only 61% of software projects meet the client satisfaction [20].
-
> Team work and Discussions
Two head is better than one head; here in this approach, a project is being developed by a teamwork. i.e., individual learn from each other's and produce a quality work done by the team, therefore in implementing PBL approach teamwork is highly recommended and produce an effective output at the end [16]. Moreover, the different team would be developed by the instructor along with industry experts for project execution and each team will be assigned different task, a timeline will be given to each of the team and at the end group discussion and presentation will take place, Feedback and recommendation will be given by the instructor and industry experts for better output. The paper strongly suggests industry-academia collaboration in this regard to better utilize the project and institution products.
-
> Design and Development
Using this criterion, the students are responsible for designing the selected project through their critical thinking, instructor support and industry collaboration; they require to define the components, modules and interfaces to the system as well as data for the project to satisfy the requirements. Developers honored to develop quality software; Software skills include modular design, layered architecture, abstraction, and verification [21].

Fig.6. SDLC [21]
-
> Software Quality
Software quality which is an abstract concept in the context of "software engineering, it measures how well the software is designed and how well the software fitness the purpose," the fitness is generally explained as a satisfaction of the requirement laid down in the SRS document; it also encompasses satisfaction of the end-user what they want. This criterion directly depends on requirements gathering, the data collected by students needs to be high quality, low-quality data will affect the project. Thus students are trained and encouraged to take care of the software quality attributes such as: Correctness, Reliability, Efficiency, Integrity, Usability. Maintainability, Flexibility, Testability. Portability, Reusability, Interoperability [22]. Similarly, the Evaluation phase also takes place in this step, which is a high-level assessment of the project to see whether the project is proceeding worthwhile and fits in the organization plan. It can also assess the general usability and identify the technical or development issues, as well as any barriers.
-
> Project evaluation
This is the last phase of the proposed method, where the instructor and industry-based expert team evaluate the whole project. They will also assess the students with the software engineering knowledge and concepts they have gained in the entire process.
Finally, Feedback and recommendations will be given to the students for future work and the product will be released by the industry for real-time utilization.
For the evaluation purposes and students’ semester marks, we propose the rubric way of evaluation.
-
> Advantages of the proposed Approach
-
• Students are trained with real-time problem-solving techniques
-
• Industry-Academia collaboration is invented and maintained
-
• Project cost decreased, because the project is executed by students and there is no need for more technical staff to be hired by the industry
-
• Industry can easily find the team they want
-
• Utilization of projects and institutions products
-
6. Future Work
-
7. Conclusion
Software engineering education which is deeply linked with practical aspect. Thus, considering various skills such as communication, managerial, soft and hard skills is conclusive. Therefore, many new pedagogies and learning models have been developed to bridge the gap, while the current classroom learning model which is unfulfilling the requirement of the subjects and expectations of the society is not an effective method. In Addition to this, we plan to start this collaboration in the upcoming academic semester through student’s force and further will study the outcomes accordingly.
Being prepared for real-time work and expert in software engineering education is a key challenge for the academia and software engineering educators. In addition, a project-based learning (PBL) approach integrated with industrial collaboration with the help of academic institutions was proposed by the authors to avoid the current problem and best train software engineering educators for the future.
A software engineering lab would be established in the academic institutions with the help of industries in order to implement The PBL (Project Based Learning) in term of real-time project execution by both parties, the universities and industries through the students' force and knowledge, which is an effective and efficient approach for teaching and learning SE education as compared to the traditional and lecture-based system; Moreover, this method develops the complete knowledge of software engineering concepts, skill, design and principles and giving them confidence over real-world projects.
Список литературы A Conceptual Framework for Software Engineering Education: Project Based Learning Approach Integrated with Industrial Collaboration
- Varma V., Garg,. K., Case Studies: The Potential Teaching Instruments for Software Engineering Education", Proceedings of the 5th International Conference on Software Quality, Australia, 19-20 September, 2005
- Varma V., Garg, K., Vamsi S. T. P. A Case Study Approach towards Software Engineering Education, Accepted in Software Engineering Research and Practice, 05, Las Vegas, June, 2005.
- Kirti Garg, Vasudeva Varma "A Study of the Effectiveness of Case Study approach in Software Engineering Education" 20th Conference on Software Engineering Education & Training (CSEET'07), IEEE,2007
- Hilburn T et al, "A Case Study project for Software Engineering Education", 36th ASEE/IEEE Frontiers in Education Conference, San Diego, 2006.
- Sivan A. et al "An Implementation of Active Learning & its Effect on the Quality of Student Learning", Innovations in Education and Training International, Vol. 3
- Whitehead, A. N. (1929), the aims of education. New York: Macmillan.
- Sohan Singh Yadav, Jianbing Xiahou "Integrated Project Based Learning in Software Engineering Education", 2010 International Conference on Educational and Network Technology (ICENT/IEEE 2010)
- Barg, M. et al. "Problem-Based Learning for Foundation Computer Science Courses". Computer Science Education, 10, 2000, pp. 1-20.
- Marques, M., Ochoa, S. F., Bastarrica, M. C., and Gutierrez, F. J. (2018). Enhancing the student learning experience in software engineering project courses. IEEE Transactions on Education, 61(1):63–73. ISSN 0018-9359.
- Macias, J. A. (2012). Enhancing project-based learning in software engineering lab teaching through an e-portfolio approach. IEEE Transactions on Education, 55(4):502– 507. ISSN 0018-9359.
- Jazayeri, M. (2015). Combining mastery learning with project-based learning in a first programming course: An experience report. In IEEE/ACM 37th IEEE International Conference on Software Engineering, pages 315–318. ISSN 0270-5257.
- Delgado, D., Velasco, A., Aponte, J., and Marcus, A. (2017). Evolving a projectbased software engineering course: A case study. In 2017 IEEE 30th Conference on Software Engineering Education and Training (CSEE&T), pages 77–86.
- Shuto, M., Washizaki, H., Kakehi, K., Fukazawa, Y., Yamato, S., and Okubo, M. (2016). Learning effectiveness of team discussions in various software engineering education courses. In 2016 IEEE 29th International Conference on Software Engineering Education and Training (CSEE&T), pages 227–231.
- Warin, B., Talbi, O., Kolski, C., and Hoogstoel, F. (2016). Multi-role project (mrp): A new project-based learning method for stem. IEEE Transactions on Education, 59(2):137– 146. ISSN 0018-9359.
- Yamada, Y., Inaga, S., Washizaki, H., Kakehi, K., Fukazawa, Y., Yamato, S., Okubo, M., Kume, T., and Tamaki, M. (2014). The impacts of personal characteristic on educational effectiveness in controlled-project based learning on software intensive systems development. In 2014 IEEE 27th Conference on Software Engineering Education and Training (CSEE T), pages 119–128. ISSN 1093-0175.
- Thevathayan, C. (2018). Evolving project based learning to suit diverse student cohorts. In Proceedings of the 22nd International Conference on Evaluation and Assessment in Software Engineering 2018, pages 133--138. ACM.
- Blumenfeld, P. C., Soloway, E., Marx, R. W., Krajcik, J. S., Guzdial, M., and Palincsar, A. (1991). Motivating project-based learning: Sustaining the doing, supporting the learning. Educational Psychologist, 26(3-4):369–398.
- Bender, W. N. (2012). Project-Based Learning: Differentiating Instruction for the 21st Century. Corwin. ISBN 978-1-4129-9790-4.
- Fioravanti, M. L., Sena, B., Paschoal, L. N., Silva, L. R., Allian, A. P., Nakagawa, E. Y., Souza, S. R., Isotani, S., and Barbosa, E. F. (2018). Integrating Project based learning and project management for software engineering teaching: an experience report. In Proceedings of the 49th ACM Technical Symposium on Computer Science Education, pages 806--811. ACM.
- Martin, J. G., López, C. L., and Martínez, J. E. P. (2014). Supporting the design and development of project based learning courses. In 2014 IEEE Frontiers in Education Conference (FIE) Proceedings, pages 1–6. ISSN 0190-5848.
- Harms, S. and Hastings, J. (2016). A cross-curricular approach to fostering innovation such as virtual reality development through student-led projects. In 2016 IEEE Frontiers in Education Conference (FIE), pages 1–9.
- Daun, M., Salmon, A., Weyer, T., Pohl, K., and Tenbergen, B. (2016). Project-based learning with examples from industry in university courses: An experience report from an undergraduate requirements engineering course. In 2016 IEEE 29th International Conference on Software Engineering Education and Training (CSEE&T), pages 184– 193.x