We previously wrote an article on the importance of quality control in software development. There are a number of principles to consider. One of the best sets of guidelines is outlined under the ISO 9001 standards.
What is ISO 9001? You can find the following description helpful.
“The ISO 9001: 2008 will be the basis of a system that manages the quality being an international standard that focuses on elements of quality management which every company must have in order to have a system that allows to improve and manage the quality of products and services provided.
Clients tend to prefer vendors who are accredited because they can ensure that the selected company will have a good quality management system (QMS) in place. As well as the 9002, 9003 and all 9000 standards belong to the quality and quality assurance standards.
(Software review, 2016) “A software review is “a process or meeting in which a software product is examined by a personal project, administrators, users, customers, user representatives, or other participants for comments or approval.
In this context, the term “software product” means “any technical document or a partial document, produced as a deliverable from a software development activity”, and may include documents such as contracts, project plans and budgets, requirements and specification documents, drawings, source code, user documentation, support and maintenance documentation, test plans, test specifications, standards, and any other type of specialized work product.
Varieties of Software Revision
Software revisions can be divided into three categories:
Software peer reviews are conducted by the author of the work product, or by one or more of the author’s colleagues, to evaluate the technical content and/or quality of the work.
Software management opinions are carried out by management representatives to evaluate the status of the work done and to make decisions regarding downstream activities.
Software audit examinations are conducted by external personnel for the software project, to evaluate compliance with specifications, standards, contractual agreements, or other criteria.
The different types of peer reviews
Code review is the systematic examination (often like peer review) of computer source code.
Paired programming is a type of code review in which two people develop code together on the same workstation.
Inspection is a very formal type of peer review, where reviewers are following a well-defined process to find defects.
Tutorial is a form of peer review where the author leads development team members and other stakeholders through a software product and the participants ask questions and comment on the defects.
Technical review is a form of peer review in which a team of qualified personnel examines the suitability of the software product for its intended use and identifies discrepancies in specifications and standards.
IEEE 1028 generic process for formal reviews
IEEE Std 1028 defines a common set of “formal” review activities (with some variations, especially for software audit). The sequence of activities is largely based on the inspection of process software originally developed at IBM by Michael Fagan. Unlike review types, you can apply this structure with different degrees of rigour, but all activities are mandatory for inspection:
- Input Evaluation: The evaluation manager uses a standard checklist of input criteria to ensure that the optimal conditions exist for a successful review.
- Management Preparation: Responsible management ensures that the review will be properly resourced with staff, time, materials and tools, and will be conducted in accordance with policies, standards, or other relevant criteria.
- Planning the review: The review manager identifies or confirms the objectives of the review, organizes a team of reviewers, and ensures that the team is equipped with all necessary resources to conduct the review.
- Overview of appeal procedures: The chief appraiser, or other qualified person, ensures (in a meeting if necessary): all those who understand the objectives of the review, the review procedures, the materials available to them, and the procedures for conducting the review.
- individual Preparation: Reviewers will prepare individually for the joint examination of the work under examination by examining for anomalies (potential defects), the nature of which will vary with the type of review and its objectives.
- Review group: Reviewers meet on a scheduled basis to share the results of their preparatory activity and to reach consensus on the status of the document (or activity) they are reviewing.
- work / follow-up: The Work Product Author (or other assigned person) undertakes as many actions as necessary to repair the defects or otherwise meet the requirements agreed at the review meeting. The head of assessment checks that all action items are closed.
- Evaluation Exit: The evaluation manager verifies that all activities required for the successful review have been completed, and that all outputs appropriate to the type of review have been completed.
The quality of the software is something primordial and initial without which a program is going to fail or present certain faults in the future for not having corrected them, that is why the quality of the software was born and from it norms were born that take in that line to direct that the products are of good quality and it is that the programs, applications and systems are a product.