-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #28 from 95126m/writting_2
Writting 2
- Loading branch information
Showing
2 changed files
with
190 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
# 네이버블로그 글쓰기 요구사항 정의서 | ||
|
||
## 개요 | ||
### 목적 | ||
네이버블로그에서 자신의 블로그에 글 작성하기 위함 | ||
|
||
### 범위 | ||
+ 이 시스템은 모든 사람이 이용가능하지만, *내 블로그* 의 수정권한은 지정된 사용자만 가능합니다. | ||
+ 다양한 주제(여행, 음식 등)를 가지고 자유롭게 블로그 글 작성이 가능합니다. | ||
|
||
### 기능 | ||
--- | ||
**글쓰기** | ||
+ 권한: 로그인 후 사용가능합니다. | ||
+ 기능: 로그인한 사용자가 *글쓰기 기능* 을 통해 블로그에 새로운 글을 작성할 수 있습니다. | ||
|
||
**글삭제** | ||
+ 권한: 로그인 후 사용가능합니다. | ||
+ 기능: 로그인한 사용자가 *글삭제 기능* 을 통해 기존에 게시했던 게시글을 삭제할 수 있습니다. | ||
|
||
**글수정** | ||
+ 권한: 로그인 후 사용가능합니다. | ||
+ 기능: 로그인한 사용자가 *글수정 기능* 을 통해 기존에 게시했던 게시글을 수정할 수 있습니다. 또한, 게시글은 *옵션, 제목, 내용* 등 전체 수정이 가능합니다. | ||
|
||
|
||
### 비기능적 요구사항 | ||
--- | ||
#### 성능 요구사항 | ||
+ 다양한 나라에서 *내 블로그* 에 접속할 수 있어야합니다. (접근성) | ||
+ 게시글 작성, 수정, 삭제가 즉시 처리될 수 있어야 합니다. | ||
|
||
#### 보안 요구사항 | ||
+ 로그인 없이 사용이 불가능해야 합니다. (암호화) | ||
+ 개인 사용자만 블로그를 이용해야 합니다. (권한) | ||
|
||
#### 사용성 요구사항 | ||
+ 누구나 사용 가능하도록 사용자 인터페이스는 직관적이고 사용하기 쉬워야 합니다. | ||
+ 다양한 웹 브라우저(크롬, 엣지 등)에서 사용이 가능해야합니다. | ||
+ 다양한 기기(PC 및 모바일)에서 사용이 가능해야합니다. | ||
|
||
#### 유지보수성 요구사항 | ||
+ 시스템은 쉽게 업데이트 및 확장될 수 있어야 합니다. | ||
+ 기술 지원을 위한 충분한 문서화가 필요합니다. | ||
|
||
#### 기타 요구사항 | ||
+ 사용자가 *내 블로그* 에 작성한 글은 계속해서 유지되어야 합니다. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,144 @@ | ||
# 네이버블로그 글쓰기 프로젝트 정의서 | ||
|
||
## 개요 | ||
### 프로젝트명 | ||
네이버블로그 글 작성하기 | ||
|
||
### 목표 | ||
+ 네이버블로그 글 작성하기(그 외 삭제, 수정 기능) | ||
|
||
### 사용자 정의 | ||
+ 로그인한 사용자(블로그 주인) | ||
+ 다른 사용자(방문) | ||
|
||
## 요구사항 | ||
요구사항 정의서 참고 | ||
|
||
## 시스템 아키텍처 | ||
### 아키텍처 개요 | ||
|
||
* 프론트엔드: JavaScript (React.js) | ||
* 백엔드: Node.js (Express.js) | ||
* 데이터베이스: MySQL | ||
|
||
### 모듈 구성 | ||
|
||
* 프론트엔드: 사용자 인터페이스, 데이터 시각화, API 연동 | ||
* 백엔드: RESTful API, 비즈니스 로직, 데이터베이스 연동 | ||
* 데이터베이스: 직원 정보, 급여 정보, 근태 정보, 휴가 정보 | ||
|
||
### 데이터베이스 설계 | ||
|
||
데이터베이스 설계서 참고 | ||
|
||
### 인터페이스 설계 | ||
|
||
프론트엔드-백엔드 인터페이스: RESTful API를 사용한 데이터 통신 | ||
백엔드-데이터베이스 인터페이스: Prisma를 사용한 MySQL 연동 | ||
|
||
## 설계 상세 | ||
|
||
### 사용자 스토리 | ||
|
||
#### 직원 관리 | ||
|
||
##### 직원 등록 | ||
* 인사부서 직원으로서, 나는 새로운 직원을 등록하고 싶습니다. 그래서 회사의 직원 정보를 최신 상태로 유지할 수 있습니다. | ||
|
||
##### 직원 정보 수정 | ||
인사부서 직원으로서, 나는 기존 직원의 정보를 수정하고 싶습니다. 그래서 잘못된 정보를 정정하거나 최신 정보를 유지할 수 있습니다. | ||
|
||
##### 직원 삭제 | ||
인사부서 직원으로서, 나는 더 이상 회사에 속하지 않는 직원을 삭제하고 싶습니다. 그래서 직원 데이터베이스를 최신 상태로 유지할 수 있습니다. | ||
|
||
#### 급여 관리 | ||
|
||
##### 급여 계산 | ||
회계부서 직원으로서, 나는 월말에 직원의 급여를 자동으로 계산하고 싶습니다. 그래서 수동 계산의 오류를 줄이고 시간을 절약할 수 있습니다. | ||
|
||
##### 급여 명세서 발행 | ||
직원으로서, 나는 매월 내 급여 명세서를 확인하고 싶습니다. 그래서 내 급여 내역을 명확하게 알 수 있습니다. | ||
|
||
#### 근태 관리 | ||
|
||
##### 출퇴근 기록 | ||
직원으로서, 나는 매일 출퇴근 시간을 기록하고 싶습니다. 그래서 정확한 근무 시간을 회사에 보고할 수 있습니다. | ||
|
||
##### 초과근무 기록 | ||
직원으로서, 나는 초과근무 시간을 기록하고 싶습니다. 그래서 초과근무 수당을 받을 수 있습니다. | ||
|
||
##### 휴가 관리 | ||
직원으로서, 나는 휴가를 신청하고 싶습니다. 그래서 계획된 날짜에 쉴 수 있습니다. | ||
관리자로서, 나는 직원의 휴가 신청을 승인하거나 거절하고 싶습니다. 그래서 부서의 업무 배치를 효율적으로 관리할 수 있습니다. | ||
|
||
#### 보고서 생성 | ||
|
||
##### 급여 보고서 | ||
인사부서 관리자으로서, 나는 월별 급여 보고서를 생성하고 싶습니다. 그래서 회사의 급여 지출을 한눈에 파악할 수 있습니다. | ||
|
||
##### 근태 보고서 | ||
인사부서 관리자으로서, 나는 직원들의 근태 보고서를 생성하고 싶습니다. 그래서 직원들의 출근 현황을 관리할 수 있습니다. | ||
|
||
|
||
## 구현 계획 | ||
|
||
### 개발 환경 | ||
|
||
* 프론트엔드: React.js, HTML, CSS, JavaScript | ||
* 백엔드: Node.js, Express.js, Prisma | ||
* 데이터베이스: MySQL | ||
* 도구: Visual Studio Code, Git, Postman | ||
|
||
### 개발 일정 | ||
|
||
* 요구사항 분석 및 설계 (2주) | ||
* UI/UX 디자인 (4주) | ||
* 백엔드 개발 (8주) | ||
* 프론트엔드 개발 (8주) | ||
* 통합 및 테스트 (4주) | ||
* 배포 및 유지보수 (지속적) | ||
|
||
### 자원 계획 | ||
|
||
* PM: 1명 | ||
* UI/UX 디자이너: 2명 | ||
* 프론트엔드 개발자: 3명 | ||
* 백엔드 개발자: 2명 | ||
* DBA: 1명 | ||
* QA 엔지니어: 3명 | ||
|
||
### 테스트 계획 | ||
#### 테스트 전략 | ||
|
||
유닛 테스트, 통합 테스트, 시스템 테스트, 사용자 수용 테스트 | ||
|
||
#### 테스트 시나리오 | ||
|
||
기능별 TC(테스트 케이스) 정의서 참고 | ||
|
||
#### 품질 보증 | ||
|
||
코드 리뷰, 자동화 테스트(E2E), 성능 테스트 | ||
|
||
### 배포 계획 | ||
|
||
#### 배포 전략 | ||
|
||
스테이징 환경에서 충분한 테스트 후 프로덕션 환경에 배포 | ||
|
||
#### 유지보수 계획 | ||
|
||
버그 수정 및 기능 개선을 위한 정기 업데이트 | ||
|
||
### 문서화 | ||
#### 사용자 매뉴얼 | ||
|
||
시스템 사용법을 상세히 설명하는 매뉴얼 작성 | ||
|
||
#### 개발자 문서 | ||
|
||
시스템 아키텍처, API 명세서, 코드 설명서 작성 | ||
|
||
#### 용어 정의 | ||
|
||
주요 용어와 약어 정의 |