面向对象分析
面向对象分析的目的是知识客观世界并进行建模.
其实在面向对象的分析过程中也是对需求的分析和理解.
基于UML面向对象分析的过程一般如下:
获取问题陈述-->确定类-->准备数据字典-->确定关联-->使用继承来细化类型-->完善对象模型-->建立对象动态模型-->建系统功能模型
(1) 获取问题陈述就是与用户一起理解系统,搞清楚系统的业务逻辑,发现用户的需求,在这个时候我们应该以一个用户的身份去看待这些需求.很多设计人员在这个时候没有做足功能,导致最后系统的设计和维护异常困难,并开始抱怨起用户的变态要求.在搞清楚系统的需求之后,我们不要马上开始编码,如果在这个时候你都已经写下了几篇代码了,那么恭喜你,以后够你受的了.
(2)当得到了足够多的问题并对其理解之后,我们就可以把问题中承现出来的物理实体和概念描述整理出来,暂时把这些标志成一个类实体.然后清除冗余类和与系统不相干的类.最终得到我们的模型实体
(3)把第二步分析出来的类建立一个数据字典,这个数据字典很有可能会在我们的数据库设计中起到很大的作用.
(4)通过第二步和第三步,我们已经得到了系统中的实体信息,现在我们就要让各个实体信息之间产生联系.
比如在一个学生选课系统中. 学生被定义为一个实体,课程也被定义为一个实体,通过选课这个行为把两个实体联系起来.这个行为由学生来引发.目标为课程,产生的结果是学生是否成功的选了一门课程.通过这样的分析,在以后的设计过程中我们可以很容易的设计出UML中学生类的方法.
- classStudent{
-
publicboolChooseCurriculum(Curriculumcurriculum){
-
- }
-
- }
-
classCurriculum{
-
- }
(5)使用继承来细化类
使用继承来共享公共属性,以此来对类进行组织,一般可以使用以下两种方式来实现.
自底向上:通过把现有类的共同性质一般化为父类,寻找具有相似的属性关系或操作的类来发现继承.这些结果常常是基于客观世界的现有分类,只有可能,应尽量使用现有概念.
自顶向下:把现有的类细化为更具体的子类.
(6)完善对象模型
设计过程中不可能一次就能正确的设计出需要的,往往会在这过程中加深对需求的理解.往往需要重复前面的过程.
(7)建立对象动态模型
跟据前面几步的对象模型,接着就是建立对象的动态模型
准备脚本:动态分析从寻找事件开始,然后确定各对象的可能事件顺序.
确定事件:确定所有外部事件.
准备事件跟踪表:把脚本表示成一个事件跟踪表,即不同对象之间的事件排序表,对象为表中的列,给每个对象分配一个独立的列.
构造状态图:对各对象类建立状态图,反映对象接收和发送的事件,每个事件跟踪都对应于状态图中的一条路径.
(8)建立系统功能模型
功能模型是用来说明值是如何计算的,标明值与值之间的依赖关系及相关的功能.数据流图有助于表示功能依赖关系.一般建功能模型的步骤如下:
先列出输入,输出值,输入,输出值是系统与外界之间的事件的参数.
建立数据流图,数据流图可说明输出值是怎么从输入值转换的,数据流图通常按层次组织.
面向对象设计
面向对象设计是把分析价段得到的需求转变成符合成本和质量要求的,抽象的系统实现方案的过程.
(1)面向对象的准则
模块化:对象就是模块,它把数据结构和操作这些数据的方法紧密地结合在一起构成模块.
抽象:面向对象方法不仅支持对过程进行抽象,而具支持对数据进行抽象.抽象方法的好坏以及抽象的层次都对系统设计有很大影响
信息隐藏:通过对象的封装来实现,对象暴露接口的多少以及接口的好坏对系统设计有很大影响
低耦合:低耦合是设计的一个重要标准,有助于使系统中某一部分的变化对其他部分的影响降到最低.
高内聚:内聚度高的模块很容易理解,很容易被复用,扩展和维护.
(2)面向对象的实用规则
◆设计的结果应该清晰易懂.
◆一般到具体结构的深度应适当.
◆尽量设计小而简单的类.
◆把设计变动减至最小.
(3)系统设计
系统设计是问题求解及建立解答的高级策略,必须制定解决问题的基本方法.系统设计一般是先从高层入手,然后细化.系统设计要决定整个结构及风格,这种结构为后面设计阶段的策略提供基础.
相关推荐
内容包括:校园二手交易平台需求分析、校园二手交易平台用例图、校园二手交易平台用例文档、校园二手交易平台活动图、校园二手交易平台状态图、校园二手交易平台时序图、校园二手交易平台类图、校园二手交易平台组件...
详细介绍了面向对象的分析与设计,全面探讨了面向对象概念、软件开发过程、UML和多层技术。本书使用最常见的技术和方法,通过一个贯穿全书的案例分析,对面向对象的软件开发过程和使用面向对象技术的编程过程进行了...
《面向对象分析与设计(第3版)》是UML创始人Grady Booch的代表作之一,书中介绍的概念都基于牢固的理论基础。同时,《面向对象分析与设计(第3版)》又是一本注重实效的书,面向架构师和软件开发者等软件工程实践者的...
计算机类“卓越工程师”创新系列教材 《UML面向对象需求分析与建模教程--基于uml2.5标准》 邹盛荣主编 书号:978-7-03-044467-7 科学出版社 2015 本书主要介绍基于UML2.5标准系统建模的基本理论、软件分析与设计...
本书主要介绍基于UML2.5标准系统建模的基本理论、软件分析与设计方法,书中加强了软件案例的UML示例说明,以提高学生的软件分析与设计水平,进一步托展学生分析问题、解决问题的能力,达到培养“厚基础、宽口径、会...
面向对象分析与设计课程实验考核大报告................
经常听到有朋友抱怨,说学了UML不知该怎么用,或者画了UML却觉得没什么作用。其实,就UML本身来说,它只是一种交流工具,它作为一种...)下面,我们通过一个CMS系统的分析设计实例,看看如何将UML应用到实际的开发中。
面向对象分析与设计 1.实验目的 根据教师给定的题目或自选题目,利用有关的工具软件和面向对象的分析方法,进行信息系统的分析、设计和建模。 2.实验内容 利用UML和有关的工具软件,进行面向对象的系统建模,包括:...
使用UML来做面向对象的分析与设计,自己做了些,也参考了点资料,值得刚开始学习的参考 在线购物客户订单处理 1用例建模(含用例描述和用例图); 2类建模(含继承和关联等); 3交互建模(顺序图); 4活动...
面向对象设计之3_基于UML的图书管理系统的分析与设计说明.pdf
本书详细介绍了面向对象的分析与设计,全面探讨了面向对象概念、软件开发过程、UML和多层技术。 本书使用最常见的技术和方法,通过一个贯穿全书的案例分析,对面向对象的软件开发过程和使用面向对象技术的编程过程...
基于UML的面向对象分析设计课程视频系列之一UML面向对象分析设计视频教程系列,以具体实例讲解基于UML的面向对象系统分析设计(OOAD)过程和方法。
基于UML的面向对象与面向过程分析与设计.doc
国外计算机科学经典教材-面向对象分析与设计(UML 2.0版) 简介:本书详细介绍了面向对象的分析与设计,全面探讨了面向对象概念、软件开发过程、UML和多层技术。 本书使用最常见的技术和方法,通过一个贯穿全书的...
基于UML图书管理系统的建模分析与设计报告是师大软件学院面向对象设计与编程的期末UML分析设计报告,欢迎下载评价。
本文以实例的方式,展示了如何使用UML进行面向对象的分析与设计。本文将假设读者对UML、面向对象等领域的基本内容已了然于胸,所以将不会过多阐述,而将重点放在应用过程上。本文的目的是通过一个完整的实例,展现...
摘 要 统一建模语言UML是面向对象分析和设计过程中重要的建模工具,本文以图书管理系统的开发为背景,介绍了UML的分析和建模过程。 关键词 UML;系统分析;建模设计 1 UML简介 UML(统一建模语言)是面向对象...
摘要本文以实例的方式,展示了如果使用UML进行面向对象的分析与设计。本文将假设读者对UML、面向对象等领域的基本内容已了然于胸,所以将不会过多阐述,而将重点放在应用过程上。本文的目的是通过一个完整的实例,...
国外计算机科学经典教材-面向对象分析与设计(UML 2.0版) 简介:本书详细介绍了面向对象的分析与设计,全面探讨了面向对象概念、软件开发过程、UML和多层技术。 本书使用最常见的技术和方法,通过一个贯穿全书的...