[TIL] 20240702 - 웹 기반 문서 편집기 제작 프로젝트

jini·2024년 7월 2일
0

TIL

목록 보기
37/48

목표


React와 Express를 이용한 통합 프로젝트

  • 데이터베이스와 사용자 인터페이스를 포함하여 개발
  • 개발 및 통합(빌드, 테스트) 과정을 자동화 파이프라인으로 구축

🧊 실습 흐름

  1. 요구사항 분석과 구조 설계

  2. 백엔드 상세 설계와 개발환경 셋업

  3. 단위테스트와 컨테이너화

  4. Selenium을 이용한 E2E(end-to-end) 테스트

  5. AWS 클라우드 인프라를 이용하여 배포

  6. CI/CD 파이프라인 구축

  7. 모니터링과 시각화



개요


🧊 기술 스택

Backend

  • Main framework: Express.js
  • DB: MariaDB

Frontend

  • Main framework: React.js
  • Tiptap library for editor component
  • JsonWebToken library for user authentication

Production deployment

  • AWS, Kubernetes, Minikube
  • Jenkins, Terraform, Selenium

🧊 프로젝트 명세

소프트웨어 요구사항 명세서

구조 설계서

  • BE: API 입/출력 및 동작에 대한 명세, 소스코드 패키지 구조
  • FE: 컴포넌트 구분 및 계층 구조 명세, 소스 코드 패키지 구조

상세 설계서

  • BE: 생략
  • FE: 각 컴포넌트의 기능 명세 및 와이어프레임

🧊 소프트웨어 요구사항 명세

요구사항은 여러 가지 이유로 프로젝트 수행 도중 변경될 수 있음

테스트 케이스의 작성은 요구사항을 반영해야 함

  • TDD: 요구사항 → 테스트 케이스 → 코드

🧊 요구사항 명세서

Software Requirement Specification(SRS)

  • 소프트웨어 구현물의 기능적/비기능적 요구사항을 기술한 문서

    • 기능적 요구사항 : 소프트웨어가 제공해야 하는 기능

    • 비기능적 요구사항 : 성능, 자원 사용량 등에 존재하는 여러 측면의 제약

Requirement-driven development

  • mission critical system 등에서는 formal verification 방법과 조합하여 요구사항 만족을 엄격하게 검증하는 것을 중요시함

0개의 댓글