ㅇ 요구사항 정의서
서비스와 기능을 자세히 적은 것
ㅇ유스케이스 다이어그램
이 프로그램을 누가 사용할 건지 결정해야 해
사용자가 누구냐에 따라 제공되는 서비스가 달라지니까
지금 샘플은 통역앱 명소추천서비스
회원 가입이 있으면 사용자와 회사를 연결하는 구조가 나올 수도 있어
ㅇ유스케이스명세
다이어그램을 텍스트로 표현
아이디는 중복되지 않게 결정
요구사항 : 서비스 제공에 필요한 세부 기능들
선행조건은 그냥 n/a로 해버려
관련 액터는 사용자인지 카페 주인인지 이런 거
이벤트 흐름 : 어떤 식으로 요청이 들어오고 내부에서 처리가 되서 사용자에게 돌려주는지
종료 조건 : 회원가입이면 회원가입이 완ㄹ되었습니다~가 종료 조건
사후조건, 기타 요구사항은 - 없음
다이어그램에 나타나있는 모든 서비스를 대상으로 명세서를 작성하면 돼
ㅇ 기능과 비기능
기능 : 서비스 제공에 필요한 세부 단위 프로그램
비기능 : 성능과 관련된 요소
ㅇ 기능 요구사항
가운데 줄 그어진 건 삭제 느낌
설계 때는 필요하다고 생각했는데 개발 과정에서 필요없어진 부분
설계 문서는 변경에 대한 이력관리가 필요하기 때문에 실제로 삭제하는 게 아니라 삭제한다고 표현
실제 보고서 제출할 때는 삭제해서 제출하긴 해야 해
ㅇ 비기능 요구사항
우리가 할 수 있는 부분이 아니야
현업에서도 외부 기관에 인증. 성능 테스트 해주는
하드웨어적이라서 작성 안하는 쪽으로 생각하면 돼
iot - 센서의 활용률, 수집률
빅데이터 인공지능 - 우리가 만든 분석 모델의 적중률
지금 있는 파일들 + 시스템 구조에 대한 설계도 해야 해
근데 시스템 구조는 하드웨어나 네트워크에 대한 내용들이 들어가야 해서 현재 할 수 없는 부분이라서 뺌
ㅇ 화면설계서
사용자 ui 설계
이거 설계하기 엄청 어려울 거야
그러니까 이 부분은
실제로 개발한 것을 역으로 부어주는 형태로 진행해도 좋을 듯
물론 개발 하기 전에 사전에 인터페이스 만들 수 있다면 정말 좋겠지! 할 수 있으면 하면 좋아~
그게 어려운 팀들은 화면 설계에 관해서만 동시진행
ㅇ 데이터베이스 요구사항 분석서
데이터 수집 저장을 위해
세부적인 부분은 디비설계 수업시간에
1요구사항정의서
어떤 db를 만들기 위해서 사용자의 니즈를 분석하는 단계
향후 테이블이 되어야 할 컬럼, 컬럼들의 관계
2 객체 정의서
이걸 크리에이트 테이블로 구현하면 돼
3 e-r 다이어그램
테이블간의 관계를 다이어그램으로
ㅇ 테이블 명세서
요구사항 정의서에서 나온 것들을 적으면 돼
인덱스는 생략
마지막 큰 칸에는 실제 명령어
구현은 따로 산출문서 없이 그냥 개발하면 돼