UP Process UP 자세히 살펴보기

dogbird·2024년 4월 20일
0

OOAD

목록 보기
7/12

지난 포스팅에서 다뤘던 UP에 대해 더 상세히 살펴보려고 한다.

지난 포스팅이 궁금하다면
-> 지난 포스팅



UP Phases


UP는 Inception, Elagoration, Construction, Transition의 4단계로 구성되어 있다. 지난 포스팅에서 각 단계에 대한 간단한 설명을 했었지만 이번 시간에는 더 자세히 알아보려고 한다. 먼저 각 구성단계가 어떤일을 하는지 다시 살펴보자.

  1. Inception(시작 단계):
  • 프로젝트의 범위와 비즈니스 목표를 이해하고, 프로젝트의 기술적 경제적 가능성을 평가한다.
  • 고객의 요구사항과 기대를 파악하고, 초기 아키텍처 및 개발 계획을 수립한다.
  • 이 단계에서는 프로젝트의 필요성, 비용, 일정 등 타당성(feasibility)를 평가하고 프로젝트의 시작에 대한 결정을 내린다.
  1. Elaboration(설명 단계):
  • 요구사항을 상세하게 분석하고, 아키텍처를 설계하고, 기술적 위험을 식별하고 관리한다.
  • 초기 아키텍처와 설계를 검증하고, 시스템의 핵심 기능을 실제로 구현하는 것에 초점을 맞춘다.
  • 고객과의 상호작용을 통해 요구사항의 변화에 대응하고, 프로젝트의 일정 및 비용을 조정한다.
  • 위험 요소가 관리된다.
  1. Construction(구축 단계):
  • 소프트웨어 시스템의 주요 기능을 개발하고 구현한다.
  • 반복적인 개발 주기를 통해 추가적인 기능을 구현하고, 테스트를 수행하여 품질을 검증한다.
  • 개발된 기능을 고객에게 제공하고 피드백을 수렴하여 개선한다.
  1. Transition (전환 단계):
  • 개발된 소프트웨어를 최종 사용자에게 전달하고, 운영 환경으로 배포한다.
  • 사용자 훈련과 문서 작성, 유지보수 계획 수립 등을 포함하여 전환을 완료한다.
  • 프로젝트를 완료하고, 결과물을 평가하며, 향후 개선 및 유지보수를 위한 계획을 수립한다.



UP 자세히 살펴보기


UP Disciplines

UP는 소프트웨어 개발을 위한 다양한 활동을 일련의 단계로 나누어 지속적인 개선과 반복을 강조한다. UP는 다양한 디스플린(Disicplines)으로 구성되는데 주요 디스플린에는 다음과 같다:

  • Business Modeling
  • Requirements
  • Analysis and Design
  • Implementation
  • Test
  • Deployment

이러한 디스플린은 소프트웨어 개발 프로세스의 다양한 측면을 다루며, 팀이 프로젝트를 효과적으로 관리하고 소프트웨어를 성공적으로 제공할 수 있도록 도와준다. UP는 반복적이고 점진적인 접근을 채택하여 개발자가 지속적으로 고객의 요구 사항을 충족시킬 수 있도록 한다. 다음은 UP Disciplines의 예시이다.

cf) 구현은 시스템은 배포하는 것이 아니라 시스템을 구축는 것을 의미한다. Environment discipline은 환경을 잘 구축해서 discipline이 잘 될 수 있도록 프로젝트에 대한 tool을 설정하고 preocess를 사용자 정의 하는 것을 의미한다.

UP의 Artifacts

UP의 아티팩트(Artifacts)는 소프트웨어 개발 프로세스에서 생성되거나 사용되는 모든 작업물을 나타낸다. 그중에서 살펴볼 것은 Business Modeling, Requirements, Design이다. 하나씩 살펴보자.

Business Modeling

  • Domain model artifact : application domain에서 주목할 만한 개념을 시각화하기 위한 것
  • single application을 개발 할 때, domain object modleing이 포함된다.
  • 대규모 비즈니스 분석이나 비즈니스 프로세스 reenginerring에 참여할 때 기업 전체에 걸친 비즈니스 프로세스의 동적 모델링이 포함된다.

Requiremnets

  • 기능적 요구 사항과 비기능적 요구사항을 잡아내기 위한 Use-Case Modeling 및 Supplementary Specification artifacts
  • 사용사례 작성 및 비기능적 요구사항 식별과 같은 애플리케이션에 대항 요구 사항 분석
    예) 현금 인출기
  • 기능 : 돈 인출
  • 비기능 : 보안, 성능

Design

  • software 객체를 디자인하기 위한 디자인 모델 산출물
  • 전반적인 아키텍처, 객체, 데이터베이스, networking등을 포함한 디자인의 모든 측면
    예) DB구성

UP단계 및 반복

  • 비즈니스 개발, 요구 사항 및 디자인 분야의 일부 artifacts에 중점을 둔다
  • OOAD과정은 시작과 정교화 단계를 강조한다.

UP Phases 와 Iteration

  • 비즈니스 개발, 요구사항 및 디자인 분야의 일부 artifacts에 중점을 둔다.
  • OOAD과정은 시작과 정교화 단계를 강조한다.
profile
개발세발 개발자. 멋쟁이가 될 때 까지

0개의 댓글