대빵's Blog

소프트웨어 버그와 에러의 구분이 필요한 이유(주관적인 관점으로...) 본문

개발관련

소프트웨어 버그와 에러의 구분이 필요한 이유(주관적인 관점으로...)

bigzero 2021. 3. 6. 17:24

소프트웨어 개발시 버그와 에러는 피할수가 없다.

종종 지금 개발을 하고 있는건지 버그를 만들고 있는건지 모르겠다는 푸념을 하기도 한다.

버그와 에러에 대한 학문적인 정확한 정의는 없지만 개인적으로 프로젝트를 수행하거나 문서작성시 두개의 단어적 의미를 구분해서 사용한다.

* 버그 : 어떤 형태로든지 원하는 결과물을 얻을수 있지만 기능적 품질이 떨어지는 경우

* 에러 : 원하는 결과물을 얻을 수 있는 방법이 없다.

예를 들어 전화번호를 저장하는 기능이라고 해보자

전화번호 입력시 숫자만 넣으면 저장되지만 중간에 하이픈("-")을 넣거나 괄호("010)")를 넣으면 저장 안되는 경우는 버그라고 표현한다.

하지만 어떻게든 저장하려고 했지만 저장되지 않는 경우 에러라고 표현한다.

이렇게 구분하여 테스트결과를 작성하면 당연히 에러수정이 우선순위가 높은 issue 가 되고 버그가 상대적으로 우선순위가 낮은 issue 가 된다.

또한, 오픈일정이 촉박한 경우 버그는 오픈이후 수정해도 되지만 에러는 무조건 수정해야 되는 기능목록이 된다.

물론 둘다 없는 것이 베스트 이지만 그런경우는 한번도 본적이 없다는....ㅡㅡ;