Contents
프로젝트 개발 단계
순서
분석 -> 설계 -> 구현 -> 시험
1. 분석
1-1. 사용자 요구사항 정의서
2. 설계
2-1. 화면 정의서
2-2. 테이블 명세서
3. 구현
3-1. API 명세서
SRS
소프트웨어가 무엇을 하며, 어떻게 작동할 것인지에 대한 예상을 나타낸 문서
SRS 구성
소개
목적, 문서 규칙, 프로젝트 범위, 참조 등
전체 설명
제품 조망, 기능, 사용자 계층과 특징, 운영 환경, 설계 및 구현의 제약 사항, 사용자 문서 등
시스템 특징
기능에 대한 설명, 자극/응답 순서, 기능 요구사항
외부 인터페이스 요구사항
사용자 인터페이스, 하드웨어 인터페이스, 소프트웨어 인터페이스, 통신 인터페이스
그 외 요구사항
성능, 안전, 보안, 소프트웨어 품질 등
사용자 요구사항 정의서 (분석)
작성목적
시스템의 요구사항을 도출하여 발주자와 합의하고, 수행될 수 있는 업무를 도출하여 업무 내용을 기술한다.
작성방법
표를 이용하여 해당 항목에 기술한다.
기능과 비기능 요구사항을 나누어 쉽고 구체적인 언어표현을 지향한다.
항목설명 예시
요구사항 ID | 요구사항 명 | 구분 | 요구사항 설명 | 중요도 | 비고 |
---|---|---|---|---|---|
SS_RF0001 | 현금 출금 | 기능 | 사용자의 계좌에서 입력받은 금액만큼 차감하여 현금으로 전환시킨다. 이후 현금출금 한다. |
상 | CD/ATM 자동화 기기의 공동 인터페이스(출금) |
SS_RQ0001 | 권한 변경 용이성 | 부기능 | 시스템 관리자가 조직 변경에 따른 권한 변경이 있을 경우, 이를 1분 이내에 적용할 수 있어야 한다. | 상 | - |
- 구분: 기능 / 성능 / 품질 / 인터페이스 / 데이터 / 운영 / 제약사항
화면 정의서 (설계)
작성 목적
시스템이 제공하는 사용자 인터페이스의 전체 구조와 메뉴 형식, 화면 목록과 화면의 상세 설계 내역을 기술
작성 방법
전체 시스템에 대한 사용자 인터페이스의 구조를 사용자에게 제공하는 메뉴 형식으로 기술하고, 화면 및 출력으로 구분하여 목록을 작성하며, 화면의 상세 설계 내용을 화면별로 기술한다.
항목 설명 예시
- 화면 유형: 입력, 출력
- 유효성 체크: 기능이 동작하는 동안 화면 내에서 필수적으로 사용되어야 하는 데이터에 대한 유효성 체크
테이블 명세서 (설계)
작성 목적
최종적으로 설계된 테이블과 인덱스를 DB 공간에 맵핑시키고 저장공간 등의 물리 모델을 기술
작성 방법
부서에서 운영하는 DB 목록을 작성하고, 물리적 상세 내용을 기술
항목 설명 예시
- NOT NULL : 필수항목 여부
- PK (Primary Key) : 주키 여부
- FK (Foreign Key) : 외래키
- INX (Index) : 인덱스
API 명세서 (구현)
RESTFUl
한 API?
모든 리소스에 고유한 URI를 부여하고, HTTP Method를 적절히 사용하여 리소스를 제어할 수 있는 수단
REST API 규칙
규칙 | X | O |
---|---|---|
/로 끝나지 않게 한다. | http://test.com/users/ | http://test.com/users |
_말고 -를 사용한다. | http://test.com/item/spring_boot | http://test.com/item/spring-boot |
소문자를 사용한다. | http://test.com/item/SPRING-BOOT | http://test.com/item/spring-boot |
동사의 사용을 피한다. | http://test.com/add/user | http://test.com/user |
확장자를 포함시키지 않는다. | http://test.com/groups/2/face.png | http://test.com/groups/2/faceAccept:image/png |
관계 나타내기
http://test.com/groups/1/users
Collection
: groups, users처럼 복수로 표현되는 것들은 여러개의 리소스를 가질 수 있다.Document
: 1처럼 Collection에 포함된 대상 리소스는 단수형으로 표시한다./groups/1/users
: Collection과 Document의 관계를/
를 통해 나타낸다. 그룹이라는 Collection 안에 ‘1’ Document를 나타내고, 해당 Document가 갖고 있는 사용자들을 나타낸다.
HTTP Method
예시 | GET (SELECT) | POST (INSERT) | PUT (UPDATE) | DELETE |
---|---|---|---|---|
/users | 사용자 전체 조회 | 신규 사용자 등록 | 실행 불가 | 사용자 전체 삭제 |
/users/1 | 1 사용자 조회 |
실행 불가 | 1 사용자 수정 |
1 사용자 삭제 |
'Project > Stack Over Flow-Clone' 카테고리의 다른 글
프로젝트 기간 동안 해야되는 것 (0) | 2022.10.25 |
---|---|
[2일차 작업일지] 프로젝트 분석, 설계를 진행했다 (0) | 2022.10.24 |
[협업] 다른 사람들과 Git을 함께 사용하려면? (0) | 2022.10.22 |
[1일차 작업일지] 사전 프로젝트를 시작했다! (0) | 2022.10.22 |
[개요] PRE 프로젝트 개요 (0) | 2022.10.22 |
댓글