[week17] 프로젝트 : 오픈소스 기반의 웹 파이프라인 구축 (8) - 05/08

Kyulee·2026년 5월 8일

TIL 

목록 보기
84/93
post-thumbnail

이번 시간에는 웹 기반 문서 편집기 프로젝트를 본격적으로 시작하기 전에 소프트웨어 요구사항 명세서(SRS; Software Requirements Specification) 를 작성하는 과정을 진행했습니다.


1. 소프트웨어 요구사항 명세서란?

소프트웨어 요구사항 명세서(SRS) 는 개발할 소프트웨어가 무엇을 해야 하는지, 어떤 환경에서 동작해야 하는지를 체계적으로 정리한 문서입니다.

개발을 시작하기 전에 SRS를 먼저 작성하면 다음과 같은 이점이 있습니다.

  • 방향성 정렬 — 팀원 모두가 같은 목표를 향해 작업할 수 있습니다.
  • 범위 명확화 — 무엇을 만들고, 무엇을 만들지 않을지 경계를 명확히 합니다.
  • 의사소통 기준 — 개발자, 기획자, 사용자 간의 공통된 언어가 됩니다.
  • 변경 관리 — 나중에 요구사항이 바뀌었을 때 기준 문서로 활용할 수 있습니다.

2. 요구사항의 종류

요구사항은 크게 두 가지로 나뉩니다.

종류설명예시
기능 요구사항시스템이 반드시 수행해야 하는 기능을 정의합니다사용자는 문서를 생성·수정·삭제할 수 있어야 합니다
비기능 요구사항시스템의 성능, 보안, 안정성 등 품질 기준을 정의합니다페이지 로딩 시간은 2초 이내여야 합니다

기능 요구사항이 "무엇을 해야 하는가" 를 다룬다면, 비기능 요구사항은 "얼마나 잘 해야 하는가" 를 다룬다고 볼 수 있습니다.


3. 웹 기반 문서 편집기 SRS 작성

프로젝트 개요

웹 기반 문서 편집기는 사용자가 브라우저에서 문서를 작성하고 편집하며 저장할 수 있는 서비스입니다. 마크다운 형식을 지원하고, 실시간 미리보기 기능을 제공하는 것을 목표로 합니다.

기능 요구사항

사용자 인증

  • 사용자는 회원가입과 로그인을 통해 서비스를 이용할 수 있어야 합니다.
  • 로그인한 사용자만 문서를 생성·수정·삭제할 수 있어야 합니다.

문서 관리

  • 사용자는 새 문서를 생성할 수 있어야 합니다.
  • 사용자는 기존 문서를 불러와 편집할 수 있어야 합니다.
  • 사용자는 문서를 삭제할 수 있어야 합니다.
  • 작성된 문서는 자동 저장되어야 합니다.

편집 기능

  • 마크다운 문법을 지원해야 합니다.
  • 작성 중 실시간으로 미리보기를 제공해야 합니다.
  • 제목, 본문, 목록, 코드 블록 등 기본 서식을 지원해야 합니다.

문서 공유

  • 사용자는 문서를 공개 또는 비공개로 설정할 수 있어야 합니다.
  • 공개 문서는 링크를 통해 다른 사용자와 공유할 수 있어야 합니다.

비기능 요구사항

성능

  • 페이지 초기 로딩 시간은 3초 이내여야 합니다.
  • 문서 저장 요청에 대한 서버 응답 시간은 1초 이내여야 합니다.

보안

  • 사용자 비밀번호는 암호화하여 저장해야 합니다.
  • 인증되지 않은 사용자는 타인의 비공개 문서에 접근할 수 없어야 합니다.

호환성

  • Chrome, Safari, Firefox 등 주요 브라우저에서 정상 동작해야 합니다.
  • 모바일 환경에서도 기본적인 편집 기능이 동작해야 합니다.

유지보수성

  • 컴포넌트 단위로 코드를 분리하여 재사용성과 유지보수성을 높여야 합니다.

4. SRS 작성 시 주의할 점

SRS를 작성할 때는 다음과 같은 점을 유의해야 합니다.

  • 모호한 표현 피하기 — "빠르게 동작해야 한다" 대신 "응답 시간이 1초 이내여야 한다"처럼 측정 가능한 기준으로 작성합니다.
  • 우선순위 설정 — 모든 기능이 동등하게 중요하지 않습니다. Must Have / Should Have / Nice to Have 로 구분하면 개발 순서를 잡기 쉽습니다.
  • 이해관계자 관점 포함 — 개발자 입장뿐만 아니라 실제 사용자가 어떤 경험을 원하는지 반영해야 합니다.
profile
안녕하세요 매일의 배움을 기록으로 자산화하는 개발자 이규현입니다 😊

0개의 댓글