10 소스 코드 품질 분석 도구에 대한 다음 설명에서 괄호(①, ②)에 해당하는 용어를 <보기>에서 찾아 쓰시오.
소스 코드 품질 분석 도구는 소스 코드의 코딩 스타일, 코드에 설정된 코딩 표준, 코드의 복잡도, 코드에 존재하는 메모리 누수 현상, 스레드 결함 등을 발견하기 위해 사용하는 분석 도구이다. ㆍ( ① ) 도구는 작성한 소스 코드를 실행하지 않고 코딩 표준이나 코딩 스타일, 결함 등을 확인하는 코드 분석 도구이다. ㆍ( ② ) 도구는 소스 코드를 직접 실행하여 프로그램의 동작이나 반응을 추적하고 보고하는 분석 도구로, 프로그램 모니터링 기능이나 스냅샷 생성 기능들을 포함하고 있다. |
<보기>
ㆍStatic Analysis | ㆍRunning Analysis | ㆍTest Execution | ㆍPerformance |
ㆍDynamic Analysis | ㆍTest Control | ㆍTest Harness | ㆍTest Monitoring |
답
더보기
① Static Analysis
② Dynamic Analysis
해설
<소스 코드 품질 분석 도구>
소스 코드의 코딩 스타일, 코드에 설정된 코딩 표준, 코드의 복잡도, 코드에 존재하는 메모리 누수 현상, 스레드 결함 등을 발견하기 위해 사용하는 분석 도구로, 정적 분석 도구와 동적 분석 도구로 나뉨
Static Analysis(정적 분석 도구) | - 작성한 코드를 실행하지 않고 코딩 표준이나 코딩 스타일, 결함 등을 확인하는 코드 분석 도구 - 종류: pmd, cppcheck, SonarQube, checkstyle, ccm, cobertura 등 |
Dynamic Analysis(동적 분석 도구) | - 작성한 코드를 실행하여 코드에 존재하는 메모리 누수, 스레드 결함 등을 분석하는 도구 - 종류: Avalanche, Valgrind 등 |
정적 분석 도구 | ||
pmd | 소스 코드에 대한 미사용 변수, 최적화되지 않은 코드 등 결함을 유발할 수 있는 코드를 검사함 | Linux, Window |
cppcheck | C/C++ 코드에 대한 메모리 누수, 오버플로우 등 분석 | Windows |
SonarQube | 중복 코드, 복잡도, 코딩 설계 등을 분석하는 소스 분석 통합 플랫폼 | Cross-Platform |
checkstyle | - 자바 코드에 대해 소스 코드 표준을 따르고 있는지 검사함 - 다양한 개발 도구에 통합하여 사용 가능함 |
Cross-Platform |
ccm | 다양한 언어의 코드 복잡도를 분석함 | Cross-Platform |
cobertura | 자바 언어의 소스 코드 복잡도 분석 및 테스트 커버리지를 측정함 | Cross-Platform |
동적 분석 도구 | ||
Avalanche | - Valgrind 프레임워크 및 STP 기반으로 구현됨 - 프로그램에 대한 결함 및 취약점 등을 분석함 |
Linux, Android |
Valgrind | 프로그램 내에 존재하는 메모리 및 쓰레드 결함 등을 분석함 | Cross-Platform |
'자격증 > 정보처리기사 실기 - 기출문제' 카테고리의 다른 글
[정보처리기사 실기] 2022년 1회 12 - 프로그래밍 [C] (0) | 2025.07.19 |
---|---|
[정보처리기사 실기] 2022년 1회 11 - 인터페이스 구현 검증 도구 (1) | 2025.07.19 |
[정보처리기사 실기] 2022년 1회 09 - 보안 프로토콜 (0) | 2025.07.19 |
[정보처리기사 실기] 2022년 1회 08 - 프로그래밍 언어 [Python] (0) | 2025.07.19 |
[정보처리기사 실기] 2022년 1회 07 - 프로그래밍 [Python] (0) | 2025.07.19 |