알림마당

  1. home

소프트웨어 결함 : 수량화 가능한 정의

전문가 제언
○ 소프트웨어 개발은 사용자의 요구 분석, 시스템 설계, 프로그래밍 및 테스트의 과정을 거치게 된다. 이 과정에서 구체적으로 들어나는 결과물은 코딩된 프로그램이다. 즉 소프트웨어는 프로그램의 동적인 실체로서 형식 언어로 쓰인 지적 노동의 결과이고 제작된 제품이 아니라 창조적 노력이 포함된 개발품이다. 또한 소프트웨어의 내용은 비가시성의 논리적 요소로 구성된다.

○ 소프트웨어 특성상, 소프트웨어 결함을 양적으로 계수하는 것은 어려운 일이다. 소프트웨어 결함이 명세서, 설계, 프로그래밍의 각 단계에서 발생할 수 있고 결과물은 예술과 같은 창조물이기 때문이다. 따라서 결함의 종류와 계수를 위해서는 소프트웨어 결함에 대한 정확한 정의와 측정 방법에 대한 고찰이 선행되어야 한다.

○ 여기에서는 소프트웨어 결함을 시스템이 결과적으로 실패에 이르는 구조적인 불완전 상태로 정의하고 측정 가능한 결함을 소프트웨어 시스템의 프로그램 언어의 문법에 두고 있다. 이를 위하여 여기서는 결함을 가진 코딩 버전과 결함이 제거되거나 개선된 코딩 버전 사이에 차이를 토큰화 함으로써 결함의 수를 계수하는 방법을 제안하고 있다.

○ 프로그램상의 오류는 소프트웨어의 정확성, 신뢰성 및 응용 가능성에 미치는 영향 외에 소프트웨어가 탑재된 시스템에 치명적인 결함을 가져다주고 그 응용 시스템에 큰 손실을 끼치게 된다. 질적인 문제에 있어서 대부분의 프로그래밍이 자동화되어 있고 자동화 시스템에 결함 수정 기능이 있어서 그 질적인 평가는 코딩보다 소프트웨어 개발 설계의 평가에 있을 수 있다. 따라서 코딩 수준에서의 소프트웨어 결함의 형태와 계수 방법을 위한 자동화 가능성의 연구는 참고할 내용이다.

○ 최근의 전자 제품들은 하드웨어와 소프트웨어가 융합한 임베디드 제품들이 많이 등장하고 있다. 제품 개발에서 하드웨어 개발자와 소프트웨어 개발자는 어느 쪽이 문제점을 안고 있는지 확인하고 문제 해결을 하고 있다. 특히 소프트웨어의 결함을 체크하는 것은 하드웨어 시제품의 추가 제작으로 인한 경비 손실을 최소화 할 수 있다.
저자
Munson, JC; Nikora, AP; Sherif, JS
자료유형
학술정보
원문언어
영어
기업산업분류
정보통신
연도
2006
권(호)
37
잡지명
ADVANCES IN ENGINEERING SOFTWARE
과학기술
표준분류
정보통신
페이지
327~333
분석자
김*기
분석물
이 페이지에서 제공하는 정보에 대하여 만족하십니까?
문서 처음으로 이동