A teaching framework to support software inspection

software inspection

Table of Contents


The objective of the inspection process is to reduce the cost by finding and removing defects earlier. In recent years, there have been a number of attempts to further increase inspection efficiency by the introduction of tool support and resulting in a number of prototype systems. However, many software engineers suffer from a lack of background knowledge and experience in software inspections and their techniques. The purpose of the study is to investigate the possible ways to teach software inspection processes on both sides of concepts and practice to Software engineering students. So, we offered a teaching framework to make software engineering students have a deep understanding of software inspection and to improve their practical abilities. The framework consists of three parts: general guidelines, specific guidelines, and learning activity.

In addition, there are two parts of general guidelines: Software inspection concept and Software inspection technique. Specific guidelines include the Software inspection process and applying the technique on the Software inspection process. The third part includes conceptual samples, collaboration in practice, work sample, and assessment for improving practical skills and abilities. Based on the teaching framework, a software support tool is designed and developed using interactive features such as combining text, sound, graphics, images, and animation. It is evaluated by software engineering students at the University of Malaya to show the positive impact of the framework on teaching software inspections.


Performing software inspection is the industry’s best practice to deliver a high-quality product. Software inspection is an essential stage for managing software defects early in the development process (Sapsomboon,1997). Software defects are some of the most important factors that affect the success of a software project. For over 20 years, software inspections have been described as one of the most effective quality assurance techniques in software engineering (Laitenberger & DeBaud,2000). The initial goal of an inspection is to identify defects early as defect heavily affects the improvement of the overall quality of software, with consequences that involve costs and time (Yourdon, 1997). Inspection is a process that consists of checking by a group of people with specific roles. The inspection process usually assumes that each participant has knowledge and experience to inspect documents.

Organizations prefer to employ experts to perform inspection processes in order to gain better outcomes. The lack of sufficient knowledge of SI among software engineers has negative effects on the inspection process in organizations. Therefore, organizations would like to choose inspectors who are qualified enough to the related domains to be members of their Software Requirements inspection team. Software engineering students should be critical thinkers and should acquire the knowledge, skills, and practical abilities that are related to software engineering subjects such as SI and its techniques. Most of the students aim to prepare themselves for their future careers.

The effective performance of the software inspection process requires some background knowledge as well as some experience in requirement engineering. Students also need to be able to work in a group on software inspection projects and learn how to perform the process, not only rely on context-based knowledge. Unfortunately, most software engineering students are not exposed to the required inspection process practically in their studies.

As a result, software engineers should be taken by surprise when they work in organizations as inspectors because they do not fulfill the organization’s expectations and also cannot solve the problems. On top of that, it is time-consuming for the organization to ensure that software engineers are familiar with software inspection and its technique. Training them would raise the total cost of software development. In this study, we propose a teaching framework that aims to support software engineering students to have a deep understanding of software inspection concepts, process, and to improve their practical abilities. We also developed a teaching tool based on the proposed framework, which is called Web-based Teaching Software Inspection Tool (WBTSIS).

The teaching framework guides software engineering students to overcome the complexity of software inspection concepts, to obtain appropriate learning skills, and to improve practical abilities. It focuses on three measures general guidelines of software inspection, specific guidelines, and learning activities based on blended learning theory. The WBTSIS is evaluated by 15 software engineering students to show its usefulness and effectiveness. The paper is structured as follows: in section2, the literature review is summarised and discus. Section3, rework is presented. Section4 presents the WBTSIS tool and shows its use according to the underlying inspection process and its techniques. Section5 describes experiments where the WBTSIS tool was evaluated by software engineering students. Finally, in section 6, we provide a conclusion.


In this paper, we have presented a teaching framework for software inspection. Studying SIsubject over the past years shows the lack of an appropriate teaching framework because students don’t have the necessary breadth of software inspection skills for industry. This motivates us to develop the teaching framework that aims to equip students with knowledge of software inspection to succeed in the industry. This teaching framework was proposed based on blended learning that it explained.

The aim of blended learning is to provide realistic practical opportunities for learners and teachers to make learning independent, useful, sustainable, and ever-growing. High scores in student feedback questionnaires indicate that this framework is helpful for student learning by specifying a clear objective. This framework was a success from the perspective of students and fulfills its major purpose of providing students with a depth understanding of software inspection skills.

Developing a teaching framework to support software inspection

About KSRA

The Kavian Scientific Research Association (KSRA) is a non-profit research organization to provide research / educational services in December 2013. The members of the community had formed a virtual group on the Viber social network. The core of the Kavian Scientific Association was formed with these members as founders. These individuals, led by Professor Siavosh Kaviani, decided to launch a scientific / research association with an emphasis on education.

KSRA research association, as a non-profit research firm, is committed to providing research services in the field of knowledge. The main beneficiaries of this association are public or private knowledge-based companies, students, researchers, researchers, professors, universities, and industrial and semi-industrial centers around the world.

Our main services Based on Education for all spectrums people in the world. We want to make an integration between researches and educations. We believe education is the main right of Human beings. So our services should be concentrated on inclusive education.

The KSRA team partners with local under-served communities around the world to improve the access to and quality of knowledge based on education, amplify and augment learning programs where they exist, and create new opportunities for e-learning where traditional education systems are lacking or non-existent.


Website | + posts

Nasim Gazerani was born in 1983 in Arak. She holds a Master's degree in Software Engineering from UM University of Malaysia.