RAD

From CS Wiki
Rapid Application Development
짧은 개발주기(60일~90일) 동안 소프트웨어를 개발하기 위한 순차적 프로세스 모델로서 빠른 개발을 위해 CASE 도구 사용

RAD 방법론.png

역사[edit | edit source]

  • James Martin이 1991년에 제안하였다.
    • Scott Shultz의 반복적 개발 모형을 기반으로 확장시켰다.
  • 애자일 선언 이후 제시된 개념은 아니지만 애자일 방법론 중 하나로 포함시키도 한다.
  • 방법론 보단 소프트웨어 생명주기 모델로 분류하기도 한다.

특징[edit | edit source]

  1. 2~3개월 정도의 짧은 기간으로 기술적 위험이 적고 빠른 개발이 요구될 때 적합
  2. CASE 도구 및 재사용 가능한 Library 등을 활용하여 신속히 개발
  3. 프로토타입 사용 및 개발주기동안 내내 사용자의 적극적인 참여 필요
  4. 통합 단계가 필요한 대규모 시스템 개발에는 부적합

절차[edit | edit source]

단계 설명
JRP(분석)
  • Joint Requirement Planning
  • 고객과 Biz모델 작성/검토 반복을 통한 분석
  • 데이터모델링, 프로세스 모델링 짧게 가져감(1~2주)
JAD(설계)
  • Joint Application Design
  • 개략적 모델링 후 사용자와 함께 Prototype 개발/수정/보완 반복(3~5주)
  • CASE 도구 활용
Contruction(구현)
  • 대상 시스템의 상세 설계 완료 후 소프트웨어 생성
Cutover(이전)
  • 운용에 필요한 지침서를 작성하고 현업 부서로 이전

RAD 모델 기반 애자일 방법론[edit | edit source]

방법론 설명
XP 테스팅 중심, 1~3주 이터레이션으로 반복
SCRUM 2~4주 단위 스플린트 및 일일 스크럼 미팅 수행

RAD 모델과 전통적 SW 생명주기 모델의 비교[edit | edit source]

구분 RAD 모델 전통적 모델
목표
  • 핵심 요구사항 만족
  • 시간 단축
  • 고품질 구현
  • 정확한 개발
개발 인원
  • 소규모(10인 이하)
  • 주로 대규모 개발에 활용
분석/설계
  • 개략적, 지속적 분석/설계
  • 완벽한 분석/설계 확정
기법
  • JAP, JAD, Time-Boxing
  • 데이터 모델링, 프로세스 모델링
특징
  • 사용자의 지속적 참여 및 반복
  • 개발 도구 활용
  • 순차적 접근
  • 하향식 접근