软件工程-第13章第4节_第1页
软件工程-第13章第4节_第2页
软件工程-第13章第4节_第3页
软件工程-第13章第4节_第4页
软件工程-第13章第4节_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

13.4用例驱动13.4.1用例的作用1.统一过程的循环周期统一过程把软件生命周期划分为若干个循环周期,每个循环周期都向用户提供一个产品版本作为终结。其中产品的第一个版本是最难开发的,因为它奠定了系统的基础和构架。一个循环周期随着它在软件生命周期中所处位置不同而有着不同的内容。如果系统最初的构架是可扩展的,则产品的后期版本将建立在早期版本的基础上。如果后期版本中,系统的构架有较大变化,则开发的早期阶段需要做更多的工作。13.4.1用例的作用用例有如下几种作用:(1)用例提供一种捕获功能需求的方法和手段。(2)用例不仅启动一个开发过程,还能将核心工作流结合为一个整体。(3)用例有助于项目经理规划、分配和监控开发人员所执行的多个任务。(4)用例是保证所有模型具有可跟踪性的一种重要机制。13.4.1用例的作用(5)用例有助于进行迭代开发。每次迭代由用例驱动而经历所有工作流,即从需求到设计和测试,进而得到一个增量结果,即每次迭代都会确定并实现一些用例。(6)用例有助于设计构架。在最初几次迭代中,通过选择几个适当的用例,便可以用一个稳定的构架来实现一个初始系统,可用于多个后续的循环周期。(7)用例可以作为编写用户手册的起点,因为每个用例说明了一种使用系统的方法。13.4.2建立用例模型1.捕获用例每种系统使用方式是一个候选用例,通过详细说明、修改、分解和合并而成为完整的用例。2.确定用例所有功能需求确定为用例,很多非功能性需求可以附加到用例上。3.创建用例模型每个用户表示为一个参与者。所有用例、参与者组成用例模型。用例模型是使用系统方式的完整规格说明,它是开发人员和各种用户达成的共识,可作为合同的一部分。13.4.3创建分析模型1.确定用例实现选择用例模型中的一组用例,实现为分析模型中的用例实现。用例实现是协作的构造型,分析类是用例实现的参与者,用例实现跟踪依赖于用例。2.确定分析类通过分析每个用例的处理说明,找出实现该用例的分析类和关联。每个分析类在一个用例实现中充当一个或几个角色。每个分析类要详细说明参与实现某个用例的职责和属性。13.4.3创建分析模型3.分析模型用例实现和分析类构成了分析模型,随着分析的用例越来越多,分析模型会逐渐完善起来。分析模型是概念性的,可能是暂时的,存在于前几次迭代中。在大型复杂系统中,分析模型存在于整个生命周期。13.4.3创建分析模型4.实例ATM系统的用例模型和分析模型。在ATM系统中,储户是参与者,取款、存款和转账是三个用例。ATM的用例模型如图13.2所示。13.4.3创建分析模型现在只考虑取款用例。因为在ATM系统中,取款是最重要的用例。完成取款用例动作序列的简化路径是:储户表明自己的身份;储户选择从哪个账户取款;确定取款金额;系统从账户扣除取款金额;发给储户相应金额的现金。取款用例实现时所需的分析类:“分配”和“出纳员接口”是《边界类》;“取款”是《控制类》;“账户”是《实体类》。“取款”用例的分析模型如图13.2所示。在图中还表示了分析模型的“取款”用例实现跟踪依赖于用例模型的“取款”用例。13.4.3创建分析模型5.用例实现—分析的描述每个用例实现-分析都包含一个充当不同角色的分析类集合。在分析中,使用协作图来建立分析类的对象间交互模型。图13.3是根据取款用例动作序列的简化路径绘制的,它描述了取款的用例实现-分析是如何通过一组分析对象来执行的。13.4.3创建分析模型图13.3“取款”用例实现-分析的协作图13.4.4设计和实现模型的建立1.设计模型的特征设计模型是以分析模型作为输入来创建的模型,设计模型是有层次关系的,它是实现的蓝图。2.确定设计模型的元素与分析模型类似,设计模型也要定义类、接口和子系统等元素,以及这些元素之间的关系,这些元素适应于实现环境。13.4.4设计和实现模型的建立分析模型的用例实现-分析说明分析类参与了实现用例-分析,而设计模型的用例实现-设计跟踪依赖于分析模型的用例实现-分析。当设计这些分析类时,会确定和导出更多应用于实现环境的精细化后的设计类。例如,设计出纳员接口类时,确定和导出了显示类、数字键盘类、读卡机类和客户管理类。13.4.4设计和实现模型的建立分析模型中分析类导出的设计类如图13.4所示。图中上面部分是分析模型的分析类,下面部分是导出的设计模型的设计类,粗线方框表示主动类。主动类的实例是主动对象,这个主动对象拥有一个进程或线程并能初始化地控制活动。设计类跟踪依赖于相应的分析类。13.4.4设计和实现模型的建立图13.4设计模型的设计类跟踪到分析模型的分析类13.4.4设计和实现模型的建立3.按子系统对类分组对有很多类的大系统,只用类来实现用例是不可能的,可以按照子系统进行分组,子系统提供和使用一个接口的集合。可以自底向上设计子系统,开发人员基于已确定的类来考虑和设计子系统,就是把这些类封装到明确定义功能的单元内。也可以自顶向下设计子系统,构架设计师在确定其他类之前首先要确定高层的子系统和接口,然后开发人员处理各个子系统的任务,确定并设计子系统的类。13.4.4设计和实现模型的建立4.实现模型的建立实现模型由构件构成,包括所有的可执行体,如ActiveX构件和JavaBeans构件,以及其他类型的构件。在实现工作流期间,要开发可执行系统的制品,如可执行的构件、文件构件(源代码)、表构件(数据库元素)等。一个构件是系统中一个实际的且可替换的部分,它符合并且提供接口集合的实现。若用面向对象程序设计语言来实现构件,则类的实现也很简便,每个设计类对应一个实现中的类,如C++类或Java类。实现工作不仅是开发源代码,还要对源代码进行单元测试。13.4.5用例的测试1.测试模型测试模型包括测试用例和测试规程。在测试期间,需要验证系统是否实现其规格说明,先要建立测试模型,再执行测试规程以确保系统按照预期的方案工作。2.测试用例测试用例是测试输入、运行条件和针对具体目标制定的预期结果的集合。例如,按照一条特定的路径完成一个用例或验证与所规定的需求的一致性。13.4.5用例的测试3.测试规程

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论