Estimation and Evaluation of Software Quality at a Particular Stage of Software Development

Estimation and Evaluation of Software Quality at a Particular Stage of Software Development

DOI: 10.4018/978-1-5225-3185-2.ch007
OnDemand PDF Download:
$30.00
List Price: $37.50

Abstract

In this chapter, some new ideas about estimation and evaluation of the quality of software. At the outset, it deals with the possibilities of using a standard conversion method so that lines of code from any language may be compared and be used as a uniform metric. The present work is also credited through the introduction of some new terms like efficiency and variation to understand the change in software quality. The main focus is to evaluate and estimate software quality at a particular stage of software development. This is not average quality understanding, but quality estimation at a particular instance. One of the salient aspects of the method suggested is that the developer can evaluate the work at any stage using the methods given to review the present status and make future plans to meet the required target.
Chapter Preview
Top

Introduction

This research work suggests a method of comparing the actual rate of software development with the projected or targeted rate. The actual rate of software development can be calculated at a particular stage of work and the required comparisons can be made (Rashid, Patnaik, & Bhattacherjee, 2013). It is very common to see large projects being undertaken at the present time. The software being developed in such projects goes through many phases of development and can be very complicated in terms of quality assessment. There will always be a concern for proper quality and effective cost estimation of such software. This can be rather tricky as the project being a large one may cover several unknown and unseen factors that might previously be very difficult to judge. The pertinent question here is how can I judge in case of such a large project, whether the progress that is being made at a particular stage of software development is really up to the mark. How can I be assured that the rate of development of quality of the software at a particular stage is actually satisfactory enough? This analysis becomes more important because there is every possibility of losing out in the midst of development work without proper scientific planning and evaluation methods. It may so happen that the subjective understanding of the progress in development may lead to unexpected results. This will surely affect the ultimate cost and the quality of the software. At the same time one can easily understand that the result of the efforts may be totally disastrous. More the scientific approach in this regard, better is the possibility of achieving expected results. It would be best if a proper mathematical model is available to assess and compare the rate of development of software at a particular stage of development. With properly defined steps and methods, it would be easy to draw correct and objective conclusions. In this method, subjective analysis will be replaced by proper scientific assessment. This chapter suggests the steps and the proper methods to be followed for this kind of activity. The novelty in this approach is the use of differential calculus to obtain the correct quantitative analysis. The quantitative analysis itself is a form of qualitative analysis with the help of which proper decisions may be taken to make up for any losses or lacunas in the development work. Simultaneously, there may also be the possibility of over usage of resources, that is, resources that are being used, but, are not really required. Due to lack of understanding about the correct rate of development at various stages, organizations may tend to over use their resources, when then could do with lesser options. The assessment of quality at different stages with the help of the methods given in this chapter and their proper records would create an important statistical knowledgebase which would result in better understanding of the life cycle of any typical software type. Division of work and allocating the number of workers per module will be easier than before. When software is being developed, the development team has to be focused on the quality of the software and also on the cost involved. The cost factor is more or less measurable and has well defined metrics. There are different models which can help us estimate the cost of software. The chief among them are: The cost involves calculating parameters such as lines of code and effort. There has been a detailed analysis of estimating the effort and also tried to elucidate the rate of improvement of software quality with respect to time. Several calculations such as the time derivative of improvement of quality and other metrics have been discussed in (Rashid, Patnaik, & Bhattacherjee, 2014). This has to do chiefly with deciding the quality of the software, which has been by and large believed to be a much more subjective issue when compared to the estimation of cost. Whenever the quality issue is involved, we have to view in perspective of its explanations and definitions as put forward by the authorities over the subject. Let us at the outset, mention in brief the understanding involved about quality decision. Every software requirement specification document has a set of functional requirements stated therein. Now these explicitly stated functional requirements need to be fulfilled and the degree to which they are fulfilled can be understood as the quality of the software. Moreover, there is also a set of implicit requirements that the development team needs to enumerate. These sets of implicit functional requirements also need to be fulfilled for getting the quality software. Another view that defines the quality of software is as follows: Quality achievement is a state in which the software becomes free from bugs, meets the cost factors, can be developed within the stipulated time frame and has an overall controlled time and space complexity. However, this can be argued to be more or less the viewpoint of the developer. For the end user, quality largely refers to that condition of software where it is “working”, is reasonable “fast”, is quite “user friendly” and is “easily upgradable”. Thus the status of the person getting involved with respect to the software largely determines the issue of the conception of software quality. This research work is an attempt to improve upon the earlier conception of software development by defining some new metrics. This part focuses on the development period of the software and has little to do with the quality of the final product. On the other side, the new parameters introduced in the chapter, aim towards deciding upon the quality at the end of the software development. Both the issues largely reflect the work of software quality estimation and may be considered to be important in many respects as mentioned in the subsequent sections.

Complete Chapter List

Search this Book:
Reset