소프트웨어 "결함"에 관한 용어 정리

  소프트웨어 에러, 버그, 결함, 장애, 바이러스... 등과 같이 소프트웨어 제품에 대한 이상증세에 있어서 많은 표현들이 존재한다. 물론 SWEBOK(Software Engineering Body of Knowledge)이나 Syllabus 문서와 같은 소프트웨어공학 표준 문서에서도 마찬가지로 여러 단어들이 등장한다. 표준 문서에 참고하면, 소프트웨어 "결함"에 대한 용어들의 범위를 순차적으로 나열해보면 다음과 같이 나타낼 수 있다.

  인간에 의한 실수(Mistake) -> 오류(Error) -> 결함(Defact) -> 장애(Failure)

  각각의 나열된 용어들의 뜻을 살펴보면,

  오류(Error): 잘못된 결과를 낳는 인간의 행위, 실수와 동의어
  결함(Defact, Bug, Fault): 일반적으로 버그(Bug), 결함(Defact), 결점(Fault)은 동의어로 사용될 수 있으며, 요구된 기능의 부정확한 처리, 즉, 장애(Failure)를 발생시키는 원인을 말한다.
  장애(Failure): 코드에 존재하는 결함의 실행 또는 환결정 조건에 의한 부정확한 처리.

  위의 용어들을 간단하게 정리해보면, 소프트웨어 개발 환경내에서 인간에 의한 실수로 인해, 문서 또는 코드 상의 결함을 생성하게 된다. 이러한 결함을 통해 결과적으로 시스템의 장애를 초래하게 된다.
  실무에서는 테스트 엔지니어들이 소프트웨어나 제품의 테스팅을 진행 시, 가장 많이 쓰는 용어가 Defact이다. 공식적인 리뷰 미팅이나 문서상에서는 Bug나 Error라는 말은 거의 사용하지 않는다. 물론 개발 초기 단계부터 QA부서와 함께 공동 라이프 사이클이 진행되는 경우에는 종종 Error 발생 가능성에 대해 논의하면서 언급될 수 있다.

by hoya | 2010/01/03 11:13 | 소프트웨어이야기 | 트랙백

트랙백 주소 : http://senet.egloos.com/tb/2510151
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
※ 이 포스트는 더 이상 덧글을 남길 수 없습니다.
Creative Commons License 이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락 3.0 Unported 라이센스에 따라 이용하실 수 있습니다.

 

◀ 이전 페이지다음 페이지 ▶