面向对象分析是获取和认识用户需求,对问题领域进行分析、确认并建立问题域概念模型的一个过程。而面向对象设计(OOD)则是从计算机技术的角度,将分析阶段得到的概念模型转换成软件系统的技术实现方案,并在功能、性能及成本方面满足用户和质量要求的过程。是一个将问题空间中的面向对象模型转换为求解空间中的技术实现模型的过程。
分析是提取和整理用户需求,并建立问题域精确模型的过程。设计则是把分析阶段得到的需求转变成符合成本和质量要求的、抽象的系统实现方案的过程。分析和设计是一个多次反复迭代的过程,许多分析结果可以直接映射成设计结果,而在设计过程中又往往会加深和补充对系统需求的理解,从而进一步完善分析结果。
面向对象分析的任务
问题域子系统的设计、人机交互子系统的设计、任务管理子系统的设计和数据管理子系统的设计
问题域子系统设计
面向对象分析得到问题域精确模型,为设计问题域子系统奠定基础。面向对象设计仅从实现角度对问题域模型进行了补充或修改面向对象方法开发软件,保证问题域组织框架的稳定性,便于追踪分析,设计,编程的结果。问题域子系统是软件系统中定义问题、表达类和对象静态结构和动态交互关系的求解型,它是软件系统的核心。
主要内容:
1.按照需求信息的最新变动调整并修改模型
2.调整和组合问题域中的类
3.调整对象模型中继承的支持级别
4.改进系统性能
5.增加底层细节
人机交互子系统的设计
人机交互部分突出人如何命令系统以及系统如何向用户提交信息。该部分的友好性直接关系到软件系统的成败。
设计原则:
1.界面力求简单,友好
2.有一定的容错或纠错机制
3.符合用户使用习惯。
界面元素以window为标准形式。
命令层次,采用过程抽象机制,将系统功能以命令形式组织起来。
1.排好次序
2.整体—部分关系
3.宽度和深度合理
4.操作步骤简捷
任务管理子系统设计
软件系统是完成系统任务的一个逻辑实体。在软件系统所完成的任务中,有些任务是顺序完成的,而有些任务必须以并发交替的方式完成。常见的任务有事件驱动型任务、时钟驱动型任务、优先任务、关键任务和协调任务等。设计任务管理子系统,包括确定各类任务并把任务分配给适当的硬件或软件去执行。
数据管理子系统
数据管理子系统的作用是:在某种数据库管理系统的支持下提供数据存储和访问的协调、控制功能。
数据存储管理的影响系统的功能和性能3种模式,
1.文件管理系统
2.关系数据库管理系统
3.面向对象数据库管理系统