문제점 해결을 위한 기술
문제점 해결은 문제점을 해결하기 위한 체계적인 접근 방법입니다. 문제 해결의 목표는 무언가가 예상대로 작동하지 않는 이유와 문제 해결 방법을 확인하는 것입니다. 특정 공통 기술은 문제점 해결 태스크에 도움이 될 수 있습니다.
문제점 해결 프로세스의 첫 번째 단계는 문제를 완전히 설명하는 것입니다. 문제점 설명은 사용자 및 기술 지원 담당자가 문제점의 원인을 찾기 위해 시작할 위치를 파악하는 데 도움을 줍니다. 이 단계에는 다음과 같은 기본적인 질문을 스스로에게 하는 것이 포함됩니다.
- 문제의 증상은 무엇입니까?
- 문제가 어디에서 발생합니까?
- 문제가 언제 발생합니까?
- 어떤 조건에서 문제가 발생합니까?
- 문제를 재현할 수 있습니까?
일반적으로 이러한 질문에 대한 응답을 통해 문제점을 올바로 설명할 수 있으며 따라서 문제점의 해결책을 찾을 수 있습니다.
문제의 증상은 무엇입니까?
문제점 설명을 시작할 때 가장 명확한 질문은 "문제점이 무엇입니까?"입니다. 이 질문은 간단해 보이지만, 문제점의 더 구체적인 그림을 작성하는 몇몇 집중적인 질문으로 나눌 수 있습니다. 가능한 질문은 다음과 같습니다.
- 누가 또는 무엇이 문제를 보고합니까?
- 오류 코드와 메시지는 무엇입니까?
- 시스템이 어떻게 실패합니까? 예를 들어, 문제점이 루프, 정지, 충돌, 성능 저하 또는 잘못된 결과입니까?
문제가 어디에서 발생합니까?
문제의 원인을 판별하는 것이 항상 쉬운 것은 아니지만 문제 해결에서 가장 중요한 단계 중 하나입니다. 정상적으로 보고되는 구성요소와 장애가 발생하는 구성요소 간에는 다양한 기술상 계층이 존재할 수 있습니다. 네트워크, 디스크 및 드라이버는 문제를 조사할 때 고려해야 할 몇 가지 구성요소에 불과합니다.
다음 질문은 문제점 계층을 구별하는 데 도움이 됩니다.
- 문제점이 하나의 어플라이언스에 특정합니까?
- 현재 환경 및 구성이 지원됩니까?
한 계층에서 문제를 보고한다고 해서 해당 계층에서 문제가 발생하는 것은 아닙니다. 문제의 원인을 식별하는 부분은 문제가 있는 환경을 이해하는 것입니다. 운영 체제 및 버전, 모든 해당 소프트웨어 및 버전과 하드웨어을 포함하여 시간을 갖고 문제점 환경을 완전히 설명하십시오. 사용자가 지원되는 환경 내에서 실행 중인지 확인하십시오. 다수의 문제점이 함께 실행하도록 계획되지 않았거나 완전히 테스트되지 않는 소프트웨어의 비호환 레벨로 역 추적될 수 있습니다.
문제가 언제 발생합니까?
특히 한 번만 발생하는 경우, 실패로 이어지는 이벤트의 세부 타임라인을 개발하십시오. 역순으로 작업하여 가장 쉽게 타임라인을 개발할 수 있습니다. 오류가 보고된 시점에서 시작하여(가능한 한 정확하게, 심지어 밀리초까지) 사용 가능한 로그 및 정보를 통해 역순으로 작업하십시오. 일반적으로는 진단 로그에서 첫 번째로 의심스러운 이벤트만 살펴보면 됩니다.
이벤트의 자세한 타임라인을 개발하려면 다음 질문에 답변하십시오.
- 문제가 낮이나 밤의 특정 시간에만 발생합니까?
- 문제가 얼마나 자주 발생합니까?
- 문제가 보고될 때까지 어떤 일련의 이벤트가 발생합니까?
- 소프트웨어나 하드웨어의 설치나 업그레이드와 같은 환경 변경 이후 문제점이 발생합니까?
어떤 조건에서 문제가 발생합니까?
문제가 발생할 때 실행 중인 시스템과 애플리케이션을 아는 것은 문제점 해결의 중요한 부분입니다. 해당 환경에 대한 이러한 질문은 문제점의 원인을 식별하는 데 도움을 줄 수 있습니다.
- 동일한 태스크를 수행할 때마다 항상 문제가 발생합니까?
- 문제점이 발생하는 데 특정 순서의 이벤트가 발생해야 합니까?
- 다른 애플리케이션이 동시에 실패합니까?
이러한 유형의 질문에 답변하면 문제가 발생하는 환경을 설명하고 종속성을 상관시키는 데 도움이 될 수 있습니다. 여러 문제점이 동시에 발생하는 경우 문제점이 반드시 관련되어 있지는 않습니다.
문제를 재현할 수 있습니까?
재생할 수 있는 문제점은 종종 쉽게 해결됩니다. 하지만 재생할 수 있는 문제에는 단점이 있을 수 있습니다. 문제점이 비즈니스에 중요한 영향을 미칠 경우에는 이 문제점의 재현을 원하지 않습니다. 가능하면 일반적으로 조사 중에 더 많은 유연성과 제어를 제공하는 테스트 또는 개발 환경에서 문제를 다시 재현하십시오. 다음 질문에 답변하십시오.
- 테스트 시스템에서 문제를 재현할 수 있습니까?
- 여러 사용자에게 동일한 유형의 문제점이 발생합니까?
- 단일 명령 또는 명령 세트를 실행하여 문제점을 다시 작성할 수 있습니까?