软件工程 教学课件 ppt 作者 夏小娜第2篇-第5章 面向对象需求分析过程

上传人:w****i 文档编号:94406998 上传时间:2019-08-06 格式:PPT 页数:35 大小:1.42MB
返回 下载 相关 举报
软件工程 教学课件 ppt 作者 夏小娜第2篇-第5章 面向对象需求分析过程_第1页
第1页 / 共35页
软件工程 教学课件 ppt 作者 夏小娜第2篇-第5章 面向对象需求分析过程_第2页
第2页 / 共35页
软件工程 教学课件 ppt 作者 夏小娜第2篇-第5章 面向对象需求分析过程_第3页
第3页 / 共35页
软件工程 教学课件 ppt 作者 夏小娜第2篇-第5章 面向对象需求分析过程_第4页
第4页 / 共35页
软件工程 教学课件 ppt 作者 夏小娜第2篇-第5章 面向对象需求分析过程_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《软件工程 教学课件 ppt 作者 夏小娜第2篇-第5章 面向对象需求分析过程》由会员分享,可在线阅读,更多相关《软件工程 教学课件 ppt 作者 夏小娜第2篇-第5章 面向对象需求分析过程(35页珍藏版)》请在金锄头文库上搜索。

1、,第2篇 软件定义,第5章 面向对象的需求分析过程,本章的主要目标是以面向对象为建模基础,表征软件的需 求分析过程。读完本章,你将了解以下基本内容:,1967年出现的仿真程序设计语言Simula 67标志着面向对象思想的诞生。20世纪80年代初期出现的Smalltalk语言及其程序设计环境对面向对象技术的推广应用起到显著的促进作用。20世纪90年代中后期诞生并迅速成熟的统一建模语言UML(Unified Modeling Languagem,UML)是面向对象技术发展的一个重要里程碑。UML统一了面向对象建模的基本概念、术语和表示方法,为面向对象的软件开发过程提供了丰富的表达手段,同时,也为软

2、件开发人员提供了互相交流、分享经验的共用语言。,通常,问题空间中对象的行为是丰富多彩的,而解空间中对象的行为和状态却是抽象和刻板的,它们之间存在语义理解上的“鸿沟”。 面向对象方法学包含了下面的核心概念: 对象(Object)。对象是现实世界中个体或事物的抽象表示,是对其属性和相关操作的封装。对象在表示的时候一般包括三部分:名称、属性和操作。 类(Class)。类是某些对象的共同特征(属性和操作)的汇总表示。例如,直升飞机、大型客机、轰炸机可归为飞行器类。,5.1 面向对象的概念与思想,继承(Inheritance)。类之间的继承关系是现实世界中遗传关系的直接模拟,它表示类之间的内在联系以及对

3、属性和操作的共享,即子类(也称为派生类)可以完全复制父类(被继承类,也称为基类)的某些特征。 聚集(Aggregation)。除以继承为表征的遗传关系外,现在世界中普遍存在着部分整体关系。例如,飞机可由发动机、机身、机械控制系统、电子控制系统等构成。 用消息通信(Communication with messages)。消息传递是对象与其外部世界相互关联的惟一途径。 一般情况下,关于面向对象的基本要素,遵循Cord和Yourdon的总结,即面向对象(OO)=对象+类+继承+用消息通信。,1.实例(Instance) 实例就是由某个特定的类所描述的一个具体对象。指一个具体的对象。 2.方法(Me

4、thod) 方法就是对象所能执行的操作,也就是类中所定义的服务。 例如,为了Circle类的对象能够响应屏幕上显示自己的消息Show(GREEN),在Circle类中必须给出成员函数Show(int color)的定义,也就是要给出这个成员函数的实现代码。 3.属性(Attribute) 属性就是类中所定义的数据,它是对客观世界实体所具有的性质的抽象。类的每个实例都有自己特有的属性值。,同时,面向对象的领域还包括其他一些常用概念:,4.封装(Encapsulation) 从字面上理解,所谓封装就是把某个事物包起来,使外界不知道该事物内部的具体内容。 综上所述,对象具有封装性的条件如下: 有一个

5、清晰的边界。 有确定的接口(即协议)。 受保护的内部实现。 5.多态性(Polymorphism) 多态性一词来源于希腊语,意思是“有许多形态”。 在C+语言中,多态性是通过虚函数来实现的。 6.重载(Overloading),5.2 UML,它主要借鉴了Booch方法、OMT方法和OOSE方法,同时,也吸收了其他面向对象建模方法的优点,形成了一种概念清晰、表达能力丰富、适用面广的标准面向对象建模语言。 UML通过图形化的表示机制从多个侧面对系统的分析和设计模型进行刻画。它定义了九种基本模型图(UML2.0及以后版本又作了扩充,成为11种模型图,其中最基本的就是初始定义的9种),还包括一种逻辑

6、模型的划分逻辑图包图,但包图不包括在这九种基本模型中。,5.2.1 UML的语言机制,这9类基本模型图和包图分别定义为:,用例图(Use Case Diagram)。从外部用户的角度描述系统的功能,并指出功能的参与角色 。,类图(Class Diagram)。描述系统的静态结构,对象图(Object Diagram)。是类图的一个实例,顺序图(Sequence Diagram)强调对象之间消息发送的时间序。,协作图(Collaboration Diagram)强调对象间的动态协作关系。,顺序图和协作图两种图合称为UML的交互图(Interactive Diagram),状态图(State Di

7、agram)。描述类的某个对象在其生命周期中的动态行为,活动图(Activity Diagram)。描述系统为完成某项功能而执行的操作序列,这些操作序列可以并发和同步。 交互图、状态图和活动图合称为行为图。,构件图(Component Diagram)。描述软件实现系统中各组成部件以及它们之间的依赖关系。 部署图(Deployment Diagram)。描述作为软件系统运行环境的硬件及网络的物理体系结构,其节点表示实际的计算机和设备,边表示节点间的物理连接关系,也可显示连接的类型及节点间的依赖性。 构件图与部署图是用来描述软件实现系统的组成和分布状态的,它们又可称为实现图(Implementa

8、tion Diagram)。,包图(Package)。包图不属于基本的UML模型图,是一个逻辑概念,为了系统化、结构化地理解系统模块组成。包之间的关系类似于类与类之间的关系,同样可存在继承、组成、依赖等关系。 类图、对象图和包图都是用来描述系统的静态结构的,统称为静态图。,5.2.2 基于UML的软件开发过程,它的中心思想是运用面向对象的基本理念,用例为驱动,迭代增量式的开发模式。 它包含四个阶段:初始、细化、构造和移交。,5.3 基于UML的需求分析,利用用例及用例图表示需 求。从业务需求描述出发 获取执行者和场景;对场 景进行汇总、分类、抽象, 形成用例;确定执行者与 用例、用例与用例图之

9、间 的关系,生成用例图。,利用包图及类图表示目标软件系统的总体框架结构。根据领域知识、业务需求描述和既往经验设计目标软件系统的顶层架构;从业务需求描述中提取“关键概念”,形成领域概念模型;从概念模型和用例出发,研究系统中主要类之间的关系,生成类图 。,基于UML的需求分析大致可分为以下步骤:,5.3.1 开发场景,场景是从单个执行者的角度观察目标软件系统的功能和外部行为。这种功能通过系统与用户之间的交互得以表征。因此,场景也是用户与系统之间进行交互的一组具体的动作。相对于用例,场景是用例的实例,而用例是某类场景的共同抽象。 对场景的完整描述应包含场景名称、执行者实例、前置条件、事件流和后置条件

10、。,用例名称:传感器监测。 参与执行者:各类传感器、警报器、报警电话和显示器。 前置条件:系统已开机。 主事件流: 传感器向目标软件系统上报监测数据,系统判别监测数据是否正常。 如果不正常,系统启动警报器,拨报警电话号码。 报警电话接通后,软件系统播出语音,报告异常事件发生的时间、地 点和事件的性质。 系统在控制面板的显示器上显示报警时间及当前状态(报警)。 辅事件流: 如果报警电话无人接听,则按照重拨延迟反复拨号,直到电话接通,再 转入主事件流的步骤(3)。 如果重拨次数达到系统的最大次数,电话仍无人接听,则跳过主事件流 的步骤(3),转入步骤(4)。 后置条件:如果已发现异常的监测数据,系

11、统处于“报警”状态;否则, 系统处于正常的“监测”状态。,5.3.2 生成用例,5.3.3 活动图细化用例,1. UML活动图介绍,2. 用例的活动图表示 针对前述的“传感器监测”用例,5.3.4 生成用例图,UML的用例与用例间存在如下两种关系: 使用(use)关系。 扩展(extend)关系。,5.3.5 建立顶层架构,UML包图是表示顶层架构的适当机制,是架构建模的图示符号 1. 关于UML包图,为表示软件架构,还需在包之间引进一种称为“连接器”的边。连接器用于表示包之间的信息传递、事件发送和软件调用等关系,且有单向和双向(即无向边)之分。,2. 软件顶层架构设计 主要有如下四种常用架构

12、模式: 流程处理模式。 客户/服务器模式。,模型视图控制器(MVC)模式。 分层模式。,在建立顶层架构的过程中,需综合考虑以下因素:,架构中包的数量。 架构中包之间的耦合度。 软件元素的稳定性。 软件元素的必然性。 作为软件系统运行环境的物理网络拓扑。 开发团队的技术专长。,5.3.6 建立领域概念模型,UML类图是表示领域概念模型的适当机制。 1. UML类图 UML的类包含3个部分:类的名称、属性集合和方法集合,在UML中,类之间的关系主要有继承、聚集、关联和依赖,在概念上,关联关系表示两个类之间的相关性。,依赖关系是关联关系的弱化,表示被依赖的类的变化会影响到依赖类。,关联是依赖的强化,聚合是关联的强化,构成是聚合的强化。,2. 领域概念模型的建立 为建立以UML类图表示的领域概念模型,必须首先标识关键概念。关键概念的来源包括: 业务需求描述和用例说明; 业务领域中的相关规范、标准和术语定义; 反映业务领域知识的既往经验。,习题5,绘制表示“书籍”的UML类图,“书籍”可描述为:一本书由许多部分组成,每一部分又由许多章组成,每一章由多节组成。部分、章和节都具有标题和序号属性。,THANKS,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号