자격증/DASP

[DAsP] 2-3-2절 정보 요구 사항 상세화

동호다찌 2022. 5. 22. 14:47

과목2. 데이터 요건 분석

제 3장 정보 요구 사항 분석


정보 요구 사항 분석 대상이 정의된 현행 업무 영역 관련 자료 및 현행 시스템 관련 자료에 대하여 분 석을 하고, 분석 결과인 분석 산출물을 토대로 사용자의 정보 요구 사항을 보완하고 비기능적 정보 요구 사항을 포함하여 문서 작업을 통한 정보 요구 사항 정의서를 보완한다.

비기능적 정보 요구 사항

  • 시스템이 만족시켜야 하는 제약 조건(기술적 제약 조건, H/W, S/W와 관련된 제약 조건)
  • 시스템이 반드시 만족시켜야 하는 주요 성능 척도(반응 시간, 저장 능력, 동시 처리 능력)
  • 신뢰성, 확장성, 이식성, 보안

 

 

1. 프로세스 관점의 정보 요구 사항 상세화

프로세스는 실제로 업무가 수행되는 행위를 뜻한다. 프로세스는 기본 기능이 분해되면서 나타나 다시 프로세스로 분해된다. 업무 기능은 기업의 목표달성을 위하여 지속적으로 수행되기 때문에 시작 시점과 종료 시점이 명확히 구분되지 않는다. 하지만 프로세스는 시작 시점과 종료 시점이 명확하고 실행 횟수를 셀 수 있는 업무 활동을 의미한다. 프로세스는 업무를 어떻게 수행하는가 보다는 어떤 업무가 수행되는지를 나타낸다. 따라서 입력(Input)과 출력(Output)이 있으며 입력을 출력으로 바꾸는 변환과정을 포함한다. 프로세스를 분해하다 보면 더 이상 분해되지 않는 최소 단위의 업무를 찾게 되는 데 이를 기본 프로세스라 부른다.

가. 수행 절차

  • 프로세스 중심으로 정리된 프로세스 목록, 프로세스의 업무 흐름도 내용을 수반하는 업무 조사서를 바탕으로 프로세스 계층도, 프로세스 정의서를 작성한다.
  • 도출된 기본 프로세스를 기준으로 기본 프로세스에서 필요로 하는 정보 항목과 산출되는 정보 항목을 정리하고, 산출되는 정보 항목 중 기본 로직이 필요한 경우 기본 로직을 정리한다.
  • 표준화 과정을 통하여 해당 정보 항목에 대해서 통합성/분리성 여부를 검토한 후 최종적으로 사용자의 정보 요구 사항을 충족하는 정보 항목 목록을 정의한다.

나. 수행 작업 내용

수 행 작 업 수 행 작 업 내 용
프로세스 분해/상세화 - 단위 업무 기능별 하향식으로 프로세스를 분해 및 도출
- 프로세스 계층도 및 프로세스 정의서를 작성
정보 항목 도출 및 표준화 - 기본 프로세스별 정보 항목을 정리
- 정보 항목에 대한 표준화 정리
- 정보 항목 목록 정의
정보 항목별 통합성,
분리성 여부 검토
- 프로세스별로 관리되는 정보 항목을 분류
- 정보 항목별 동음이의, 이음동의 존재 여부 파악
- 통합/분리 여부 검토 후 최종 정보 항목 목록 정의

다. 수행 작업 지침

  1. 프로세스 분해 / 상세화
    1. 프로세스의 분해
      • 프로세스의 분해는 단위 업무 기능으로부터 출발하여 점진적으로 수행한다. 단위 업무 기능은 하위에 더 이상 업무 기능을 포함하지 않고, 프로세스만으로 구성된 업무 기능을 의미한다.
    2. 프로세스 분해 깊이
      • 프로세스 분해시 업무적인 특성을 고려하여 분해의 수준은 3차 수준까지 분해한다.
    3. 프로세스 명칭
      • 프로세스의 명칭은 명명규칙을 준수하여 명명하되 업무 용어를 그대로 사용하고 이름만으로도 개략적인 수행 내용의 파악이 가능하도록 함축적이며 유일한 이름을 부여하는 것이 중요하다.
    4. 프로세스 계층도
      • 프로세스 계층도를 작성하는 목적이 기본 프로세스의 도출에 있으며, 추후 업무적으로 기술한 프로세스 정의서를 바탕으로 작업을 수행하게 되므로 이에 대한 상세한 내용이 반영된다.
  2. 정보 항목 도출 및 표준화
  3. 정보 항목별 통합성 검증

2. 객체지향 관점의 정보 요구 사항 상세화

객체지향 방법론에서는 유즈케이스 다이어그램을 중심으로 정보시스템의 기능적 정보 요구 사항을 정의한다. 해당 다이어그램은 사용자와의 의사소통을 원활하게 진행될 수 있도록 도움을 주며, 시스템 영역내의 유즈케이스와 액터, 그리고 그들 간의 관계를 유즈케이스 다이어그램으로 도식화하고 도출된 유즈케이스의 사건 흐름을 상세화한다.

가. 유즈케이스 다이어그램

액터(ACTOR)

  • 정보시스템과 상호작용하는 개인, 그룹, 회사, 조직, 장비 등 정보 서비스를 받는 객체를 말한다.
  • 엑터의 이름은 명확하게 액터의 역할을 나타내는 이름으로 정의한다.

유즈케이스(USECASE)

  • 도출된 액터별로 개발 시스템에서 제공해야 하는 기능을 나타낸다.
  • 사건 흐름에 대한 개요을 간략하게 기술한다.

액터(ACTOR)와 유즈케이스 간의 관계

  • 확장(Extend) : 하나의 유즈케이스가 다른 유즈케이스의 행동을 추가함에 따라 나타나는 두 유즈케이스의 관계를 말한다. 하나의 유즈케이스가 다른 유즈케이스를 경우에 따라 선택적으로 수행되는 경우에 사용된다.
  • 포함(Include) : 하나의 유즈케이스가 다른 유즈케이스를 사용함을 나타내는 두 유즈케이스의 관계를 말한다. 하나의 유즈케이스가 다른 유즈케이스를 반드시 수행하는 경우에 사용된다.
  • Communicates : 행위자가 어떤 유즈케이스에 참가함을 나타낸다. 이것은 행위자와 유즈케이스 사이의 유일한 관계이다.

나. 유즈케이스 상세화

유즈케이스의 사건 흐름을 구조화하는 작업으로 모든 선택 또는 대안 흐름을 기술한다. 유즈케이스의 특별 정보 요구 사항을 정의한다. 유즈케이스에는 관련이 있지만 사건 흐름에는 고려되지 않는 정보 요구 사항을 유즈케이스의 특별 요구 사항으로 정의한다. 이러한 특별한 정보 요구 사항은 비기능적인 정보 요구 사항으로 기술한다. 사건 흐름을 기술할 때 정상적인 흐름에 대해 먼저 기술한 후 예외사항에 대한 사건흐름을 기술한다. 다음과 같은 내용을 기술한다.

  • 유즈케이스에 대한 개략적인 설명
  • 사건 흐름(Flow or Event)
  • 사전, 사후 조건
  • 비기능적인 정보 요구 사항
  • 주된 사건 흐름에 대체될 수 있는 대안 흐름
  • 예외 처리 사항

다. 클래스 다이어그램 작성

1. 엔터티 클래스 도출 : 유즈케이스 모형을 검토하여 문제 영역 내의 개념을 나타내 엔터티 클래스를 도출하여 정의한다. 식별된 클래스에 이름을 부여하고, 간략한 설명을 기술한다. 클래스 이름은 간결하고 업무적 의미를 함축한 단수형 명사로 부여하며, 은어 및 약어 사용은 배제한다.

  • 유즈케이스 다이어그램을 조사하여 명사 및 명사구를 후보 객체로 선정한다.
  • 의미가 모호한 것은 제거한다.
  • 이음동의어 및 동음이의어를 고려하여 선정한다.
  • 문제 영역과 관련이 없는 것은 제거한다.
  • 유사한 구조와 행위를 가진 객체들을 클래스로 그룹핑한다.

2. 관계 도출 및 클래스 도출 : 관계란 의미있고 관심있는 연결을 나타내는 클래스간의 관계를 의미한다. 클래스간의 집단화 관계를 식별하고 명명한다. 집단화 관계란 전체적인 클래스와 부분적인 클래스의 포함 관계를 표현한다.

3. 속성 정의 : 속성이란 클래스가 나타내는 객체의 특성을 의미한다. 유즈케이스 다이어그램을 검토하여 클래스를 구성하는 속성을 도출한다. 속성에 대한 이름을 부여하고 간략한 설명을 기술한다. 속성의 이음은 성을 가지고 있는 정보를 명확하게 지정하는 명사로 한다.