by Fabrizio Fabbrini and Mario Fusani
Two important initiatives for technology transfer in the Software Quality field are now under way at IEI-CNR, Pisa: the SPICE Project for process evaluation and the Qseal Project for product evaluation.
At IEI-CNR, interest in Software Quality has been active and growing over the last few years. A productive, institutional basic research project in Software Engineering has provided an excellent launching pad for further work which has given nice results: the "Achieving Quality in Software" (AQuIS) International Conference is now preparing its third meeting (Florence, January 1996); technology transfer activities are in course that provide national high-tech companies with software certification and assistance in quality improvement programmes.
Committed to a difficult bridging between research and application worlds, IEI-CNR could not ignore the efforts made by standard organisations towards Software Quality. Therefore, in 1993, the Institute joined two completely independent, yet somewhat correlated initiatives for the standardisation of software quality evaluation: the SPICE Project and the Qseal Project.
The SPICE Project
SPICE (Software Process Improvement and Capability Determination) is a major international initiative, primarily promoted by industry, which aims at developing a standard for Software Process Assessment: the goal of the Project is to define a standard (for the International Committee on Software Engineering Standards ISO/IEC JTC1/SC7, Working Group 10) covering methodologies for software process assessment, in order to improve the quality of software by means of a better comprehension of the process itself. The standard deals with software processes such as development, management, customer support, and quality, but is also concerned with people and technology transfer. The SPICE Project is currently supported by institutions from 16 different countries, organised around four Technical Centres and exchanging documents in electronic format using Internet.
The SPICE document set consists of seven components in form of assessor's guides (Introductory Guide, Process Improvement Guide, Process Capability Determination Guide, Process Assessment Guide, Baseline Practices Guide, Assessment Instrument, Assessor Training and Qualification Guide), addressing all the relevant aspects of process evaluation. The aim is to define a standard based on the best features of existing methods (such as CMM and Bootstrap), yet providing an innovative common approach. The results are currently being tested by the international community, under the co-ordination of the European Software Institute, before going through the final standardisation stage.
IEI-CNR has participated in SPICE since the beginning, providing experts for the development of the Process Assessment Guide, and is now involved in the first phase of the trial stage. Trial assessments are conducted with the participation of local software companies, and their results will be used to evaluate critical design decisions and the usability of core products of the Standard.
The QSEAL Project
On a national level, IEI-CNR is also engaged in the Qseal Project, promoted by Italian state organisations and industry. The goal of Qseal is to propose state-of-the-art techniques to develop, validate and maintain quality IT products, defining the guidelines for software product evaluation and certification by means of a quality enforced operating scheme, agreed and harmonised at national level.
The quality model adopted by Qseal has been developed within the framework of Standard ISO 9126 (six main quality characteristics, subdivided and refined into more specific sub-characteristics) and includes state-of-the-art metrics in Software Engineering. The software evaluation process is a procedure that creates evaluation profiles in terms of quality characteristics. Evaluation profiles are obtained assessing the characteristics and sub-characteristics of the product against a set of target values.
Technology transfer hardly works as just a one-way flow of knowledge. When applying research results to a real world problem, feedback stimuli to new investigations are practically unavoidable. The point is to catch and exploit them the right way. In Software Quality, the evaluation process typically relies on the use of questionnaires, or checklists, to record both product and process measurements. Although in most technical fields verifying and validating the instruments used to obtain measures has long been common practice (and standards do exist defining the classification and operating requirements for such instruments, e.g. for test laboratories), the problem of defining the requirements for a checklist when used as an evaluation instrument seems to be little addressed. Although critical components of the evaluation process, being natural language expressions checklists tend to be unclear, ambiguous, misleading. It seems therefore convenient to introduce a quality model, defined in terms of quality requirements, for this instrument. A research activity has thus begun directed at defining methodologies and tools to generate and verify checklists against such a quality model.
In order to mechanise some stages of the analysis process, a technique has been developed using Natural Language Understanding methods. This technique allows a given checklist to be analysed on the basis of the quality model, using a grammar to parse the checklist's entries. So far, results from experiments carried out on published checklists are rather encouraging.
return to the contents page