SRS(Software Requirements Specification)
소프트웨어가 무엇을 할 것이고, 어떻게 작동할 것으로 예상되는지를 설명하는 문서
제품과 관련된 모든 이해 관계자의 요구를 충족시키는데 필요한 기능을 설명
SRS는 한마디로 제품을 기획, 분석, 설계, 구현, 시험하는데 필요한 종합 설계도와 같다.
프로젝트 흐름
- 과업 발생
- 사업자 선정 및 계약
- 기획, 분석
- 설계
- 구현
- 시험
- 서비스 오픈
개발 관련 용어
- 솔루션 : 기업에서 개발한 제품을 의미 ex) 카카오톡, 배달의 민족에서 개발한 애플리케이션
- SI(System Integration) : 시스템 구축을 의미
- SM(System Management) : 시스템 운영 및 유지보수를 의미
SRS 구성
- 소개(Introduction)
- 목적(Purpose)
- 문서 규칙(Document Convention)
- 독자 대상과 읽는 방법(Intend Audience and Reading Suggestion)
- 프로젝트 범위(Project Scope)
- 참조(Reference)
- 전체 설명(Overall Description)
- 제품 조망(Product Perspective)
- 제품 기능(Project Feature)
- 사용자 계층과 특징(User Classes and Characteristic)
- 운영 환경(Operation Environment)
- 설계 및 구현 제약사항(Design and Implementation Constraint)
- 사용자 문서(User Documentation)
- 가정과 종속관계(Assumptions and Dependencies)
- 시스템 특징(System Feature)
- 설명과 우선 순위(Description and Priority)
- 자극과 응답 순서(Stimulus and Response Sequence)
- 기능 요구 사항(Functional Requirement)
- 외부 인터페이스 요구사항(External Interface Requirement)
- 사용자 인터페이스(User Interface)
- 하드웨어 인터페이스(Hardware Interface)
- 소프트웨어 인터페이스(Software Interface)
- 통신 인터페이스(Communication Interface)
- 기능 이외의 다른 요구 사항(Other Nonfunctional Requirements)
- 성능 요구 사항(Performance Requirement)
- 안전 요구 사항(Safety Requirement)
- 보안 요구 사항(Security Requirement)
- 소프트웨어 품질 특성(Software Quality Attribute)
- 다른 요구 사항(Other Requirements)
소프트웨어 개발 단계
- 분석 단계 : 요구사항 등을 담은 명세서 작성
- 설계 단계 : 분석 단계의 문서를 바탕으로 클래스, 아키텍처 등등 설계
- 구현 단계 : 실제 개발 작업이 이루어지는 단계로 코드, 단위 테스트 등을 문서화
- 시험 단계 : 전체적인 테스트를 하는 단계로 테스트 결과, 사용자 및 운영자를 위한 메뉴얼 등을 문서화
사용자 요구 사항 정의서
말 그대로 사용자의 요구 사항을 기반으로 SRS 협의 내용을 적용, 실제 개발에 적용할 수 있는 수준으로 요구 사항 재정의하는 문서를 의미
기능적인 요구 사항과 비기능적인 요구 사항을 그룹핑하여 별도의 표로 작성
'Develop > ETC' 카테고리의 다른 글
프로젝트 설계 (0) | 2022.12.19 |
---|---|
의사코드(수도코드; pseudocode)란? (0) | 2022.09.27 |
메타인지란? (0) | 2022.08.20 |