< Previous | Contents | Next >

D.6 "Evaluate", "Verification Criteria" and "Ensuring compliance"

This section describes relations, differences, and commonalities between verification, testing, evaluation, and compliance. The following Figure D.6 provides an overview.

Verification criteria are used as input for the development of the test cases or other verification measures that ensures compliance with the requirements. Verification criteria are only used in the context of System Requirements Analysis (SYS.2) and Software Requirements Analysis (SWE.1) processes. Verification aspects which cannot be covered by testing are covered by the verification process (SUP.2).

Criteria for unit verification ensure compliance of the source code with the software detailed design and the non-functional requirements. Possible criteria for unit verification include unit test cases, unit test data, coverage goals and coding standards and coding guidelines, e.g. MISRA. For unit testing, such criteria shall be defined in a unit test specification. This unit test specification may be implemented e.g. as a script in an automated test bench.




image


SYS.2.BP5: Verification criteria


SYS.5.BP2: Compliance

SYS.2

System Requirements Analysis

SYS.5

System Qualification Test

image

image


SWE.1.BP5: Verification criteria


SWE.6.BP2: Compliance

SWE.1

Software Requirements Analysis

SWE.6

Software Qualification Test

image

SYS.4

System Integration and Integration Test

SYS.3

System Architectural Design

SYS.3.BP5: Evaluate


SYS.4.BP3: Compliance



image

image

SWE.5

Software Integration and Integration Test

SWE.2

Software Architectural Design

SWE.2.BP6: Evaluate


SWE.5.BP3: Compliance


image

SWE.3

Software Detailed Design and Unit Construction

image

SWE.4.BP2: Compliance

SWE.4

Software Unit Verification

SUP.2

Verification

SWE.3.BP4: Evaluate SWE.4.BP2: Criteria for unit verification


Figure D.6 — Evaluation, verification criteria and compliance

Evaluation of alternative solutions is required for system and software architectures as well as for software detailed designs. The evaluation has to be done according to defined criteria. Such evaluation criteria may include quality characteristics like modularity, reliability, security, and usability, or results of make-or-buy or reuse analysis. The evaluation result including a rationale for the architecture/design selection has to be recorded.

Compliance with an architectural design means that the specified integration tests are capable of proving that interfaces and relevant interactions between

the software units,

the software items and

the system items

fulfill the specification given by the architectural design.