소프트웨어 요구공학

요구사항 명세서 체크리스트

자격증 홀릭 2022. 6. 8. 11:02
728x90
반응형

요구사항 명세서 체크리스트 (출처 :  Steve McConnell )

요구 사항의 품질

- 요구 사항이 사용자의 언어로 작성되었는가? 사용자도 그렇게 생각하는가?

- 각 요구 사항이 다른 요구 사항들과 충돌하지 않는가?

- 견고함과 수정 용이성과 같이 서로 충돌하는 특성들 사이의 트레이트오프(trade-off)가 지정되었는가?

- 요구 사항이 설계를 나타내고 있지는 않은가?

- 요구 사항이 일관된 수준으로 기술되어 있는가? 보다 구체적으로 기술되어야 하는 요구 사항은 없는가? 보다 추상적으로 기술되어야 하는 요구 사항은 없는가?

- 구현시에 독립적인 그룹으로 나눌 수 있을 만큼 요구 사항이 명확한가? 이해할만 한가? 개발자도 그렇게 생각하는가?

- 각 항목이 문제점과 해결책에 관련되어 있는가? 각 항목의 원인을 문제의 범위에서 찾을 수 있는가?

- 각 요구 사항이 테스트 가능한가? 각 요구 사항들이 만족스러운지를 결정하기 위한 개별적인 테스트가 가능한가?

- 요구 사항에 대한 가능한 모든 변경 사항들이 명시되었는가?

 

요구 사항의 완성도

- 개발을 시작하기 전에 정보를 사용할 수 없다면, 그 부분이 명시되었는가?

- 제품이 모든 요구 사항을 충족시킨다고 할 때, 요구 사항이 완벽하다고 생각하는가?

- 모든 요구 사항에 만족하는가? 구현이 불가능한 요구 사항을 제거했는가? 고객과 상사에게 보여주기 위해서 포함시킨 요구 사항은 없는가?

 

 

구체적인 기능 요구 사항

- 시스템에 대한 입력의 출처와 정확도, 값의 범위, 빈도를 포함한 모든 입력이 명시되었는가?

- 시스템의 목적과 정확도, 값의 범위, 빈도, 형식을 포함한 모든 출력이 명시되었는가?

- 웹 페이지와 보고서 등을 위한 모든 출력 형식이 명시되었는가?

- 모든 외부 하드웨어와 소프트웨어 인터페이스가 명시되었는가?

- 핸드 쉐이킹(Hand Shaking)과 오류 검사, 통신 프로토콜을 포함한 모든 외부통신 인터페이스가 명시되었는가?

- 사용자가 수행하고자 하는 모든 작업이 명시되었는가?

- 각 작업에서 사용되는 데이터와 작업의 결과로 생긴 데이터가 명시되었는가?

 

구체적인 비 기능(품질) 요구 사항

- 모든 연산에 대해서 예상 응답 시간이 사용자 관점에서 명시되었는가?

- 처리 시간이나 데이터 전송률, 시스템 처리량과 같이 시간을 고려해야 하는 사항들이 명시되었는가?

- 보안 수준이 명시되었는가?

- 소프트웨어 실패로 인한 결과와 실패로부터 보호되어야 하는 중요한 정보, 오류 검출과 복구를 위한 방법을 포함한 안정성에 대한 대책이 지정되었는가?

- 최소 메모리와 디스크 공간이 지정되었는가?

- 특정한 기능에서의 변경과 운영 환경에서의 변경, 다른 소프트웨어와의 인터페이스 변경을 수용할 수 있는 능력을 포함한 시스템의 유지 보수성이 지정되었는가?

- 프로젝트의 성공이나 실패에 대해서 정의되었는가?

 

 
 
 
728x90