73 lines
2.4 KiB
Markdown
73 lines
2.4 KiB
Markdown
|
# 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을 저장한다.
|
||
|
|
||
|
#### 수정
|
||
|
단순 텍스트를 수정한다.
|