这个阶段的目的是建立系统的架构基线,并为下一阶段的大量工作提供一个稳定的基础。
There are objectives for the Elaboration phase that help you address risks associated with requirements, architecture,
costs, and schedule [KRO03]:
细化阶段的目标有助于处理有关需求、架构、成本和进度的风险:
-
获得对需求更详细的理解 - 拥有对大多数需求的良好理解将使你能够创建更详细的计划,并获得利益相关人的支持。确保深入理解最关键的需求,并通过架构进行验证。
-
设计、实现、验证并建立架构基线 - 设计、实现、并测试系统的骨架结构。尽管功能还不完整,但大部分构件块(Building
Block)之间的接口已经被实现和测试。这称为可执行架构(executable architecture)。
-
减缓基本风险,并生成精确的进度和成本估算 - 作为细化需求和设计、实现、测试架构的结果,很多技术风险被解决。完善并细化高层项目计划。
关键因素
细化阶段的迭代数量依赖但不限于以下因素,例如零起点开发(green-field development)相对于维护循环、前所未有的系统相对于众所周知的技术和架构,等等。
通常,在第一个迭代中,最好先设计、实现、测试少量的关键场景从而识别需要哪种类型的架构以及架构机制,如此可以减缓最关键的风险。你还必须细化那些必须在项目早期处理的高风险。你需要做足够的测试来验证架构风险被减轻。
在依次的迭代中,修正上次迭代里不正确的事物。设计、实现、测试剩下的关键架构场景,确保检查了系统的所有主要领域(架构覆盖)。因此,潜在的风险被尽早的识别了。 [KRO03]
|