[ Incremental delivery ]
▪ 한 번에 시스템이 배포되기 보다, 개발과 배포는 단계로 나누어 이루어진다. 각 단계는 요구된 기능을 배포 한다. 한 번에 고객들에게 전달 되는 waterfall 방식은 수정 할 때 큰 비용이 들게 한다.
▪ 개발된 버전은 고객들에게 전달되고 기능적인 환경에서 사용되기 위해 고쳐진다.
▪ 단계
- 고객들은 요구사항을 확실히 하고 우선순위를 정해 주어야 한다.
· 수 많은 Delivery 단계들을 정의한다.
· 각각의 단계들은 부분적인 시스템 기능을 제공한다.
· 가장 높은 우선순위의 요구사항은 단계 초반에 한다.
- 각 단계를 개발 하는 동안에, 요구사항은 변경하지 않는다.
· 다음 단계를 위해 요구사항은 계속 변화한다.
- increment가 완성되면 전달을 하고, 고객들은 시스템을 통해 서비스와 실험을 할 수 있다.
· 빠른 배포 또한 시스테 기능 중 하나이다.
- 새로운 개발이 완성되면, 그들은 존재하고 있는 increment들을 통합한다.
· 시스템의 기능은 반복적인 전달로 향상된다.
▪ 장점과 문제점
장점 |
- 고객들은 프로토타입 처럼 결과물을 미리 사용해 볼 수 있고 테스트를 통해 다음 단계를 위한 요구사항을 알릴 수 있다. 프로토타입과 달리 실제시스템의 한 부분이다. - 고객들은 전체 시스템을 위해 기다리지 않아도 된다. 첫 번째 단계를 만족 시키면 그들의 가장 중요한 요구조건을 만족시키게 되는 것이다. - 상대적으로 시스템 변경을 통합하는 것이 쉽다. 반복 공정의 장점이라 할 수 있다. - 가장 중요한 서비스 부분은 앞부분에 배치되어 test 또한 여러 번 받는다. 가장 높은 우선순위를 가진 서비스는 가장 먼저 전달된다. |
문제점 |
- 모든 단계에서 사용될 공통 부분을 정의하기 어렵다. 요구사항은 한 단계가 시행될 때 까지 상세하게 정의 되지 않는다. - 상호적인 개발은 대체할 시스템이 개발 될 때 어려울 수 있다. 사용자는 완성되지 않은 새로운 시스템을 실험하는 것이 힘들 수 있다. - 마지막 단계가 구체화 될 때 까지 완성된 시스템은 없다. 결과물이 막연하고 예측 하기 어렵다. 많은 조직에서 전달하는 모델과 충돌 하게 된다. |
댓글이나 공감 남겨주는 사람 착한사람
'학사 그리고 석사 > 소프트웨어공학' 카테고리의 다른 글
The Rational Unified Process (RUP) (0) | 2019.10.18 |
---|---|
Boehm’s Spiral Model (0) | 2019.10.18 |
Prototyping (0) | 2019.10.14 |
Coping with change (0) | 2019.10.14 |
소프트웨어 진화 (0) | 2019.10.14 |