Proven by Intelligence
보이지 않는 안전을 인텔리전스로 증명하다.
기술 인사이트를 만나보세요.
소프트웨어가 포함된 제품의 개발 과정이 복잡해지면서 요구사항부터 설계, 개발, 테스트, 릴리즈까지 각 단계에서 생성되는 다양한 정보를 체계적으로 관리하는 것이 중요해지고 있습니다.
특히 요구사항은 ALM(Application Lifecycle Management) 시스템에서 관리하고, 실제 소스코드와 개발 활동은 GitHub와 같은 형상관리 도구에서 관리하는 경우가 많습니다.
각 도구가 담당하는 영역은 다르지만, 서로 분리된 환경에서 개발 정보가 관리될 경우 요구사항의 변경이 실제 개발에 어떻게 반영되었는지 확인하거나 특정 변경사항이 어떤 요구사항과 연결되어 있는지 추적하는 데 어려움이 발생할 수 있습니다.
이러한 문제를 해결하기 위한 방법 중 하나가 Codebeamer와 GitHub의 연동입니다.
1. ALM에서 중요한 추적성 관리
ALM 환경에서는 단순히 요구사항이나 테스트 결과를 각각 관리하는 것뿐만 아니라, 개발 과정에서 생성되는 다양한 산출물 간의 관계를 연결하고 추적할 수 있어야 합니다.
예를 들어 하나의 요구사항이 변경되었을 때 해당 요구사항과 관련된 개발 항목이나 테스트 항목을 함께 확인할 수 있다면 변경으로 인해 영향을 받는 범위를 보다 쉽게 파악할 수 있습니다.
반대로 특정 기능의 개발 과정에서 변경된 내용을 확인하고자 할 때에도 해당 변경이 어떤 요구사항을 기반으로 이루어졌는지 확인할 수 있다면 개발 이력을 보다 체계적으로 관리할 수 있습니다.
즉, ALM에서 말하는 추적성(Traceability)은 각각의 개발 활동을 개별적으로 관리하는 것이 아니라 요구사항부터 개발 및 테스트까지 서로 연결하여 전체 개발 과정을 확인할 수 있도록 하는 것이라고 볼 수 있습니다.
2. Codebeamer와 GitHub 연동
Codebeamer는 요구사항, 위험 관리, 테스트 등 제품 개발 과정에서 필요한 다양한 정보를 관리할 수 있는 ALM 플랫폼입니다.
반면 GitHub는 소스코드와 버전 관리, 개발자의 변경 이력 및 협업을 관리하는 개발 플랫폼으로 활용됩니다.
따라서 두 시스템을 연동하면 각 도구에서 관리되는 개발 정보를 연결하여 활용할 수 있습니다.
예를 들어 Codebeamer에서 관리하고 있는 요구사항과 실제 개발 과정에서 발생하는 GitHub의 변경 이력을 연결하여 관리할 수 있습니다.
개발자는 기존과 같이 GitHub를 사용하여 소스코드를 관리하면서 개발 활동을 수행할 수 있고, ALM 관점에서는 해당 개발 활동과 요구사항 사이의 관계를 확인할 수 있는 환경을 구성할 수 있습니다.
이를 통해 요구사항 관리와 소스코드 관리를 서로 분리된 업무로 바라보는 것이 아니라, 하나의 개발 lifecycle 안에서 연결하여 관리할 수 있습니다.
3. 연동을 통한 개발 이력 및 변경사항 추적
실제 소프트웨어 개발에서는 요구사항이 한 번 정의된 이후에도 지속적으로 변경될 수 있습니다.
요구사항이 변경되면 이에 따라 소스코드가 수정될 수 있고, 수정된 기능은 다시 테스트 과정을 거치게 됩니다.
이처럼 하나의 변경사항이 여러 개발 활동에 영향을 미칠 수 있기 때문에 변경 이력을 추적하고 관련 정보를 빠르게 확인하는 것이 중요합니다.
Codebeamer와 GitHub를 연동하면 이러한 개발 과정에서 발생하는 정보를 서로 연결하여 관리하는 데 도움을 받을 수 있습니다.
예를 들어 특정 요구사항과 관련된 개발 변경사항을 확인하거나, 개발 과정에서 발생한 변경 이력을 기반으로 관련 요구사항을 확인하는 방식으로 활용할 수 있습니다.
이를 통해 담당자는 각각의 시스템을 별도로 확인하면서 정보를 찾아야 하는 부담을 줄이고, 개발 과정에서 발생한 변경사항을 보다 쉽게 파악할 수 있습니다.
4. Codebeamer와 GitHub 연동의 기대 효과
Codebeamer와 GitHub의 연동을 통해 기대할 수 있는 대표적인 효과는 다음과 같습니다.
① 요구사항과 개발 정보의 연결
요구사항과 소스코드 개발 활동을 연결하여 관리함으로써 요구사항이 실제 개발 과정에 어떻게 반영되고 있는지 확인하는 데 도움을 줄 수 있습니다.
② 개발 변경 이력의 가시성 향상
GitHub에서 발생하는 개발 활동 및 변경 이력을 ALM 관점에서 확인할 수 있어 프로젝트의 개발 진행 상황과 변경사항을 보다 쉽게 파악할 수 있습니다.
③ 변경 영향 분석 지원
요구사항 변경이나 개발 변경이 발생했을 때 관련 정보를 연결하여 확인할 수 있기 때문에 변경으로 인해 영향을 받을 수 있는 항목을 파악하는 데 도움을 줄 수 있습니다.
④ 개발 프로세스의 추적성 강화
요구사항과 개발 활동을 연결함으로써 개발 과정에서 발생하는 다양한 정보를 보다 체계적으로 추적할 수 있습니다. 이는 특히 여러 단계의 산출물과 개발 이력을 관리해야 하는 프로젝트에서 유용하게 활용될 수 있습니다.
5. ALM 환경에서의 도구 연동
오늘날의 소프트웨어 개발 환경에서는 하나의 도구만으로 모든 개발 활동을 관리하기보다는 각각의 목적에 맞는 다양한 도구를 함께 사용하는 경우가 많습니다.
따라서 ALM의 중요한 역할 중 하나는 각각의 도구를 단순히 대체하는 것이 아니라, 서로 다른 시스템에서 관리되는 개발 정보를 연결하여 전체 lifecycle을 하나의 흐름으로 관리할 수 있도록 하는 것이라고 할 수 있습니다.
Codebeamer 역시 요구사항, 위험, 테스트 등의 정보를 관리하는 ALM 플랫폼으로서 GitHub와 같은 개발 도구와 연계하여 프로젝트에서 발생하는 다양한 정보를 연결할 수 있습니다.
결국 이러한 연동의 핵심은 특정 도구를 하나로 통합하는 것에만 있는 것이 아니라, 개발 과정에서 생성되는 정보를 서로 연결하고 추적성을 확보하는 것에 있습니다.
마무리
소프트웨어 중심의 제품 개발이 확대되면서 요구사항 관리뿐만 아니라 개발 과정에서 발생하는 다양한 정보와 변경 이력을 함께 관리하는 것이 중요해지고 있습니다.
Codebeamer와 GitHub의 연동은 요구사항 관리와 소스코드 개발이라는 서로 다른 영역의 정보를 연결하여 개발 과정의 가시성과 추적성을 높일 수 있는 방법입니다.
이를 통해 개발자는 기존 개발 환경을 유지하면서 업무를 수행하고, 프로젝트 관리 측면에서는 요구사항부터 개발 활동까지 연결된 정보를 기반으로 프로젝트의 진행 상황과 변경사항을 보다 체계적으로 관리할 수 있습니다.
앞으로도 다양한 개발 도구와 ALM 플랫폼 간의 연동은 복잡해지는 소프트웨어 개발 환경에서 개발 정보의 연결성과 추적성을 확보하기 위한 중요한 요소가 될 것으로 기대됩니다.
이번 포스팅 관련하여 추가 문의 사항 있으시다면 언제든지 아래 메일 주소 문의 남겨주세요!
