직교 결점 분류
Orthogonal Defect ClassificationODC([1]직교 결함 분류)는 소프트웨어 결함 스트림의 의미 정보를 프로세스에 대한 측정으로 변환한다.[2]이 아이디어들은 IBM 리서치의 램 칠러지에[3] 의해 80년대 말과 90년대 초에 개발되었다.이는 소프트웨어 개발 및 테스트 프로세스 분석에 사용되는 새로운 분석 방법의 개발로 이어졌다.ODC는 프로세스 모델, 언어 및 도메인 독립적이다.ODC의 적용은 폭포, 나선형, 게이트형, 민첩한[4] 개발 프로세스 등 다양한 플랫폼과 개발 프로세스에 대해 여러 기업에 의해 보고되었다.ODC의 대표적인 애플리케이션 중 하나는 소프트웨어 근본 원인 분석이다.ODC는 근본 원인 분석을 수행하는 데 걸리는 시간을 10배 이상 단축하는 것으로 알려져 있다.이러한 이득은 주로 근본 원인 분석에 대한 다른 접근방식에서 비롯된다. 근본 원인 분석에서는 ODC 데이터가 빠른 속도로 생성되며(결함당 몇 시간이 아니라 분 단위) 원인과 효과 분석에 사용되는 분석이 그것이다.이것은 분석의 부담을 순수한 인간적인 방법에서 보다 데이터 집약적인 방법으로 이동시킨다.[6]원본 논문에서 제안된 ODC에는 개발 프로세스에 대한 측정을 생성하는 특정 속성 값 집합이 있다.더 잘 알려진 다섯 가지 범주 중 두 가지는 결점 유형과 결함 트리거다.결점 유형은 결점의 결과로 코드에서 변경된 내용을 캡처한다.결함 유형에는 7개의 값이 있으며, 그들은 그들의 분포를 통한 과정을 통해 제품의 측정을 제공하기 위해 경험적으로 확립되었다.불량유형분포의 변화는 개발공정모델의 함수로서 공정을 통한 제품의 진행에 대한 내적인 측정을 제공한다는 개념이다.
결함 트리거도 마찬가지로 테스트 프로세스의 측정을 제공한다.방아쇠의 개념은 ODC를 통해 나온 핵심 공헌이며, 현재는 기술 및 연구 출판물에 상당히 널리 사용되고 있다.[7]소프트웨어 트리거는 장애를 발생시키기 위해 고장을 표면화한 힘으로 정의된다.트리거의 전체 세트는 ODC 설명서에서 확인할 수 있다.
결점 유형과 트리거는 결점에 대한 많은 양의 인과 정보를 집합적으로 제공한다.표준 ODC 구현에서 포착된 결함에 대한 추가 정보에는 "임팩트", "소스", "나이즈"가 포함된다.ODC 교육 과정은 훈련을 받은 개인이 소급 작업을 수행할 때 3분 이내에 ODC를 통해 결함을 분류할 수 있다고 보고한다.[8]비행 중 또는 진행 중이면 소요 시간이 훨씬 짧다.ODC 데이터는 "왜"가 아니라 "무엇인가"에 관한 것이기 때문에 이러한 분류는 근본 원인 분석과 직접 비교할 수 없다.그러나 근본 원인 분석은 ODC를 사용하여 매우 일반적으로 수행된다.ODC 데이터를 연구하는 분석은 근본 원인 분석의 1차 통과를 수행하고 있으며, 이를 개발팀과 논의하여 확정한다.이 접근방식은 고전적 방법과 ODC 방법 사이에 5가지 주요한 차이를 가진다.[9]
근본 원인 분석은 ODC의 적용 분야 중 하나일 뿐이다.ODC의 원래 설계는 결함 스트림을 내인성 측정의 원천으로 삼아 소프트웨어 엔지니어링을 위한 측정 시스템을 만드는 것이었다.따라서 특이하거나 다른 속성 중 하나와 연계한 속성은 엔지니어링 프로세스의 특정 측면에 대한 구체적인 측정을 제공한다.이러한 측정은 일반적인 측정 원리를 염두에 두고 설계되었기 때문에 하나 이상의 분석 방법에 사용할 수 있다.현재까지 여러 연구 논문에서 이를 다양한 용도로 적용하고 있다.최근에는 ODC를 이용해 보안평가에 사용되는 방법을 평가하는 연구기사가 등장하고, ODC의 범위를 넓혔다.[10]
참조
- ^ 직교 결함 분류-공정 내 측정, 소프트웨어 엔지니어링에서의 IEEE 거래에 대한 개념, 1992년 11월 (vol. 18 no. 11)http://www.chillarege.com/articles/odc-concept.html
- ^ ODC란 무엇인가? https://www.youtube.com/watch?v=mno4pQMqtBM
- ^ IEEE 컴퓨터 협회, 2002 기술 공로상 https://www.computer.org/profiles/ram-chillarege
- ^ 신속한 변화를 위한 개발에서 직교 결점 분류(ODC).M. Jagia, S. Meena, IEEE ISSRE 2009 보충 절차, 2009년 11월.
- ^ 직교 결점 분류:신속한 변화를 위한 테스트/QA 프리머, 신속한 변화를 위한 개발 컨퍼런스, 2012년 11월
- ^ "ODC - 근본 원인 분석을 위한 10배", R. Chillarge 2006
- ^ 소프트웨어 결함 및 시스템 가용성에 미치는 영향 - 운영 체제의 현장 장애에 대한 연구M.설리반과 R.Chillarege, IEEE 21st Fault-Tolerant Computing Systems, 1991.
- ^ 결함의 다이아몬드, LADC 키노트, http://www.unicauca.edu.co/ladc2016/?q=node/22
- ^ "5 고전적 근본 원인 분석과 ODC 근본 원인 분석의 차이.https://www.youtube.com/watch?v=fTJr2Pgnxco
- ^ P. J. 모리슨, R. 판디타, X. 샤오, R.Chillarege, 그리고 L.윌리엄스, "다른 결함처럼 취약성이 발견되고 해결되었는가?" 23권, 3, 페이지 1383–1421, 2018년 6월, doi: 10.1007/s10664-017-9541-1.