现今OOD的特点:
1.以面向对象的分析为基础,一般不依赖结构化分析。
2.与相应的OOA方法共同构成一种OOA&D方法体系。OOA和OOD采用一致的概念与原则,但属于软件生命周期的不同阶段,有不同的目标及策略。
3.较全面地体现了面向对象方法的概念和原则。
4.大多数OOD方法独立于编程语言,但具体应用OOD时,则要考虑特定编程语言,因为通过面向对象的设计所得到的系统模型,要有确定的编程语言实现。
“分析”只正对问题域和系统责任,不考虑与实现有关的因素,建立一个独立于实现的OOA模型,这个OOA模型是问题域和系统责任的完整表达,包括对属性与操作的表达;“设计”则考虑与实现有关的问题(如选用的编程语言、数据库系统和图形用户界面等),建立一个针对具体实现的OOD模型。
OOD主要目的:
1.使反映问题域本质的总体框架和组织结构长期稳定,而细节可变。
2.把稳定部分(问题域部分)与可变部分(与实现有关的部分)分开,使得系统能从容地适应变化。
3.有利于同一个分析模型用于不同的设计和实现。
4.支持系统族和相似系统的分析与设计。
5.使一个成功的系统具有超出其生存期的可扩展性。