1
面向对象软件工程实践指南
1.2.6 第6章 分析阶段

第6章 分析阶段

通过需求分析阶段,我们以用户可理解的方式表达了需求。然而,软件设计是一个技术性、专业性的工作,用户的需求和软件设计之间存在较大的“知识鸿沟”和“表示鸿沟”。通过分析阶段,开发者对需求有了自己的理解,一方面对需求的正确性、全面性、可行性进行检验,另一方面,建立需求与软件设计之间的桥梁,从而使得后续阶段中软件开发工作能够顺利开展。因此,分析阶段依旧是围绕需求展开的,并不涉及软件设计的细节,但是由于采用了开发者的观点来分析需求,因此,必然会引入一些与软件相关的概念。例如,如果软件开发采用了面向对象方法学,在分析阶段将会获取对象模型,并通过动态模型来描述对象之间是如何通过交互来提供功能的。对象模型、动态模型这些都是软件开发相关的概念,但是,在分析阶段中,涉及的类(对象)并非是软件类(对象),而是“领域类(对象)”,即对应于用户应用中概念的类(对象)。在后续设计阶段,“领域类(对象)”将通过对应的软件类(对象)加以具体实现,分析阶段就是以这种方式建立了需求与设计之间的桥梁。通过分析阶段,需求获取阶段的结果在检验后可能会被修改。