기출문제/정보처리기사

2021년 3회 정보처리기사 기출문제 33번

엉클지니 2025. 3. 14. 13:42

33. 소스코드 정적 분석(Static Analysis)에 대한 설명으로 틀린 것은?

소스 코드를 실행시키지 않고 분석한다.

코드에 있는 오류나 잠재적인 오류를 찾아내기 위한 활동이다.

 하드웨어적인 방법으로만 코드 분석이 가능하다.

자료 흐름이나 논리 흐름을 분석하여 비정상적인 패턴을 찾을 수 있다.

 

이 문제는 **소스코드 정적 분석(Static Analysis)**에 대한 설명으로 틀린 것을 고르는 문제입니다. 정적 분석은 소스 코드를 실행하지 않고 코드를 분석하는 기법으로, 코드의 오류나 잠재적인 문제를 사전에 발견할 수 있게 돕습니다. 각 선택지를 분석해 보겠습니다.

소스코드 정적 분석의 주요 특징

  1. 실행하지 않고 코드만 분석: 소스 코드를 실행하지 않고 코드를 그대로 분석합니다. 이 분석은 컴파일러, 정적 분석 도구, 형상 관리 도구 등을 사용하여 이루어집니다.
  2. 오류 및 잠재적 오류 발견: 코드에서 발생할 수 있는 오류나 버그를 실행 없이 미리 찾아내어 디버깅 및 수정이 가능하도록 돕습니다.
  3. 자료 흐름 및 논리 흐름 분석: 코드의 자료 흐름(데이터의 이동)이나 논리 흐름을 분석하여 비정상적인 패턴이나 잠재적 오류를 찾아냅니다. 예를 들어, 할당되지 않은 변수 사용, 불필요한 코드, 무한 루프 등을 찾을 수 있습니다.

각 선택지 분석

① 소스 코드를 실행시키지 않고 분석한다.

  • 정적 분석은 코드 실행 없이 분석하는 방법이기 때문에, 이 설명은 올바른 설명입니다.
  • 결론: 맞는 설명.

② 코드에 있는 오류나 잠재적인 오류를 찾아내기 위한 활동이다.

  • 정적 분석은 코드의 오류나 잠재적 오류를 찾아내는 활동으로, 실제로 코드가 실행되지 않아도 버그논리적 결함을 사전에 식별할 수 있습니다. 이 설명도 올바른 설명입니다.
  • 결론: 맞는 설명.

③ 하드웨어적인 방법으로만 코드 분석이 가능하다.

  • 정적 분석소프트웨어 도구알고리즘을 사용하여 수행되는 분석입니다. 하드웨어적인 방법이 아니라 소프트웨어적인 방법을 통해 이루어집니다. 이 설명은 틀린 설명입니다.
  • 결론: 틀린 설명.

④ 자료 흐름이나 논리 흐름을 분석하여 비정상적인 패턴을 찾을 수 있다.

  • 정적 분석은 코드 내에서 자료 흐름이나 논리 흐름을 분석하여 비정상적인 패턴을 찾아내는 데 매우 유용합니다. 예를 들어, 미사용 변수, 잘못된 데이터 흐름 등을 찾아낼 수 있습니다. 이 설명은 올바른 설명입니다.
  • 결론: 맞는 설명.

결론

따라서 틀린 설명③번입니다. 정적 분석하드웨어적인 방법이 아니라, 소프트웨어 도구알고리즘을 사용한 분석입니다.

반응형