📄 개발환경 세팅 & 가이드 2 (SRS 개념)

2023. 4. 9. 20:55·📄 Document/Project 설계
목차
  1. 💡 SRS
  2. 비즈니스 관점에서의 개발 프로젝트
  3. 💡 SRS 구성
  4. 소개
  5. 전체 설명
  6. 시스템 특징
  7. 외부 인터페이스 요구사항
  8. 기능 외 다른 요구사항
  9. 다른 요구사항

💡 SRS

Software Requirements Specification

  • 소프트웨어가 무엇을 & 어떻게 작동할 것인지 예상되는 요구사항 정의서
  • 제품의 모든 이해 관계자의 요구를 충족 시키는데 필요한 기능 명세
  • 프로젝트의 전체적인 그림

비즈니스 관점에서의 개발 프로젝트

  • 과업 발생
    • 사내 시스템 고도화에 따른 프로젝트 계약 체결 -> Needs 발생
  • 사업자 선정 및 계약
    • 요구사항을 해결해출 최적의 사업자 선정 및 거래 제안 or 사업 입찰
    • 미팅 & 계약 체결
    • 발주처 -> 선정 사업체로 제안요청서(RFP) 문서화하여 전달
    • ◾ RPF (Request For Proposal) : 개요, 구축컨셉, 요청사항 정의, 제안서 작성가이드 정의 등
  • 기획 & 분석
    • 프로젝트의 전처리 후, PM 선발
    • PM의 역량에 따른 물적&인적 자원의 효율화 및 클라이언트의 요구에 잘 맟춰서 SRS 기획
  • 설계
    • 기획된 SRS를 기반으로 구체적인 설계 고려
    • 각자에 역할에 맞는 구체화된 문서 설계 ex) 화면 정의서, 아키텍처 설계서, 클래스 정의서 등
  • 구현
    • 근거없는 개발 지양
    • 최소 동작 단위 테스트 (단위 테스트)
    • 테스트 결과 기술 및 결과 공유를 통한 전체적인 개발 흐름 인지
  • 시험
    • 통합테스트를 통한 서비스의 역할 수행 능력 점검
    • 서비스 오픈을 위한 다관점에서의 메뉴얼 작성
  • 서비스 오픈
    • 오픈
  • 유지보수
    • 프로젝트 계약시 보통 유지보수 워런티 기간 설정

💡 SRS 구성

  1. 소개
  2. 전체설명 (Overall Description)
  3. 시스템 특징 (System Feature)
  4. 외부 인터페이스 요구사항 (External Interface Requirement)
  5. 기능 외 다른 요구사항 (Other Nonfunctional Requirements)
  6. 다른 요구사항 (Other Requirement)

소개

  • 목적 (Purpose)
    • 문서의 요구사항이 명시되있는 제품 또는 어플리케이션 설명
  • 문서 규칙 (Document Convention)
    • 표준 & 표기규칙 설명
  • 독자의 대상과 읽는 방법 (Intend Audience and Reading Suggestion)
    • SRS의 목표 독자계층을 나열하고 각각의 계층에 대한 적합한 읽기 순서 설명
  • 프로젝트 범위 (Project Scope)
    • 이 소프트웨어의 목적에 대한 간단한 설명
  • 참조 (Reference)
    • SRS가 참조한 모든 리소스 나열(하이퍼링크 포함)

전체 설명

  • 제품 조망 (Product Perspective)
    • 제품의 구성 & 유래 설명 (이전 버전의 확장 제품군인지, 완성된 시스템의 다음 버전인지 등)
  • 제품 기능 (Project Feature)
    • 제품의 주요기능 나열
    • 요구사항의 주요 그룹과 그 그룹이 연결된 방법을 설명하는 최상위 데이터 플로우 다이어그램,
      유스케이스 다이어그램, 클래스 다이어그램 등
  • 사용자 계층과 특징 (User Classes and Characteristic)
    • 제품 사용이 예상되는 사용자 파악 & 사용자의 특징 설명
  • 운영 환경 (Operation Environment)
    • 하드웨어 플랫폼, 운영체제와 버전, 사용자, 서버의 물리적인 위치 등 소프트웨어의 동작 환경 설명
    • 문제없는 외부 컴포넌트 & 어플리케이션과의 연동 설명 나열
  • 설계 및 구현 제약사항 (Design and Implementation Constraint)
    • 개발자가 선택할 수 있는 사항을 제약하는 모든 요소 & 각 제약조건의 이유 기술
      • 필수로 사용하거나 사용하지 말아야 할 기술 & 툴 & 프로그래밍 언어 및 인터페이스
      • 사용할 웹 브라우저의 유형 & 버전과 같은 운영환경 제약
      • 개발 규칙 또는 표준
      • 이전 제품과 호환성
      • 비즈니스 규칙에 따른 제약
      • 메모리 & 프로세스 제약, 크기 & 무게 등 하드웨어 제약
      • 기존 제품 개선시 따라야 할 기존 유저 인터페이스 규칙
      • 표준 데이터 교환 형식
  • 사용자 문서 (User Documentation)
    • 소프트웨어와 함께 제공할 유저 문서 나열
    • 사용자 문서 : 메뉴얼, 도움말, 교재 등
  • 가정 & 종속관계 (Assumptions and Dependencies)
    • 잘못된 가정을 공유하지 않으면 문제 발생의 소지가 있기 때문에 특정 가정은 프로젝트에 위험이 됨
    • 통제 불가능한 외부요소의 개입 & 종속 이되는지 설명

시스템 특징

  • 설명과 우선순위 (Description and Priority)
    • 기능에 대한 간단한 설명 + 우선순위 정의, 우선순위는 개발 중 동적으로 변함
  • 자극 & 응답 순서 (Stimulus / Response Sequence)
    • 입력 자극 순서, 이 기능애 대한 동적을 정의하는 시스템 반응 정의
  • 기능 요구사항 (Functional Requirement)
    • 기능과 관련된 상세한 기능 요구사항 나열

외부 인터페이스 요구사항

  • 사용자 인터페이스 (User Interface)
    • 사용자 인터페이스의 논리적 특징 설명
    • 지켜야 할 GUI 표준 참조
    • 폰트, 이미지, 버튼 레이블, 필드탭 순서, 아이콘 공통 사용 컨트롤 등의 표준
    • 화면 레이아웃 & 해상도의 제약 조건 나열
    • 모든 화면에 나타나는 표준 버튼 & 기능 & 탐색 링크 & 단축키 & 메시지 표시 규칙 등
    • 원활한 소프트웨어 번역 레아이웃 표준
    • 시각장애자를 위한 기능
  • 하드웨어 인터페이스 (Hardware Interface)
    • 하드웨어 소프트웨어 컴포넌트간 모든 인터페이스 특징 설명
    • 장비 유형, 데이터 컨트롤 연동, 프로토콜 등
  • 소프트웨어 인터페이스 (Software Interface)
    • 외부 소프트웨어 컴포넌트간 연결 설명
  • 통신 인터페이스 (Communication Interface)
    • 제품이 사용할 모든 통신 기능에 대한 요구사항 설명

기능 외 다른 요구사항

  • 성능 요구사항 (Perfomance Requerement)
    • 시스템 운영에 대한 특정 성능 요구사항 설명.
  • 안전 요구사항 (Safety Requirement)
    • 방지해야하는 잠재적 위험 행동 및 취해야 할 안전장치 & 행동 정의
  • 보안 요구사항 (Security Requirement)
    • 제품 접속 & 사용으로 인해 미치는 보안 등 데이터 보호 명시
  • 소프트웨어 품질 특성 (Software Quality Attribute)
    • 모두에게 중요한 별도의 품질 특성 설명

다른 요구사항

  • SRS에서 다루지 않는 모든 요구사항 정의
저작자표시 (새창열림)

'📄 Document > Project 설계' 카테고리의 다른 글

Hexagonal Architecture 구현 - 1 (Multi-Module, Kotlin)  (3) 2024.09.07
Agile  (0) 2023.04.30
Sequence Diagram  (0) 2023.04.27
📄 개발환경 세팅 & 가이드 3 (프로젝트 설계)  (0) 2023.04.09
📄 개발환경 세팅 & 가이드 1 (Git)  (0) 2023.04.09
  1. 💡 SRS
  2. 비즈니스 관점에서의 개발 프로젝트
  3. 💡 SRS 구성
  4. 소개
  5. 전체 설명
  6. 시스템 특징
  7. 외부 인터페이스 요구사항
  8. 기능 외 다른 요구사항
  9. 다른 요구사항
'📄 Document/Project 설계' 카테고리의 다른 글
  • Agile
  • Sequence Diagram
  • 📄 개발환경 세팅 & 가이드 3 (프로젝트 설계)
  • 📄 개발환경 세팅 & 가이드 1 (Git)
신건우
신건우
조용한 개발자
  • 신건우
    우주먼지
    신건우
  • 전체
    오늘
    어제
    • 분류 전체보기 (422)
      • 📘 Frontend (71)
        • Markup (1)
        • Style Sheet (2)
        • Dart (8)
        • Javascript (12)
        • TypeScript (1)
        • Vue (36)
        • React (2)
        • Flutter (9)
      • 📘 Backend (143)
        • Java (34)
        • Concurrency (19)
        • Reflection (1)
        • Kotlin (29)
        • Python (1)
        • Spring (42)
        • Spring Cloud (5)
        • Message Broker (5)
        • Streaming (2)
        • 기능 개발 (5)
      • 💻 Server (6)
        • Linux (6)
      • ❌ Error Handling (11)
      • 📦 Database (62)
        • SQL (31)
        • NoSQL (2)
        • JPQL (9)
        • QueryDSL (12)
        • Basic (4)
        • Firebase (4)
      • ⚙️ Ops (57)
        • CS (6)
        • AWS (9)
        • Docker (8)
        • Kubernetes (13)
        • MSA (1)
        • CI & CD (20)
      • 📚 Data Architect (48)
        • Data Structure (10)
        • Algorithm (8)
        • Programmers (17)
        • BaekJoon (5)
        • CodeUp (4)
        • Design Pattern (4)
        • AI (0)
      • ⚒️ Management & Tool (8)
        • Git (7)
        • IntelliJ (1)
      • 📄 Document (10)
        • Project 설계 (6)
        • Server Migration (3)
      • 📄 책읽기 (2)
        • 시작하세요! 도커 & 쿠버네티스 (2)
      • 🎮 Game (4)
        • Stardew Vally (1)
        • Path of Exile (3)
  • 블로그 메뉴

    • 링크

      • Github
    • 공지사항

    • 인기 글

    • 태그

      React #Markdown
      GStreamer #Pipeline
      Lock #Thread #Concurrency
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.0
    신건우
    📄 개발환경 세팅 & 가이드 2 (SRS 개념)
    상단으로

    티스토리툴바

    단축키

    내 블로그

    내 블로그 - 관리자 홈 전환
    Q
    Q
    새 글 쓰기
    W
    W

    블로그 게시글

    글 수정 (권한 있는 경우)
    E
    E
    댓글 영역으로 이동
    C
    C

    모든 영역

    이 페이지의 URL 복사
    S
    S
    맨 위로 이동
    T
    T
    티스토리 홈 이동
    H
    H
    단축키 안내
    Shift + /
    ⇧ + /

    * 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.