In my earlier blog, I explained different techniques under Static testing. Static testing includes review process to verify that are we following the right way to achieve the goal or not. If these reviews session starts in the early phase of software life cycle then it is easy to identify the defects in the requirement. Defect identification at initial stage also affects the cost of the application as rework cost of the defect to fix the things are often low in these cases.
The formal review establishes an effective way to improve the productivity of all team members by maintaining an interactive environment within the team. Moreover, receiving feedback from each team member evaluate the effectiveness of running process and activities performed in the team. Static testing or reviews enable the development team to focus on quality work.
Type of Review
A formal review can be of either technical review or non-technical review. Although the technical review is a type of formal review but it is not as formal as inspection meeting. A technical review refers to a session in which main focus of discussion is technical stuff used in the software development. This technical stuff can be a design document, code section, technical architectural document.
Technical review is generally held for identifying the area of improvement at the technical level of a software. A trained moderator or a technical expert is the leader of the technical review. All technical experts such as technical architect, technical lead, designers and senior developers are different participants of a technical review. Main objectives of a technical review are to verify that:
- Technical concepts are implemented correctly or not.
- Any other better alternative is available for the same purpose.
- All technical concepts are implemented in a consistent manner or not.
- All experts are aware of same information or not.
Phases of a Formal Review
There are basically six main steps in a formal review. These steps are:
- Review Meeting
Purpose and execution process of each step is different. Let’s have a look at detailed information of each step one by one.
Planning is the very first step of a formal review when an author sends a ‘request for review’ to the leader. A leader can be an inspection leader or moderator. A leader is then responsible for organizing the inspection meeting. For organizing this meeting, the leader takes care of timing, place and duration of that session.
In the planning session, the main focus is to allocate time for all activities related to reviewing process. The team prepares a checklist with following points in this session:
- Types of document to verify
- Size of documents
- Format of documents
- Roles of team members
- Members of review team
- Strategy and approach
Kick-off is the first session when all team members participate in the meeting. The main objective of the kick-off meeting is to provide information to all team members and get everybody at the same level of information. There are following activities performed during the Kick-off meeting:
- Training on the main objective of reviews
- Assigning roles to team members
- Discussing new enhancement in traditional process
- Distributing documents under review
- Sharing reference and source documents
Preparation refers to a phase when all team member acts as per roles assigned to them in Kick-off meeting. For this purpose, they work on all documents come under review process by analyzing reference documents.
In case any team member has any question, concern related to information provided in reference document then he/she note down that point for presenting that in the main review meeting, which is next phase of formal review. These points play a very important role while preparing a checklist for further phases of formal reviews.
A review meeting consists of three different phases:
- Logging: It refers to the initial duration of the review meeting when all review members mention all the points which are identified during the preparation phase. These points can be any of Defect, Concern and Query. When team members mention their points, scribe or the author just notes down all these points. discussion over these points is held in next few hours, which refers to discussion phase.
- Discussion: After logging all points, team pick each and every point one by one and discuss various aspects of that point. All main points such as points criticality, impacted areas and reasons are documented by the author or scribe. To get the basic understanding of this phase, let’s take an example of a defect. In this case, the team will discuss over:
- Whether this defect is a valid defect or not.
- What are its severity and priority.
- How soon defect should get a fix.
- What should be its fixing approach.
- Decision: After completing discussion overall points then meeting comes under decision phase. This is ending phase of a formal meeting. There are certain exit criteria of a decision phase that define the average number of defect found. When defect count is greater than exit criteria, then rework on documentation is required for further processing in the project. In case, defect count is not as much critical then these are checked in follow-up meeting side by side with other activities.
On the basis of the decision made in the formal review meeting, author or scribe update the document and other team member rework on assigned defect. As the defect got fixed, same time scribe or author rework on the document and update it as per fixes. New tasks can also be assigned to few members so that process moves forward without any delay.
This session is an ending session of a formal review when all defects got resolved. Moderator ensures that information in the document is correct and can be followed in future. Apart from this, the moderator is also responsible to:
- Ensure that all the information related to change request, improvements are updated in the document.
- Distribute the updated copy of the final document among all team members.
- Get their feedback on the information provided in the document.
- Collect measurements at the different state of review. Example of such measurements are:
- Number of defects found per page
- Total review effort
- Total time spent
A person who belongs to IT industry and works in software development process must be aware of the formal review process. Knowledge of formal review meeting is must for all senior members of a team. Reviews also help reduce extra work pressure of managing things. In review sessions, team members share a list of defects. This blog helps you to understand each and every activity performed during the different phase of a formal review.