Report:Software Quality Inspections In Comparison with Software TestingAbstractSoftwareinspection and testing plays essential and significant role in software qualityassurance. In this literature will discuss why we need testing and inspectionsand what the process of these methodologies are. Inspecting and testing bothare valid with in verification and validation. As we know the basic theme ofthese two process is to provide a quality product. By applying these two in theright time we can save money, time and efforts as well.
But while applying andmaking decision we must have an idea about the strength and weaknesses oftesting and inspection as if it can help to resolve the 45% of the developmentefforts dedicated in modifying defects. In this report we will discuss the roleand importance of inspection in comparison with testing in software qualityassurance.1,2IntroductionInspections are the important tool for quality assurance. Since this was presentedby Fagan at IBM in 1976, arguments exist as to which method should be adoptedto carry out the exercise, whether it should be paper-based or tool based, andwhat reading technique should be used on the inspection document. A lot of workhave been done to determine the effectiveness of software products.
Softwareinspection is useful to detect the defects in any stage software developmentmethodology especially in early stages. Inspection of software defects canimprove the software product quality by decreasing rework cost and time fromdocuments, code, and other deliverables. The objective of this report is toidentify existing software inspection techniques or methods which help practitioners and softwareengineers to improve the software quality and to compare them according to somequality attributes.1,2Need of inspection and testingMost of the defects are found after testing that should have been foundearlier to cope the flaws of requirements. Defects that are found later intesting will prove that it has been done on wrong or incorrect requirements andas well increases the cost and time management. That’s why inspecting of thedocuments should be taken from the first step to find out every single defectin a systematic manner.
The objective of these inspections is to find all thedefects at each phase and to proceed to the next phase with a completelycorrect basis.Testing is considered as one of the most expensive technique of finding defectsin software products as it is known it can consume more than 50% of thesoftware development cost, moreover testing couldn’t cover rework cost.Reviewing each phases of development also take time. So the time spent duringtesting much depends on what reliability level that are asked for.Techniques and process of Inspection andTestingInspection Methodologies3:Followingre the models and methods of inspections discussed in different literature. Fig.
No1 Inspection Process4 (1) Fagan Methodology FAGAN methodology is a complete software inspection methodology andproposes proper sequence of steps and roles. Steps are: Pre and Post inspectionactivities, inspection meetings and the roles are software inspector, softwaretester, and moderator. Fagan’s methodology consists of six phases planning,overview, preparation, examination, rework and follow-up. Firstly moderator atplanning phase identifies inspector’s role, distribution and verification ofinspection material etc. Secondly, an overview is done by the author. Thirdlyinspector prepares for meeting and role and it will also improve the process ifthis preparation inadequate then moderator cancels it. Finally, an Author willcorrect all defects which will be verified by the moderator.5(2) Glib Methodology Glib inspection methodology was developed by the Tom Glib in 1993, likeFagan methodology there are six phases planning, overview, preparation,examination, rework, follow-up etc.
according to Glib inspection methodologywhich is used by an organization is depend on its type of business , it’s up tothe customer’s choice whether he choose formal or semi-formal inspectionprocess. An extra step was added by Gilb to inspection process for theimprovement of software development process that will produce the documentwhich will be inspected by the inspector3(3) Phased Inspection Phase inspection was proposed by Knight & Myer (1993) where softwareproducts are inspected in series of steps called phases where each phase hasthe specific objective. At each phase product is examine, validate for specificproperties of a product. We cannot move forward until corrections arecompleted. There are two types of phase single-inspector, multiple-inspector. Asingle inspector uses a checklist that must satisfy the by each product.Multiple-inspector phases are designed for such properties that cannot bedescribed through binary questions. In phase inspection, individual checking isalso done via meeting called reconciliation that provides various opportunitiesfor fault detection3(4) Scenario Based Inspection MethodLiterature shows that for the removal of defects various testing models,automated and manual tools had been proposed, but still they are failed.
Mostof the software inspection model, techniques focuses only on artifacts but, theproposed model provides an inspection technique that removes some possibledefects in all phases of software development. It does focus not only each phaseof SDLC but it also concentrate on documents, deliverable working products andconduct inspection process implicitly and gradually. Defect removal,determination, and defect learning are three golden steps, where defectlearning is an interesting point basic factor of a scenario-based model. Thismust be intelligent, its learning plan creates, executes according to foundedresults. A case study was conducted for the evaluation of this model; it ismore efficient as compared to other traditional inspection processes3 (5) Defect Management Oriented InspectionDEMAO was proposed for the improvement of software quality, generally, itfocuses on inspection process inconsistencies. There were four core componentsof proposed models. Core components of proposed models were (1) defectmanagement, (2) cause and effects, (3) supervision function (4) inspectionfunction.
Defect management is an important in any inspection process in DEMAOit was done through relational database together with the knowledge base for maintenanceof common defect classification. Finding more defects in less time is a majorobjective of an inspection process. Cause and effect dependencies can befinding through the Knowledge base.
In DEMAO Like traditional softwareinspection Supervision function is not limited to coordination, it also definesinspection session, develop team charter, approve inspectors’ profiles, andarrange meetings for inconsistencies removal .internal and external inspectionid done by inspection function. These techniques increase efficiency bydecreasing execution time and increase effectiveness by discovering more errorand defects. . The most effective features of this model are a reduction intime by providing facilities and formatted documents and disadvantage of waslimited on flexibility3. Inspection Methodologies Steps of working Planning Overview Preparation Inspection Meeting Follow-up Rework Fagan Methodology yes yes yes Yes Yes Yes yes Glib Methodology yes yes yes Yes Yes Yes yes Scenario Based Inspection Method yes yes yes Yes Yes Yes yes Phased Inspection yes yes yes Yes Yes Yes yes DEMAO Develop and Maintain Checklists, Defect Management, Cause and Effect Dependence, Competitive Advantage, Supervision Functions Table.No.
1 Inspection Parameters For Different Methods3Testing Methodologies:Different literature covers important test techniques:Black Box Testing Versus White BoxTesting(1) Black Box Testing6:This type of testing Perform the tests which showcase all functionalrequirements of a program. This method of testing covers the internal structureof the product that is not familiar to testers also known as behavioral testing.The test cases can show presence or absence of classes of errors. Fig.No.
2 Testing Methods7 (2)White Box Testing 6:Thistype of testing Perform the tests which showcase all functional requirements ofa program. This method of testing covers the internal structure of the product thatis familiar to testers also known as clear testing, glass testing ortransparent testing. Testing Methodologies Steps of working White Box Testing Black Box Testing Table.No.2Testing Parameters for Different MethodsSignificance Inspectionsfocuses on finding faults, whereas testing mainly focuses on finding failuresthat occurs due to faults. As being more complimentary to each other they arefinding flaws for different areas rather than competing each other. If developerswant to develop quality product software inspection can reduce the product defectsto 80% as it has been done keenly and properly in a correct manner. The traditionalstated way of researchers to perform inspection is to make testing first theninspection, But the new phenomenon is do it later.
Discussion Both testing and inspection are useful in the development of quality product.When the process done carefully and properly it is successful in findingdefects at the appropriate stage of development. But it is not unfair to say combininginspection with testing, auditing and verification is helpful in improving thequality product.
Inspection is considered as a efficient method for quality product.It should be supported by the organization management and not to take criticismpersonally and look for defects.ConclusionItis found if end users are satisfied both techniques are up to mark but stillhave pros and cons.
They are utilized for various reasons and in various stagesduring the development of the project. Every strategy has its favorableposition and method for moving toward the look for ends. Their respectivestrengths help finding different kinds of defects. So far Inspections areconsidered as a better way for finding defects in design, requirementsdocuments, source code etc. Testing is the main method for finding operationalimperfections, and to ensure that non-practical necessities are functioning asthey should. Errors requirements documents or in the source code can’t be discoveredvia testing. The individuals carrying out an inspection may not have thenecessary knowledge about the product domain or they may be overloaded withinformation in the initial stage of the inspection, etc.
then defects caneasily be missed. References 1. Akinola, O.S.
and A.O. Osofisan, An Empirical Comparative Study of Checklist based and Ad Hoc CodeReading Techniques in a Distributed Groupware Environment. arXiv preprintarXiv:0909.
4260, 2009.2. Evertsson, G., Inspection vs. testing. Software Verification and Validation, 2002. 3. Qazi, A.
M., S. Shahzadi, and M.Humayun, A Comparative Study of SoftwareInspection Techniques for Quality Perspective.
International Journal ofModern Education and Computer Science, 2016. 8(10): p. 9.4.
pk/search?rlz=1C2CHZL_enSA736SA736&dcr=0&biw=1366&bih=662&tbm=isch&sa=1&ei=IgJYWrPOKYP36ATpj4OwDA&btnG=Search&q=+software+inspection+process#imgrc=QtnQLT0PXCfy3M:.5. Phongpaibul, M., An Analytical Comparison between Software Inspection and PairDevelopment.
6. Jovanovi?, I., Software testing methods and techniques. The IPSI BgD Transactionson Internet Research, 2006. 30.7. Jamil, M.
A., et al. Software Testing Techniques: A LiteratureReview. in Information andCommunication Technology for The Muslim World (ICT4M), 2016 6th InternationalConference on. 2016. IEEE.