12 SELECTION OF QUALITY CHARACTERISTICS IN PROJECT PROGRAMS

Lecture



12.1. Principles for choosing quality characteristics in software projects

The description in ISO 9126: 1–4 of the quality characteristics of software does not contain recommendations and methodologies for choosing their values ​​in the requirements for specific projects. First of all, it is necessary to establish rational ranges of measures and scales for each characteristic and its attributes, which can be used as primary constraints when choosing their values ​​for real projects. Next, the processes of selecting, establishing and presenting in the specifications the requirements for the attributes of each quality characteristic should be developed. These requirements should take into account the real limitations of the resources available to ensure the life cycle of the substation. The resources of these processes and the attributes of the quality characteristics below, as far as possible, are reduced to the laboriousness and duration of their implementation, as well as to the corresponding influence of these parameters in the functional suitability.

The improvement of each quality characteristic requires some costs (labor intensity, finances, time), which to some extent affect the main quality characteristic - functional suitability. When choosing specific measures and scales of constructive characteristics of quality, one should take into account the possible costs of their achievement and the resulting increase in functional suitability, preferably in comparable economic units, in the same measures and scales. This, even a qualitative comparison of effect and cost, makes it possible to avoid many unprofitable increases in the requirements for individual

342

12.1. Principles for choosing quality characteristics in software projects

constructive characteristics of quality that do not affect the adequate improvement of PS functions. Therefore, for each project it is necessary to rank the characteristics and their attributes and to highlight, first of all, those that can most improve the functional suitability for specific purposes. Thus, in the system analysis, the formation of technical specifications and specifications of requirements, there are two classes of optimization problems:

  • allocation of costs for improving individual, constructive characteristics of PS in order to achieve its maximum or sufficiently high functional suitability;

  • determination of the optimal or allowable costs for improving each structural characteristic of the substation, providing an adequate or sufficiently substantial increase in the quality of functioning.

The solution of these tasks should be aimed at ensuring a sufficiently high functional suitability of PS by a balanced improvement of other quality characteristics in conditions of limited resources in the LC. To do this, in the process of system analysis when preparing a technical task and requirements of specifications, the values, required attributes and sub-characteristics of quality should be checked according to the degree of their influence on functional suitability. It is reasonable to reduce unnecessarily high requirements for individual quality attributes that require the implementation of large additional labor and computing resources, if they have little effect on the basic, functional characteristics of PS. Thus, the limited resources of labor-intensiveness and duration of the life cycle stages of a PS should be distributed according to the processes of improvement of individual characteristics and quality attributes, taking into account their impact on enhancing functional fitness.

Strictly formalized solution of these problems is impossible in most cases, however, a qualitative system analysis can help to identify the main trends of change and interrelations of the values ​​of the characteristics. Most simply, rational values ​​of standardized characteristics or their nominal property categories for certain PS classes can be established. In determining these boundaries, one should take into account the correlation both between the attributes of certain characteristics and between different characteristics. For example, the reliability of the PS at high loads and overloads

343

Lecture 12. Selection of quality characteristics in software projects

may strongly depend on the time efficiency of the use of computer performance. The utilization of computer resources may limit the maintainability and variability of programs, and both must be taken into account when determining the requirements for the characteristics of specific PS projects.

After the initial selection of the quality characteristics of the software, it is necessary to determine the economic efficiency and feasibility of the software in accordance with the requirements of the quality contract in the context of a real limitation of the economic resources available for the entire life cycle of the program package. The achievement of high quality of any products can not be free, this requires a certain amount of resources, which are the greater, the higher the required quality. Many information system projects have suffered and fail due to the lack of a clear understanding of the real financial, labor, time and other resources required for their implementation by the developers and customers in preparing the contract. The general concept - available development resources - includes real financial, time, personnel and hardware constraints, under which conditions the creation and development of a complex set of programs takes place. These factors manifest themselves as additional indicators of product quality and process profitability, which should be considered and optimized in the life cycle of a PS. Two scenarios can be used in selecting and defining requirements for the quality characteristics of a software project.

The first scenario is based on marketing research of the software market and on the desire of the supplier to occupy a sufficiently advantageous position in the market. To do this, it needs to determine the availability of the entire gamut of PSs that are close in purpose and quality, evaluate their economic efficiency, cost and applicability, as well as the possible competitiveness of the intended software product for potential users and their possible number. In addition, it is necessary to evaluate the profitability of the cost of providing the entire life cycle of a new PS and to identify functional and structural characteristics of quality that are able to attract enough mass buyers and justify the costs of the upcoming development. For this, potential buyers-users, before acquiring a PS, usually estimate

344

12.1. Principles for choosing quality characteristics in software projects

niva competitiveness of products on the market by the size of the relationship:

  • the possible economic efficiency (value) of the application and quality of the software product and the ability to satisfy users with their needs while using it;

  • to the cost (price) that users are willing to pay when purchasing and operating this set of programs or a database.

When choosing a product and a supplier, the buyer seeks to maximize this ratio both by searching for PS with the best functions, efficiency and high quality characteristics, as well as by the minimum cost of the product being purchased. In this scenario, when organizing the design, all responsibility for the goals and characteristics of the quality of the project falls on its managers, and marketing analysis specialists in the market for the intended product should play a special role. They should assess the risk of successful promotion of the product being created to the market, the timing and schedule of the stages of the life cycle, the need and sufficiency of resources for the project, as well as the prospects for long-term development, modification and distribution of software versions.

Such projects are usually relatively small in size and in terms of the implementation of the first version, however, they may involve a long life cycle and many modifications to adapt to the needs and environment of users. The rejection of PS implementation options is carried out in terms of effectiveness / cost for users, taking into account competitiveness and market distribution. This scenario of the economic substantiation of PS projects requires specific marketing research of the market for similar products and their quality characteristics. However, this should necessarily take into account the cost of resources for the direct development and maintenance of life cycle substation, and the possible profitability of the project, taking into account the forecast of its life cycle and market distribution. To do this, at the beginning of the design, developers need to predict the costs of creating and the entire life cycle of the PS, which is analyzed in the second scenario.

The second scenario assumes the existence of a specific customer - the consumer of the PS project, which defines the main technical and

345

Lecture 12. Selection of quality characteristics in software projects

economic requirements and quality characteristics. He chooses a competitive vendor-developer, which he evaluates for the opportunity to implement a project with the required quality characteristics, taking into account time constraints, budget and other resources. This is helped by the experience and economic characteristics of previously executed projects of this company, but some projects may not have precedents, and then you have to use the existing statistics in this area. It is assumed that the results of the development are not necessarily subject to wide circulation, may not enter the open market, as a result of which marketing research for such projects is not dominant and usually may not be carried out in advance.

However, for the customer and the developer at the conclusion of the contract, it is necessary to have a sufficiently reliable forecasting and economic justification of the required resources in terms of labor intensity, cost, terms and other characteristics. The opposite of the interests of the supplier and the consumer in assessing the cost and other resources of the project requires a search for a compromise in which the developer does not make a bad bargain, and the customer does not overpay for specific work performed and the entire project. Therefore, both partners are interested in reliable economic forecasting of resource costs for the PS project (see Lecture 5).

The above characteristics (see Lecture 11) of the characteristics and attributes of quality have a different impact on the functional suitability depending on the purpose and functions of the PS, as well as on the subjective views of customers and consumers of the relevant characteristics. Usually, the PS functions have the strongest influence on the requirements for the attributes of the characteristics of security — safety, reliability, efficiency, and practicality. These attributes can be ranked according to the degree of impact on functional suitability depending on the purpose and features of the PS. Specific measures and ranges of scales of these characteristics should be determined depending on their impact on the quality metric in use for the intended purpose of the PS by the main users.

At the same time, the characteristics of maintainability and mobility are relatively weakly related to the purpose and specific functional suitability of the PS. Their measures and scales are determined not so much by the specific functions of the program complex, as by its architecture and

346

12.1. Principles for choosing quality characteristics in software projects

the ability of interfaces to modify and transfer to other operating and hardware platforms. Consumers and evaluators of these characteristics are professionals serving the expansion of functions and the development of the use of PS, which often can not take into account specific functions directly in their activities. Therefore, the quality metric to use for these characteristics takes on a different meaning: it should be used when accompanying and / or transferring programs and data, and not when they are executed and the PS is used for its intended purpose.

Fundamental and technical capabilities and accuracy of implementation and measurement of the values ​​of attributes of quality characteristics for a particular project are always limited in accordance with their content. This determines the rational ranges of the values ​​of each attribute that can be selected for the project PS based on customer requirements, common sense, as well as by analyzing the pilot projects and precedents in the specifications of the requirements of real projects. Within these ranges, it is advisable to determine the real reliability of the assessment and the scale of measures to describe the corresponding attribute.

The processes of selection and establishment of scales and measures for describing the quality characteristics of PS projects can be divided into two stages:

  • preliminary selection, formalization and justification of a set of initial data reflecting the general characteristics of consumers and stages of the life cycle of an PS project, each of which influences the choice of certain characteristics of the quality of a program complex;

  • selection, establishment and approval of specific requirements of the characteristics and attributes of the quality of the project for their subsequent evaluation and application when compared with the implemented requirements of the specifications in the process of qualification tests or certification at certain stages of the PS life cycle.

At the first stage, the entire basic nomenclature of characteristics, sub-characteristics and attributes standardized in ISO should be used . 9126: 1-4. Their descriptions should preferably be prioritized according to the purpose and scope of a particular PS. Next, you need to highlight and rank the priorities of consumers who need certain indicators of the quality of PS taking into account their specialization and professional interests. The wide range of characteristics presented in ISO 9126: 1-4 supports

347

Lecture 12. Selection of quality characteristics in software projects

various requirements from which it is necessary to select and choose those that are necessary from the standpoint of the various consumers of these data (see above table. 6.1).

Selected values ​​of quality characteristics and their attributes should be pre-checked by developers for their feasibility, taking into account the available resources of a particular project and, if necessary, adjusted for the composition and values. As a result, a complete set of the required characteristics, attributes, their measures and quality values ​​for specific consumers in the life cycle of the PS is formed. The results of the analysis and selection of the nomenclature and measures of the quality characteristics of the PS project should be documented in the specifications of requirements, agreed with their customers and approved by the project customer for implementation. The outlined provisions are illustrated below, which provides an example of the selection and formation of requirements for the software quality characteristics of a complex administrative information system.

12.2. An example of the selection and formation of requirements for the quality characteristics of the software

The variety of functions and consumers of software quality characteristics makes it impossible to unify the entire set of requirements for their composition and values ​​for all types of software products. Therefore, it is advisable to limit the analysis of the choice and the formation of requirements on a hypothetical example of PS for some type of systems. The following examples of justification and selection of requirements for the quality characteristics of PS can serve as benchmarks for the analysis and synthesis of similar data in real projects.

As an example, the following is based on a complex administrative system with certain functions and limited conditions of use, with dozens of active user-operators operating in real time according to the client-server scheme. To such a system, there are quite specific and high demands on the diversity and quality of solving functional problems with relatively large economic and computing resources. These requirements below are formed from the perspective of customers and direct users of the software. Analogs of such a system can be considered banking, tax

348

12.2. An example of the selection and formation of requirements for quality characteristics ...

public, customs, and other administrative systems that have sets of diverse functional tasks and intensive real-time input and output information flows. Real-time regulations are easier in them than in control systems for dynamic objects, such as airplanes.

Table 12.1

Example distribution priorities requirements for characteristics qualities software facilities

Characteristic

Subcharacteristics

Priority requirements

Functionality

Functional Suitability Correctness - Correctness Interoperability Security

High high medium high

I Reliability

Completeness

Resistant to defects Recoverability

Availability - Readiness

Low medium high high

Efficiency

Time Efficiency Resource Usability

High middle

Practicality

Comprehensibility

Ease of use

Learnability

Attractiveness

Medium Low Medium Low

Maintainability

Analyzability

Mutability

Testability

Medium Medium Medium

Mobility

Adaptability Easy to install Replaceability

Medium Medium Low

In Standardized ISO 9126: 1-4 PS quality characteristics differ according to the degree of influence on the system efficiency - sic tional suitability of their application for its intended purpose. This is for the PS. For all this, there is no need for additional information. Table 12.1 presents an example of how to make it possible.

349

Lecture 12. Selection of quality characteristics in software projects

administrative options. The greatest priorities, naturally, are allocated to functional suitability and correctness, security, reliability, system and time efficiency. The MS should be taken into account. It can be defined as the remaining subcharacteristics. It can be a guideline.when choosing the limiting values ​​for subcharacteristics and their attributes.

Choice of 'requirements of The for the Measures of quality Characteristics, Naturally, Should the begin with the definition of the Necessary properties and values of a group of indicators directory Reflecting the functional capabilities of the software , the which according to the ISO 9126: 1-4 includes subcharacteristics: functional suitability, correctness, interoperability and security - safety. It was given in Table 11.1 (see Lecture 11). For a specific PSA project

And the selection of The Formation of the 'requirements for functional fitness the STI PS - the will most by important task of the initial stages directory of design and development lifecycle of all Subsequent. For example, this is not a problem. It is given in the lectures of the lecturing 11, where it can be used for the data. OTHER Standardized PS the All Characteristics, to varying degrees, Should help the ensure the tactical Goals of the Chosen design 'requirements and the Achievement of the Strategic Goals. functional suitability of a software product.

You need to be able to

350

12.2. Annotation of quality characteristics

All software components and software in general. The first requirement is to perform full traceability from top to bottom of the implementation of the requirements of the technical specification and specification on the PS with consistent detailing of descriptions and verification of software components up to the texts and object code of programs. The second requirement is to choose the degree and strategy of coverage of software components with tests that are sufficient for the PS to function with the required quality and accuracy of the results, with real limitations on testing resources. The implementation of these requirements should ensure the required functionality. It should be supported by developers and independent experts in the life cycle processes of the components of the PS, develop and summarize the composition and content of internal and external metrics, as well as metrics in use.

Characterization Requirements Interoperabilitycan be quite fully formalized and approved in the design process, with some clarifications at subsequent stages. They are based on normative documents on open systems interfaces or de facto standards selected for a specific project. When selecting elements of software components that ensure the ability to interact in a particular PS project, one should take into account the amount of computational resources necessary for their implementation. The more fully the international standards of open systems are used, the greater is the interoperability ability with various reusable software components, however, the computational resources required are high. When formalizing interfaces, it is also important to take into account the prospects of long-term maintenance of multiple versions of PS,the ability to reuse their components and transfer to different platforms. Unification of interfaces for interaction with the internal, external environment and with users should be reflected in special sections of the technological documentation and should be able to be checked by the customer and / or experts on the documents and texts of programs without their execution.

And Formation of the Selection 'requirements for the Characterization of security - security Should the BE based on the Needs of an effective is safe and implementation part of the purpose and functions The of the PS. Design

351

Lecture 12. Selection of quality characteristics in software projects

It has been established that it has been established. In the case of the client, he chooses to make his choice. A result As, the formed requirements should provide equal protection against real threats to the use of PS and implementation of the necessary measures to control and confirm the integrity and quality characteristics of the functional suitability of the program complex in the face of threats.

Table 12.2

Sample requirements to quantitative characteristics of quality software tools

| Quality characteristics

Measure

Required value

Reliability

Completion:

- MTBF in the absence of a restart.

Clock

ten

Resilience:

- time between failures;

Clock

50

- relative resources for ensuring reliability and

start.

%

ten

Recoverability:

- recovery time.

Minutes

five

Availability - Readiness:

- relative time of efficient operation.

Probability

0.998

Efficiency

Temporary effectiveness:

- response time - getting results on a typical task

;

Seconds

five

- throughput - the number of typical tasks,

The number in mi

filled in unit time.

chickpea

20

Resource Usability:

- the relative use of computer resources

with normal software operation

Probability

0.8

Tactical target selection constructive characteristics qual -OPERATION standard ISO 9126: 1-4 sequentially addressed and are illustrated by Tables 12.2 and 12.3. An example of the requirements for the basic quantitative characteristics of the quality of PS complex administrative

352

12.2. An example of the selection and formation of requirements for quality characteristics ...

system presented in table 12.2. All measures and scales for attributes of characteristics are selected in accordance with their content from table 11.2 (lecture 11). Requirements for attributes attributes reliabilitycan be selected based on the following factors. In the absence of an automatic restart, due to debugging and in the presence of an administrator controlling the operation of the software, it is possible to consider a valid time between failure of the order of 10 hours. Due to the software and hardware mechanisms of automatic restart, this operating time can be increased approximately 5 times with the appearance of failures, i.e. with 80% of failures, their automatic detection and rapid recovery is possible, as a result of which the time between failures will increase to 50 hours. From experience, it may take about 10% of the system's computing resources to ensure this. It is assumed that for the operational work of users of the administrative system, the permissible duration of interruption of work to fully restore the normal functioning of the system can be no more than 5 minutes.As a result, with such values ​​of reliability attributes, the availability factor — the probability of finding the PS in working condition — will be a fairly high value of 0.998.

Just as in the formation of requirements for correctness, to characterize reliability, setting requirements for the degree of test coverage in the process of debugging the structure of software components and software as a whole is of great importance. The formalization of this characteristic should be established separately from the general quality characteristics for testing at the technological stages of testing and testing. It should be borne in mind that the example takes a very short recovery time due to minor software defects without taking into account the physical destruction of components, which should be supported by duplication of computational tools and highly automated hardware processes to ensure the reliability of the software.

The main requirements for the attributes of the characteristics of the efficiency of the use of computational resources of the system are focused on the most critical indicators of performance and duration of the solution of functional problems. Unlike memory volumes, temporal characteristics are more difficult to establish and measure, and their limitations have a greater effect on the functional fitness of PS. For operational

353

Lecture 12. Selection of quality characteristics in software projects

user experience is important to have a short (several seconds) response time from a computer after receiving a typical task and start solving the required functional task. This time is usually desirable to have within a few (for example, taken five) seconds, although the duration of the full implementation of the task may be much longer. The required throughput of solving functional tasks depends on their content and the number of active users. In the example, it is assumed that ten operators can enter two tasks each per minute, which must be executed in the allotted time without additional delay, which leads to the requirement for the capacity of this MS on the selected computing environment - 20 tasks per minute.

Table 12.3 Example Requirements to quality characteristics

Software

Quality characteristics

Measure

Required value

[ Practicality

Ease of use:

- the average time of entry tasks;

Seconds

ten

- The average response time to the task.

Seconds

five

Studyable:

- the complexity of studying the use of PS;

Man hours

200

- the duration of the study;

Clock

50

- the volume of operational documentation;

Pages

1000

Maintainability

Variability:

- the complexity of the preparation of changes;

Man hours

ten

- the duration of the preparation of changes.

Clock

five

Testability:

- the complexity of testing changes;

Man hours

20

- The duration of the test changes.

Clock

five

Mobility

Adaptability:

- the complexity of adaptation;

Man hours

50

- the duration of adaptation.

Clock

ten

Easy installation:

- the complexity of the installation;

Man hours

ten

- the duration of the installation.

Clock

five

Substitution:

- the complexity of the replacement of components;

Man hours

50

- the duration of the replacement components

Clock

ten

354

12.2. Annotation of quality characteristics

It is possible to make it a matter of course


Comments


To leave a comment
If you have any suggestion, idea, thanks or comment, feel free to write. We really value feedback and are glad to hear your opinion.
To reply

Quality Assurance

Terms: Quality Assurance