OO方法论包含下面几个阶段:

一、系统构思。软件开发始于业务分析人员或用户构思一项应用,并制定临时性需求。

二、分析。通过创建模型,分析人员仔细审查并严格地重新描述系统构思阶段的需求。因为问题描述很少会是完整的或是准确的,分析人员必须与请求者一起工作以理解问题。分析模型是一种简明准确的抽象,它描述目标系统要做哪些事情,而不是要如何来做哪些事情。分析模型不应该包含任何实现决策。

分析模型有两个部分:领域模型(domain model),描述系统内部反映的现实世界的对象;应用模型(application model),描述用户可见的应用系统本身的组成部分。

三、系统设计。开发团队设计出一种高层的策略——系统架构(system architecture),用于解决应用程序的问题,他们也制定政策,默认作为后面更加详细的设计内容。系统设计人员必须要确定优化哪些性能特性,选择何种策略来解决问题,完成哪些临时性的资源分配。

四、类的设计。根据系统设计策略,类的设计者给分析模型添加细节。类的设计者使用相同的OO概念和表示法阐释领域对象和应用对象,尽管他们存在于不同的概念层面上。类的设计的焦点在于实现每个类的数据结构和算法。

五、实现。实现人员将类的设计阶段开发的类及其关系转换到某种编程语言、数据库或硬件上。程序设计应该是简单直接的,因为所有困难的决策都已经完成。在实现阶段,遵循良好的软件工程实践是很重要的。这样,设计的可追溯性就非常情绪,系统将保持灵活性和可扩展性。

从分析到设计到实现,OO概念会应用到系统开发的整个生命周期中。你可以在歌光阶段使用相同的类,不用改变符号记法,只在后续阶段增添细节。