The specification, engineering, and measurement of information systems quality

The specification, engineering, and measurement of information systems quality

J. SYSTEMS SOFTWARE 1992; 17:205-217 The Specification, and Measurement Systems Quality 205 Engineering, of Information G. P. A. J. Delen and D. B...

1MB Sizes 0 Downloads 35 Views

J. SYSTEMS SOFTWARE 1992; 17:205-217

The Specification, and Measurement Systems Quality

205

Engineering, of Information

G. P. A. J. Delen and D. B. B. Rijsen~rij Cap Gemini Pandata,

Utrecht, The Netherlands

The article opens decomposes the notion of quality for information systems to 40 quality attributes. This provides a frame of reference for structuring discussion between EDP professionals and clients on the subject of quality. The article describes a way of working, based on the frame of quality attributes, which enables EDP professionals in cooperation with the client to specify, realize, and measure the quality of information systems (here seen as the products of the automation process). This “quality loop” is subdivided into three steps-quality requirements, quality engineering, and characteristics-which will be positioned within a normal system development method. A practical application of this approach and the experiences obtained from it are described. 1. INTRODUCTION Process

Quality

Product

Quality

This process quality system is a first step, and may help software managers get a sound night’s rest. But clients, on the other hand, want more. The software development process is only of minor interest to them; they want guarantees for the quality of the end product. If we compare this to a more mature industry such as the automobile industry, we see that customers are interested only in the quality of the car (the end product) in terms of speed, safety, comfort, and durability. The optimization of the process has become a matter of concern for factory managers only; they are concerned with efficient organization of the assembly line, inspection of intermediate products, reduction of the failure rate, and so on.

and Standardization

The idea of quality awareness, which originated 40 years ago in industry through the work of Juran, Demming, Crosby and others, has reached software at last. In 1987 the international industry standard for quality systems, IS0 9001 [ 11, was defined by all the important industrial countries. It was adopted immediately as the quality standard for the European Economic Community and was applied to software engineering as well as other disciplines. As a result, clients are demanding that European software companies organize their production process according to the IS0 9001 standard. The problem of applying a general standard to the specifics of software production resulted in the “Guideline for the Application of IS0 9001 to the Development, Supply, and Maintenance of Software” (IS0 DIS 9000-3) [2], which was adopted in 1990. In many European countries certification institutes now grant quality certificates to companies that meet the IS0 standards. This explains the recent increase in publications on process quality (e.g., [3-51). 0 Elsevier Science ~biishing Co., inc. 655 Avenue of the Americas, New York. NY loOtO

Quality

Dimensions,

Aspects,

and Attributes

give more structure to the discussion on process and product quality, we have framed a stepwise decomposition of the entire quality notion in four dimensions, 21 aspects, and 40 attributes (Figures 1 and 2). This decomposition approach was inspired by Boehm, who presented a similar quality tree [6]. The four dimensions were introduced by Veldhuizen [7] and Verhaeven [S] . Dimension IV describes the impo~ance of information to a company. The role information plays for the company supersedes all the other quality requirements. However, it is difficult to formulate quality requirements based directly on information; therefore, quality requirements are formulated in terms of product dimensions II and III, which describe the information system that provides the information. That information system in turn is the product of a development process described by quality dimension I. In this article we will pass over the process quality, which has received so To

G. P. A. J. Delen and D. B. B. Rijsenbrij

f.

SYSTEMS SOFTWARE 1992; 17:205-217

206

If applied to automobiles, dimension II would indicate how soon a car begins to rust or how easy it is to replace a defective part; dimension III would describe its driving properties. Such a frame of reference, elaborated in aspects and attributes, may be used to specify quality requirements, and as such it is a necessary first step But more is needed for the deveiopment of information systems: one should know how to ~~#~~r~ the quality attributes, and how to realize an info~ation system that fits those quality requirements. In this article we will describe a way to realize product-quality and to make it measurable. In so doing, we will also determine the current limits of quality engineering and quality measurement.

OUALITY

4 Dlmenslons

21 Asrrects

40 Quality attributes

2. THE PRODUCT QUALITY LOOP: REQUIREMENTS, ENGINEERING, AND CHARACTERISTICS

Figure 1. Decompositionof the quality notion.

According to the definition of ISO 8402 [!3] (the “quality vocabulary” standard to the IS0 9000 series), a quality loop is a “conceptual model of interacting activities that influence the quality of a product in the various stages ranging from the identification of needs to the assessment of whether these needs have been satisfied. ” Following De Moe1 and Van Hulzen [lo], we divide the product quality loop into three steps:

much attention already, and focus on the two dimensions of product quality. The static dimension (dimension II) describes characteristics in the area of information system control, and the dynamic dimension (dimension III) describes characteristics for the users of the info~ation system. Appendix C defines all 27 quality attributes of the two product quality dimensions.

of

a Prof.

information

skills

b account

mgt.

c project

mgt.

Ccntribution

by

IA

developer:

R

maintenance

a external

8 control

b

internal

0 B

111

DYWiMXC

l.iteliabiiity

I 2. conttiuity

3.Lfficirnty

4Sffsctivtnra*

a speed - internal

a coverage of b"~.pWCe~*~S

functioning of

v

the

*yetem the

C

for

user

a correctnass

a uninterrupted

b completeneee c authorizednees

b robustneee

d timelineaa T

- total

e restorability ,d degradation poesibility ~7 diversion possibility

friendliness

availability - in - on

time location

c economy d match with

c usability

manual proc. e workability

support a end ~sQr

rnbnusL

IV

b

b "SE%-

INFOlWATION

l.COr?ZeCtneSe

Z.Completeneee

importance for company

3.IJp-to-dateneee

I.Accuraey

proc.

Figure 2. Overview OFquatity dimensions, aspects, and attributes.

d decision

SUppart

5.Vwifiability

Information

J. SYSTEMS SOFTWARE 1992; 17:205-217

Systems Quality

tion will not take place until the next step, when specifying the quality engineering actions. In that step one reviews which requirements are feasible, whereupon they are stated in such a way that they may be verified later on.

QUALITY REQUIREMENTS

CHARACTERISTICS

Quality

Engineering:

Implementation

I

I

Figure 3. Product quality loop.

quality requirements, teristics (Figure 3). Quality

quality

Requirements:

engineering,

Identify

and charac-

and Normalize

According to the IS0 definition, the quality loop starts with identification of the quality requirements. When formulating the quality requirements, one naturally uses the language of the user, i.e., one considers the information provision function from the outside as a black box. At first, the requirements can only be identified using the frame of reference of the quality attributes shown in Figure 2 (dimensions II and III). Normaliza-

Technical system atchitactu

of

Specification

and

of Actions

To be able to specify a set of engineering actions that can implement the list of quality requirements, the designer has to know the internal structure of the information provision function, and so switches now from the black box to the white box approach. Going back to the example of the car: the customer specifies how fast the car must be able to accelerate from 0 to 100 km/h (black box approach); the engineer then specifies the motor volume in cc’s, the ignition mechanism, and so on needed to meet that requirement (white box approach). For the purpose of describing the complete structure of the informatin provision function, we have framed a layered model (Figure 4). This model has six layers:

0

organizational

infrastructure

F

functional

T

technical

D

data infrastructure

I

technical

P

physical infrastructure

system architecture system architecture infrastructure

Within these layers are coded engineering which the designer (or “systems architect”)

01 Organizational inframtructura

Figure 4. Layered

207

02

Operational organization User organization

areas on may take

208

G. P. A. J. Delen and D. B. B. Rijsenbrij

J. SYSTEMS SOFTWARE 1992; 17:205-217

actions to improve quality. In so doing, he or she should realize that the actions taken in the foundation layers, i.e., in the physical and technical infrastructure, limit what is feasible in the upper layers. For example, when there is no local area network (area IS), there is hardly an option for decentralization the information provision function (area T4). Besides these vertical relationships, there are also horizontal relationships among the engineering actions within the same layer. Specification of the engineering actions is an iterative process in which one examines repeatedly first which set of actions is needed and sufficient to meet the total list of requirements, then to what degree the quality requirements must be adjusted based on the feasibility and the cost of the engineering actions, then once more which set of actions is needed for the adjusted requirements, and so on. In the end the quality engineering actions are implemented and the desired characteristics are built into the end product in an optimal way. Characteristics:

Measure

and Compare

When the product is finished, its characteristics can be measured. Now the client reverts to the black box approach, attempting to measure the value of each quality attribute. Some quality attributes (e.g., maintainability, portability, and continuity) appear not to be measurable directly, or only after the information system has been in operation for some time. For those attributes, measuring means that the client obtains insight in how effectively the specified quality engineering actions have been implemented. Finally, the measured characteristics are compared with the normalized quality requirements of step 1 and the quality loop is closed. 3. PRODUCT SYSTEM

QUALITY

AND

DEVELOPMENT

In this section the quality loop is projected onto a system development life cycle. We chose the SDM [l l] which is the most widely used method in the Netherlands. However, since the previously described approach to product quality is independent of any particular system development method, other elaborations are possible as well. Figure 5 shows the development of product quality (starting from the quality requirements) and the development of functionality (starting from the functional requirements) as interrelated tracks through the life cycle. This figure will be discussed below. Information

Systems

Planning

In the information strategy the client gives a strategic view on the role and the value of information for the

company (quality dimension IV). The information strategy also has to result in a model for the total information provision function of the company. Within this model, different information systems may exist concurrently, based on the same physical, technical, data, and organizational infrastructure. Figure 4 indicates the position of an arbitrary information system in such a constellation (hatched area). As may be seen in the figure, one can, within the context of any specific information system, only take quality engineering actions in the upper layers (the architectural layers) of the model; all the actions in the infrastructure layers are already specified in the information strategy. Rijsenbrij and Helders [3] call these the strategic implementation guidelines. In these guidelines the client states, for example, whether there is, or should be, a local area network, whether the company has an exclusive relationship with a specific hardware supplier, whether all information systems are to be based on a corporate data model, the company’s security concept, the conditions imposed by the user organization, and so on.

Definition

Study

In the definition study, rough quality requirements are formulated in addition to the functional requirements for a specific information system based on the role and importance of that information system for the company.

J. SYSTEMS SOFTWARE 1992; 17:205-217

Information Systems Quality This means that one discusses with the user the importance of every quality aspect of product dimensions II and III. The levels of importance may be determined in terms such as not applicable relevant important crucial. Important and crucial requirements should be explained as much as possible, with an indication as to their backgrounds. At this stage, those backgrounds are more relevant than any attempt to quantify the requirements. For the most crucial quality requirements one could already suggest some engineering actions in the display of alternatives, accompanied by a cost/benefit overview. Of course the suggested actions should fit the information strategy. For an ordinary application system this implies that the freedom of choice is limited to the functional (F) and technical (T) architecttiral layers of Figure 4.

System Design

In the system design phase, quality requirements are translated into engineering actions, in the course of which the requirements may be adjusted (while preserving conformity of the adjusted quality requirements to the rough requirements in the definition study). The engineering actions should also respect the conditions set by the information strategy. This translation is an iterative process between quality requirements and engineering actions that finally results in a three-part product supplementing the unctions s~cification: Quality requirements are detailed in mutual relationship down to the attribute level. Some requirements may be fo~ula~ now in measurable terms; for other quality requirements the acceptance criterion will be whether sufficient engineering actions have been taken to cover the requirement. Qua&y engineering actions are specified. The engineering actions that are necessary and sufficient to cover the quality requirements are specified for all layers in the structure of the information provision function (Figure 4) in mutual relationship. In practice, the s~ification of the quality actions will intertwine with Ihe functional specification; the designer should add a separate index of all the quality engineering actions specified in order to keep good overview. The relation between quality requirements and engi-

209

neering actions is essentially a many-to-many relationship; therefore a cross-reference is necessary to document the translation from the product quality requirements to the specification of engineering actions within the product architecture. Figure 6 gives a rough and general overview of the possible relations according to the model of Deutsch and Willis [ 121. It also shows that the engineering actions needed Coobtain quality on some aspect, e.g., reliability (III. l), may hurt another aspect, e.g. economy (111.3~).Note that the relations in a specific situation for a specific information system may differ from the general ones of Figure 6. As a consequence, the systems architect has to reexamine for every information system which set of engineering actions forms the best solution for covering the quality requirements of that information system. Detailed System Design In the detailed system design phase, the requirements recede in favor of the specified engineering actions. As we have seen, most quality requirements have been translated in the system design to engineering actions, which are no longer distinguished from the other parts of the detailed specification. Sometimes those engineering actions may even take the shape of separate supportive subsystems, such as a security shell, dialogue monitor, and so on. However, it remains necessary that the designer understand the original requirements and remain conscious of the purpose of the engineering actions he or she is elaborating, so that he or she may give feedback on the quality requirements when complications become apparent. Implementation In the implementation phase the quality engineering actions are implemented, which means that the desired characteristics are built into the information system. The system test compares the info~ation system with the detailed design and for that reason is concerned primarily with the specified engineering actions. It is only in the acceptance test that the requirements become explicit again. In this activity, different departments will measure the characteristics of the information system on behalf of the client and compare them with the functional specification and the quality requirements. These departments are the users, who examine the functionality and the general efficiency and effectiveness of the information system (quality aspects III.3 and 111.4), with emphasis on the attributes of speed and user-friendliness;

210

l

l

l

G. P. A. J. Delen and D. B. B. Rijsenbrij

J. SYSTEMS SOFTWARE 1992; 17:205-217

the computer center, which examines the continuity (aspect 111.2)and the machine efficiency, focusing on the (machine-)economy (attribute 111.3~)of the information system;

ronment, with tools for reproduction of test input, for dialogue simulation, output comparison, and so on, as an investment in economical execution of the extra testing effort.

the application management group, who examine the static aspects of the information system (dimension II): flexibility, maintainability, and so on;

Execute test scenarios that approach realistic production circumstances in volume and duration. The best way to do this is to have the new information system run shadow operation for some time, while the old information system is still in use.

the internal accountant, who examines the correctness, completeness, authorization, and timeliness of the information provision function (quality aspect III. 1).

Measure the testing process itself: how much time does it take to test specific parts of the info~ation system? From this measurement statistical data can be obtained that give the value of some attributes. The most trivial example is the testability attribute (11.3).

These departments should be aware that the measurement of quality characteristics requires extra effort and, therefore, additional budget above the budget for an acceptance test on functionality only. If they are not prepared to spend that extra effort, it is useless to state extra quality requirements because there will be no proof that the extra quality is actually implemented. To measure the characteristics involved, some (if not all) of the following additional efforts may be necessary: l

l

Organize a mockup department for users where the manual procedures may be tested in

Extend the test and inspection program (as a part of the project plan) with extra test scenarios. Organize and integrated and independent test envi-

asp*cts areas 4)

Enginmmring (see figure

of

produet

II static 1234567

quality

Operational

02

User

03

Hanual

organiz.

organization procedures

Pl

P~OCL?BB

F2

Functional

model

F3

History

Tl

Ueer

T2

Technical

T3

Standardization

security

III dynamic 4

T4

Decentralization

T5

Hodularization

O

Oata

environmeni

operational

PI

Physical

P2

Housing

Legenda:

.+..++. . . . . . . . . . .

. . . .++ ++. -.

environm

security

+

The

.

.

..--.

..+-+. .

.

.

. . . . . . . .++..+.

+.+-++ +. . .

.

.

++..+..

**

* -

.++. . *. . ..++.+

. . . . . +* + + .

. . . . . * . . . . , . . .

++ * . . . . +. +

have

poeitiva

II

have

little

II

have

negative

++

effect effect effect

-

-

on

-

+

*

actions

+ +

.

.

.

IV information It/m4 5 N.A.

.

.*.

.

2)

+

.

.+.+++.

r..

infrastructure

I1 Development 12/5

++ + + . f ++. . . . +. . . +.

+. . . . . . +.

security

Ii'\ c d&a

. . . . . . . * . . . . . . . . . . I . .

1

interface

figure

12 a&b

01

(we

-

the

ing actions and aspects of product quality (normative example).

. . +

quality I, rt

Figure 6. Relation between quality engineer-

aspect

Information

J. SYSTEMS SOFTWARE 1992; 17:205-217

Systems Quality

211

tion on the flexibility and maintainability of the system (it is recommended that this kind of measurement continue in the operational stage of the information system).

how to state the requirements of the quality attribute in the specification document in such a way that they can be verified. This is closely related to the way of measuring the characteristic later on;

At some point one reaches an economic limit to direct measurement by testing. For the characteristics not yet completely measurable, this implies that the client has to revert to examination of the actions which have been taken to cover the requirements.

an overview of the most relevant engineering actions. Because the same actions may recur with different quality attributes, the actions are not elaborated here, but reference is made to the second part of the guide, which describes all the quality engineering actions;

Installation

the unit in which the characteristic is expressed, for example, man hours, function points, in hours or as a percentage;

During installation there will be no more change in product quality. In installation as a process, however, the client should instruct and inform the end users so that the information system will be effectively used. This is because the ultimate effectiveness of an information system depends as much on the quality of the information system itself as on the degree of acceptance by the end users.

in what way and to what extent the characteristic may be measured. We distinguish the following standard situations:

Explicit direct measurements.

The attribute may be measured in the system or acceptance test using direct test input. This applies, for example, to speed (attribute 111.3a).

Implicit direct measurement. Operation

and Control

Some characteristics (e.g., maintainability and portability) will become apparent in this stage. It makes good sense to carry out a systems evaluation after the first year of operation, if only to extend the understanding of the relationships between quality requirements and actions, for the benefit of information systems to be developed afterwards. The conclusions of such an evaluation might also lead to an adjustment of the information strategy.

4. PRACTICAL APPLICATION BY A SOFTWARE HOUSE: THE “GUIDE ON PRODUCT QUALITY”

by Quality

measurement. The attribute may only be measured directly after the information system has been in operation for some time. During the test stage, only an indirect measurement can examine the specified quality engineering actions. This applies to attributes like portability or continuity.

In practical situations one often finds, depending on the circumstances, a combination of the situations described, as in the example shown in Appendix A. of Quality

Engineering

Actions

Appendix B shows the description of the technical security actions (engineering area T2 from Figure 4), which are referred from the restorability attribute. For every type of engineering action, the positive, negative, and (more or less) neutral effects on the quality attributes (indicated with the symbols + , -/- and o) have been summed up, in accordance with the first part of the guide. These indications are general; in specific situations the effects might be a bit different.

Attribute

Appendix A shows the description of attribute III2c, “restorability.” The example shows that the following items are described for every attribute: l

Indirect

Description

To apply this approach efficiently, one needs a comprehensive list containing all (or most) types of applicable engineering actions and their effects on the quality attributes, and an overview of the measurability by attribute. One such list is the “Guide on Product Quality” [13]. It consists of two parts: 1) a description by quality attribute, and 2) a description of quality engineering actions.

Description

The attribute may be measured via its processes, e.g., the test process, the problem report procedure, and so on. The most trivial example is the testability itself (aspect 11.3).

the definition (Appendix all attributes);

C shows the definitions

of

5. EXPERIENCES FROM PRACTICE This guide on product following purposes:

quality

can be used

for the

1. as a directive to specify the quality requirements an information system;

on

212

G. P. A. 3. Delen and D. B. B. Rijsenbrij

J. SYSTEMS SOFTWARE 1992; 1?:205-217

2. as a checklist for (product) auditing; 3. as an aid to organizing an acceptance test.

Specification

of Quality Requirements

For the specification of quality requirements one may choose between a “hard” approach, in which the software house assumes product responsibility, and a “soft” approach, in which the software house only assumes an effort responsibility. Product responsibility arises when quality requirements are formulated in terms of numerical values of the quality attributes. Most software houses these days still find it hard to estimate the cost of meeting such quantified requirements, and besides they have too little influence on environmental factors to be able to accept product responsibility. For that reason, requirements are formulated in terms of effort responsibility. This implies that one agrees on a selected set of quality attributes that are to be emphasized, a set of engineering actions designed to achieve good quality for those attributes, and the amount of effort to be spent on those actions. Of course many variations of these two approaches are possible.

Checklist for (Product) Auditing The guide’s description of quality attributes and engineering actions can be used as a checklist when performing an audit on the quality of tire deliverables of system development. This is the “product audit“ described by Rij~nbrij [4]. When elaborating this approach to the engineering and measurement of product quality, a striking resemblance is apparent with the manner in which professional EDP auditors examine the information provision function in large organizations [14, 151.

Organization

for their explanation of the 8pprO8Ch and the tools of EDP auditors, and our colleagues J. J. P. van H&en, H. J. Kouwenhoven, and G. Vlasblom for their contribution to the compilation of the “Guide on Product Quality.”

of the Acceptance

Test

By combining the descriptions of measurability by attribute for all those attributes which the client wishes to emphasize, the client may at an early stage gain insight into all those things needed for organizing the acceptance test so that it can test the qudity requirements. This will help the client estimate the effort required and plan the acceptance test. The description of the acceptance test in Section 3 indicates some of the things to be expected here.

REFERENCES’ 1. IS0 9001, Quality Systems-M~el

for Quality Assurance in D~sign/Development, Pr~uction, Ins~llation, and Servicing, Internation~ Organization for Standardization, 1987. 2. IS0 DIS 9000-3, Guidelines for the Application of IS0 9001 to the Development, Supply, and Maintenance of Software, International Organization for Standardization, 1990. 3. D. B. B. Rijsenbrij and B. J. Helders, Modern Information Policy, CGS Technical Newsletter 5, 1988. 4. D. B. B. Rijsenbrij, A Quality System for Software Development (An Implementation Model of IS0 90011, CGS Systems review, 1989. 5. G. P. A. J. Delen, and D. B. 8. Rijsenbrij, Quality attributes of EDP projects and info~ation systems, CGS Technical Newsletter 7 (1989). 6. El. W. Boehm, Characteristics of Software Quality, North Holland, 1978. 7. E. Veldhuizen, Kwaliteit van informatiesystemen, in Kwaliteit en kwaliteitszorg van moderne informatiesystemen, Erasmus University, Rotterdam, 1986 (in Dutch). 8. J. Verhaeven, Kwaliteitsbeheer van informatiesystemen, Beleidsinformatietijdschrift 13, Leuven, 1987 (in Dutch). International Organiza9. IS0 8402, Quality-Vocabulary, tion for Standardization, 1987. 10. R. P. De Moe1 and J. J. P. Van Hulzen, De weg van eisen naar eigenschap~n van info~atievoorz~ening, Informatie 30-2 (1988) (in Dutch). 11. W. S. Turner, R. P. Langerhorst SDM: System Development Methodology, Cap Gemini Publishing, 1989. 12. M. S. Deutsch and R. R. Willis, Software Quality Engineering, Prentice-Hall, Englewood Cliffs, New Jersey, 1988. 13. G. P. A. J. Delen, H. J. Kouwenhoven, and D. B. B. Rijsenbrij, Kwaliteit van produkten (Guide on Product Quality), Cap Gemini Publishing, Rijswijk, 1991 (in Dutch). 14. J. A. Saers, Risico-analyse en de EDP-auditor, in Automat~~ering onder ~ontrole, Kluwer/Moret EDP audit (1989) (in Dutch). 15. P. L. A. M. van Kessel, EDP-audit van informatiesystemen, in Automatisering onder controle, Kluwer/Moret EDP audit (in Dutch). 16. D. B. B. Rijsenbrij and A. H. Bauer, Project Diagnosis, a Proper Start is Half the Battle, CGS Systems review, 1990.

ACKNOWLEDGMENTS We thank J. A. Saers and P. L. A. M. van Kessel from Moret & Limper9 aCCOUnt8ntS (part Of Arthur Young intern8tjon81)

’ The internal publications of the CGS (Gemini Sogeti group) may be obtained directly from the authors.

x6SMRAELLITY

and

r@uuirements

information

as

as

supply

fast

(MTTR) and continuity,

after

repair

preparation Technical security

*

beat

backup-

and

engineering

ppO3 a fact

(eection

guWan+ee

recovery-procedures

to

fire-brigade area oection

action

of a company overview by

or

MTTR

consists

of

the

time

needed

far

fHTTR)

the

maximum

time

of

medeUrement for the restorability.

time

the

the

PQO3

solving

the

disturbance

nain-

action

(the

is another

important

unit

of

again mean

repair

hours,

T2.5)

is the

databane

on the II.2

provision those

@tart up the information processing (the 'recovery-time'). Beaides the

interruption

time) and the time needed after that to from the point where it we.e interrupted

The

in

eubeyetem.

Restore

reports

recovery,

of

ie dependent see attribute

inquiries

Time To Restore (IT'L'R), this is the inem time, expressed in during which the information supply is down after e disturbance.

sirri-t. The HeM

of

known

maintenance a comprehensive

The

for

implementation

See

keeping ready a backup machine Physical security actions (P2)

*

(D)

repair eystern,

unforeseen

use of utilitiee for analyeie and roorqanization in the oparational environment (12 t/m IS)

Actions

infrastructure

*

data

Actions

*

the

To

each

Time far

layer of the information for repairability in all

('recovery')

personnel

the time it takes for technical tainability of the information

of utilitiea for actions (T2)

instruction plan for backup FunCtiOnal security actions (F2)

*

in

maximum

separately

the

actions to be able to find and repair the cause possible ('repairability') and actions to start up

Mean Time To Restore other attributes of

the

Because disturbances may occur in every function, one has to take engineering actions area*. we give one example for every layer: * organizational actions (01, 02, 03)

the

the the

1991-08-30

QA/PQO2.30

the information system after e disturbdnce.

charactixristiceby attribute

fall in two claeees:

a disturbance

again

of

Q-8 The actions

One e.pccifies relation with

gL?ecificationof

The ease and speed of restoring

E4Lfinition

XIX.ZC

: Requirements

SECTION

QUALITY

: PRODUCT

ASSUL%NCE

: QUALITY

VOLUME

GUIDE

: Requirementa and

QUALITY

: PRODUCT

ASSURANCE

[I 31

: QUALITY

Description

characterietics

by

attribute

continue

(typea

to

cover

the

restorability.

duration of the shadow operation has to revert to examination of

taken

and one

enough

of)

have

occurred

to

bane

regietrating the shadow-operation

have to be scaled down the engineerrng actions,

for other reasons, which have been

it volume

1991-08-30

QAjPQO2.31

low rate of interruptions an earlier time. When the

dieturbbncee

upon. Only in case of a very stop the shadow production at

until

reliable statistics seems justified to

should

Measurability The HTTR may be measured by running shadow operation while In principle the restoration-time after every disturbance.

SECTION

:UIDE

VOLUME

APPENDIX A. Example Quality Attribute

E

TECENICN, SECURITY ACTIONS to

3:

+

+

Effects:

+

documcante

the

the

or

proceseae.

stores

could

a manual

ths

mutual

(attributes

III.la

and

b)

procedure.

of

and

of

can

of the data

coneietency

signaling of deviations. the correctness and completeness

of

authorization

02.4)

IIL.3a

type

of the involved more than eny action

(attribute

(eee

ordered the combination

data/documents

have which

certain

friendlinees

checking

to

u#er

procedure

stores

periodic

data

for

stores and the Helps to control

programe

and

compared

speed

authorization

111.3b) when

Raises

manual

Checking

of

which

that combination specifies,

Raises the authorizedneea and verifiability proceseee (attribute 111.1~ and IV.5) much

authorize

development

tvoe

must

the prnlanent data

The

Action

Effecta:

persons

only after all persona of a given system to do so. A protected table

syetem

by

be proceseed information

Electronic authorization the automated information

Enfoceement

Rction true 2:

iction Woe 1: Acceee control Phe denial of access to certain data and/or information funetione and/or #orkstatione to pereons who are not authorized. Phe elaboration of this action type implies that all ueere have to check in with rheir identification and paesword, before entering the information eyatem. Then rhe information system consults come tablea to decide which information functi3"s and 80 on are accessible to that user. The least acceeeible functions of the information eystem should be the functions which control the 'authorization :ablea' and the 'paseword tablee'; these functions are raetricted to the 3ecurity officers. It is recommended to place the access control in a separate %uppartive subsystem, which comptiee control function6 for the tables and xccesa-control modules (see aleo TS Hodularitation'). The complexity of such a subeyetem will depend on the complexity of the acceae rules; ae long aa the requirements are not extreme, one may fairly well use package software, like for axample RACF. Raiees the authorizedneae and verifiability (attribute 111.1~ Effecte: + resp. IV.5) -/Hurts the epeed and economy (attribute III.3a and c) of the automated part of the information eystx?m.

meant

1991-08-30

Lhis category encompasees a wide range of actions, which are primarily LBBWO the reliability and continuity of the information prOceeSing.

r2

actions

tvoe

4:

Transaction

of

consistent

state

to

another.

0

+

Effects:

the

of

0

-/-

In terme

of

be

the

quality

cannot

transfer

which

which

data

disturbances,

which

involve

only

one

or

e few

trans-

of

the

A cheap DBMS.

action

aesluming

use

can

be

the

type

A cheap

of

action.

facilities of the DBMS.

such.

prevent

coherent backupe, unless

assuming

uee

can

provisions that

additional

be

to

of the

made made

are

provi24 hour6 to make

transactiona, if need should be. premise for‘ getting the information

for:

facilities

programs

of

the data stores backup copies

and

made

sion function resltorable (attribute 111.2~) The information ayatem cannot be available 7 daye of every week, because it ehould be frozen periodically

of all logged is a neceeeary

saving of a coherent eet of copies of all transaction8 starting from the last

manual procedures

that

This raiaee etrangly the rabuetnese of the information system (attribute 111.2b).

of small actions.

reprocessing This +

logging

the periodic

marked. in the data.

Tcaneactione

1991-08-30

QAjPQO3.19

attributes: it raises the correctness of the data processing and helps to control the completenese (attribute III.la and b) Aewres that the information processing can Continue in spite

Sackuoand recoverv-svstem pction tvoe 5: A backupand recovery system consists of

Effects:

one

actions

and rollback into transactions.

completely are 'rolled back' and Prevents inconsistencies +

from

proceesed

stores

[I 31

engineering

nrotection

quality

Decomposition of the dataproceasing

Rction

: Catalogus

SECTION

of quality

engineering

: catalogue

;ECTION

Actions

ASSURANCE

: PRODUCT QUALITY

QUALITY

:

QA/PQ03.18 WIDE

QUALITY ASSURANCE VOLUHE

Engineering

: PRODUCT QUALITY

of Quality

:

Description

XJIDE

B. Example

fOLUt4E

APPENDIX

Information Systems Quality APPENDIX Attributes

C. Definition

J. SYSTEMS SOFTWARE 1992; 17:205-217

of Quality Aspects and

In this description we follow the structure and numbering of the quality tree shown in Figure 2. Dimension I: The Development

Process

The quality of the development process depends on the quality of the development organization as well as on the contribution by the client’s organization, so this dimension is divided into IA.

contribution of the developers

IB.

contribution of the client’s organization and the users

The type of contract determines which of these is most important. In a fixed price/fixed time/fixed quality project, the emphasis falls on the quality of the developer, while in the case “body shopping” by the software house, much more is expected from the client’s organization. It is never possible, however, to develop a good info~ation system without a subs~ntial contribution from the users. For definitions of the 2 x 5 = 10 aspects of process quality, we refer the reader to Delen and Rijsenbrij [5]. Dimension II: The STATIC Properties of the Information System

The static quality aspects of the information system itself are most relevant to the developers and the maintenance and control crews. All aspects refer to the ease of adapting the system to changing demands from its environment. They are treated here in order of increasing seriousness of the adaptation. 11.1 Flexibility: the degree to which the user may make extensions to or variations on the information system, without adapting the programs. In other words, this is the extent of the changes the user control organization may execute without being dependent on the EDP department for maintenance. II.2 Maintainability: the ease of adapting the programs by EDP professionais to new demands of the user (perfective maintenance), as well as to restore bugs (corrective maintenance). 11.3 Testability: the ease and speed of testing the ~nctionali~ and performance of the system (and again after each adaptation). 11.4 Portability: the ease of transferring the infor-

215

mation system from one specific hardware and software environment to another. IISa External connectivity: the ease of realizing interfaces with other info~ation systems. IISb Internal connectivity: the quality of the interfaces between the various parts of the information system, and the ease of adapting them. 11.6 Reusability: the degree to which parts of the information system, or its design, may be used again for the development of other applications. II.7 Fitness of the infrastructure: the fitness of the hardware, the datacom network, the system software, and the DBMS for the application concerned, and the degree to which these infrastructure elements conform to each other.

Dimension Ill: The Functioning System

of the Information

The dynamic quality aspects of the information system are important for the user of the system. We follow the aspect list of the NIVRA (the Dutch organization of register accountants). III.1 Reliability of the information provision function: the reasonable certainty that the processing of the data is performed correctly, completely, by authorized persons, and in a timely manner. The total reliability of an info~ation function is the product of the reliability of: l

the manual collecting and preparation of data

l

the automated data processing

l

the manual postprocessing of the data

in which it should be realized that the manual steps are the most vulnerable. The definition of reliability already contains the four attributes, which are described below. III.la Correctness: the degree to which the system processes the input stream (including mutations) correctly according to the specifications into consistent data collections, even if one tries intentionally to have the system do something different. IH.l& Completeness: the certainty that the system processes all input and mutations completely, so that no data is missing or repeated in the data collections.

216

J. SYSTEMS SOFTWARE 1992; 17:205-217

IZI.Zc Authorization: the degree to which it can be guaranteed that the data and the coding can be changed or referenced only by authorized persons. ZZZ.ld Timeliness: the degree to which the information becomes available in time to take the actions and decisions which the information was meant to support. By this definition, the norm for timeliness is completely dependent on the process, which is supported by the information supply. It is evident that the timeliness requirement for a flight reservation system is an order of magnitude different from the requirement for a bookkeeping application. III.2 Continuity of the information supply: the reasonable certainty that the data processing is continuous and undisturbed, or in case of serious disturbances, is resumed within a reasonable period of time. Continuity is divided into attributes in order of seriousness of the disturbance. ZZZ.2a Uninterruptedness: the degree to which the data processing remains free of disturbances. 111.26 Robustness: the degree to which normal data processing can continue in spite of a disturbance. 111.2~ Restorability: the ease and speed of restoring the information supply after a disturbance. ZZZ.2d Degradation possibility: the ease of continuing the main line of information supply when part of it has broken down. One speaks about “graceful degradation” when, during calamities, the system can fall back stepwise on ever simpler forms of information supply (the so-called emergency procedures) until, in the worst case, only manual administration remains. ZZZ.2eDiversion possibility: the ease of transferring (part of) the information supply to another location. III.3 Efficiency of the information supply: the ease with which the system supplies the information (considered independently from the relevance of the information). ZZZ.3a Speed: the speed of processing transactions. The speed of interactive processing is divided into the internal speed and the total speed. The internal speed can be measured as the mean response time, which is the mean period of time between the user sending a question or command screen and receiving an answer screen from the automated system. More interesting than the internal speed is the total speed, which

G. P. A. J. Delen and D. B. B. Rijsenbrij is the total time needed by the automated system and the user together to process a transaction completely. This time is composed of 1) the time needed by the user to formulate a command or question to the system; 2) the system response time; and 3) the time the user needs to understand the system’s answer and to react accordingly. It is evident that the time needed by the user depends strongly on the friendliness (attribute 111.3b) of the user interface. The speed of batch processing is composed only of the internal speed and can be measured as the batch turnaround time. ZZZ.3b User friendliness: the ease of communication with the automated system for the end users. The effort of communication with the system consists of a one-time effort-the learning time, and a permanent effort-the time which is spend at every usage to understand the system. 111.3~ Economy: the ratio between the performance of the system (to be expressed in the transaction volume and the total speed) and the amount of resources consumed, such as CPU cycles, IO time, storage capacity, man hours, and so on. ZZZ.3d Match with manual procedures: the degree to which the use of the automated information system fits well in the manual administration of the business process. ZZZ.3e Workability of the manual procedures: the workability of the manual procedures themselves, as far as they belong to the information provision function. III.4 Effectiviness of the information provision function: the degree to which the information provision contributes to achieving the company’s business goals, as recognized and selected in the information strategy. An effective information system results in greater efficiency of the business processes it supports. ZZZ.4a Coverage of business processes: the number of the business processes that are supported by the information provision compared to the list of processes selected in the system definition, and weighted to the frequency and importance of the processes. ZZZ.4bAvailability: the degree to which the information supply is available for every user when and where he or she needs it. 111.4~ Usability: the degree to which the information supply is tuned to the user organization and to the

Information Systems Quality profile of the intended end users. It happens sometimes that information systems cannot be installed successfully because they are too difficult for the users, Infamous in this respect are systems using metaconcepts, which in themselves are the ideal solution for high flexibility requirements (see attribute II.l), but at the same time surpass the understanding of the end users by an order of magnitude. 111.4d Decision support: the value of the information supply as background and foundation for policy and decision making. This attribute is preeminently important for decision support systems and management information systems. Z114e End-user support: the degree to which the information system takes over routine jobs so that the user’s creativity may be directed toward more important aspects of the job. Dimension IV: The Value of the Information Provided for the Company

The information provided by the information system is generally spoken of as a projection of some aspects of the real world. The value of that projection for a company is determined by I the relevance of the aspects selected for projection l

the selection made when defining the information system

J. SYSTEMS SOFTWARE 1992: 17:205-217

l

the actual reliability of the info~ation function (aspect III. 1)

217 provision

IV.1 Correctness: the degree to which the information provided accurately projects the real world. IV.2 Completeness: the degree to which the information provided gives a complete projection of the defined aspects of the real world. Both the lack of information and redundant information (like variations in the spelling of names) are manifestations of incompleteness. In combination with the IV.1, the question here is whether the information projects “the truth, the whole truth, and nothing but the truth.” IV.3 Currency: the degree to which the information projects the real world as it was at the time the information was produced. IV.4 Accuracy: the degree of detail of the information provided. Requirements on accuracy and currency (considered as accuracy in time) make no sense unless correctness and completeness can be taken for granted. The norm for accuracy should be related to the goal of the information supply. IV.5 Verifiability: the ease of verifying the correctness, completeness, and autho~zation of the information, and of tracing and reconstructing the various steps of the data processing.