위험 관리(Risk Management)는 시스템 내에서 사용 가능한 모든 자원을 체계적으로 관리하고 최대한 효율적으로 활용하기 위한 접근 방식입니다.
프로젝트 관리자는 모든 범주에서 발생할 수 있는 위험을 분석해야 하며, 특히 런타임 환경에서 프로젝트가 실행되는 과정에서 다양한 위험 요소가 나타날 수 있습니다.
위험 관리의 5가지 기본 원칙
위험 관리에는 다음과 같은 5가지 기본 원칙이 있습니다.
- 전체적 관점(GLOBAL PERSPECTIVE): 해결하고자 하는 시스템 및 비즈니스 문제 전체의 맥락 안에서 소프트웨어 위험을 분석합니다. 이 분석은 개별 기능이 아닌 더 큰 시스템의 정의, 설계, 구현까지 폭넓게 고려합니다.
- 미래 지향적 관점(FORWARD LOOKING VIEW): 제품에 발생할 수 있는 미래의 위험에 대해 가능한 모든 대응 방안을 고려합니다. 앞으로 마주칠 수 있는 위험 상황을 사전에 계획하는 것이 핵심입니다.
- 열린 커뮤니케이션(OPEN COMMUNICATION): 최종 사용자와 개발팀 간의 원활한 소통 채널을 구축하여 위험과 관련된 모든 문제를 명확하게 공유합니다.
- 통합 관리(INTEGRATED MANAGEMENT): 위험 관리를 별도의 활동이 아닌 프로젝트 관리의 일부로 편입하여, 소프트웨어 개발 생명주기(SDLC) 전반에 통합합니다.
- 지속적 프로세스(CONTINUOUS PROCESS): 실패를 예방하기 위해 위험을 끊임없이 식별해야 합니다. 새롭게 변형된 위험을 지속적으로 발견하고 관련 정보를 수집·추가함으로써 소프트웨어 위험에 대한 통찰력을 높입니다.
위험 관리 패러다임(Risk Management Paradigm)
위험 관리는 소프트웨어 개발 전 과정에서 지속적으로 수행되며, 모든 위험을 추적하고 관리하는 순환적인 프로세스입니다.
아래 그림은 위험 관리 패러다임을 보여줍니다.

위험 관리 패러다임의 6단계
- 식별(Identify): 미래의 문제를 예방하기 위해 위험 요소를 찾아내는 단계입니다. 문제가 발생한 후 해결하는 것보다 위험을 사전에 통제하는 것이 훨씬 쉽습니다.
- 분석(Analyze): 위험의 성격, 동작 방식, 유형에 대한 정보를 도출하기 위해 위험을 분석합니다. 이를 통해 위험에 대한 지식을 확보하고 더 나은 해결책을 마련할 수 있습니다.
- 계획(Plan): 실제 계획을 수립하고 실행에 옮기는 단계입니다. 구체적인 행동 방안을 결정하고 위험 대응 계획을 실행합니다.
- 추적(Track): 위험을 제거하고 최소화하기 위해 필요한 조치들을 지속적으로 모니터링하는 단계입니다.
- 통제(Control): 위험 관리 기법이 제대로 작동하는지 점검하고, 위험 관리 수준을 향상시키기 위해 필요한 조치를 취합니다.
- 소통(Communicate): 위험 관리 패러다임의 마지막 단계로, 개발팀과 테스트팀과 함께 모든 위험 관리 프로세스를 논의하고 공유합니다.