SRS/src/introduction.md

73 lines
2.4 KiB
Markdown
Raw Normal View History

2022-04-18 15:18:05 +09:00
# 1. 소개(Introduction)
## 목적(Purpose)
본 문서는 전북대학교 컴퓨터공학과의 Floor 팀에서 Scrap Yard라는 어플리케이션을 설계 및 구현하기 위한 소프트웨어 요구사항 명세서(SRS)이다.
## 범위(Scope)
본 프로젝트는 다음과 같은 항목을 범위로 한다.
- ScrapYard 앱이 가지는 기능
- 기능: 웹페이지 링크 미리보기
- 기능: 로그인이 필요한 곳을 위한 캐시된 웹사이트 제공하는 브라우저 확장기능.
- 기능: 문서 편집
- 기능: Latex 수식 편집
- 기능: 문서 링크 공유(파일 공유)
- 기능: 드래그 앤 드롭 업로드
- 기능: 파일이 에디터 외부에서 편집되어도 업데이트
- 기능: 검색
- 기능: 문서 태그
- 기능: 단순 로그인/로그아웃 설정
- 기능: 관리창
- 기능: self-hosting을 위한 Docker image 제공
- 기능: gitbook 과 같은 문법으로 nav를 만들 수 있음.
- 기능: 다국어 지원: Internationalization (i18n)
- 기능: 테마(Light, Dark)
- 기능: 서버에서의 문서 동시 편집.
- 기능: STUN 서버를 통한 동시 편집.
- 기능: 자동완성
- 기능: 문서 히스토리 버퍼
- 기능: git 사용시 git histroy 보여주고 diff 보여주기
- 기능: 클립보드
- 기능: 워드, 한글 뷰어
- 기능: 여러 파일 형식을 위한 플러그인
## 용어 및 약어 정의(Definitions, acronyms and abbreviations)
|용어 및 약어|정의|
|---|----|
|ScrapYard|현재 개발하는 앱의 명칭|
|DnD|드래그 앤 드롭의 약자|
## 참고자료(References)
1. Knowledge base: https://en.wikipedia.org/wiki/Knowledge_base
2. Open Meta Graph: https://ogp.me/
## 개요(Overview)
개요는 2장에서는 종합적인 요구사항을 서술하고, 3장에서는 기능 및 UI에 대해서 상세한 요구사항을 설명한다.
## 기능적 요구
## 비기능적 요구
- Docker 배포
- .env 설정
- 첫 로드후 로딩 0.5s 이내
- 동시 편집 이용자 5명 이내
- 1000 RPS 정도 버티기
## Detail
### Scrap
#### Focus, Unfocus
사용자가 Scrap의 영역에 클릭을 했을때, Focus 된다. 다른 Scrap의 포커스는 사라진다. Scrap을 수정, 삭제하기위한 기능은 Focus를 해야 할 수 있다.
Unfocus 되었을때 Scrap을 저장한다.
#### 수정
단순 텍스트를 수정한다.