이 페이지는 기계 번역을 사용하여 번역되었습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.
Stateflow 설계 순환 복잡도
메트릭 ID
slcomp.SFCyclomaticComplexity
설명
"설계 순환 복잡성"은 설계를 통해 가능한 실행 경로의 수입니다. 일반적으로 디자인을 통과하는 경로가 많을수록 디자인이 더 복잡해집니다. 설계 순환 복잡성을 낮게 유지하면 일반적으로 설계를 읽고 유지 관리하고 테스트하기가 더 쉽습니다. 설계 순환 복잡성은 의사 결정 경로 수에 1을 더해 계산됩니다. 메트릭은 기본 경로로 표시되는 실행 경로를 설명하기 위해 1을 추가합니다. 메트릭은 기본 결과를 포함하여 실행 경로에서 가능한 각 결과를 식별하므로 설계 순환 복잡성에는 기본 경로가 포함됩니다.
Stateflow® 설계 순환 복잡도 측정법을 사용하여 설계의 Stateflow 구성 요소에 대한 설계 순환 복잡도를 결정합니다.
이 지표는 단위 또는 구성 요소를 통한 Stateflow 기반 실행 경로의 총 수를 계산합니다. 총 실행 경로 수는 Stateflow 결정 수, Stateflow 결정 횟수에 기본 경로에 대한 1개를 더한 값으로 계산됩니다. 기본 경로는 장치 또는 구성 요소당 한 번만 계산됩니다.
다양한 Stateflow 구성 요소와 관련된 Stateflow 결정의 수를 보려면 공통 Stateflow 구성요소에 대한 결정 횟수를 참조하세요.
계산 세부사항
메트릭:
MATLAB®을 동작 언어로 사용하는 Stateflow 개체만 지원합니다.
C를 동작 언어로 사용하지만 논리 연산의 단락으로 인한 결정을 나타내지 않는 Stateflow 차트를 분석합니다.
수집
이 메트릭에 대한 데이터를 수집하려면 메트릭 식별자 slcomp.SFCyclomaticComplexity
와 함께 getMetrics
를 사용하세요.
결과
이 메트릭의 경우 metric.Result
인스턴스는 단위 또는 구성 요소의 Stateflow 설계 순환 복잡성으로 인해 Value
를 반환합니다.
예제
Stateflow 라이브러리의 Truth Table 블록만 포함하는 장치가 있다고 가정합니다. 기본적으로 Truth Table 블록에는 2개의 조건 행과 3개의 결정 열이 있는 조건 테이블와 2개의 작업이 있는 동작 테이블가 포함됩니다.
다양한 Stateflow 구성 요소와 관련된 Stateflow 결정의 수를 보려면 공통 Stateflow 구성요소에 대한 결정 횟수를 참조하세요.
Truth Table 블록의 경우 그래픽 결정 수는 조건(행) 수에 조건 테이블의 결정(열) 수를 곱하여 계산됩니다. 이 예에서 그래픽 결정 수는 2에 3을 곱한 것과 같습니다.
Truth Table 블록의 경우 MATLAB 코드 결정 수는 동작 테이블의 결정 수로 계산됩니다. 이 예에서는 동작 테이블의 코드에서 이루어진 결정이 없습니다.
Stateflow 설계 순환 복잡도는 그래픽 Stateflow 결정 수에 Stateflow 구성 요소의 MATLAB 코드 결정 수에 1을 더한 것과 같습니다. 기본 경로). 이 경우 Stateflow 설계 순환 복잡도는 7과 동일한 6 + 0 + 1
로 계산됩니다.