《软件工程实用教程》第5 章 面向对象的需求分析.ppt
《《软件工程实用教程》第5 章 面向对象的需求分析.ppt》由会员分享,可在线阅读,更多相关《《软件工程实用教程》第5 章 面向对象的需求分析.ppt(54页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第5章章面向对象的需求分析面向对象的需求分析本章学习内容:本章学习内容:1 1理解面向对象方法的基本概念理解面向对象方法的基本概念2 2了解面向对象方法的特点与优点了解面向对象方法的特点与优点3 3初初步步掌掌握握面面向向对对象象分分析析的的各各种种模模型型及及视图视图4 4掌握面向对象需求分析的过程与步骤掌握面向对象需求分析的过程与步骤第第5章面向对象的需求分析章面向对象的需求分析5.15.1面向对象方法学概述面向对象方法学概述 5.1.1 5.1.1 面向对象技术的由来面向对象技术的由来19861986年年BoochBooch提提出出的的面面向向对对象象分分析析与与设设计计方方法法论论(
2、OOA/OODOOA/OOD)。)。19911991年年RumbaughRumbaugh提出的面向对象模型技术(提出的面向对象模型技术(OMTOMT)。)。19941994年年JacobsonJacobson提提出出的的面面向向对对象象软软件件工工程程方方法法学学(OOSEOOSE)。)。BoochBooch、OMTOMT和和JacobsonJacobson将将他他们们各各自自的的对对象象建建模模方方法法结结合合到到一一起起,提提出出了了统统一一的的建建模模语语言言UMLUML(Unified Modeling LanguageUnified Modeling Language)第第5章面向对
3、象的需求分析章面向对象的需求分析5.1.2 5.1.2 面向对象方法概述面向对象方法概述 主要特点:主要特点:从从问问题题域域中中客客观观存存在在的的事事物物出出发发来来构构造造软软件件系系统统,用用对对象象作作为为对对这这些些事事物物的的抽抽象象表表示示,并并以以此作为系统的基本构成单位;此作为系统的基本构成单位;事事物物的的静静态态特特征征(即即可可以以用用一一些些数数据据来来表表达达的的特特征征)用用对对象象的的属属性性来来表表示示,事事物物的的动动态态特特征征(即事物的行为)用对象的操作来表示;(即事物的行为)用对象的操作来表示;对对象象的的属属性性与与操操作作结结合合为为一一体体,成
4、成为为一一个个独独立立的实体,对外屏蔽其内部细节(称为封装);的实体,对外屏蔽其内部细节(称为封装);对对事事物物进进行行分分类类,把把具具有有相相同同属属性性和和相相同同操操作作的的对对象象归归为为一一类类,类类是是这这些些对对象象的的抽抽象象描描述述,每个对象是它的类的一个实例;每个对象是它的类的一个实例;第第5章面向对象的需求分析章面向对象的需求分析通通过过在在不不同同程程度度上上运运用用抽抽象象原原则则(忽忽略略事事物物之之间间的的一一些些差差异异),可可以以得得到到较较一一般般的的类类和和较较特特殊殊的的类类。特特殊殊类类继继承承一一般般类类的的属属性性和和操操作作,面面向向对对象象
5、方方法法支支持持这这种种继继承承关关系系的的描描述述与实现,从而简化系统的构造过程及其文档;与实现,从而简化系统的构造过程及其文档;复复杂杂对对象象可可以以用用简简单单的的对对象象作作为为其其构构成成部部分分(称为聚合);(称为聚合);对对象象之之间间通通过过消消息息进进行行通通信信,以以实实现现对对象象之之间的动态联系;间的动态联系;通过关联表达对象之间的静态关系。通过关联表达对象之间的静态关系。第第5章面向对象的需求分析章面向对象的需求分析5.1.3面向对象方法的优点面向对象方法的优点1.1.与人们习惯的思维方法一致与人们习惯的思维方法一致 2.2.可使软件系统结构更加稳定可使软件系统结构
6、更加稳定 3.3.软件具有更好的可复用性软件具有更好的可复用性 4.4.软件更加便于维护与扩充软件更加便于维护与扩充 第第5章面向对象的需求分析章面向对象的需求分析5.1.4面向对象建模面向对象建模用例模型:包含所有用例及其与用户之间的关系;用例模型:包含所有用例及其与用户之间的关系;对对象象模模型型:包包含含问问题题域域涉涉及及的的类类及及其其属属性性和和关关系系,其其作作用用是是更更详详细细地地提提炼炼用用例例,将将系系统统的的行行为为初初步步分分配给提供行为的一组对象;配给提供行为的一组对象;设设计计模模型型:将将系系统统的的静静态态结结构构定定义义为为子子系系统统、类类和和接接口口,并
7、并定定义义由由子子系系统统、类类和和接接口口之之间间的的协协作作来来实实现的用例;现的用例;实现模型:包含构件和类到构件的映射;实现模型:包含构件和类到构件的映射;配配置置模模型型:定定义义计计算算机机的的物物理理节节点点和和构构件件到到这这些些节节点点的映射;的映射;测试模型:描述用于验证用例的测试用例。测试模型:描述用于验证用例的测试用例。第第5章面向对象的需求分析章面向对象的需求分析5.2面向对象的基本概念面向对象的基本概念5.2.1类和对象类和对象1对象对象 是是指指问问题题域域中中某某些些事事物物的的一一个个抽抽象象,它它反反映映该该事事物物在在系系统统中中需需要要保保存存的的信信息
8、息和和发发挥挥的的作作用用,它它是是由由数数据据(属属性性)及及其其上上的的操操作作(也也称为服务、方法或行为)组成的封装体。称为服务、方法或行为)组成的封装体。第第5章面向对象的需求分析章面向对象的需求分析可以从以下可以从以下4 4个方面来认识对象:个方面来认识对象:(1)1)从动态的观点看,对象的操作就是对象的行为。从动态的观点看,对象的操作就是对象的行为。(2 2)从从存存储储角角度度看看,对对象象是是私私有有存存储储,其其中中有有数数据据也也有有操操作作。其其他他对对象象的的方方法法不不能能直直接接操操纵纵该该对对象象的的私私有数据,只有对象私有的方法才可操纵它。有数据,只有对象私有的
9、方法才可操纵它。(3 3)从从实实现现机机制制看看,对对象象是是一一个个自自动动机机,其其中中私私有有数数据据表表示示了了对对象象的的状状态态,该该状状态态只只能能由由私私有有的的方方法法改改变它。变它。(4)(4)在在面面向向对对象象的的程程序序设设计计中中,对对象象是是系系统统中中的的基基本本运运行实体。行实体。第第5章章面向对象的需求分析面向对象的需求分析2 2类类 是是指指具具有有相相同同属属性性和和操操作作的的对对象象的的集集合合,它它代代表表一一种种抽抽象象,作作为为具具有有类类似似特特性性与与共共同同行为的对象的模板,可用来产生对象。行为的对象的模板,可用来产生对象。例例如如:汽
10、汽车车具具有有运运输输功功能能,它它是是由由车车轮轮、发发动动机机、车身等部分组成,这个描述适合所有的汽车。车身等部分组成,这个描述适合所有的汽车。3 3实例实例 类类是是建建立立对对象象时时使使用用的的“样样板板”,按按照照这这个个样样板板所所建建立立起起来来的的一一个个个个具具体体的的对对象象,就就是类的实例。是类的实例。第第5章章面向对象的需求分析面向对象的需求分析5.2.2 5.2.2 封装、继承和多态封装、继承和多态 1 1封装封装 封封装装是是指指把把对对象象的的外外部部特特征征与与内内部部实实现现细细节节分分开开,使使得得一一个个对对象象的的外外部部特特征征对对其其它它对对象象来
11、来说说是是可可访访问问的的,而它的内部细节对其它对象是隐蔽的。而它的内部细节对其它对象是隐蔽的。对象具有封装性的条件如下:对象具有封装性的条件如下:(1)(1)有有一一个个清清楚楚的的边边界界,所所有有私私有有数数据据和和操操作作的的代代码码都都被被封装在这个边界内,从外面看不见更不能访问;封装在这个边界内,从外面看不见更不能访问;(2)(2)有有确确定定的的接接口口,这这些些接接口口描描述述这这个个对对象象和和其其他他的的对对象象之间相互的作用;之间相互的作用;(3)(3)受受保保护护的的内内部部实实现现,这这个个实实现现给给出出了了由由软软件件对对象象提提供供的的功功能能的的细细节节,实实
12、现现细细节节能能在在定定义义这这个个对对象象的的类类的的外外面访问。面访问。第第5章章面向对象的需求分析面向对象的需求分析2 2继承继承 继继承承是是子子类类自自动动地地共共享享基基类类中中定定义义的的数数据据和和方法的机制。方法的机制。继承刻画了一般性和特殊性继承刻画了一般性和特殊性 继承也体现了类的层次关系继承也体现了类的层次关系 第第5章章面向对象的需求分析面向对象的需求分析3 3多态性多态性 是是指指在在一一般般类类中中定定义义的的属属性性或或操操作作被被特特殊殊类类继继承承之之后后,可可以以具具有有不不同同的的数数据据类类型型或或表表现出不同的行为。现出不同的行为。多多态态性性的的作
13、作用用在在于于它它允允许许我我们们开开发发灵灵活活的的系系统统,我我们们只只要要指指定定什什么么应应该该发发生生,而而不不是是它它应应该该怎怎样样发发生生,以以便便获获得得一一个个易易修修改改、易易变更的系统。变更的系统。第第5章章面向对象的需求分析面向对象的需求分析4 4消息消息 消消息息是是面面向向对对象象系系统统中中实实现现对对象象间间的的通通信信和请求任务的操作。和请求任务的操作。5 5关联关联 泛化关系:主要表现继承机制;泛化关系:主要表现继承机制;聚聚合合关关系系:对对象象间间的的由由分分解解或或组组成成所所构构成成的的关系;关系;关关联联关关系系表表示示两两个个类类之之间间除除泛
14、泛化化、聚聚合合以以外外的,存在某种语义上的联系。的,存在某种语义上的联系。第第5章章面向对象的需求分析面向对象的需求分析5.2.3 5.2.3 面向对象的分析概述面向对象的分析概述 1.1.获取用户需求获取用户需求 2.2.标识对象和类标识对象和类 3.3.定义类的结构和层次定义类的结构和层次 4.4.建立对象模型建立对象模型 5.5.建立动态模型建立动态模型 第第5章章面向对象的需求分析面向对象的需求分析5.3 5.3 用例模型用例模型 5.3.1 5.3.1 执行者执行者 执行者是指与系统交执行者是指与系统交互的人或其他系统,它代互的人或其他系统,它代表外部实体。表外部实体。第第5章章面
15、向对象的需求分析面向对象的需求分析5.3.2 5.3.2 用例用例 用用例例是是可可以以被被执执行行者者感感受受到到的的、系系统统的的一一个个完完整整的的功功能能。在在UMLUML中中把把用用例例定定义义成成系系统统完完成成的的一一系系列列动动作作序序列,动作的结果能够被特定的执行者察觉到。列,动作的结果能够被特定的执行者察觉到。用例具有下述特征:用例具有下述特征:用用例例代代表表某某些些用用户户可可见见的的功功能能,实实现现一一个个具具体体的的用用户户目标;目标;用例总是被执行者启动,并向执行者提供可识别的值;用例总是被执行者启动,并向执行者提供可识别的值;用例可大可小,但它必须是完整的;用
16、例可大可小,但它必须是完整的;用例在以后开发过程中,可以进行独立的功能检测。用例在以后开发过程中,可以进行独立的功能检测。第第5章章面向对象的需求分析面向对象的需求分析用例描述:用例描述:用例名称:取款用例名称:取款前置条件:前置条件:ATMATM机正常工作机正常工作主事件流:主事件流:(1 1)客户将卡插入客户将卡插入ATMATM机,开始用例。机,开始用例。(2 2)ATMATM显示欢迎消息并提示客户输入密码。显示欢迎消息并提示客户输入密码。(3 3)客户输入密码。客户输入密码。(4 4)ATMATM确确认认密密码码有有效效。如如果果无无效效则则执执行行子子事事件件流流a a。如如果果与与主
17、主机机联联接有问题,则执行异常事件流接有问题,则执行异常事件流e e。(5 5)ATMATM提供以下选项:存钱,取钱,查询。提供以下选项:存钱,取钱,查询。(6 6)用户选择取钱选项。用户选择取钱选项。(7 7)ATMATM提示输入所取金额。提示输入所取金额。(8 8)用户输入所取金额。用户输入所取金额。(9 9)ATMATM确确定定该该帐帐户户是是否否有有足足够够的的金金额额。如如果果余余额额不不够够,则则执执行行子事件流子事件流b b,如果与主机联接有问题,则执行异常事件流如果与主机联接有问题,则执行异常事件流e e。第第5章章面向对象的需求分析面向对象的需求分析(1010)ATMATM从
18、客户帐户中减去所取金额。从客户帐户中减去所取金额。(1111)ATMATM向客户提供要取的钱。向客户提供要取的钱。(1212)ATMATM打印清单。打印清单。ATMATM退出客户的卡,用例结束。退出客户的卡,用例结束。子事件流子事件流a a:a1a1提示用户输入无效密码,请求再次输入;提示用户输入无效密码,请求再次输入;a2a2如果三次输入无效密码,系统自动关闭,退出客户银行卡。如果三次输入无效密码,系统自动关闭,退出客户银行卡。子事件流子事件流b b:b1b1提示用户余额不够。提示用户余额不够。b2b2返回(返回(5 5),等待客户重新选择。),等待客户重新选择。后置条件:结束取款事件。后置
19、条件:结束取款事件。第第5章章面向对象的需求分析面向对象的需求分析5.3.3 5.3.3 用例之间的关系用例之间的关系 1.1.扩展关系扩展关系2.2.包含关系包含关系 第第5章章面向对象的需求分析面向对象的需求分析5.3.4 5.3.4 用例建模用例建模从从几几方方面面识识别别系系统统的的执执行行者者,包包括括需需要要从从系系统统中得到服务的人、设备、其他软件系统等;中得到服务的人、设备、其他软件系统等;分分析析系系统统的的业业务务边边界界或或系系统统执执行行者者对对于于系系统统的的基本业务需求,可以将其作为系统的基本用例;基本业务需求,可以将其作为系统的基本用例;分分析析基基本本用用例例,
20、将将基基本本用用例例中中具具有有一一定定独独立立性性的的功功能能,特特别别是是具具有有公公共共行行为为特特征征的的功功能能分分解解出来,将其作为新的用例供基本用例使用;出来,将其作为新的用例供基本用例使用;分分析析基基本本用用例例功功能能以以外外的的其其他他功功能能,将将其其作作为为新的用例供基本用例进行功能扩展;新的用例供基本用例进行功能扩展;分析并建立执行者与用例之间的通信关系。分析并建立执行者与用例之间的通信关系。第第5章章面向对象的需求分析面向对象的需求分析5.4 5.4 对象模型对象模型 5.4.1 5.4.1 类图类图 名称:用来区别其他的类。类名可名称:用来区别其他的类。类名可以
21、是一个字符串,也可以是包含路以是一个字符串,也可以是包含路径的名字。径的名字。属属性性:属属性性用用来来描描述述该该类类的的对对象象所所具具有有的的特特征。征。操作:操作描述对数据的具体处理方法。操作:操作描述对数据的具体处理方法。第第5章章面向对象的需求分析面向对象的需求分析5.4.2 5.4.2 识别类与对象识别类与对象 1 1找出侯选的类与对象找出侯选的类与对象 (1 1)名词识别法)名词识别法例例:顾顾客客带带着着所所要要购购买买的的商商品品到到达达营营业业厅厅的的一一个个销销售售点点终终端端(终终端端设设在在门门口口附附近近),销销售售点点终终端端负负责责接接收收数数据据、显显示示数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程实用教程 软件工程实用教程第5 面向对象的需求分析 软件工程 实用教程 面向 对象 需求 分析
限制150内