7장. 요구사항 분석

2025. 1. 10. 17:38·정보처리기사/[1과목] 1. 소프트웨어 설계

1. 요구사항 분석의 개요

요구사항 분석은 소프트웨어 개발의 실제적인 첫 단계로 개발 대상에 대한 사용자의 요구사항을 이해하고 문서화(명세화)하는 활동을 의미한다.

  • 사용자 요구의 타당성을 조사하고 비용과 일정에 대한 제약을 설정한다
  • 사용자의 요구를 정확하게 추출하여 목표를 정하고, 어떤 방식으로 해결할 것인지를 결정한다.
  • 요구사항 분석을 통한 결과는 소프트웨어 설계 단계에서 필요한 기본적인 자료가 되므로 사용자의 요구사항을 정확하고 일관성 있게 분석하여 문서화해야 한다.
  • 소프트웨어 분석가에 의해 요구사항 분석이 수형되며, 이 작업 단계를 요구사항 분석 단계라고 한다.
  • 요구사항 분석을 위해 애자일(Agile) 방법, UML(Unified Modeling Language), 자료 흐름도(DFD), 자료 사전(DD), 소단위 명세서(Mini-spec.), 개체 관계도(ERD), 상태 전이도(STD), 제어 명세서 등의 도구를 이요한다.

2. 구조적 분석 기법

구조적 분석 기법은 자료의 흐름과 처리를 중심으로 하는 요구사항 분석 방법으로, 다음과 같은 특징이 있다.

  • 도형 중심의 분석용 도구와 분석 절차를 이용하여 사용자의 요구사항을 파악하고 문서화한다.
  • 하향식 방법을 사용하여 시스템을 세분화할 수 있고, 분석의 중복을 배제할 수 있다.
  • 시스템 분석의 질이 향상되고, 시스템 개발의 모든 단계에서 필요한 명세서 작성이 가능하다.

3. 자료 흐름도(DFD)

자료 흐름도(DFD; Data Flow Diagram)은 요구사항 분석에서 자료의 흐름 및 변환 과정과 기능을 도형 중심으로 기술하는 방법으로 자료 흐름 그래프, 버블 차트라고도 한다.

  • 시스템 안의 프로세스와 자료 저장소 사이에 자료의 흐름을 나타내는 그래프로 자료 흐름과 처리를 중심으로 하는 구조적 분석 기법에 이용된다.
  • 자료 흐름도에서는 자료의 흐름과 기능을 프로세스(Process), 자료 흐름(Flow), 자료 저장소(Data Store), 단말(Terminator)의 네 가지 기본 기호로 표시한다.

기호

작성 지침

  • 자료 흐름은 처리(Process)를 거쳐 변환될 때마다 새로운 이름을 보여한다.
  • 어떤 처리(Process)가 출력 자료를 산출하기 위해서는 반드시 입력 자료가 발생해야 한다.
  • 상위 단계의 처리(Process)와 하위 자료 흐름도의 자료 흐름은 서로 일치되어야 한다.
  • 입력 화설표가 있다고 하여 반드시 출력 화살표가 있어야 하는 것은 아니다.

4. 자료 사전

자료 사전(DD; Data Dictionary)은 자료 흐름도에 있는 자료를 더 자세히 정의하고 기록한 것이며, 이처럼 데이터를 설명하는 데이터를 데이터의 데이터 또는 메타 데이터(Meta Data)라고 한다.

  • 자료 흐름도에 시각적으로 표시된 자료에 대한 정보를 체계적이고 조직적으로 모아 개발자나 사용자가 편리하게 사용할 수 있다.
  • 자료 사전에서 사용되는 표기 기호는 다음과 같다.

'정보처리기사 > [1과목] 1. 소프트웨어 설계' 카테고리의 다른 글

9장. UML(Unified Modeling Language)  (0) 2025.01.12
8장. 요구사항 분석 CASE와 HIPO  (0) 2025.01.12
6장. 요구사항 정의  (0) 2025.01.10
5장. 개발 기술 환경 파악  (1) 2025.01.07
4장. 현행 시스템 파악  (0) 2025.01.07
'정보처리기사/[1과목] 1. 소프트웨어 설계' 카테고리의 다른 글
  • 9장. UML(Unified Modeling Language)
  • 8장. 요구사항 분석 CASE와 HIPO
  • 6장. 요구사항 정의
  • 5장. 개발 기술 환경 파악
seong-morning
seong-morning
seong-morning 님의 블로그 입니다.
  • seong-morning
    MilleZoo
    seong-morning
  • 전체
    오늘
    어제
    • 분류 전체보기 (87)
      • 백엔드 (17)
        • NestJS (17)
      • 인프라 (2)
        • Docker & Kubernetes (2)
      • CS (25)
        • 디자인 패턴 (9)
        • 프로그래밍 패러다임 (4)
        • 네트워크의 기초 (6)
        • TCP IP 4계층 모델 (2)
        • 네트워크 기기 (4)
      • 정보처리기사 (43)
        • [1과목] 1. 소프트웨어 설계 (10)
        • [1과목] 2. 화면 설계 (5)
        • [1과목] 3. 애플리케이션 설계 (8)
        • [1과목] 4. 인터페이스 설계 (4)
        • [2과목] 1. 데이터 입출력 구현 (6)
        • [2과목] 2. 통합 구현 (3)
        • [2과목] 3. 제품 소프트웨어 패키징 (7)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    면접을 위한 cs 전공지식 노트
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
seong-morning
7장. 요구사항 분석
상단으로

티스토리툴바