■ SW 개발단계별 주요 Activity 및 각 구성원의 역할
- 개발 단계에 따라 이행할 주요 Activity 및 각 구성원의 역할은 다음과 같다.
▷ 착수 / 계획단계 : High Level Requirements 분석·정의 and Review
- 상위수준의 요구사항 분석 및 정의는 비즈니스 분석가를 중심으로 수행한다.
- 관련 산업 및 기술트렌드 등을 고려한 로드맵을 기반으로 잠재적 시장 및 수요자 요구사항 등을 식별하고, 조직의 비즈니스 목표를 수립한다.
- 비즈니스 요구사항은 비즈니스 목표를 충족하기 위한 기능/비기능 요구사항을 모두포함하여야 하며, 관련 국내외 표준 및 법제도 등에 의한 제약조건 등을 모두 고려하여야 한다.
- 이러한 요구사항은 품질관리 담당자에 의해 상위수준의 품질목표와 세부 지표로 연계되어 정의되어야 한다.
- 정의된 비즈니스 요구사항, 비즈니스 목표 및 이에 기반을 둔 세부 품질목표․지표 등은 관련 이해관계자 간의 리뷰를 통해 일관성, 완전성, 추적성 등을 검증한다.
▷ 요구분석단계 : Low Level Requirements 분석·정의 and Review
- 비즈니스분석가는 상위수준의 요구사항, 비즈니스 룰 등을 기반으로 세부적인 시스템․SW 요구사항을 도출한다.
- 도출된 요구사항은 구현가능한지, 테스트 가능한 수준으로 명확히 정의되었는지 분석한 후 중요도, 리스크수준 등을 고려하여 우선순위를 부여한다.
- 도출된 시스템․SW 요구사항이 비즈니스 목표 및 요구사항과 연계하여 잘 정의되었는지 중점적으로 검증한 후 최종적으로 정의된 요구사항은 Visualization Tool(예,Redmine)에 등록하여 관리하도록 한다.
- 품질관리담당자는 정의된 프로세스를 준수하여 요구사항 분석․정의활동이 이행되었는지, 요구분석단계에 작성될 산출물이 표준에 따라 잘 작성되었는지를 검토하고, 도출된 요구사항이 비즈니스 요구사항으로부터 양방향으로 추적성을 확보하는지 검증한다.
▷ 설계단계 : SW Design and Review
- 설계담당자는 요구분석단계에서 정의된 요구사항을 기반으로 아키텍처설계를 수행한다. 이때, 요구사항단계에서 정의된 비기능 요구사항을 고려해야 하며, 상충되는 요구사항에 대해서는 가중치, 우선순위 등을 고려하여 대안을 제시하여 의사결정을 할 수있도록 해야 한다.
- 상위수준의 아키텍처설계를 기반으로 세부 인터페이스, 클래스 등의 세부설계를 수행한다.
- 테스터는 시스템설계를 기반으로 시스템․통합테스트를 위한 테스트 설계를 수행한다.
- 설계가 완료되면, 품질관리담당자 주도하에 관련 이해관계자이 설계단계 산출물에대한 통합리뷰를 진행한다. 또한, 요구사항으로부터 양방향으로 추적성을 확보하는지 검증한다.
- 신뢰성이 요구되는 SW의 경우는 모델 체킹 등 정형검증을 추가적으로 수행하여 신뢰성을 확보할 수 있도록 하여야 한다.
▷ 구현단계 : SW Design and Review
- SW개발담당자는 설계에 따라 코드를 구현한 후 구현된 코드의 신뢰성 검증을 위해정적분석을 이행한다.
- 테스터는 적절한 도구(예, PMD 등)를 이용하여 정적분석을 수행할 수 있도록 지원하며, 분석결과는 Visualization Tool(예, Jenkins)과 연계하여 Report 할 수 있도록한다.
- 품질관리담당자는 Visualization Tool(예, Jenkins)을 통해 정적분석결과(코딩표준준수율, 정적분석이행율, 매트릭만족도 등)가 목표한 수준을 충족하는지 확인한다.
- SW개발담당자는 구현된 코드의 적정성 및 최적화를 위해 코드리뷰를 실시한다.
▷ 테스트단계 : SW Test and Result 분석
- SW개발담당자는 구현이 완료된 코드를 대상으로 구조적 검증을 위해 White BoxTest를 이행한다. 이때, 테스터는 적절한 도구(예, JUnit, Emma 등)를 이용하여 테스트를 수행할 수 있도록 지원하며, 분석결과는 Visualization Tool(예, Jenkins)과 연계하여 Report 할 수 있도록 한다.
- SW개발담당자는 White Box Test결과(구조적 커버리지)가 목표한 수준을 충족하는지 확인한다.
- White Box Test가 완료되면, SW개발담당자 및 테스터는 SW 기능검증 중심의 단위및 통합테스트를 이행한다. 시스템테스트는 테스터의 주도하에 비기능 요구사항(성능, 볼륨, 스트레스 등)을 충족하는지 검증하며, 테스트결과가 요구사항에 충족되는지 확인한다.
- 품질관리담당자는 테스트 진행에 따라 Visualization Tool(예, Jenkins)을 통해 테스트결과에 따른 테스트이행률, 테스트성공률, 결함밀도, 요구사항달성률 등이 목표에 충족되는지를 확인하고, 인수/릴리즈 요건이 충족되면 이해관계자(CEO, 고객 등)에게 보고한다.
댓글 영역