💡 프로젝트 설계
소프트웨어 개발 단계
- 분석 단계
- 사용자 요구사항 정의서
- 유스케이스 명세서
- 요구사항 추적표 등
- 설계 단계
- 작성된 SRS기반 설계
- 클래스 설계서
- 사용자 인터페이스 설계서
- 컴포넌트 설계서
- 인터페이스 설계서
- 통합 시험 시나리오
- 단위시험 케이스
- 데이터 전환 및 초기데이터 설계서 등
- 구현 단계
- 개발 진행도의 가시화
- 단위시험 결과서
- DB 생성 스크립트 등 문서화
- 시험 단계
- 전체적인 테스트
- 통합시험 결과서
- 시스템시험 결과서
- 사용자 지침서
- 운영자 지침서
- 시스템 설치 결과서
- 인수시험 시나리오
- 인수시험 결과서 등
💡 사용자 요구사항 정의서
- 작성 목적
- 시스템 요구사항 합의, 업무단위로서 가치를 가지고 수행될 수 있는 업무를 도출하여 업무내용 기술
- 작성 방법
- 쉽게 구체적인 언어표현 사용, 기능 & 비기능적 요구사항을 그룹핑하여 표로 작성
- 항목
요구사항 ID |
요구사항 명 |
구분 |
요구사항 설명 |
중요도 |
비고 |
SS_FQW2001 |
출금 기능 |
기능 |
입력받은 금액을 차감하여 현금 전환 |
상 |
자동화 기기의 공통 인터페이스 (출금) |
SS_FKZ3001 |
권한 변경 |
부기능 |
조직 내 변경에 따른 권한 변경 시 3분 이내에 적용하도록 한다 |
상 |
|
💡 화면 정의서
- 작성 목적
- 시스템의 유저 인터페이스, 전체구조와 메뉴형식, 화면 목록과 상세 설계 내역 기술
- 작성 방법
- 전체 시스템의 유저 인터페이스 구조를 메뉴형식으로 기술
- 화면 및 출력으로 구분하여 목록 작성, 상세 설계 내용을 화면별로 기술
- 항목
화면ID |
SS_CB_010-01 |
화면 명 |
로그인 |
화면 유형 |
출력 |
메뉴 경로 |
홈 -> 로그인 |
이곳에 설계된 화면 삽입 & 설계화면의 미리보기 확인 삽입된 화면의 '기능' 부분은 1번부터 넘버링하여 미리보기 화면 내 삽입 번호가 매겨진 기능에 대한 설명은 아래 표에 나타냄
기능 번호 |
요구사항 ID |
API 활용 여부 |
API 주소 |
유효성 체크 |
1 |
RK_01_06 |
X |
/abc/v5/login |
ID, PW |
2 |
RK_01_21 |
O |
/abc/v5 |
PW |
3 |
RK_01_55 |
X |
- |
PW |
💡 테이블 명세서
- 작성 목적
- 최종 설계된 테이블 & 인덱스를 DB공간에 매핑, 저장공간 등의 물리 모델 기술
- 작성 방법
- 사내 DB 목록 작성, DB의 물리적 상세내용 기술
- 항목
데이터베이스 명 |
mock_service |
테이블 명 |
User |
요구사항 ID |
KA_01_66, KA_01_87 |
테이블 설명 |
로그인 대상 관리 |
컬럼명 |
컬럼ID |
타입&길이 |
Not Null |
PK |
FK |
IDX |
기본값 |
제약조건 |
ID |
user_id |
CHAR(15) |
Y |
Y |
|
USER060 |
|
|
PW |
user_pw |
VARCHAR(20) |
Y |
Y |
|
|
|
|
💡 Rest API
API를 정의할때 어플리케이션은 보통 Restful한 API를 정의 & 구현함
- 모든 리소스에 대한 고유한 URI부여
- 적절한 HTTP Method 사용으로 인한 리소스 제어 수단
- 요청에 대한 응답은 JSON & XML 같이 사전 정의된 형식 사용
Rest의 특징
- 서버 & 클라이언트 구조 (Server-Client Architecture)
- 무상태성 (Stateless)
- 캐시 가능 (Cacheable)
- 일관된 인터페이스(Uniform Interface)
- 자체적인 표현 구조 (Self-Descriptiveness)
- 계층 구조 (Layered System)
관계 나타내기
users & files : 복수로 표현되는것들을 복수형 표시한다, Collection 이라고 부름
- 1 : 컬렉션에 포함된 대상 리소스는 단수형 표시, Document 라고 부름
Scheme ex) scheme:[//[user[:password]@host[:port]][/path][?query][#fragment]
- scheme - http & https 사용
- user & pw - 데이터가 있는 서버의 ID,PW
- host & port - 서버의 호스트 & 포트
- path - 서버의 상세경로
- query - path 접근 추가정보 (파라미터)
- fragment - 서브 리소스에 대한 접근 식별 정보
Rest API 규칙
HTTP Method
Ex) |
GET (SELECT) |
POST (INSERT) |
PUT (UPDATE) |
DELETE (DELETE) |
/files |
전체 조회 |
신규 파일 등록 |
405 Err (Method Not Allowed) |
전체 삭제 |
/files/1 |
'1' 파일 조회 |
405 Err (Method Not Allowed) |
'1' 파일 수정 |
'1' 파일 삭제 |