널리 사용되는 프로세스 개선 접근 방식(예: Six Sigma, CMMI, Lean)은 모두 원인 분석 활동을 다룬다.
원인 분석에 사용되는 기법들은 잘 알려져 있지만, 인과관계에 대한 개념 자체가 잘못 이해되고 잘못 적용되는 경우가 많다. 이 포스팅에서는 일반적인 오해를 탐구하며 인과 분석을 보다 효과적으로 적용하기 위한 몇 가지 전략을 제시한다. Defect 원인 분석을 위해 다양한 프로세스, 도구 및 기법(예: 고장 모드 효과 분석, 이시카와 다이어그램, 파레토 차트)이 개발되었다. 조직은 종종 소프트웨어 구현에 필요한 교육에 많은 비용을 투자한다. 이러한 기법을 적용하면 문제의 근원에 대한 통찰력을 얻는 데 도움이 되지만, 기법의 체크리스트 구현만으로는 "깊은" 문제를 정확하게 식별하고 효과적으로 해결하기에 충분하지 않다. 원인 분석에 대한 기본 개념과 진정한 이해를 통해 조직의 투자와 이점을 극대화할 수 있는 원인 분석 적용 전략을 개발하는 데 도움이 되길 바란다.
1. 소개 (Introduction)
실패와 실패를 통한 학습이 엔지니어링 훈련의 필수적인 부분이다. 몇몇 눈부신 실패에 대한 조사가 어떻게 과학 지식과 엔지니어링 실무를 향상하게 되었는지에 대해 설명한다. 그러나 소프트웨어 엔지니어링 조직은 오류를 인정하기를 꺼리고 오류를 조사하기 위해 효과적으로 행동하지 않는 경우가 많다.
새로운 도구나나 기술을 구현할 때 여러 가지 문제가 발생할 수 있지만, 원인 분석의 특성에 대한 네 가지 통념이 소프트웨어 엔지니어링의 성공에 공통적으로 걸림돌이 될 수 있다.
• 원인 관계가 직관적이므로 설명이 필요 없다.
• 원인 분석은 외부 팀을 통해 효과적으로 수행할 수 있다.
• 원인 분석은 "성숙한" 조직만을 위한 것이다.
• 작은 개선은 중요하지 않다.
이러한 오해를 해결하고 그 영향을 최소화하기 위해 원인 분석의 전략 개발은 매우 중요하다.
2. 원인 분석의 개념 (Concept of Causal Analysis)
원인 분석은 인과 관계를 이해하는 데 초점을 맞춘다. 원인 분석은 일반적으로 바람직하지 않은 결과를 최소화하기 위해 인과 시스템에 영향을 미치는 조치를 식별하기 위해 인과 시스템을 체계적으로 조사하는 것이다.
원인 분석을 근본 원인 분석 또는 결점 예방이라고도 할 수 있다.
이론 1) 인과관계는 직관적이다.
원인 분석은 인과 관계를 이해하는 데 초점을 맞춘다. 문제의 원인을 찾는 것은 많은 형식주의를 필요로 하지 않는 것처럼 보이는 일반적인 인간의 노력이다. 하지만 무엇이 진정 '원인'인지 인식하지 못해 처음부터 인과관계가 틀어지는 경우가 많다. 인과 관계를 입증하기 위해 세 가지 조건이 설정되어야 한다.
• 첫째, 가설에 근거한 원인과 결과 사이에 상관관계 또는 연관성이 있어야 한다.
• 둘째, 원인이 제때의 영향보다 선행되어야 한다.
• 셋째, 원인과 효과를 연결하는 메커니즘을 식별해야 한다.
첫 번째 조건은 원인이 발생할 때 효과도 관찰될 가능성이 높다는 것을 의미한다. 이것은 종종 통계적 상관관계와 회귀분석을 통해 입증된다.
두 번째 조건은 분명해 보이지만, 인과 분석의 일반적인 실수는 동시에 발생하는 요인 사이에 인과 관계가 존재한다고 가정하는 것입니다.
이것은 상관 분석의 과대 해석입니다.
검토자가 준비하는 데 소요된 시간을 고려한다. 검토 중 발견된 결함의 개수는 안전 점검에서 기록된다. (여러 검토자의 조사 결과를 통합하기 위해 별도의 회의를 개최할 수 있다.)
검토 시간을 소비하지 않는 한 결함을 찾을 수 없다. 이는 필수적이다. 그러나 단순히 검토자에게 더 많은 시간을 할애하도록 지시하는 것만으로 결함이 더 많이 발견되는 것은 아니다. 검토자가 자료를 이미 한 번 읽은 경우, 다시 읽어도(동일한 방식으로) 새로운 결과가 나오지 않을 수 있다. 읽기 기술에 대한 약간의 개선이 필요하다.
검토자가 자료를 다 읽을 시간이 없었다면, 검토자의 스케줄에 시간을 제공하기 위한 조치가 취해지지 않는 한, 더 많은 시간을 할애하는 권한은 비효과적일 가능성이 높다. 각각의 경우 검토 시간을 늘리는 데 초점을 맞추면 인과 분석이 단락 되고 비효율적인 조치가 발생한다. 대신, 이 상관관계는 검토 시간과 결점 검출 모두에 영향을 미치는 몇 가지 다른 요인을 찾아야 한다는 것을 시사해야 한다.
검토에 더 많은 시간을 할애하도록(교정 조치로) 명령서를 발행하면 검토에 더 많은 시간이 부과될 수 있지만(준수를 보여주기 위해) 감지된 결함은 증가하지 않을 가능성이 높다. 검토 시간과 결점 검출을 적게 하는 근본 원인은 두 측정값에 영향을 미치는 준비 방법, 일정 압력 또는 기타 요인에 대한 이해가 부족하기 때문일 수 있다.
검토 시간과 결함 탐지를 모두 증가시키려면 근본적인 원인을 해결해야 한다. 상관 관계를 인식하는 것은 두 측정치에 영향을 미치는 것으로 잠재적 원인 집합을 좁히는 데 도움이 된다. 검토자에게 검토에 더 많은 시간을 할애하도록 권장하는 것은 근본적인 문제가 게으름 또는 품질에 대한 관심 부족인 경우에만 결함 감지를 개선할 수 있다. (흔히 경영진의 인식이기도 하다. 그러나 검토자들이 정의된 과정을 따르려고 선의의 노력을 한다면 이러한 격려는 도움이 되지 않는다.)
이러한 상관 관계의 오역에 대한 책임 중 일부는 통계학자에게 돌릴 수 있다.
인과관계에 대한 세 가지 기준을 적용하면 인과분석팀이 명백한 상관관계를 넘어 조사하도록 하는 데 도움이 된다.
인과 분석은 "직관적"으로 인식되기 때문에 많은 조직이 인과 분석에 대한 의미 있는 교육을 직원들에게 제공하지 않는다. 인과 분석 교육은 기법을 구성하는 양식과 체크리스트뿐만 아니라 기본 개념을 다루어야 한다.
'IT 각종 공부' 카테고리의 다른 글
메타버스 - 종목, 증강현실 (0) | 2021.09.07 |
---|---|
Defect 원인 분석 (Causal Analysis)의 이론과 전략 -02 (0) | 2021.09.06 |
SW 개발 프로세스의 이해 (0) | 2021.09.04 |
소프트웨어 테스트 (Software test) - 2편 (0) | 2021.09.03 |
소프트웨어 테스트 (Software test) (0) | 2021.09.02 |
댓글