728x90

요구사항

 : 소프트웨어에서 제공하는 기능에 대한 설명과 운영에 필요한 제약조건

프로세스)  요구사항 도출 > 분석 > 명세 > 확인

 

요구사항 도출

 : 소프트웨어 요구사항의 출처나, 어떠한 방법으로 수집할 것인가를 파악한다.

 - 인터뷰, 설문조사, 프로토타이핑, 스토리 텔링, 유스 케이스 등의 기법이 있다.

 

요구사항 분석

 : 사용자 요구사항의 타당성을 조사한다. 요구사항들 중 서로 다르거나 중복, 상충되는 것을 해결한다.

 - 요구사항을 구체화하는 도구로 UML ( Unified Modeling Language)를 사용한다.

 

요구사항 명세 ( = 보고서 )

 : 파악된 요구사항을 체계적으로 검토, 평가하고 승인될 수 있는 문서를 작성한다.

 - 고객과 개발자가 쉽게 이해할 수 있도록 작성한다.

 - 시스템의 모든 기능과 제약조건을 기술한다.

 

요구사항 검증 

 : 요구사항의 획득, 분석, 명세, 검증 및 변경과리를 체계적이고 반복적으로 행하는 방법과 기술의 총칭.

 - 요구사항 명세서가 최종 산출물이다.

더보기

요구사항 검증 방법

  • 동료 검증 : 2~3명 정도의 검토 담당자가 수행한다.
  • 워크 스루 : 검토 자료를 회의전에 배포하여 짧은 시간내 오류를 검출하고 문서화 한다.
  • Inspection : 개발에 참여하지 않은 다른 전문가에게 부탁하여 오류를 찾아는 검토방법
  • 테스트 설계 : 테스트 케이스를 생성하여 요구사항이 현실적으로 가능한지 검토한다.

CASE ( Computer Aided Software Engineering )

 : 소프트웨어 생명주기 전반을 지원하는 자동화 도구 혹은 방법론의 결합이다.

 - 소프트웨어 개발 과정의 일부 또는 전체를 자동화 하기 위한 도구이다.

 - 가격은 비싸지만 개발 기간이나 인력이 감소되기 때문에 전체 개발비용은 절감된다.


UML

 : 이해 관계자 상호 간의 의사소통이 원활하게 이루어지도록 표준화하여 시각적으로 표현하는 대표적인 객체지향 모델링 언어이다.

 - 사물, 관계, 다이어그램으로 구성되어있다.

 

사물

 : 다이어그램 안에서 관계가 형성될 수 있는 대상이다.

 

관계

 : 사물과 사물간의 연관성을 표현한다.

  • 연관(Association) : 둘 이상의 사물이 서로 관련되어있음을 나타낸다.
  • 집합(Aggregation) : 하나의 사물이 다른 사물에 포함되어 있는 관계를 표현한다. 전체 사물 쪽에 속이 빈 마름모를 붙여서 표현한다.
  • 포함(Composition) : 전체 사물의 변화가 부분 사물에게 영향을 미치는 관계를 표현한다. 전체 사물쪽에 속이 찬 마름모를 붙여서 표현한다.
  • 일반화(Generalization) : 하나의 사물이 다른 사물에 대해 상위, 하위 관계를 표현한다. 상위 사물쪽에 속이 빈 화살표를 붙여서 표현한다.
  • 의존 (Dependency) : 필요에 의해 짧은 시간 동안만 연관성을 유지하는 관계를 표현한다. 사물 사이를 점선으로 표현한다.
  • 실체화 (Realization) : 사물들을 기능적 요소로 서로를 그룹화 할 수 있는 관계를 표현한다. 기능 쪽에 속이 빈 삼각 화살표를 붙여서 표현한다.

다이어그램

 : 사물과 사물들의 관계를 도형으로 표현한다.

 - 구조적 vs 행위 다이어 그램

 

1)구조적 다이어그램 종류 - 정적 모델링

  • 클래스 다이어그램 : 클래스와 클래스 사이의 관계를 표현한다.
  • 객체 다이어 그램 : 클래스의 인스턴스를 객체 간의 관계로 표현한다.
  • 컴포넌트 다이어그램 : 구현 단계에서 사용되며 컴포넌트 간의 인터페이스를 표현한다.
  • 배치 다이어그램 : 구현 단계에서 사용되며, 물리적인 요소인 결과물이나 컴포넌트 등의 위치를 표현한다.
  • 복합체 구조 다이어 그램 : 복합적 구조를 갖는 컴포넌트, 클래스 등의 내부 구조를 표현한다.
  • 패키지 다이어그램 : 모델 요소들을 그룹화한 패키지들의 관계를 표현한다.

2) 행위 다이어 그램의 종류 - 동적 모델링

  • 유스케이스 다이어그램 : 사용자의 요구를 분석하여 기능을 모델링하는 작업
  • 시퀀스 다이어 그램 : 시스템과 객체들이 주고받는 메시지를 표현한다.
  • 커뮤니케이션 다이어 그램 : 객체들이 주고받는 메세지 + 연관 관계까지 표현한다.
  • 상태 다이어그램 : 자신이 속한 클래스, 자신이 상호작용하는 객체의 상태변화를 표현한다.
  • 활동 다이어그램 : 객체의 프로세스나 로직의 처리 흐름을 순서대로 표현한다.
  • 상호작용 개요 다이어그램 : 활동 다이어그램에서 시퀀스 다이어그램을 접목시켜 표현
  • 타이밍 다이어 그램 : 객체의 상태변화와 시간 제약을 명시적으로 표현한다.

 

 

728x90

+ Recent posts