본문 바로가기

프로그래밍(TA, AA)/개발방법론

[소프트웨어개발론] 프로젝트 체크포인트

리뷰란 주요 개발 단계 완료시 단계 완료를 공식적으로 인정(100퍼센트 또는 0퍼센트)하는 행위입니다. 우리말로는 '검토' 정도가 되지만 실제로는 검토회(의) 정도의 공식적인 행사로 이해해야 합니다. 감리(audit)도 역시 하나의 리뷰 행위입니다. 때문에 리뷰를 단순히 훑어보는 검토로 해석해서는 안됩니다. 간혹 조직마다 룰이 있거나 관공서의 경우 법으로 정해진 경우도 있습니다.


  • ASR/ACR(Alternative System / Concept Review) : 시스템 대안/개념 리뷰
  • SRR(System Requirement Review) : 시스템 요구사항 리뷰
  • SDR/SFR(System Design / Functional Review) : 시스템 설계/기능 리뷰
  • SSR(Software Specification Review) : 소프트웨어 규격 리뷰
  • PDR(Prelim inary Design Review) : 개략설계 리뷰
  • CDR/DDR(Critical/Detail Design Review) : 상세설계 리뷰
  • DR(Design Review) : 설계 리뷰(PDR + CDR/DDR)
  • TRR(Test Rediness Review) : 시험준비 리뷰
  • SVR(System Verification Review) : 시스템 확인 리뷰
  • FQR(Formal Qualification Review) : 공식자격 리뷰
  • PRP/PAR(Production Readiness/Approval Review) : 생산준비/승인리뷰
  • FTR(Formal Technical Review) : 공식기술 리뷰(모든 기술 리뷰 통칭))



소프트웨어는 개발, 운영, 유지보수 단계에서 소프트웨어 품질보증 요건에 적합한가를 결정하기 위해 주기적으로 검토되고 감사를 받아야합니다. 엔지니어링 업무의 품질과 상태를 평가하고, 요구되는 기술문서의 작성과 품질기준에의 적합성을 보증하기 위해서 기술적인 검토와 감사가 주기적으로 시행되어야 합니다.


개발중의 소프트웨어의 검토(Review)는 소프트웨어 품질보증 그룹에 의해 사용되어지는 주된 방법입니다.


  • Software Requirements Review(SPR)
  • Preliminary Design Review(PDR)
  • Critical Design Review(CDR)
  • Software Verification Review(SVR)
  • Functional Configuration Audit(FCA)
  • Physical Configuration Audit(PCA)
  • In-Process Audit




기술검토는 소프트웨어 품질을 확립하기 위한 도움을 주는 것 이상의 여러 목적이 있습니다. 기술검토는 소프트웨어 개발자의 경험을 여러 사람과 함께 나눌 수 있는 기회를 제공합니다.


소프트웨어 검토는 개발 프로젝트와 관련된 팀은 물론 각 개인의 기술적 능력을 향상할 수 있는 장점이 있습니다.


검토 및 감사 시에 사용되는 절차 서에는 참여자, 책임사항, 검토되어야 할 문서의 종류 등이 기술되어야 하고 후속조치 사항과 그 책임사항이 나타나야 합니다.


검토를 단계별로 분류하면 다음과 같습니다.


Software Requirements Review(SRR)는 SRS가 완성된 단계에서 요구사항 시방서의 적절성(adequacy), 기술적 타당성 요구사하의 완전성 등을 보증하기 위한 것입니다. 즉 SRR은 SRS가 소프트웨어의 운전 및 유지보수 단계에서 완벽하고, 검증 가능하며(verifiable), 일관성 있고, 유지보수 및 수정이 가능하며 추적이 용이하고 사용하기 쉽게 작성될 것인지를 평가합니다. SRR에서 참여하는 사람은 소프트웨어 설계요원, 검증요원, 소프트웨어 품질보증 요원, 시스템 엔지니어링 요원, 사용자 및 운영자 등입니다. SRR의 결과로서 식별된 결함사항과 그에 대한 시정조치의 계획과 일정 등이 문서에 포함되어 유지되어야 합니다.


Preliminary Design Review(PDR)는 기능규격서 단계에서 예비 설계의 기술적 타당성을 평가하는 것으로써 첫째 사용된 설계 기법에 대한 기술적 적절성을 평가하고, 둘째 SRS의 기능과 성능의 요구사항이 조화되어 설계되었는가를 체크하고, 셋째 소프트웨어와 하드웨어 및 사용자간의 인터페이스의 조화를 입증해야 합니다.


Critical Design Review(CDR)는 코딩 작업하기 전에 상세설계의 기술적 타당성, 완벽성 및 정확성을 평가합니다. CDR의 목적은 상세설계가 SRS의 요건을 만족하는가 하는 내용 즉, 하드웨어와 소프트웨어의 조화성(Compatibility)를 평가하고 제품설계의 기술, 코스트, 일정 등을 구하기 위해 SDD(Software Design Description)상에 나타난 상세설계의 옳고 그름을 평가하는 것입니다.


CDR은 소프트웨어 품질보증조직, 개발자 및 사용자가 참여하며 검토중 발견되는 결함사항과 이의 해결을 위한 계획 및 일정이 검토의 결과와 함께 문서로 유지되어야 하며, 수정된 SDD는 다음 단계인 시스템 구현 및 코딩단계의 지침으로 사용됩니다.


Software Verification Review(SVR)은 완성된 SWP를 평가하기 위해 행합니다.


SWP는 요건시방서, 개념설계 및 상세설계가 진전됨에 따라 개발되는 것이므로, SWP에 대한 중복적인 검토가 필요합니다. SVR은 SWP에 되어있는 방법들이 적절하고, 소프트웨어에 대한 수긍할 만한 검증을 제공할 수 있는가를 보증하기 위한 것입니다. SVR의 결과에 대한 기록에는 검토시 도출된 결점과 이의 해결에 대한 계획과 일정이 포함되어야 합니다.