Vous êtes sur la page 1sur 35

DO Qualification Kit

Simulink Verification and Validation


Test Cases and Procedures
R2015b, September 2015

How to Contact MathWorks


Latest news:

www.mathworks.com

Sales and services:

www.mathworks.com/sales_and_services

User community:

www.mathworks.com/matlabcentral

Technical support:

www.mathworks.com/support/contact_us

Phone:

508-647-7000

The MathWorks, Inc.


3 Apple Hill Drive
Natick, MA 01760-2098
DO Qualification Kit: Simulink Verification and Validation Test Cases and Procedures

COPYRIGHT 20092015 by The MathWorks, Inc.


The software described in this document is furnished under a license agreement. The software may be used or copied only under
the terms of the license agreement. No part of this manual may be photocopied or reproduced in any form without prior written
consent from The MathWorks, Inc.
FEDERAL ACQUISITION: This provision applies to all acquisitions of the Program and Documentation by, for, or through the
federal government of the United States. By accepting delivery of the Program or Documentation, the government hereby agrees
that this software or documentation qualifies as commercial computer software or commercial computer software documentation
as such terms are used or defined in FAR 12.212, DFARS Part 227.72, and DFARS 252.227-7014. Accordingly, the terms and
conditions of this Agreement and only those rights specified in this Agreement, shall pertain to and govern the use, modification,
reproduction, release, performance, display, and disclosure of the Program and Documentation by the federal government (or
other entity acquiring for or through the federal government)and shall supersede any conflicting contractual terms or conditions.
If this License fails to meet the governments needs or is inconsistent in any respect with federal procurement law, the
government agrees to return the Program and Documentation, unused, to The MathWorks, Inc.

Trademarks
MATLAB and Simulink are registered trademarks of The MathWorks, Inc. See www.mathworks.com/trademarks for a
list of additional trademarks. Other product or brand names may be trademarks or registered trademarks of their respective
holders.

Patents
MathWorks products are protected by one or more U.S. patents. Please see www.mathworks.com/patents for more
information.

Revision History
March 2009
September 2009
April 2010
March 2010
September 2010
April 2011
September 2011
March 2012
September 2012
March 2013
September 2013
March 2014
October 2014
March 2015
September 2015

New for Version 1.0 (Applies to Release 2009a)


Revised for Version 1.1 (Applies to Release 2009b)
Rereleased for Version 1.1.1 (Applies to Release 2009bSP1)
Revised for Version 1.2 (Applies to Release 2010a)
Revised for Version 1.3 (Applies to Release 2010b)
Revised for Version 1.4 (Applies to Release 2011a)
Revised for Version 1.5 (Applies to Release 2011b)
Revised for Version 1.6 (Applies to Release 2012a)
Revised for Version 2.0 (Applies to Release 2012b)
Revised for Version 2.1 (Applies to Release 2013a)
Revised for Version 2.2 (Applies to Release 2013b)
Revised for Version 2.3 (Applies to Release 2014a)
Revised for Version 2.4 (Applies to Release 2014b)
Revised for Version 2.5 (Applies to Release 2015a)
Revised for DO Qualification Kit Version 3.0 (Applies to Release 2015b); renamed to Simulink Verification
and Validation Test Cases and Procedures

Contents
1 Introduction ...................................................................................................................................... 1-1
2 Test Cases and Procedures ............................................................................................................... 2-1
2.1 DO178C/DO-331 Checks........................................................................................................ 2-2
2.2 Model Coverage ...................................................................................................................... 2-3
3 Traceability Between Operational Requirements and Test Cases and Procedures ........................... 3-1
3.1 DO-178C/DO-331 Checks ...................................................................................................... 3-2
3.2 Model Coverage ...................................................................................................................... 3-6
4 Executing Test Cases and Procedures .............................................................................................. 4-1
5 Test Results ...................................................................................................................................... 5-1
5.1 DO-178C/DO-331 Checks ...................................................................................................... 5-2
5.1.1
Reviewing Test Results ................................................................................................. 5-2
5.2 Model Coverage ...................................................................................................................... 5-4
5.2.1
Reviewing Test Results ................................................................................................. 5-5

vi

1 Introduction
This document comprises test cases and procedures (Reference DO-330 Sections 10.3.3) for the
following capabilities of the Simulink Verification and Validation verification tool:

DO-178C/DO-331 checks
Model coverage

This document is intended for use in the DO-330 tool qualification process for TQL-5 tools.
See also the DO Qualification Kit User's Guide, R2015b.

1-2

2 Test Cases and Procedures

2.1 DO178C/DO-331 Checks


Requirements-based test cases and procedures have been developed from the DO-178C/DO331 Checks Operational Requirements in the:
Simulink Verification and Validation Tool Operational Requirements
To access the tool operational requirements document, on the MATLAB command line, type
qualkitdo to open the Artifacts Explorer. The document is in Simulink Verification and
Validation.
The test cases exercise DO-178C/DO-331 checks in the Model Advisor and reside in the
Simulink test models identified in DO-178C/DO-331 Checks Traceability Matrix.
The test procedure applies each DO-178C/DO-331 check in the Model Advisor to a subset of the
preceding test models, and resides in the report generator file identified in DO-178C/DO-331
Checks Traceability Matrix.
The test models and report generator file, which verify the DO-178C/DO-331 checks in the
Model Advisor, comprise the Tool Qualification Data (Reference DO-330 Sections 10.3.3 and
10.3.4).
The applicant will:

Review the test cases and procedures for applicability to the project under consideration.
Configure the test cases and procedures in a configuration management system.
Confirm that test reports are generated without errors or warnings.
Confirm that the actual results are the same as the expected results.

2-2

2.2 Model Coverage


Requirements-based test cases and procedures have been developed from the Model Coverage
Operational Requirements in the:
Simulink Verification and Validation Tool Operational Requirements
To access the tool operational requirements document, on the MATLAB command line, type
qualkitdo to open the Artifacts Explorer. The document is in Simulink Verification and
Validation.
The test cases exercise the model coverage capability, and reside in the Simulink test models
identified in Model Coverage Traceability Matrix.
The test procedure applies each model coverage capability to a subset of the preceding test
models, and resides in the report generator file identified in Model Coverage Traceability
Matrix.
The test models and report generator file, which verify the model coverage capability, comprise
the Tool Qualification Data (Reference DO-330 Sections 10.3.3 and 10.3.4).
The applicant will:

Review the test cases and procedures for applicability to the project under consideration.
Configure the test cases and procedures in a configuration management system.
Confirm that test reports are generated without errors or warnings.
Confirm that the actual results are the same as the expected results.

2-3

2-4

3 Traceability Between Operational


Requirements and Test Cases
and Procedures

3.1 DO-178C/DO-331 Checks


The test cases and procedures cover the Tool Operational Requirements for the DO-178C/
DO-331 checks, as shown in the following table.
DO-178C/DO-331 Checks Traceability Matrix
Check Title
(Requirement ID)

Test Case and Procedure


(Test Case ID)

Test Model

Expected
Result

Check safety-related
optimization settings
(DO178C_01)
Check safety-related
diagnostic settings for solvers
(DO178C_02)
Check safety-related
diagnostic settings for sample
time
(DO178C_03)
Check safety-related
diagnostic settings for signal
data
(DO178C_04)
Check safety-related
diagnostic settings for
parameters
(DO178C_05)
Check safety-related
diagnostic settings for data
used for debugging
(DO178C_06)
Check safety-related
diagnostic settings for data
store memory
(DO178C_07)
Check safety-related
diagnostic settings for type
conversions
(DO178C_08)
Check safety-related
diagnostic settings for signal
connectivity
(DO178C_09)

qualkitdo_slvnv_tcp1.rpt

do178c_advisor_pass_test.slx
do178c_advisor_config_test.slx

Pass
Warning

do178c_advisor_pass_test.slx
do178c_advisor_config_test.slx

Pass
Warning

do178c_advisor_pass_test.slx
do178c_advisor_config_test.slx

Pass
Warning

do178c_advisor_pass_test.slx
do178c_advisor_config_test.slx

Pass
Warning

do178c_advisor_pass_test.slx
do178c_advisor_config_test.slx

Pass
Warning

do178c_advisor_pass_test.slx
do178c_advisor_config_test.slx

Pass
Warning

do178c_advisor_pass_test.slx
do178c_advisor_config_test.slx

Pass
Warning

do178c_advisor_pass_test.slx
do178c_advisor_config_test.slx

Pass
Warning

do178c_advisor_pass_test.slx
do178c_advisor_config_test.slx

Pass
Warning

(Test Case 1)
qualkitdo_slvnv_tcp1.rpt

(Test Case 2)
qualkitdo_slvnv_tcp1.rpt

(Test Case 3)

qualkitdo_slvnv_tcp1.rpt

(Test Case 4)

qualkitdo_slvnv_tcp1.rpt

(Test Case 5)

qualkitdo_slvnv_tcp1.rpt

(Test Case 6)

qualkitdo_slvnv_tcp1.rpt

(Test Case 7)

qualkitdo_slvnv_tcp1.rpt

(Test Case 8)

qualkitdo_slvnv_tcp1.rpt

(Test Case 9)

3-2

Check Title
(Requirement ID)

Test Case and Procedure


(Test Case ID)

Test Model

Expected
Result

Check safety-related
diagnostic settings for bus
connectivity
(DO178C_10)
Check safety-related
diagnostic settings that apply
to function-call connectivity
(DO178C_11)
Check safety-related
diagnostic settings for
compatibility
(DO178C_12)
Check safety-related
diagnostic settings for model
referencing
(DO178C_13)
Check safety-related model
referencing settings
(DO178C_14)
Check safety-related code
generation settings
(DO178C_15)
Display model version
information
(DO178C_16)
Check safety-related
diagnostic settings for saving
(DO178C_17)
Check for blocks that do not
link to requirements
(DO178C_18)
Check safety-related
diagnostic settings for model
initialization
(DO178C_19)
Check state machine type of
Stateflow charts
(DO178C_20)
Check Stateflow charts for
ordering of states and
transitions
(DO178C_21)

qualkitdo_slvnv_tcp1.rpt

do178c_advisor_pass_test.slx
do178c_advisor_config_test.slx

Pass
Warning

do178c_advisor_pass_test.slx
do178c_advisor_config_test.slx

Pass
Warning

do178c_advisor_pass_test.slx
do178c_advisor_config_test.slx

Pass
Warning

do178c_advisor_pass_test.slx
do178c_advisor_config_test.slx

Pass
Warning

do178c_advisor_pass_test.slx
do178c_advisor_config_test.slx
do178c_advisor_config_test2.slx

Pass
Warning
Warning
Pass
Warning

(Test Case 10)

qualkitdo_slvnv_tcp1.rpt

(Test Case 11)

qualkitdo_slvnv_tcp1.rpt

(Test Case 12)

qualkitdo_slvnv_tcp1.rpt

(Test Case 13)

qualkitdo_slvnv_tcp1.rpt

(Test Case 14)


qualkitdo_slvnv_tcp1.rpt

(Test Case 15)

do178c_advisor_pass_test.slx
do178c_advisor_config_test.slx

qualkitdo_slvnv_tcp1.rpt

do178c_advisor_blocks_test.slx

Pass

do178c_advisor_pass_test.slx
do178c_advisor_config_test.slx

Pass
Warning

do178c_requirementinfo_pass_
test.slx
do178c_advisor_blocks_test.slx

Pass

(Test Case 16)


qualkitdo_slvnv_tcp1.rpt

(Test Case 17)


qualkitdo_slvnv_tcp1.rpt

(Test Case 18)


qualkitdo_slvnv_tcp1.rpt

(Test Case 19)

qualkitdo_slvnv_tcp1.rpt

(Test Case 20)


qualkitdo_slvnv_tcp1.rpt

(Test Case 21)

do178c_advisor_pass_test.slx
do178c_InitDiagnosticsSet_pass_
test.slx
do178c_advisor_config_test.slx

Warning
Pass
Pass

do178c_hisf_0001_pass_test.slx
do178c_hisf_0001_warn_test.slx

Warning
Pass
Warning

do178c_hisf_0002_pass_test.slx
do178c_hisf_0002_warn_test.slx

Pass
Warning

3-3

Check Title
(Requirement ID)

Test Case and Procedure


(Test Case ID)

Test Model

Expected
Result

Check Stateflow debugging


options (DO178C_22)
Check usage of lookup table
blocks
(DO178C_23)

qualkitdo_slvnv_tcp1.rpt

do178c_hisf_0011_pass_test.slx
do178c_hisf_0011_warn_test.slx

Pass
Warning
Pass

Check Stateflow charts for


uniquely defined data objects
(DO178C_24)
Check usage of Math
Operations blocks
(DO178C_25)

qualkitdo_slvnv_tcp1.rpt

Check usage of Signal


Routing blocks
(DO178C_26)

qualkitdo_slvnv_tcp1.rpt

(Test Case 22)


qualkitdo_slvnv_tcp1.rpt

(Test Case 23)

(Test Case 24)


qualkitdo_slvnv_tcp1.rpt

(Test Case 25)

(Test Case 26)

Check usage of Logic and Bit qualkitdo_slvnv_tcp1.rpt


Operations blocks
(DO178C_27)

(Test Case 27)

Check usage of Ports


and Subsystems blocks
(DO178C_28)

qualkitdo_slvnv_tcp1.rpt

Check for inconsistent vector


indexing methods
(DO178C_29)
Check for blocks not
recommended for C/C++
production code deployment
(DO178C_30)
Check for MATLAB
Function interfaces with
inherited properties
(DO178C_31)
Check MATLAB Function
metrics
(DO178C_32)
Check MATLAB Code
Analyzer messages
(DO178C_33)

qualkitdo_slvnv_tcp1.rpt

(Test Case 28)

(Test Case 29)


qualkitdo_slvnv_tcp1.rpt

(Test Case 30)

qualkitdo_slvnv_tcp1.rpt

(Test Case 31)

qualkitdo_slvnv_tcp1.rpt

(Test Case 32)


qualkitdo_slvnv_tcp1.rpt

(Test Case 33)

do178c_advisor_lookup_table_
pass.slx
do178c_advisor_lookup_table_
Warning
warn.slx
do178c_advisor_sf_uniquedata.slx Pass
do178c_advisor_sf_uniquedata_
Warning
warn.slx
do178c_advisor_math_operations_
pass.slx
do178c_advisor_math_operations_
warn.slx

Pass

do178c_advisor_signal_routing_
pass.slx
do178c_advisor_signal_routing_
warn.slx
do178c_advisor_logic_and_bit_
operations_pass.slx
do178c_advisor_blocks_test.slx
do178c_advisor_logic_and_bit_
operations_warn.slx
do178c_advisor_ports_and_
subsystems_pass.slx
do178c_advisor_blocks_test.slx
do178c_advisor_ports_and_
subsystems_warn.slx
do178c_hisl_0021_pass_test.slx,
do178c_hisl_0021_warn_test.slx

Pass

Warning

Warning
Pass
Warning
Warning
Pass
Warning
Warning
Pass
Warning

do178c_advisor_prodcode_pass_tes Pass
t.slx
Warning
do178c_advisor_prodcode_warn_tes
t.slx
do178c_himl_0002_pass_test.slx
do178c_himl_0002_warn_test.slx

Pass
Warning

do178c_himl_0003_pass_test.slx
do178c_himl_0003_warn_test.slx

Pass
Warning

do178c_himl_0004_pass_test.slx
do178c_himl_0004_warn_test.slx

Pass
Warning

3-4

Check Title
(Requirement ID)

Test Case and Procedure


(Test Case ID)

Test Model

Expected
Result

Check MATLAB code for


global variables
(DO178C_34)
Check for variant blocks with
Generate preprocessor
conditionals active
(DO178C_35)

qualkitdo_slvnv_tcp1.rpt

do178c_himl_0005_pass_test.slx
do178c_himl_0005_warn_test.slx

Pass
Warning

(Test Case 34)


qualkitdo_slvnv_tcp1.rpt

(Test Case 35)

do178c_advisor_variantblock_pass Pass
_test.slx.slx
Warning
do178c_advisor_variantblock_warn
_test.slx

3-5

3.2 Model Coverage


The test cases and procedures cover the Tool Operational Requirements for the model coverage
capability, as shown in the following table.
Model Coverage Traceability Matrix
Model Coverage
Capability
(Requirement ID)

Test Case and Procedure


(Test Case ID)

Test Model

Expected
Result

Cumulative Coverage
(MC_SL_CUMC)

qualkitdo_slvnv_tcp2.rpt

mCumulativeCoverage.slx

Simulink Cyclomatic
Complexity
(MC_SL_CYC)

qualkitdo_slvnv_tcp2.rpt

Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder

(TC_MC_SL_23)

(TC_MC_SL_1)
(TC_MC_SL_2)
(TC_MC_SL_3)
(TC_MC_SL_4)
(TC_MC_SL_5)
(TC_MC_SL_6)
(TC_MC_SL_7)
(TC_MC_SL_8)
(TC_MC_SL_9)
(TC_MC_SL_10)
(TC_MC_SL_11)
(TC_MC_SL_14)
(TC_MC_SL_15)
(TC_MC_SL_16)
(TC_MC_SL_17)
(TC_MC_SL_18)
(TC_MC_SL_19)
(TC_MC_SL_20)

mAbsBlock.slx mAbsOptim.slx
mcase.slx mcmblogic.slx
mdintegrate.slx
mdintegrate_slevel.slx
mDiscIntegExternalReset.slx
msubsys.slx menable_table.slx
mfcn.slx mfor.slx
mif.slx mLogicBlock.slx
mLogic_largematrix.slx
mLogic_manyinputs.slx
mLogicBlockFxp.slx
mminmax.slx mMinMaxFxp.slx
mmpswtch.slx
mratelimiter_discrete.slx
mratelimiter_variable.slx
mrelay.slx mSaturationScalar.slx
mSaturationVector.slx
mSaturationMatrix.slx
mSaturationEdgeCases.slx
mSaturationFixedPoint.slx
mswitch.slx mwhile.slx
mEMLMultipleRunMixed.slx

3-6

Model Coverage
Capability
(Requirement ID)

Test Case and Procedure


(Test Case ID)

Test Model

Expected
Result

Decision Coverage
(MC_SL_DC)

qualkitdo_slvnv_tcp2.rpt

Included in
corresponding
HTML report
in expected
results folder

Condition Coverage
(MC_SL_CC)

qualkitdo_slvnv_tcp2.rpt

mAbsBlock.slx
mAbsOptim.slx
mcase.slx
mcmblogic.slx
mdintegrate.slx
mdintegrate_slevel.slx
mDiscIntegExternalReset.slx
msubsys.slx
menable_table.slx
mfcn.slx mfor.slx
mif.slx
mminmax.slx
mMinMaxFxp.slx
mmodelblock.slx
mModelRefSubsys.slx
mmpswtch.slx
mratelimiter_discrete.slx
mratelimiter_variable.slx
mrelay.slx
mSaturationScalar.slx
mSaturationVector.slx
mSaturationMatrix.slx
mSaturationEdgeCases.slx
mSaturationFixedPoint.slx
mswitch.slx
mwhile.slx
mEMLMultipleRunMixed.slx
mDeadZoneBlock.slx
mcmblogic.slx
msubsys.slx
menable_table.slx
mfcn.slx
mif.slx
mLogicBlock.slx
mLogic_largematrix.slx
mLogic_manyinputs.slx
mLogicBlockFxp.slx
mmodelblock.slx
mModelRefSubsys.slx
mEMLMultipleRunMixed.slx

(TC_MC_SL_2)
(TC_MC_SL_3)
(TC_MC_SL_4)
(TC_MC_SL_5)
(TC_MC_SL_6)
(TC_MC_SL_7)
(TC_MC_SL_8)
(TC_MC_SL_9)
(TC_MC_SL_10)
(TC_MC_SL_11)
(TC_MC_SL_12)
(TC_MC_SL_13)
(TC_MC_SL_14)
(TC_MC_SL_15)
(TC_MC_SL_16)
(TC_MC_SL_17)
(TC_MC_SL_18)
(TC_MC_SL_19)
(TC_MC_SL_20)
(TC_MC_SL_21)

(TC_MC_SL_1)
(TC_MC_SL_4)
(TC_MC_SL_6)
(TC_MC_SL_7)
(TC_MC_SL_8)
(TC_MC_SL_10)
(TC_MC_SL_12)
(TC_MS_SL_13)
(TC_MC_SL_20)

Included in
corresponding
HTML report
in expected
results folder

3-7

Model Coverage
Capability
(Requirement ID)

Test Case and Procedure


(Test Case ID)

Test Model

Expected
Result

Modified
Condition/Decision
Coverage
(MC_SL_MCDC)

qualkitdo_slvnv_tcp2.rpt

msubsys.slx
mfcn.slx
mif.slx
mLogicBlock.slx
mLogic_largematrix.slx
mLogic_manyinputs.slx
mLogicBlockFxp.slx
mmodelblock.slx
mModelRefSubsys.slx
mEMLMultipleRunMixed.slx
menable_table.slx
minterpolation.slx
minterpolation_direct.slx
mlookup.slx
mnanlookup.slx
mlookup2d.slx
mLookupNDas1D.slx
mLookupNDas2D.slx
mLookupNDasND.slx
mLookupND_direct.slx
mLookupNDPrelookup.slx
mLookupNDPrelookupFxp.slx
mLookupNDPrelookupLegacy.slx
menable_table.slx
mrange_cont.slx
mrange_discont.slx
mrange_discrete.slx
mrange_logic.slx
mrange_lookup.slx
mrange_math.slx
mrange_other.slx
mrange_signals.slx
mrange_sources.slx
mSignalRange.slx
MRangeTooWide.slx
m_sf_data_check.slx
mvardims.slx
mVardimsMixedBus.slx
mLogic_vardims.slx

Included in
corresponding
HTML report
in expected
results folder

(TC_MC_SL_1)
(TC_MC_SL_6)
(TC_MC_SL_8)
(TC_MC_SL_10)
(TC_MC_SL_12)
(TC_MS_SL_13)
(TC_MC_SL_20)

Lookup Table Coverage qualkitdo_slvnv_tcp2.rpt


(TC_MC_SL_7)
(MC_SL_LUT)
qualkitdo_slvnv_tcp4.rpt

(TC_MC_LUT_1)
(TC_MC_LUT_2)
(TC_MC_LUT_3)
(TC_MC_LUT_4)
(TC_MC_LUT_5)
(TC_MC_LUT_6)

Signal Range Coverage


(MC_SL_SR)

qualkitdo_slvnv_tcp2.rpt

(TC_MC_SL_7)
qualkitdo_slvnv_tcp5.rpt

(TC_MC_SIG_1)
qualkitdo_slvnv_tcp3.rpt

(TC_MC_SF_5)

Signal Size Coverage


(MC_SL_SS)

qualkitdo_slvnv_tcp5.rpt

Saturation on integer
overflow coverage
(MC_SATINT)

qualkitdo_slvnv_tcp2.rpt

(TC_MC_SIG_2)

(TC_MC_SL_22)
qualkitdo_slvnv_tcp3.rpt

(TC_MC_SF_11)
qualkitdo_slvnv_tcp4.rpt

mMathFcnOverflow.slx
mSFSatOnOverflow.slx
mLookup1DOverflow.slx
mLookup2DOverflow.slx
mLookupNDOverflow.slx

Included in
corresponding
HTML report
in expected
results folder

Included in
corresponding
HTML report
in expected
results folder

Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder

(TC_MC_LUT_7)

3-8

Model Coverage
Capability
(Requirement ID)

Test Case and Procedure


(Test Case ID)

qualkitdo_slvnv_tcp6.rpt
Relational boundary
(TC_MC_SLDV_2)
coverage
(MC_SL_RELBOUND)

Test Model

Expected
Result

mAllBlocks_RelBound.slx
mAllBlocks_RelBound_Fxp.slx
mSFRelCov_Fxp.slx
mSFRelCov.slx

Included in
corresponding
HTML report
in expected
results
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder

Abs block
(MC_SL_ABS)

qualkitdo_slvnv_tcp2.rpt

(TC_MC_SL_2)

mAbsBlock.slx
mAbsOptim.slx

Combinatorial Logic
block (MC_SL_
COMBLOGIC)

qualkitdo_slvnv_tcp2.rpt

mcmblogic.slx

Dead Zone block


(MC_SL_DEAD)

qualkitdo_slvnv_tcp2.rpt

Direct Lookup Table


(n-D) block
(MC_SL_DLUTND)

qualkitdo_slvnv_tcp4.rpt

(TC_MC_SL_4)

mLookupND_direct.slx

(TC_MC_LUT_5)

Discrete-Time Integrator qualkitdo_slvnv_tcp2.rpt


(TC_MC_SL_5)
block
(MC_SL_DINT)

Enabled and Triggered


Subsystem block
(MC_SL_ENTRG)

mDeadZoneBlock.slx

(TC_MC_SL_21)

qualkitdo_slvnv_tcp2.rpt

mdintegrate.slx
mdintegrate_slevel.slx
mDiscIntegExternalReset.slx

msubsys.slx

(TC_MC_SL_6)

qualkitdo_slvnv_tcp2.rpt
Enabled Subsystem
block (MC_SL_ENAB) (TC_MC_SL_6)
(TC_MC_SL_7)

msubsys.slx
menable_table.slx

3-9

Model Coverage
Capability
(Requirement ID)

Test Case and Procedure


(Test Case ID)

Test Model

Expected
Result

Fcn block
(MC_SL_FCN)

qualkitdo_slvnv_tcp2.rpt

mfcn.slx

Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder

(TC_MC_SL_8)

For Iterator, For Iterator qualkitdo_slvnv_tcp2.rpt


(TC_MC_SL_9)
Subsystem blocks
(MC_SL_FOR)

If, If Action Subsystem


blocks
(MC_SL_IF)

qualkitdo_slvnv_tcp2.rpt

Interpolation Using
Prelookup block
(MC_SL_PRELUT)

qualkitdo_slvnv_tcp4.rpt

Logical Operator block


(MC_SL_LOGIC)

qualkitdo_slvnv_tcp2.rpt

mfor.slx

mif.slx

(TC_MC_SL_10)

(TC_MC_LUT_1)
(TC_MC_LUT_6)

(TC_MC_SL_1)

minterpolation.slx
minterpolation_direct.slx
mLookupNDPrelookup.slx
mLookupNDPrelookupFxp.slx
mLookupNDPrelookupLegacy.slx
mLogicBlock.slx
mLogic_largematrix.slx
mLogic_manyinputs.slx
mLogicBlockFxp.slx

1-D Lookup Table block qualkitdo_slvnv_tcp4.rpt


(TC_MC_LUT_2)
(MC_SL_LUT1D)

mlookup.slx
mnanlookup.slx

2-D Lookup Table block qualkitdo_slvnv_tcp4.rpt


(TC_MC_LUT_3)
(MC_SL_LUT2D)

mlookup2d.slx

n-D Lookup Table block qualkitdo_slvnv_tcp4.rpt


(TC_MC_LUT_4)
(MC_SL_LUTND)

mLookupNDas1D.slx
mLookupNDas2D.slx
mLookupNDasND.slx

3-10

Model Coverage
Capability
(Requirement ID)

Test Case and Procedure


(Test Case ID)

Test Model

Expected
Result

MATLAB Function
block
(MC_SL_EML)

qualkitdo_slvnv_tcp2.rpt

mEMLMultipleRunMixed.slx
sf_exec_at_init.slx
eml_call_gf.slx
eml_call_gf_lib.slx

MinMax block
(MC_SL_MINMAX)

qualkitdo_slvnv_tcp2.rpt

Model block
(MC_SL_MDLREF)

qualkitdo_slvnv_tcp2.rpt

Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder

(TC_MC_SL_20)
qualkitdo_slvnv_tcp3.rpt

(TC_MC_SF_8)
(TC_MC_SF_9)
(TC_MC_SL_11)

(TC_MC_SL_12)
(TC_MC_SL_13)
qualkitdo_slvnv_tcp3.rpt

(TC_MC_SF_10)

Multiport Switch block qualkitdo_slvnv_tcp2.rpt


(MC_SL_MPSWITCH) (TC_MC_SL_14)

mminmax.slx
mMinMaxFxp.slx

mmodelblock.slx
mmodelblock_condition.slx
mmodelblock_decision.slx
mmodelblock_eml.slx
mmodelblock_lookup.slx
mmodelblock_mcdc.slx
mmodelblock_multilevel.slx
mmodelblock_multilevel2.slx
mModelRefSubsys.slx
mModelRefSubsys_s1.slx
mModelRefSubsys_s2.slx
mModelRefSubsys_s3.slx
mmodelblock_topSF.slx
mmodelblock_stateflow.slx
mmpswtch.slx

Rate Limiter block


(MC_SL_RATLIM)

qualkitdo_slvnv_tcp2.rpt

(TC_MC_SL_15)

mratelimiter_discrete.slx
mratelimiter_variable.slx

Relay block
(MC_SL_RELAY)

qualkitdo_slvnv_tcp2.rpt

mrelay.slx

(TC_MC_SL_16)

qualkitdo_slvnv_tcp2.rpt
Saturation block
(MC_SL_SATURATE) (TC_MC_SL_17)

mSaturationScalar.slx
mSaturationVector.slx
mSaturationMatrix.slx
mSaturationEdgeCases.slx
mSaturationFixedPoint.slx

Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder

3-11

Model Coverage
Capability
(Requirement ID)

Test Case and Procedure


(Test Case ID)

Test Model

Expected
Result

Sqrt, Signed Sqrt,


Reciprocal Sqrt
(MC_SL_SQRT)

qualkitdo_slvnv_tcp2.rpt

mSqrtOverflow.slx

Switch block
(MC_SL_SWITCH)

qualkitdo_slvnv_tcp2.rpt

Switch Case, Switch


Case Action Subsystem
blocks
(MC_SL_CASE)

qualkitdo_slvnv_tcp2.rpt

Triggered Subsystem
block
(MC_SL_TRIGGER)

qualkitdo_slvnv_tcp2.rpt

While Iterator, While


Iterator Subsystem
blocks
(MC_SL_WHILE)

qualkitdo_slvnv_tcp2.rpt

Stateflow Cyclomatic
Complexity
(MC_SF_CYC)

qualkitdo_slvnv_tcp3.rpt

Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder

Chart as triggered
Simulink block
(MC_SF_TRIGGER)

qualkitdo_slvnv_tcp3.rpt

(TC_MC_SL_22)

mswitch.slx

(TC_MC_SL_18)

mcase.slx

(TC_MC_SL_3)

msubsys.slx

(TC_MC_SL_6)

mwhile.slx

(TC_MC_SL_19)

(TC_MC_SF_1)
(TC_MC_SF_2)
(TC_MC_SF_3)
(TC_MC_SF_4)
(TC_MC_SF_6)
(TC_MC_SF_7)
(TC_MC_SF_8)
(TC_MC_SF_9)

(TC_MC_SF_1)

mstate.slx
sfmod.slx
mSFArithLogic.slx
mSFTooComplexMcdc.slx
large_mcdc.slx
mSFTransitionMCDCNotExecuted.slx
m_on_event_cov.slx
m_sf_exit_substate.slx
truth_table_model.slx
mTTNoCondition.slx
truth_table_library.slx
sf_exec_at_init.slx
eml_call_gf.slx
eml_call_gf_lib.slx
mstate.slx

Included in
corresponding
HTML report
in expected
results folder

3-12

Model Coverage
Capability
(Requirement ID)

Test Case and Procedure


(Test Case ID)

Test Model

Expected
Result

Chart with Exclusive OR qualkitdo_slvnv_tcp3.rpt


(TC_MC_SF_6)
Substates
(MC_SF_CHARTSUB)

m_sf_exit_substate.slx

qualkitdo_slvnv_tcp3.rpt
Superstate with
Exclusive OR Substates (TC_MC_SF_2)
(MC_SF_SUPERSUB)

sfmod.slx
mSFArithLogic.slx
mSFTooComplexMcdc.slx

Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder

State with On
Event_Name Action
Statement
(MC_SF_ONEVENT)

qualkitdo_slvnv_tcp3.rpt

Conditional transition
decision
(MC_SF_TRANDEC)

qualkitdo_slvnv_tcp3.rpt

m_on_event_cov.slx

(TC_MC_SF_4)

(TC_MC_SF_1)
(TC_MC_SF_2)
(TC_MC_SF_3)

qualkitdo_slvnv_tcp3.rpt
Condition coverage of
(TC_MC_SF_2)
transition decision
(MC_SF_TRANCOND) (TC_MC_SF_3)

qualkitdo_slvnv_tcp3.rpt
MC/DC coverage of
(TC_MC_SF_2)
transition decision
(MC_SF_TRANMCDC) (TC_MC_SF_3)

Truth Table conditions


(MC_SF_TTCOND)

qualkitdo_slvnv_tcp3.rpt

Truth Table decisions


(MC_SF_TTDEC)

qualkitdo_slvnv_tcp3.rpt

(TC_MC_SF_7)

(TC_MC_SF_7)

mstate.slx
sfmod.slx
mSFArithLogic.slx
mSFTooComplexMcdc.slx
large_mcdc.slx
mSFTransitionMCDCNotExecuted.slx
sfmod.slx
mSFArithLogic.slx
mSFTooComplexMcdc.slx
large_mcdc.slx
mSFTransitionMCDCNotExecuted.slx
sfmod.slx
mSFArithLogic.slx
mSFTooComplexMcdc.slx
large_mcdc.slx
mSFTransitionMCDCNotExecuted.slx
truth_table_model.slx
mTTNoCondition.slx
truth_table_library.slx

truth_table_model.slx
mTTNoCondition.slx
truth_table_library.slx

Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder

3-13

Model Coverage
Capability
(Requirement ID)

Test Case and Procedure


(Test Case ID)

Test Model

Expected
Result

Truth Table MC/DC


(MC_SF_TTMCDC)

qualkitdo_slvnv_tcp3.rpt

truth_table_model.slx
mTTNoCondition.slx
truth_table_library.slx

Simulink Design
Verifier Coverage
(MC_SLDV_SLDV)

qualkitdo_slvnv_tcp6.rpt

Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder
Included in
corresponding
HTML report
in expected
results folder

(TC_MC_SF_7)

(TC_MC_SLDV_1)

mCombineObjectives.slx
mDeadZoneCustCov.slx

Proof Assumption block qualkitdo_slvnv_tcp6.rpt


(TC_MC_SLDV_1)
(MC_SLDV_
PROOFASM)

mCombineObjectives.slx
mDeadZoneCustCov.slx

Proof Objective block


(MC_SLDV_
PROOFOBJ)

qualkitdo_slvnv_tcp6.rpt

mCombineObjectives.slx
mDeadZoneCustCov.slx

Test Condition block


(MC_SLDV_
TESTCON)

qualkitdo_slvnv_tcp6.rpt

(TC_MC_SLDV_1)

(TC_MC_SLDV_1)

mCombineObjectives.slx
mDeadZoneCustCov.slx

qualkitdo_slvnv_tcp6.rpt
Test Objective block
(MC_SLDV_TESTOBJ) (TC_MC_SLDV_1)

mCombineObjectives.slx
mDeadZoneCustCov.slx

qualkitdo_slvnv_tcp6.rpt
Relational boundary
coverage for Stateflow (TC_MC_SLDV_2)
(MC_SF_BOUNDCOV)

mAllBlocks_RelBound.slx
mAllBlocks_RelBound_Fxp.slx
mSFRelCov_Fxp.slx
mSFRelCov.slx

Relational Operator
block
(MC_SL_RELOP)

qualkitdo_slvnv_tcp5.rpt

(TC_MC_SIG_3)

mRelOpEquals.slx
mRelOpGE.slx
mRelOpGT.slx
mRelOpIsFinite.slx
mRelOpIsInf.slx
mRelOpIsNaN.slx
mRelOpLE.slx
mRelOpLT.slx
mRelOpNE.slx

3-14

4 Executing Test Cases and


Procedures

The applicant will execute the test cases and procedures for the following capabilities in the
installed environment:

DO-178C/DO-331 checks
Model coverage

Note:

To run the test cases and procedures, copy the


matlabroot/toolbox/qualkits/do/slvnv folder and subfolders to a location
where you have write access, and then run the test cases and procedures from there.

Start a new MATLAB session before you execute each model coverage RPT file.

Set the Java heap size for your MATLAB session to at least 512 MB before you execute
model coverage RPT files. To check the Java heap size, open the MATLAB Preferences
dialog box and select General > Java Heap Memory. If the Java Heap Size value is less
than 512 MB, change it to 512 MB, click OK, and restart MATLAB. (If the maximum
available heap size value is less than 512 MB, select the maximum value.) This may help
you avoid java.lang.OutOfMemoryError messages.

To execute the RPT files, you must have MATLAB Report Generator and Simulink
Report Generator licenses.

To execute some model coverage RPT files, you must have Fixed-Point Designer,
Stateflow, and Simulink Design Verifier licenses, as noted in the Model Coverage
Test Summary.

Without an Embedded Coder license, some DO-178C/DO-331 checks might warn


because configuration parameters are not available.

Execute the Simulink Verification and Validation test procedure:


1.

Create the report:


Using the GUI.
a.
b.

Double-click the RPT file to open the Report Explorer.


Select File > Report. The Simulink Report Generator creates the HTML report.

4-2

At the MATLAB command line, enter the following command, where rpt_file is
the name of the test procedure:
report (rpt_file).
2.

After the report generation is complete, review the test report results. For more
information, see Test Results.

4-3

4-4

5 Test Results

5.1 DO-178C/DO-331 Checks


Executing the following test procedure generates the following test result file. The test result file
provides the Tool Verification Results in a Simulink Report Generator report.
DO-178C/DO-331 Checks Test Summary
Test Procedure

Test Result

qualkitdo_slvnv_tcp1.rpt

outputs/qualkitdo_slvnv_qualificationreport1.html

The applicant will:

Review the Tool Verification test results.


Configure the test results in a configuration management system.
Confirm that test reports are generated without errors or warnings.
Confirm that the actual results are the same as the expected results.

5.1.1 Reviewing Test Results


Each test case contains the test results for a DO-178C/DO-331 check. For each test case,
compare the expected results to the actual results:
1.

From the working folder, open


outputs/qualkitdo_slvnv_qualificationreport1.html in a web browser.

2.

Navigate to the test case. You see:

A table that summarizes the test case.


Text listing the expected results for each test model.
A figure of each test model.
A Model Advisor report for each test model.

3.

For each test model, review the Model Advisor report. The report provides the expected
and actual results for the overall check and subchecks. If one of the subchecks warns, the
overall check result is a warning. For example, the following figure shows part of the report
for test case 1, providing results for the Check safety-related optimization setting check
on the do_178c_advisor_pass_test model. The Actual and Expected Results
figure below shows the expected overall check and subcheck results. The summary table
indicates that the subchecks passed.

5-2

Expected and Actual Test Results


4.

Compare the actual results of the test case in the Run Summary with the expected results
listed above the figure of the test model.

5-3

5.2 Model Coverage


Executing the following test procedures generates the following test result files. The test result
files provide the Tool Verification Results in Simulink Report Generator reports.
When you use the Simulink Report Generator to execute the test procedures, the test results are
generated in outputs/qualkitdo_slvnv_qualificationreport*.html files.
Each HTML file corresponds to an .rpt file. The
outputs/qualkitdo_slvnv_qualificationreport*.html files include links to
the actual generated model coverage reports for each model, which are also located in the
outputs folder.
The model coverage expected results are in the
expected_results/qualkitdo_slvnv_qualificationreport*.html files.
These HTML files include links to the expected model coverage reports for each model, which
are also located in the expected_results folder.
After you execute the test procedures, compare the actual results, located in the outputs
folder, to the expected results, located in the expected_results folder.
Model Coverage Test Summary
Test Procedure

Test Result

qualkitdo_slvnv_tcp2.rpt1

outputs/qualkitdo_slvnv_qualificationreport2.html

qualkitdo_slvnv_tcp3.rpt2

outputs/qualkitdo_slvnv_qualificationreport3.html

qualkitdo_slvnv_tcp4.rpt

outputs/qualkitdo_slvnv_qualificationreport4.html

qualkitdo_slvnv_tcp5.rpt

outputs/qualkitdo_slvnv_qualificationreport5.html

qualkitdo_slvnv_tcp6.rpt

outputs/qualkitdo_slvnv_qualificationreport6.html

1
2
3

Notes:
1 Requires a Fixed-Point Designer license.
2 Requires a Stateflow license.
3 Requires a Simulink Design Verifier license.

The applicant will:

Review the Tool Verification test results.


Configure the test results in a configuration management system.
Confirm that test reports are generated without errors or warnings.
Confirm that the actual results are the same as the expected results.

5-4

5.2.1 Reviewing Test Results


The test result files contain both expected results and links to actual results. For each model,
compare the expected results in the expected_results folder to the actual results in the
outputs folder:
1.

From the working folder, open the actual test result HTML file in a web browser. For
example, open outputs/qualkitdo_slvnv_qualificationreport2.html.

2.

In the HTML file, navigate to a specific model coverage test result. For example, the
following figure shows part of the model coverage report for test case TC_MC_SL_2,
providing results for the mAbsBlock.slx model.

Actual and Expected Model Coverage Results

3. Using the links provided in the actual result HTML files, compare the actual coverage
results to the expected coverage results.

5-5

Vous aimerez peut-être aussi