본문 바로가기

knowledge/CSTS

[CSTS] 내용정리 및 암기법 4. 정적 테스팅 (7문제)

 

 

 

※ 초록색 글씨는 암기법입니다 :)

본인이 만들어서 외워주시는게 가장 좋지만

어려운 분들을 위해 제가 외웠던 방법을 공유해드립니당 😉 ※

 

 


 

*정적 테스팅 개요*

: 프로그램 실행을 요구하지 않음

=> 리정 (종류에는 리뷰와 정적분석이 있다)

 


*리뷰*

: 전문가가 모여 프로그램을 검토해서 결함을 검출하는 방법

=> 기쓰팩트관리감사 (기스가 실제로 있었는데 관리를 잘 해줘서 감사하다는 리뷰를 쓴다)

 💎 술리뷰 : 유능한 인력으로 구성, 대표엔지니어, 관리자도 참가 가능

💎 워크루 : 비형식적인 검출방법, 참가자들의 교육이나 지식공유를 위해서도 함. 관리자 참여 못함.

  => 주기작 ( 주재자 + 기록자 = 작성자 가능)

💎 인스션 : 동료검토, SW산출물 검토, 개발초기에 함, 결함을 발견해서 SW품질을 개선하는게 중점, 관리자 참여 못함

  => 주작낭기검 (주재자, 작성자, 낭독자, 기록자, 검토자 각각 역할 명확) 

 

⚡ 주재자 : 참가자들선정, 인스펙션 계획, 회의를 주재 (기록자와 겸업가능)

⚡ 작성자 : 인스펙션 회의에 필요한 자료를 제출, 자료에 관한 질문에 대답, 설명

⚡ 낭독자 : 작업물에 대한 자신의 이해와 해석을 바탕으로 참가자들에게 설명함, 회의를 이끔, 낭독자 여러명 가능

⚡ 기록자 : 인스펙션 회의에서 논쟁 및 모든 질문과 답변등을 기록. 문서화. (주재자와 겸업가능)

⚡ 검토자 : 검토할 작업물을 충분히 이해해야함, 자료에서 결함 찾아내고 기록, 결함해결이 아니라 의견만 제시. 

 

💎 관리리뷰 : 계획변경, 현재확인

💎감사 : W제품 및 프로세스가 규제, 표준, 가이드라인, 계획, 절차를 준수하고 있는지 독립적으로 평가하기 위함

 

 

 


*정적 분석*

: 자동화된 도구를 이용하여 정적 테스트를 수행.

💎 코딩표준 : 일관되게 프로그램을 작성하기 위함. 

- undefined behavior 가 발생할 수 있는 경우

-> 초기화되지 않은 변수의 사용, 선언후 사용하지 않은 함수과 변수, 배열 참조, 0으로 나눗셈 연산 수행 등

💎복잡도 분석 : 선개수 - 노드 + 1

💎자료흐름분석 : 

 - d (defined) : 정의. ex) a = b+c ; a가 정의됨 (int a ; 이런건 정의가 아님)

 - u (used) : 사용

 - k (killed) : 무효화

 - ~x : x 앞에 것들이 x와 관련이 없음

 - x~ : x 뒤에 것들이 x와 관련이 없음

 - 잠재적 결함 (dk, ~u, ~k, ku, dd, kk, d~)