주제 설정 후에 요구분석을 처음으로 함
데이터 모델링: 데이터베이스를 새롭게 구축하기 위한 준비과정, 요구사항을 듣고 사용자 관점을 분석하여 추상화하여 문서화하는 과정
관리: 등록, 수정, 삭제, 조회를 뜻함 > 이를 위해 데이터베이스 설계가 필요
계획 > 분석 > 설계 > 구축
계획: 세부 추진일정 수립, 인터뷰 계획(현업 담당자와 개발자 간에 , 자료수집 계획(요구분석 및 입출력 장표수립), 요구 분석 자료 만들어짐
분석: 정표와 인터뷰 자료 등 수립된 자료를 바탕으로 DATA분석, 개념적 데이터 모델링 및 ERD 작성, 만들어진 사이트의 장점과 단점을 분석하고 벤치마킹
설계: ERD를 기반으로 테이블 설계서 작성, 물리적 구조 설계(필드명 정하기 끝나면 바로 만들어도 O), 화면 설계서 작성
구축: 테이블 설계서를 기반으로 테이블 생성, 화면 설계서를 기반으로 프로그램 코딩(VB,PB, MFC 등)
계획
요구사항 분석: 사용자의 요구사항을 간단하게 기술, 필요한 항목, 어떤 내용이 저장되어야만 하는지, 테이블, 완벽할 수는 없지만 전체가 바뀌면 안된다. EX) 우리 사이트에서 저장된 데이터는 5년 동안 저장됩니다, 게시판이면 게시판에 관련된 모든 업무를 맡아야함. 요구분석부터 마지막까지 만들면서 통합 OR 같이 만들자. 온전하게 한 사람이 CRUD가 되어야함.
일정 정리: 오늘은 여기까지 하고 반드시 여기까지 끝내야해
사용자의 요구 등을 정리 및 분석
- 사용자 식별
- 데이터 베이스 용도 식별
- 사용자 요구 사항 수집 및 명세
유스케이스 다이어그램
유스케이스: 말 그대로 풀어보면 "사용 사례"로서 시스템이 어떻게 사용될지에 대해 표준화된 규칙에 따라 다이어그램으로 표현한 것이다. 고객과 개발자는 표준화된 규칙만 이해하고 있다면, 유스케이스 다이어그램을 통해 시스템의 기능이나 상호 작용 등을 쉽게 이해할 수 있다.
유스케이스를 이용한 요구사항 분석 방법: 통일된 규칙으로 시스템을 표현하고, 이를 통해 고객 및 사용자, 개발자의 다양한 관점을 찾아내어 그 간격을 조정하는 것. 이러한 유스케이스 기반의 요구사항 분석은 시스템을 가시화시켜 주는 모델링 기법인 UML을 이용.
1.UML: 요구사항의 추출부터 분석, 명세를 통하여 생성되는 산출물들을 표준화된 다이어그램으로 연결시킴으로써, 고객 및 사용자, 개발팀의 다양한 관점을 다룰 수 있는 효과적인 도구
정의: 소프트웨어 공학에서 사용되는 표준화된 범용 모델링 언어로 소프트웨어 개념을 다이어그램으로 그리기 위해 사용하는 시각적인 표기법
필요성:
1. 시스템의 구조적 문제와 프로젝트 팀내의 의사 소통
2. 대규모 프로젝트 구조의 로드맵을 만들 때 유용하다.
3. 개발할 시스템 구축에 대한 기초를 마련할 수 있다.
4. 유지보수를 위한 설계의 back-end 문서
2.유스케이스 다이어 그램: 사용자 관점에서 시스템의 서비스와 기능 및 그와 관련된 외부 요소를 보여주는 다이어그램이다. 고객과 개발자는 이 다이어그램을 보며 요구사항에 대한 의견을 조율
시스템: 만들고자 하는 시스템의 범위를 뜻한다. 시스템을 표현하기 위해서는 유스케이스를 둘러싼 사각형의 틀, 시스템 명칭을 사각형 안쪽 상단에 기술
액터: 시스템의 외부에 있으면서 시스템과 상호작용하는사람 또는 다른 시스템, 사람모양, 액터명=액터의 역할
유스케이스: 시스템이 액터에게 제공해야하는 기능의 집합. 시스템의 요구사항을 보여줌. 타원. 동사로 표현. 유스케이ㅣ스 하나가 개발될 기능 하나와 연결될 수 있도록한다.
관계: 시스템의 요구사항을 액터와 유스케이스 간에 상호작용이 존재함을 나타냄. 연관관계로 나타낼 때 액터와 유스케이스 사이에 실선을 연결하여 표현 / 유스케이스-유스케이스: 실선X, 점선
포함관계: 하나의 유스케이스가 다른 유스케이스의 실행을 전제로 할 때 형성되는 관계. 포함되는 유스케이스는 포함하는 유스케이스를 실행하기 위해서는 "로그인을 한다" 라는 유스케이스가 먼저 실행되어야 하므로 포함관계 표시
포함하는 유스케이스에서 포함되는 유스케이스 방향으로 화살표를 점선으로 연결 표현 <<include>> / 유스케이스 사이의 상호작용
확장관계: 확장 기능 유스케이스와 확장 대상 유스케이스 사이에 형성되는 관계. 하나의 유스케이스가 실행될 때 포함 관계에 있는 유스케이스가 특정 상황에서만 실행된다는 뜻. ex) 파일 첨부기능 > 글을 등록한다라는 유스케이스는 확장 대상 유스케이스가 되고 파일을 첨부한다라는 유스케이스는 확장 기능 유스케이스.
확장 기능 유스케이스에서 확장 대상 유스케이스 방향으로 화살표를 점선으로 연결 표현. <<extend>> 표현
일반화 관계; 유사한 유스케이스들 또는 액터들을 모아 그들을 추상화(주어진 문제나 시스템을 중요하고 관계있는 부분만 분리해 내어 간결하고 이해하기 쉽게 만드는 작업.)한 유스케이스 또는 액터와 연결시켜 그룹핑함으로써 이해도를 높이기 위한 관계. 구체적인 유스케이스에서 추상적인 유스케이스 방향으로 끝부분이 비어져 있는 삼각형 테두리로 표현된 화살표를 실선으로 연결하여 표현
유스케이스 다이어그램 작성: 개발하고자 하는 시스템을 유스케이스 다이어그램으로 표현하는 것을 유스케이스 모델링
-사용자 식별, 외부 시스템 식별, 표현 대상인지 아닌지.
-액터가 요구하는 서비스 식별, 정보 식별, 액터가 시스템과 상호 작용하는 행위 식별
-액터와 유스케이스 간의 연관관계 정의, 유스케이스 간 포함, 확장 관계 정의, 액터 간, 유스케이스 간의 일반화 정의
회원등록을 할 때에는 반드시(포함관계) 실명확인을 한다.
유스케이스 기술서
유스케이스 이름, 액터명, 유스케이스 개요 및 설명, 사전 및 사후 조건, 작업 흐름, 시나리오
작업흐름
-정상흐름: 해당 유스케이스가 정상적으로 수행되는 흐름
-대안 흐름: 유스케이스 내의 작업 흐름이 수행되는 중에 특정 시점에서 여러 가지 선택적인 흐름으로 나뉘어 질 경우에 발생하는 흐름.
- 예외 흐름: 유스케이스 내의 작업 흐름이 수행되는 중에 발생할 수 있는 예외상황이나 오류를 표현하는 흐름.
• 유스케이스명: 글을 등록한다.
• 액터명: 사용자
• 유스케이스 개요 및 설명
- 사용자는 원하는 글을 게시판을 등록한다.
• 사전 조건: 로그인한다.
• 작업 흐름
- 정상 흐름(Normal Flow)
1. 사용자는 글쓰기 버튼을 클릭한다
2. 시스템은 글쓰기 화면을 실행한다.
3. 사용자는 글쓰기 화면에서 원하는 글을 작성한다.
4. 사용자는 등록버튼을 클릭한다
5. 시스템은 글을 데이터베이스 게시판 테이블에 저장한다.
- 대안 흐름(Alternative Flow):
1. 정상흐름4에서 등록 취소버튼을 선택할 경우, 시스템을 게시판 목록 조회 화면을 보여준다
- 예외 흐름(Exception Flow)
1. 정상흐름3에서 글쓰기 화면에서 글을 쓰지 않고 등록 버튼을 클릭할 경우, 시스템은 “내용을 입력해 주세요”라는 경고 메시지를 보여준다.
요구사항 정의서
요구사항들의 목록화를 통해 전체적인 요구사항의 리스트를 확인
리스트를 확인하는 문서, 자세한 내용은 명세서를 확인 / 요구사항 ID는 모든 산출물 문서에 표시해야함, 중복되지 않게 작성
요구사항 명세서: 요구사항들의 상세 내역
들어가자 마자 다운받으면 한달뒤에 자동 결제
https://www.visual-paradigm.com/download/community.jsp
3. 클래스 다이어그램