scispace - formally typeset
Search or ask a question

Showing papers in "Software Quality Journal in 1993"


Journal ArticleDOI
TL;DR: SPICE (Software Process Improvement and Capability Determination) as discussed by the authors is an international standard for software process management, which aims to build on the best features of existing software assessment methods and is developed by the International Standards Group for Software Engineering.
Abstract: In June 1991, the International Standards group for Software Engineering approved a study period to investigate the need and requirements for a standard for software process management. A new international work item has been subsequently raised. The resulting project is named SPICE (Software Process Improvement and Capability Determination). The project aims to build on the best features of existing software assessment methods.

157 citations


Journal ArticleDOI
TL;DR: The results of the analysis indicate that, although an ISO 9001 compliant organization would not necessarily satisfy all of thelevel 2 key process areas, it would satisfy most of the level 2 goals and many of the levels 3 goals.
Abstract: The Capability Maturity Model for Software developed by the Software Engineering Institute and the ISO 9000 series of standards developed by the International Standards Organization share a common concern with quality and process management. The two are driven by similar concerns and are intuitively correlated. The purpose of this paper is to compare the CMM and ISO 9001. The results of the analysis indicate that, although an ISO 9001 compliant organization would not necessarily satisfy all of the level 2 key process areas, it would satisfy most of the level 2 goals and many of the level 3 goals.

117 citations


Journal ArticleDOI
TL;DR: In this article, the authors examine 34 published and unpublished case studies of the use of rapid prototyping in real-world software development and identify common observations, unique events, and opinions.
Abstract: Empirical data are required to determine the effect of rapid prototyping on software quality. We examine 34 published and unpublished case studies of the use of rapid prototyping in ‘real-world’ software development. We identify common observations, unique events, and opinions. We develop guidelines to help software developers use rapid prototyping to maximize product quality and avoid common pitfalls.

25 citations


Journal ArticleDOI
TL;DR: The Ceilidh software quality control environment for the teaching of computer programming provides students with an integrated environment for developing programs according to specifications and quality standards defined by the teacher.
Abstract: This paper describes the Ceilidh software quality control environment for the teaching of computer programming. Ceilidh provides students with an integrated environment for developing programs according to specifications and quality standards defined by the teacher. The student's programs are automatically assessed from a number of perspectives including dynamic correctness, program complexity and programming style. The assessment of programs is carried out according to well established software metrics and students may repeatedly re-assess their programs, enabling them gradually to work towards a quality target. The paper gives an overview of the functionality of Ceilidh followed by a more detailed description of the software metrics used. It also discusses some of the insights gained from several years' use at Nottingham. Finally, the paper outlines plans for the future development of Ceilidh including a pilot project involving 30 UK institutes of higher education funded under the Universities Funding Council's Teaching and Learning Technology Programme (TLTP). The paper should be of particular interest to anyone involved in teaching programming, whether it be in university, in schools or in industry, who might wish to construct a similar system or who might wish to obtain and use Ceilidh directly. It should also be of interest to those looking for experiences gained from large-scale applications of software quality metrics.

25 citations


Journal ArticleDOI
TL;DR: This paper explains how measurement should be used in a goal-oriented manner in project management and describes the ami (application of metrics in industry) approach to achieving this.
Abstract: In this paper we first review the state of the art in software measurement. We then explain how measurement should be used in a goal-oriented manner in project management and describe the ami (application of metrics in industry) approach to achieving this. Finally we consider the ami project as an example of successful technology transfer and look at the variety of tactics used for dissemination of the approach in response to the needs of today's growing software measurement community.

18 citations


Journal ArticleDOI
TL;DR: Experimental work in the attainment of high Ct coverage suggests the development of a new, more efficient software testing strategy, which combines Ct path and data flow analysis.
Abstract: Software testing techniques based upon automated analysis of control flow are useful for improving software reliability. The fundamental types of control flow analysis, in ascending order of effectiveness, are statement, branch, and path coverage. Automated tools that perform branch coverage analysis are now accepted practice and researchers are exploring the area that exists between branch and path analysis. Path testing is complicated by the huge number of paths in ordinary programs and by anomalies, such as infeasible paths. The Ct testing strategy is a method for obtaining a manageable set of path classes by specifying a minimum iteration count k. The Ct test coverage metric is a measurement of the proportion of Ct path classes that are exercised within a program. This paper describes an initial experiment in which a special, automated tool was used to evaluate the Ct coverage of tests for a C program of significant size. The results of the study showed that high values of branch coverage may not necessarily imply high path coverage, that approximately 15% of the functions analysed were ‘too complex’ to analyse effectively, and that the majority of the remaining functions achieved on the order of 11% Ct k=1 coverage. Experimental work in the attainment of high Ct coverage suggests the development of a new, more efficient software testing strategy, which combines Ct path and data flow analysis.

16 citations


Journal ArticleDOI
TL;DR: In this article, the authors present the findings of a survey that investigated the level of quality management practice within some 150 UK companies from a sample of 500, highlighting the need to encourage small companies to adopt quality practices and to assist them with the short-term costs incurred.
Abstract: The paper presents the findings of a survey that investigated the level of quality management practice within some 150 UK companies from a sample of 500. It provides a snapshot of practice at the time of the survey, and assesses the impact of government quality initiatives particularly, the TickIT scheme at that time. The survey methodology is described, together with the results and conclusions. The sample has been graded by size of company, which the authors consider to have a significant effect upon the adoption of quality practices. The survey highlights the need to encourage small companies to adopt quality practices and to assist them with the short-term costs incurred.

16 citations


Journal ArticleDOI
TL;DR: A model of the software measurement process has been used as the basis for development of a targeted assessment method for the evaluation of the maturity of theSoftware measurement process.
Abstract: Existing process assessment methods are inherently limited as a tool for evaluation of any specific technical area of software development. A review of the coverage of software measurement within two examples of existing process assessment methods is presented. A model of the software measurement process is presented and discussed. The model has been used as the basis for development of a targeted assessment method for the evaluation of the maturity of the software measurement process.

14 citations


Journal ArticleDOI
TL;DR: The benefits of decomposing a software system at the design stage into a collection of modules have long been recognized, especially if the activities within each module contribute to performing one single goal, and also if the modules have, as far as possible, minimal interaction with each other as mentioned in this paper.
Abstract: The benefits of decomposing a software system at the design stage into a collection of modules have long been recognized, especially if the activities within each module contribute to performing one single goal, and also if the modules have, as far as possible, minimal interaction with each other. In the so-called structured design approach, qualitative scales, or spectra, for cohesion and coupling capture these notions a little more rigorously and provide a means of assessing the quality of a design.

13 citations


Journal ArticleDOI
TL;DR: In this paper, the authors report the results of an improvement programme that is helping to improve the effectiveness of Scotland's IT community, which uses software process assessment as a key element.
Abstract: This paper provides some answers to the frequently asked question: what proof is there that process management gives measurable benefit in practice? We report the results of an improvement programme that is helping to improve the effectiveness of Scotland's IT community. This programme is currently operating in over 20 organizations and uses software process assessment as a key element. The majority of organizations have been on the programme for over a year and we have found that benefits can be obtained as early as six months from the outset of an assessment-based improvement programme. Using the experience of working with these organizations, we discuss how to set up an improvement programme and define the roles, responsibilities and critical factors that we have found successful.

11 citations


Journal ArticleDOI
TL;DR: Practical experience of four years of assessing the health of the software engineering process within BT (British Telecommunications, Plc), using the Healthcheck assessment method is described.
Abstract: This paper describes practical experience of four years of assessing the health of the software engineering process within BT (British Telecommunications, Plc), using the Healthcheck assessment method.

Journal ArticleDOI
TL;DR: After obtaining propagation analysis information for a program and obtaining a failure probability estimate for the program during execution, a model is built that can be used to identify possible sites of missing-assignment faults of the form x ≔ f(x).
Abstract: Testability, the tendency for software to reveal its faults during testing, is an important issue for verification and quality assurance. But testability can also be used to good advantage as a debugging technique. Although this concept is more general, we will illustrate it with a specific example: propagation analysis.

Journal ArticleDOI
TL;DR: A set of explicit counting rules for the use of function point analysis in SSADM v4 is presented, motivated by the need for an unambiguous, objective, and inexpensive measure of system size during the development process.
Abstract: A set of explicit counting rules for the use of function point analysis in SSADM v4 is presented, motivated by the need for an unambiguous, objective, and inexpensive measure of system size during the development process. Unadjusted MKII function points can be derived from the requirements specification (RS) phase of SSADM; it is argued that the ‘complexity adjustment’ factor of the standard function point method can be safely omitted. A prescriptive approach is taken, resulting in a repeatable and objective counting technique that may be automated.

Journal ArticleDOI
TL;DR: The history of this project, the methodology used to produce the 4.7 million lines of code, the metrics covering development productivity and software quality over 18 releases in the last 12 years, and the key lessons learned may be applied to other software development projects.
Abstract: The CP-6 operating system and its compilers, databases, communications, and end-user interfaces were designed, developed, tested, and installed at customer sites in three years from the date the project began. This paper describes the history of this project, the methodology used to produce the 4.7 million lines of code, and the metrics covering development productivity and software quality over 18 releases in the last 12 years. The rigorous methodology and standards used throughout the project, which cover the full lifecycle of design, development, and support, include a statistical database covering development manpower, lines of code produced, and error reports covering 12 years in customer installations. The project achieved software development productivity rates twice as high as those of comparable projects, and error rates half those of comparable projects for product software. The key lessons learned may be applied to other software development projects.

Journal ArticleDOI
TL;DR: A brief account of contemporary statistical activity in software engineering measurement, with particular reference to the CEC ESPRIT, programme, based on work done for the COSMOS project.
Abstract: This paper is a brief account of contemporary statistical activity in software engineering measurement, with particular reference to the CEC ESPRIT, programme. The report is intended to be of interest to technical and non-technical managerials staff and assumes little prior knowledge of statistics. It is based on work done for the COSMOS project.1

Journal ArticleDOI
TL;DR: A qualitative evaluation in terms of accuracy, improvement issues, measurement issues and quality costs to management concludes that the Prevention-Appraisal-Failure and Process models of measuring quality costs are valid and that a greater consensus is required for identification of software quality cost elements.
Abstract: The Prevention-Appraisal-Failure and Process models of measuring quality costs, as described in BS6413, are discussed in the context of software quality costs. The Process model is selected as the better base for constructing a software quality cost model because of its suitability for application to software engineering processes. A seven-step method for modelling software quality costs is proposed and illustrated by application to a software maintenance project. Key processes in software maintenance and its quality tasks are derived from the most recently available standards-related publications. Although no results are available, a qualitative evaluation in terms of accuracy, improvement issues, measurement issues and quality costs to management concludes that the model is valid and that a greater consensus is required for identification of software quality cost elements. Implementation of quality cost measurement is not discussed save noting that there are still complex issues to be addressed.

Journal ArticleDOI
TL;DR: Comparative data were obtained from the development of a commercial real-time embedded system, for which two versions of the product were produced, showing that version B has less component coupling than version A.
Abstract: This paper addresses the question of the extent to which structured design methods contribute to the quality of a software product. Comparative data were obtained from the development of a commercial real-time embedded system, for which two versions of the product were produced. Version A was developed informally; by contrast version B used a structured design method. Maintenance effort for A was high compared with that for B. The case study was set up to measure the effect of using structured design on the resulting internal code structure whose metrics were captured by a static analysis tool. Results show that version B has less component coupling than version A. The component size results show that the distribution of B is shifted with respect to A, with more smaller components and fewer large ones. In respect of the detailed code structure within components, the results indicate that B is better structured than A. Only the fully structured components of A and B could be measured for testability, with no significant difference being apparent for the specified test case strategies. Overall, the evidence of this comparative study points to modest advantages of the structured method over the informal development method in this case. Caution must be exercised, however, against sweeping generalizations of these results.

Journal ArticleDOI
TL;DR: The main approaches (ISO9000, TickIT, SPICE, Process Improvement and TQM) along the road to quality improvement are presented, describing the background to the approach taken and the main benefits gained.
Abstract: This paper presents the main approaches (ISO9000, TickIT, SPICE, Process Improvement and TQM) along the road to quality improvement It has been distilled from a technical note Quality and process management programmes: approaches and experience issued earlier this year by the Computing Services Association, the UK trade association of computing software and service companies whose members account for three-quarters of turnover of the UK industry CSA member company experience is included as case studies of particular approaches, describing the background to the approach taken and the main benefits gained A discussion on the role of metrics within any such improvement option is included, as is a report on a recent well-attended CSA seminar on the subject

Journal ArticleDOI
TL;DR: In this paper, the authors highlight some of the challenges facing Canadian software firms, and outline the key national and local initiatives undertaken in the past two years to deal with these challenges.
Abstract: Canada has a substantial software industry made up of a few very sizeable players and a large percentage of small companies. This strategically important industry is adjusting to the quality demands of the global marketplace and the need for quality in the software engineering process environment. This paper will note some of the challenges facing Canadian software firms, and outline the key national and local initiatives undertaken in the past two years to deal with these challenges. A few specific programs and organizations are chosen to illustrate the diversity of the efforts and to present the new spirit of cooperation taking place from coast to coast.

Journal ArticleDOI
Paul W. Oman1
TL;DR: In this paper, an annotated case study of how software quality assurance audits can be conducted with an emphasis on data gathering and reporting is presented, which is not meant to be a definitive answer or guide to doing SQA audits.
Abstract: Software quality assurance (SQA) audits are becoming a standard practice in corporations seeking to enter contractual relations with other organizations, or just evaluating their own state of readiness. This paper describes one approach to conducting SQA audits. Excerpts from reports of actual audits conducted on several organizations engaged in software development are used to show how an audit is conducted and what can be achieved through the auditing process. The paper is not meant to be a definitive answer or guide to doing SQA audits. Rather, it serves as an annotated case study of how SQA audits can be conducted with an emphasis on data gathering and reporting.

Journal ArticleDOI
TL;DR: The standards were developed by applying the early stages of the normal Bass Taverns IT system development lifecycle to configuration management including the use of CASE tools.
Abstract: Towards the end of 1991, Bass Taverns IT set up a working party to establish requirements for configuration management within the whole of the IT function. The working party was asked to draw up suitable standards as a basis for the implementation of configuration management focusing initially on the needs of development projects. This paper will look at two aspects of this work, the standards making process and the ideas and concepts behind configuration management. The standards were developed by applying the early stages of the normal Bass Taverns IT system development lifecycle to configuration management including the use of CASE tools. This was an approach to the writing of standards which Bass had not used before but which proved very successful.