Date: Wed, 13 Sep 1995 16:59:57 +0200 From: Hans-Ludwig Hausen Tailoring and Conformance Testing of Software Processes - The ProcePT Approach by Dieter Welzel and Hans-Ludwig Hausen In order to provide evidence for test of the quality of a software product, the product's development process has to be specified and tested against standards and regulations. Based on a generic process model, activities and documents are identified and tailored until a dedicated process model is obtained for both the company level as well as the project level. Process adaptation is conducted stepwise depending on the conditions and constraints to be considered (e.g. ISO 9000). The ProcePT approach (Process Programming and Testing) provides a rule-based framework to supports these steps. ProcePT supports the specification and testing of dedicated process models in particular for the German standard process model "Vorgehensmodell" (V-Model). The V-Model is required by the German government, and its use is widespread in the German IT industry. It has also influenced EUROMETHOD, the European project for the integration of software process models. The V-Model identifies the documents and activities which are relevant for software development on different abstraction levels. It groups selected activities and documents into sub-models such as: software development, project management, quality assurance, and configuration management. A testable process description requires a formal notation for the activities and documents, their interactions, and for their refinement and generalisation. A rule-based system has been developed to support both the specification and testing. Adaptations to other process models like SSADM or MERISE are possible. The ProcePT Prototype --------------------- The ProcePT prototype (Prolog program of about 3700 rules) offers on-line browsing of the V-Model, the tailoring procedures, and the testing requirements (such as ISO 9000). Documents and activities are tailored according pre-defined rules or in a direct manner. In such transformation several tests are conducted: * testing of document and activity flow, * testing of status changes, * testing of interface between submodels, * observing level-oriented document and activity structure, * avoiding isolated documents and activities. The adaptation procedures as well as the conformity testing to standards (e.g. ISO 9001, internal regulations) are reported in a protocol that can be used for process audit. The data of a specified model are made available via an SQL-interface (Structured Query Language). A final result of ProcePT is a project handbook. At present project management aspects, such as planning , testing of resources and process simulation, are investigated. ProcePT provides support for: * software project managers and engineers, * vendors and suppliers in need for process certificates, * contractors of bespoke software development, * testing laboratories and quality management, who need to test the compatibility of software process models and to conduct process certification. Today ProcePT is used also for modelling and assessing company or project-specific process models and for embedding process models in organisations together with the "GMD Guides to software evaluation". ------------------------------------------------------------------------------- Quality and Productivity Assessment and Improvement - The HAWE Approach As software system engineering is, compared to other engineering rather young, mature, certified quality management systems (QMS) as well as product assessment procedures are not widely available in IT industry. On the other hand QMS's conform to sector specific regulations or international standard (e.g. ISO 9000)will be required for IT departments, IT suppliers, and software houses or system companies. GMD conducts research and distribution actions to introduce and to improve QMS on the basis of well-defined process assessment procedures and together with product evaluation and certification techniques. For product assessment standardised quality criteria (e.g. ISO 9126) have to be considered. Process standards, such as ISO 9000 for QMS, have to be applied to assess maturity and capabilities of companies and projects. Today many companies must reorganise software development activities to meet those regulations and standards. With regard to software system engineering within a project, the following aspects need to be considered: * assessment and continuous improvement of software process engineering, * assessment and continuous improvement of software quality management, * assessment and continuous improvement of customer service. These company and project specific process improvements are managed by the rule-driven system ProcePT (Process Programming and Testing). It is complemented by HAWE, our standardised product assessment and certification method (c.f. ISO 14598). HAWE comprises: * Quality definition by determining software attributes and software metrics with their expected values * Allocation of product and process information to these metrics * Selection of evaluation techniques to be used * Metrics collection * Assessment of measured values by multi-dimensional assessment * Integration of specifying, designing, performing, assessing and reporting activities in the development procedures The experience gained using HAWE and well-defined software process models has been made available to several European technology transfer initiatives. =========================================================================== The above texts provided to QUALITY.ORG by their co-author: /-/ . /_ . /-/ Hans-Ludwig Hausen |-| Senior Scientist |-| E-mail: hausen@gmd.de|-| GMD - German National Research Center for Information Technology Schloss Birlinghoven; D-53757 Sankt Augustin; Germany Phone: +49-2241-14-3224/-3164 home: +49-2251-51-998 Telefax: +49-2241-14-3043 (or +49-2241-14-3006/2618) WWW: http://moore0.gmd.de/SCOPE/SCOPE.engl.html FTP: ftp.gmd.de directory: /GMD/SW-Quality UserID: anonymous Password: /\Nature never breaks her own laws -Leonardo da Vinci- /\End_Of_Text/\