1. 초고속 제품 개발 모델, RAD의 개요
(1) RAD (Rapid Application Development) Model의 개념
- 2~3개월 짧은 개발 주기로 제품 개발을 위한 순차적인 프로세스 모델로 빠른 개발을 위해 Visual Tool, Code Generation Tool을 사용
(2) RAD의 특징
| 특징 | 내용 |
|---|---|
| 사용자 참여 | 프로토타이핑 사용 및 요구사항 정의 등 적극 참여 |
| 도구 활용 | CASE 도구, RDB, 재사용 Library 등 도구 활용 |
| 단기적 합성 | 단기에 기술적 위험이 적고 빠른 개발 요구에 적합 |
(3) RAD 기반의 Agile 대표 개발 방법론
| 종류 | 내용 |
|---|---|
| XP (eXtreme Programming) | 테스팅 중심, 4가지 가치와 12가지 실천항목을 가지고 1 ~ 3주를 반복 |
| SCRUM | 프로젝트를 스트린트로 분리하여 매일 스크럼 미팅으로 계획 수립 |
| RUP | 완전한 SW 개발모형을 제시하며 Agile을 강조 |
| Crystal | 테일러링 원칙을 제공하여 프로젝트 중요도와 크기에 따른 메소드 선택방법을 제시 |
2. RAD 구성도 및 구성요소
(1) RAD 구성도
- 비즈니스 모델을 검토 후 프로토타입을 반복 개발하여 최종 구축/운영
(2) RAD 구성요소
| 구성요소 | 내용 |
|---|---|
| JRP | Joint Requirement Planning 데이터 모델링, 프로세스 모델링 (1 ~ 2주) |
| JAD | Joint Application Development 프로토타입 개발/수정/보완 반복 (3 ~ 5주) |
| Cutover | 운영에 필요한 지침서를 작성하여 현업 부서로 이전 |
3. RAD의 장단점 및 전통적 SDLC와 비교
(1) RAD의 장단점
| 장점 | 검증된 모듈이 존재하고 시간적 제약사항이 존재 시 가능 방법 요구사항 완전한 이해와 명확한 프로젝트 범위 설정 시 신속 개발 |
|---|---|
| 단점 | 책임감 있는 팀원 부재 시 위험 요구사항 변화 심하고 기술적위험 높아 고성능 요구 시스템 부적합 |
(2) RAD VS 전통적 SDLC
| 구분 | RAD | 전통적 SDLC |
|---|---|---|
| 분석/설계 | 개략적 분석/설계 | 완벽한 분석/설계 |
| 기법 | JRP, JAD, Time-boxing | 데이터 모델링, 프로세스 모델링 |
| 특징 | 사용자 지속 참여 | 순차적, 하향적 접근 |