노트

요구사항 모델링 본문

정보처리기사 정리

요구사항 모델링

blackmilktea 2024. 4. 13. 22:30

1) 모델링의 개념

  • 복잡한 시스템을 쉽게 이해하기 위해 불필요한 부분을 생략, 추상화하여 간단한 모델로 표한하는 것
  • 소프트웨어를 구성하는 모듈들을 식별, 이들의 연결을 그림으로 표현
  • 요구분석 과정에 의해 수집된 개념과 정보를 분석, UML과 같은 방법을 이용해여 비주얼화

2) 모델링이 주는 도움

  • 소프트웨어를 이해하는 데 도움, 이해관계자들 사이에서 문제를 해결할 수 있도록 함.
  • 파악한 개념을 사용자와 고객에게 전달할 때 도움
  • 설계, 구현, 테스팅, 유지보수에 개념적인 기준을 제공

3) 모델링 구분

  • 기능적 모델링
  • 정적 모델링
  • 동적 모델링

4) 구조적 분석 모델

 

방법론

  • 도형화된 도구를 이용해 정형화된 분석 절차에 따라 사용자 요구사항을 파악하고 문서화하는 분석 기법
  • 하향식 기능 분해 기법 등을 사용하는 특성

도구

  • 자료 흐름도(DFD, Data Flow Diagram): 기능 중심 시스템 모델링에 적합, 도형 중심 기술

  • 자료 사전(DD, Data Dictionary): 자료 흐름도에 기술된 모든 자료들에 대한 사항 상세히 정의
= 정의, + 연결, ( ) 생략 가능한 자료, [ | ] 선택, { } 반복, ** 주석
ex)  user = user_num + name + [number | phone_number] + (address)
  • 소단위 명세서(Mini-Specification): 프로세서 명세서라고도 함. 자료흐름도에서 어떤 일이 수행되는지 정의하기 위해 각 처리들이 수행하는 업무를 상세하게 작성, 구조적 언어이며 선후 조건문, 의사결정표 등이 사용
  • 개체 관계도(ERD, Entity Relationship Diagram): 시스템에서 처리되는 개체(data)와 개채의 구성과 속성, 개체 간의 관계를 표현하여 자료를 모델화 하는 데 사용

ERD symbol

  • 상태 전이도(STD, State Transition Diagram): 시스템에 어떤 일이 발생할 경우 시스템의 상태와 상태 간의 전이를 모델화한 것, STD를 통해 개발자는 시스템의 행위를 정의

5) 객체 지향 분석 모델

  • 사용자의 요구사항을 분석하여 요구된 문제와 관련된 모든 클래스, 속성과 연산, 관계등을 정의하여 모델링

방법론

  • 럼바우(Rumbaugh): 분석 활동을 객체 모델링(객체 Diagram), 동적 모델링(상태 Diagram), 기능 모델링(DFD)으로 나누어 수행
  • Booch: 미시적 개발 프로세스와 거시적 개발 프로세스를 모두 사용
  • Jacobson: Use case를 강조하여 사용
  • Coad와 Yourdon 방법: E-R 다이어그램을 사용하여 객체의 행위를 모델링
  • Wirfs-Brock: 분석과 설계 간 명확한 구분 X, 고객 명세서를 평가해 설계 작업까지 연속적으로 수행

'정보처리기사 정리' 카테고리의 다른 글

2 데이터 입출력 구현  (0) 2024.04.16
소프트웨어 설계의 기본 원칙  (0) 2024.04.15
요구사항 분석  (0) 2024.04.12
프로젝트 계획  (0) 2024.04.12
소프트웨어 공학, 방법론  (0) 2024.04.11