SRS/src/OverallDescription.md
2022-04-18 16:54:59 +09:00

4.2 KiB

2. 전체 시스템 개요(Overall description)

2.1. 제품 관점(Product perspective)

2.1.1. 시스템 인터페이스(System interfaces)

본 시스템은 Cross-platform 소프트웨어이다. 다음과 같은 브라우저가 원활히 실행될 수 있는 시스템에서 동작 할 수 있다.

  • Chrome 버전 61 이상
  • Firefox 버전 60 이상
  • Edge 버전 79 이상
  • Safari 버전 11 이상
  • Chrome for Android 버전 100 이상
  • Samsung internet 버전 8.2 이상

2.1.2. 사용자 인터페이스(User interfaces)

웹으로 동작하는 GUI이다. 키보드와 마우스, 터치 인터페이스로 동작할 수 있다. GUI의 디자인은 Material Design이나 Metro Design 같이 플랫한 디자인을 추구한다.

2.1.3. 하드웨어 인터페이스(Hardware interfaces)

해당되지 않음.

2.1.4. 소프트웨어 인터페이스(Software interfaces)

이 프로젝트의 결과물은 클립보드를 통해서 여러 타입의 데이터를 import/export한다.

2.1.5. 통신 인터페이스(Communications interfaces)

해당되지 않음.

2.1.6. 메모리 제약사항(Memory constraints)

해당되지 않음.

2.1.7. 운영(Operations)

  • 지정해야 하는 운영 작업의 종류
    1. 사용자 그룹의 다양한 운영 모드
    2. Interactive한 작업 기간과 unattended한 작업의 기간
    3. 데이터 처리 지원 기능
    4. 백업 및 복구 동작
  • 사용자 인터페이스 항목의 일부로 지정되기도 한다.

2.1.8. 사이트 적용 요건(Site adaption requirements)

해당되지 않음.

2.2. 제품 기능(Product functions)

본 프로젝트의 결과물은 다음과 같은 기능을 수행한다.

2.2.1 Scrap Opreration

  1. Focus, Unfocus
  2. 수정
  3. 읽기
  4. 삭제
  5. 다른 것과 스왑
    • Alt 화살표로 스왑
  6. LaTex 편집, 미리보기 띄워주기
  7. 링크 타입
    • 미리보기 보여주기
    • 링크 캐시
  8. git 히스토리 보여주기
  9. LaTex 타입
  10. 그림, 비디오
  11. 워드, 한글 뷰어
  12. 자동 완성

2.2.2 Document Opreration

  1. Scrap 얻어오기
  2. 삭제
  3. 태그 붙이기
  4. 드래그 앤 드롭 업로드
  5. 외부 변경 감지 자동 리로드
  6. 공유
  7. STUN, TURN 서버를 통한 편집
  8. navigator

2.2.3 File TreeView Opreration

  1. 파일 삭제
  2. 파일 다운로드
  3. 파일 업로드
  4. Document 오픈
  5. 드래그앤드롭 파일 move

2.2.4 Search Opreration

  1. 문서 태그 검색
  2. 문서 내용 검색

2.2.5 Clipboard Opreration

  1. 보기
  2. 추가
  3. 삭제
  4. 클립보드 내용 바꾸기.
  5. 드래그앤드롭 파일

2.2.6 Management Opreration

  1. login with session
  2. Configure
  3. 현지화(localization)
  4. 테마

2.2.7 내부 플러그인 Opreration

  1. 샘플: 체스 형식 뷰어

2.2.8 브라우저 확장기능 Opreration

  1. 로그인이 필요한 곳을 위한 캐시된 웹사이트 제공하는

2.2.9 비기능적 기능

  • Docker 배포
  • .env 설정
  • 첫 로드후 로딩 0.5s 이내
  • 동시 편집 이용자 5명 이내
  • 1000 RPS 정도 버티기

2.3. 사용자 특성(User characteristics)

사용자는 기본적인 GUI 조작을 할 줄 알며 인터넷 사용을 원활히 할 수 있고 기본적인 영어를 읽고 쓸 줄 알며, markdown을 작성할 수 있는 사용자로 한정한다. 일반적으로 13세 이상 65세 이하의 사람을 사용자로 가정한다.

2.4. 제약사항(Constraints)

이 프로젝트는 MIT License로 개발되고 있으므로 라이브러리의 라이센스도 신경을 쓴다.

  • 개발자의 선택을 제한할 모든 항목에 관한 일반적인 설명을 제공해야 한다.
  • 포함되는 내용
    1. Regulatory plocies
    2. Hardware limitations (e.g., signal timing requirements)
    3. Interfaces to other applications
    4. Parallel operation
    5. Audit functions
    6. Control functions
    7. Higher-order language requirements
    8. Signal handshake protocols(e.g., XON-XOFF, ACK-NACK)
    9. Reliability requirements
    10. Criticality of the application
    11. Safety and security considerations

2.5. 가정 및 의존성(Assumptions and dependencies)

해당되지 않음.

2.6. 단계별 요구사항(Apportioning of requirements)

해당되지 않음.