이 페이지는 기계 번역을 사용하여 번역되었습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.
MATLAB 설계 순환 복잡도
메트릭 ID
slcomp.MatlabCyclomaticComplexity
설명
"설계 순환 복잡성"은 설계를 통해 가능한 실행 경로의 수입니다. 일반적으로 디자인을 통과하는 경로가 많을수록 디자인이 더 복잡해집니다. 설계 순환 복잡성을 낮게 유지하면 일반적으로 설계를 읽고 유지 관리하고 테스트하기가 더 쉽습니다. 설계 순환 복잡성은 의사 결정 경로 수에 1을 더해 계산됩니다. 메트릭은 기본 경로로 표시되는 실행 경로를 설명하기 위해 1을 추가합니다. 메트릭은 기본 결과를 포함하여 실행 경로에서 가능한 각 결과를 식별하므로 설계 순환 복잡성에는 기본 경로가 포함됩니다.
이 측정법을 사용하여 설계에 있는 MATLAB® 코드의 설계 순환 복잡성을 확인하세요.
MATLAB 설계 순환 복잡도는 단위 또는 구성 요소에서 MATLAB 코드를 통한 실행 경로의 총 수입니다. 실행 경로 수는 MATLAB 결정 수, MATLAB 결정 횟수에 기본 경로에 대한 1개를 더해 계산됩니다. 기본 경로는 장치 또는 구성 요소당 한 번만 계산됩니다.
계산 세부사항
메트릭에는 코드 실행 중에 단락될 수 있는 논리 작업과 관련된 결정이 포함됩니다.
수집
이 메트릭에 대한 데이터를 수집하려면 메트릭 식별자 slcomp.MatlabCyclomaticComplexity와 함께 getMetrics를 사용하세요.
결과
이 메트릭의 경우 metric.Result 인스턴스는 단위 또는 구성 요소의 MATLAB 설계 순환 복잡성으로 인해 Value를 반환합니다.
예제
다음 코드를 사용하여 MATLAB Function 블록만 포함하는 단위가 있다고 가정합니다.
function y = fcn(u) if u < 0 % one decision y = -1*u; else % default path % zero decisions y = u; end end
if-else 문의 경우 if 문은 하나의 결정을 나타내고 else 문은 기본 동작을 나타내기 때문에 결정 수는 1입니다. 결정이 내려지지 않은 경우 실행 경로는 기본 경로를 따릅니다.
MATLAB Function 블록에 대한 입력이 0보다 작은 경우 MATLAB Function 블록의 출력은 입력에 음수를 곱한 값입니다.
그렇지 않으면 기본적으로 MATLAB Function 블록의 출력은 MATLAB Function 블록의 입력과 동일합니다.
이 예에서 MATLAB 결정의 수는 1이므로 장치의 MATLAB 설계 순환 복잡도는 2입니다. 기본 경로는 기본 상태에 도달하기 위한 결정이 없기 때문에 결정 횟수에 포함되지 않지만, 기본 경로는 설계 순환 복잡도에 포함됩니다.
MATLAB 설계 순환 복잡성의 값은 다음 중 하나의 장치를 통해 가능한 두 가지 실행 경로를 나타냅니다.
u < 0및 MATLAB Function 블록의 출력은 입력에 음수를 곱한 것입니다.u ≥ 0및 MATLAB Function 블록의 출력은 MATLAB Function 블록의 입력과 동일합니다.