노벰버맨 2021. 12. 5. 19:02

1. 객체지향 분석 방법의 개요

가. 객체지향 분석 방법의 정의

시스템에 대한 개념적이고 추상적인 다이어그램과 사용사례(유스케이스) 등을 추출하여 시스템 초기 계획을 수립하는 기법

 

나. 객체지향 분석 방법의 특징

-(객체지향 시스템), 상태 데이터와 기능으로 구성된 객체와 객체 간의 통신 기능 수행

-(다이어그램 이용), 분석, 설계, 구현 전반에 걸쳐 동일한 다이어그램 이용

유스케이스 다이어그램, 클래스 다이어그램, 상호 작용 다이어그램, 프로토타입(사용자 인터페이스)

-(점진적 구체화), 초기에는 개념적 추상적으로 표현되고 점차 정제되어 구체적으로 작성

 

2. 요구사항 추출의 개념도 및 구성요소

가. 요구사항 추출의 개념도

나. 요구사항 추출의 구성요소

다이어그램 개념도 설명
활동 다이어그램
-비즈니스 모델
-해당 도메인에서 비즈니스 작업 흐름 관찰
도메인 클래스 다이어그램
-도메인 객체 모델
-도메인에 존재하는 유형/무형의 클래스와 클래스 사이의 관계 표현 (UI, 데이터 접근, 제어 등 클래스는 제외)
-도메인 객체 모델에서는 영구적인 데이터 클래스 외에 단지행위 역할을 하는 클래스 혹은 속성 데이터가 없는 클래스 존재 가능
사용사례
(유스케이스)
-시스템의 기능 요구 파악
-시스템과 관련된 모든 액터 파악 및 전체적인 사용사례 파악
-액터들의 시스템 사용 목적 중심의 사용사례를 식별, 기술

-(요구사항 추출), 문제 도메인의 비즈니스를 이해하고 시스템(문제)정의서, 비즈니스 모델 및 도메인 객체 모델(용어정의), 사용사례 등을 통해 시스템 개발의 초기 계획을 산출하는 기법

 

3. 요구사항 분석의 개념도 및 구성요소

가. 요구사항 분석의 개념도

나. 요구사항 분석의 구성요소

관점 다이어그램 설명
기능 관점 유스케이스 다이어그램
활동 다이어그램
-요구사항 추출 단계에서 추출된 사용사례를 기능 요구로 활용
-해당 사용사례에 해당하는 비기능 요구 포함 가능  (특정 사용사례에 해당하는 비기능 요구사항 이외의 조건은 시스템 전체 비기능 요구사항에 해당함)
-액터별 관련 사용사례를 작성하거나 기능별로 관련 사용사례를 서브 시스템으로 그룹화하여 작성 가능 
-공통 시나리오는 독립적인 사용사례로 추가하여 작성
-추출단계에서 작성한 사용사례 업데이트 수행
정적 구조 관점 구문 분석
분석 패턴
-구문 분석과 분석 패턴 방법을 활용하여 요구사항 추출 및 분석 과정에서 객체 모델 작성 시 활용
-개발 초기 요구사항 추출 단계에서 상속, 집합, 다중성 등을 파악하는 것은 불필요하며 개발이 진행되면서 문제 도메인에 대한 이해가 깊어짐에 따라 객체 모델이 정제됨
-소프트웨어 개발의 분석 활동에서 공통으로 발생하는 문제를 해결하기 위해 적용될 수 있는 기법 (설계 과정에서 공통으로 발생하는 문제를 해결하는 기법은 설계 패턴)
동적 행위 관점 시스템 순서 다이어그램
상태기계 다이어그램
-시스템의 동적 행위 모델 구성
-외부 액터와 시스템 사이의 입력과 출력 메시지 정보를 정리한 다이어그램 (사용사례 다이어그램은 메시지 정보 미제공)

-문제 도메인에 대해 더욱 깊이 있는 이해를 통해 요구사항을 규명하고 확정하는 기법

-3가지 관점은 반복 수행하여 점진적으로 정제되며 상호 연관성을 가지고 있음

 

4. 구문분석의 절차

절차 특징 설명
명사에 의한 후보 클래스 파악 사용사례 시나리오 활용 -객체 모델에 대한 후보 클래스나 후보 속성을 식별
부적절한 클래스 제거  동일 개념 클래스 중 하나는 삭제
도메인과 무관한 클래스 삭제
-후보 클래스 들 중에서 부적절한 클래스 제거
-명사가 후보 클래스에 해당
클래스 사이의 관계 파악 동사가 관계 -클래스 사이의 관계는 동사에 해당
속성 파악 명사가 속성 -객체의 데이터를 표현하는 속성은 명사에 해당 (명사는 클래스나 속성의 잠재적인 후보군이 됨)
클래스 다이어그램 작성 클래스 다이어그램
객체 모델
-클래스 다이어그램 작성
-유사 문제 도메인에서 이미 개발된 객체 모델을 적용

-도메인의 문서 정보(사용사례 시나리오 등)로부터 객체 모델을 생성하는 기법