用"用例"分析技术进行需求分析 用"用例"分析技术进行需求分析

用"用例"分析技术进行需求分析

  • 期刊名字:微计算机信息
  • 文件大小:757kb
  • 论文作者:刘伟,周淑萍,刘雅辉
  • 作者单位:新疆石河子大学信息科学与技术学院,新疆石河子大学网络中心
  • 更新时间:2020-09-25
  • 下载次数:
论文简介

您的论文得到两院院士关注软件时空文章编号:1008 -0570(2006)12- -3- -0265 -03用“用例”分析技术进行需求分析Analyzing requirement by use- -case analysis technique(1.石河子大学2.石河子大学网络中心)刘伟1周淑萍2刘雅辉2LIU WEI ZHOU SHUPING LIU YAHUI摘要:现代软件需求复杂多变,传统的面向过程的需求分析技术已经不能满足软件开发的要求,用例分析技术是为了适应现代软件需求环境而提出的一项新型的面向对象需求分析技术。本文着重讨论了如何利用用例分析技术进行需求建模、需求分析以及用例分析技术的难点。关键词:用例;需求模型;需求分析中图分类号:TP311文献标识码:AAbstract:Modern software rewurement is complex and phantasmagorie ,and traditional process -oriented requirement- analysis techniquecan’t satisfy the demand of software development now. The use- case analysis technique is a new object- oriented requirement- anal-ysis Technique which was put forward t0 adapt moderm software requirement envirnment.This paper mainly discissed the method ofanalizing requirement and model requirement by use-case analysis techneque and the key problem of use- case analysis techneque.Key words:use- case,requirement analysis,requirement model术需求规格达成的共识。首先,它描述了待开发系统的1引言功能需求;其次,它将系统看作黑盒,从外部参与者的创需求分析是软件开发过程中至关重要的一环,既角度理解系统;第三,它驱动了需求分析之后的各阶决定了软件最终产品能否达到客户的要求,也影响了段的开发工作。不仅在开发过程中保证了系统所有功开发过程的其它环节。传统的需求分析方法通过整个能的实现,而且被用于验证和检测所开发的系统,从置业务过程来描述系统外在可见的需求,立足于把握业而影响到开发工作的各个阶段和UML的各个模型,务过程中的所有细节,这种面向过程、注重细节的需在UML中,一个用例模型由若干个用例图描述,用例求分析方法难以把握用户需求的变化,开发人员容易图的主要元素是用例和参与者。在用例建模的过程陷人细节的汪洋之中而无从下手,开发效率低下。因中,我们的建议是先找出参与者,然后根据参与者来此,随着软件要求日益复杂化,传统的需求分析方法确定 系统的用例。已很难满足现代软件工程的发展需求。2.1.1寻找参与者用例分析技术是IvarJacobson于1986年发布的所谓的参与者是指所有存在于系统外部并与系项源于实践的需求分析技术。它通过用例的参与者统进行交互的人或其他系统。通俗地讲,参与者就是和用例以及用例之间的关系来描绘系统外在可见的我们所要定义系统的使用者。寻找参与者可以从以下需求,用例被定义成系统执行的一-系列动作,动作执问题入手:行的结果能被参与者观察到。这正好满足了用户的需系统开发完成之后,有哪些人会使用这个系统?求,因为他们并不真想了解系统的内部结构和设计,系统需要从哪些人或其他系统中获得数据?他们所关心的是系统能提供什么样的服务。所以,用系统会为哪些人或其他系统提供数据? .例分析技术为解决现代软件需求问题提供了一个有系统会与哪些其他系统相关联?效的解决方案。系统是由谁来维护和管理的?2用例分析技术我们在找到参与者之后,如果出现了两个或多个参与者实质上完全或部分充当相同角色时,应对其进2.1建立需求模型用例模型描述的是外部参与者所理解的系统功行合并或特化。能。用例模型用于需求分析阶段,它的建立是系统开中国煤化工根据参.与者来确定发者和用户反复讨论的结果,表明了开发者和用户对系统1.MHCNM H q要系统提供什么样刘伟:实验师的服务,或者说参与者是如何使用系统的。寻找用例国家自然科学基金资助项目(30460060)可以从以下问题人手(针对每一个参与者):《PLG技术应展200例》圊自控网邮局订阅号:82-946 360元1年- 265 -软件时空中文核心期刊《微计算机信息》(管控- -体化)2006 年第22卷第12-3期参与者为什么要使用该系统?而备选路径则不-定会通过。需要时可先确定用例的参与者是否会在系统中创建、修改、删除、访问、基本路径和关键 的备选路径,在以后的迭代中再增加存储数据?如果是的话,参与者又是如何来完成这些其它的备选路径。此外,在细化用例时还应指出用例的操作的?前提条件和后置条件。前提条件指调用用例时必须满参与者是否会将外部的某些事件通知给该系统?足的条件。后置条件指用例结束时必须满足的条件。系统是否会将内部的某些事件通知该参与者?2.2.1基本流在用例的抽取过程中,必须注意:用例必须是由基本流描述的是该用例最正常的一种场景,在基某一个参与者触发而产生的活动,即每个用例至少应本流中系统执行--系列活动步骤来响应参与者提出该涉及一个参与者。如果存在与参与者不进行交互的的服务请求。我们建议用以下格式来描述基本流: .用例,就可以考虑将其并人其它用例;或者是检查该(1)每一个步骤都需要用数字编号清楚地标明步用例相对应的参与者是否被遗漏,如果是,则补上该骤 的先后顺序。(2)用一 句简短的标题来概括每- -步参与者。反之,每个参与者也必须至少涉及到一个用骤的主要内容,这样阅读者可以通过浏览标题来快速例,如果发现有不与任何用例相关联的参与者存在,地了解用例的主要步骤。在用例建模的早期,我们也.就应该考虑该参与者是如何与系统发生对话的,或者只需要描述到事件流步骤标题这--层,以免过早地陷由参与者确定一个新的用例,或者该参与者是一个多人到用例描述的细节中去。(3)当整个 用例模型基本余的模型元素,应该将其删除。稳定之后,我们再针对每一-步骤详细描述参与者和系用例除了与其参与者发生关联外,用例之间抽象统之间所发生的交互。建议采用双向描述法来保证描出包含(include).扩展(extend)和泛化(generalization)这述的完整性 ,即每一步骤都需要 从正反两个方面来描技几种关系。述:(1)参与者向系统提交了什么信息;(2)对此系统有什术包含:一个用例可以简单地包含其他用例具有的么样的响应。行为,并把他所包含的行为做为自身行为的一部分。在描述参与者和系统之间的信息交换时,需指出创扩展:一个用例也可以被定义为基用例的增量扩来回传递的具体信息。 例如,只表述参与者输人了客展,同一个基用例的几个扩展用例可以在- -起应用。户 信息就不够明确,最好明确地说明参与者输人了客泛化:当多个用例共同拥有--.种类似的结构和行户姓名和地址。通常可以利用词汇表让用例的复杂性为的时候,我们可以将它们的共性抽象成为父用例,保持 在可控范围内,可以在词汇表中定义客户信息等其他的用例作为泛化关系中的子用例。在用例的泛化内容,使用例不至于陷人过多的细节。关系中,子用例是父用例的一种特殊形式,子用例继2.2.2备选流承了父用例所有的结构、行为和关系。备选流负责描述用例执行过程中异常的或偶尔对于同一个系统,不同的人对于参与者和用例都发生的一些情况,备选流和基本流的组合应该能够覆可能有不同的抽象结果,因而得到不同的用例模型。盖该用例所有可能发生的场景。在描述备选流时,应我们需要在多个用例模型方案中选择一种"最佳"(或"该包括以下几个要索:较佳")的结果,一个好的用例模型应该能够容易被不(1)起点:该备选流从事件流的哪一步开始; (2)条同的涉众所理解,并且不同的涉众对于同一用例模型件:在什么条件下会触发该备选流;(3)动作:系统在该的理解应该是一-致的。备选流下会采取哪些动作; (4)恢复:该备选流结束之2.2建立分析模型后,该用例应如何继续执行。需求模型中的用例描述了系统外部的参与者要备选流的描述格式可以与基本流的格式一致,也实现的目标,只反映用户需求而不干涉系统应提供具需要编号并以标题概述其内容,编号前可以加以字母体功能细节,为获得这些功能细节,以便于软件构架前缀 A以示与基本流步骤相区别。的建立和将来的设计和实现工作,就要将用例细化,2.2.3注意事项在需求模型建立后,系统分析员就可以以需求模型和在编写数据流时,应该注意以下事项:用例图作为起始点详细描述每个用例,并将每个用例(1)使用简单的语法:主语明确,语义易于理解;(2)逐步描述细化为精确动作序列的分析模型。明确写出"谁控制球":也就是在事件流描述中,让读者细化每个用例的主要任务是详细描述其事件流。直观地了解是参与者在控制还是系统在控制;(3)从俯事件流是描述参与者执行用例过程中发生的各种交视的角 度来编写:指出参与者的动作,以及系统的响互的序列,包括用例如何开始、结束以及如何与参与应,中国煤化工程向前推移:也就是者进行交互。事件通常会形成两种路径:一种是参与第一CN MH G按下tab键做为一个者顺利达成目标的基本路径,我们称之为基本流;另事 件就是不合适的);(5)显不参与者的意图而非动作-种是反映可选或异常情况行为的备选路径,称之为(光有动作,让人不容易直接从事件流中理解用例);备选流。参与者要完成用例,必须通过整条基本路径,(6)包括 "合理的活动集"(带数据的请求、系统确认、更- 266万明数搪邮局订阅号:82-946|《现场总线技术应用200例》您的论文得到两院院士关注软件时空改内部、返回结果);(7)用"确认"而非"检查是否":(如通 讯地址:(832003新疆石河子大学信息科学与技术系统确认用户密码正确,而非系统检查用户密码是否学院)刘伟正确);(8)可选择地提及时间限制;(9)采用"用户让系统(收稿日期2006.7.28)(修稿日期2006.8.241)A与系统B交互"的习惯用语;(10)采用"循环执行步骤x到y,直到条件满足"的习惯用语。(上接第280页)2.3用例分析技术的难点强调在了解功能性需求的同时,对非功能性需求也要在使用用例分析技术时,很多人都觉得如何确定引起足 够的重视;良好的架构能使业务逻辑、用户界用例的粒度是-一个难点,而且感觉到用例没有什么规面及数据库处理充分分离,系统变得更加灵活,更易则遵从,甚至有无所适从的感觉。应该如何确定用例配置和发布;数据库设计也应随着应用程序不断进的粒度呢?在一次技术研讨会上,有人问起Ivar Jaco-化,其性能对系统起着重要的作用;界面原型是获取boson博士,一个系统需要有多少个用例?大师的回答需求的较佳途径;通过规范的软件工程过程和正确的是20个,当然他的意思是最好将用例模型的规模控软件项目管理措施,在客户和开人员间建立起良好的制在几十个用例左右,这样比较容易来管理用例模型沟邇 桥梁和协作机制,加强反馈和反馈效果,对迭代的复杂度。在用例个数大致确定的条件下,我们就很式增量开发的进程至关重要 ;每次迭代应产生一个可容易来确定用例粒度的大小。对于较复杂的系统,我运行的和能进行验证的系统; MISXP 采用了先进的们需要控制用例模型- - 级的复杂度,所以可以将复杂CASE 工具,提高了效率,但它不能替代正确完善的软度适当地移往每一个用例的内部,也就是让一个用例件项目管理和开发方法论。包含较多的需求信息量。对于比较简单的系统,我们5结束语则可以将复杂度适度地曝露在模型一级,也就是我们可以将较复杂的用例分解成为多个用例。不同方法的目标对象和适用环境各不相同,学习术用例的粒度不但决定了用例模型级的复杂度,而和运用流行的过程方法论是实施过程改进的好办法,且也决定了每一个用例内部的复杂度。我们应该根据在理解其精神实质基础上灵活运用,整合其最佳元仓每个系统的具体情况,因时因宜地来把握各个层次的素,设计出适合实际的过程体系,是解决问题和持续复杂度,在尽可能保证整个用例模型的易理解性前提改 进的最佳途径, MISXP的成功实施也证明了这一-个开下决定用例的大小和数目。点。但成功的过程改进始终离不开专业判断和常识理3总结解,应根据应用类型、项目特点和组织文化等诸多因采用用户可以理解的用例图来对需求进行标准、素确定自己的道路,不能人云亦云,如何把握好开发规范的描述,保证双方在工具的协助下对需求达到共技能、软件过程和组织管理各个因素的平衡是软件工同的认识。使用户不仅可以有效地参与需求定义,还程实践的永恒话题。本文作者创新点:1.征对极限编程的不足和MIS能在建模过程中参与部分的设计、实现和测试,从而的特征,提出了适应于管理信息系统的开发方法MIS-有效的发挥其主观能动性,这对正确地获取需求十分XP;2.给出MISXP的开发过程并成功实践。必要的。所以,合理地使用这项技术,必能在整个软件参考文献:开发过程中起到事半功倍的效果。本文作者创新点:用例分析技术通过用例的参与[1]Martin Fowler.敏捷开发原则、模式与实践M].北京:清华大学者,用例,用例之间的关系来描绘系统外在可见的需出版社,2004,6-8.[2Martin Fowler,重构一改 善既有代码的设计[M.北京:中国电求,用例被定义成系统执行的- - 系列动作,动作执行力出版社,2003.的结果能被参与者观察到。这正好满足了用户的需[3]周红涛,季新生.三层C/S结构中数据库连接管理器的构造[小]求,所以,用例分析技术为解决现代软件需求问题提微计算机信息2005,(21).98-100.供了一个有效的解决方案。作者简介:曾广平,湖北武汉人,硕士,讲师,主要研究方向软件工程,数据库及应用;宋中山,湖北武汉人,副[]王建军.UML建模:实例分析[1.微计算机信息2002.5.作者简介:刘伟(1961-),女,汉族,实验师,主要研究方教授,主要研究方向面向对象技术,数据挖掘。向:计算机软件理论与应用,E- -mail:Iw. jinf@shzu.edu.Biography:Zeng GuangpingWuhan Hubeinmase,lecture,His reseachinterests inelude Software Engineering and applying of Database.cn;周淑萍(1972- -),女,汉族,讲师,主要研究方向:计算(4300中国煤化工中南民族大学计算机机应用技术;刘雅辉(1979- -),女,汉族,助教.主要研究方科学MHCNMHG向:计算机网络应用技术。(832003新疆石河子大学信息科学与技术学院)刘伟通讯地址:(430074湖北武仪氏 族大道5号中南民族(832003新疆石河子大学网络中心)周淑萍刘雅辉大学计算机科学学院)曾广平(收稿日期:2006.7.28)修稿8期:2006.8.24)《PLO技术数唐200例》自控网邮局订阅号:82-946 360元1年-267-

论文截图
版权:如无特殊注明,文章转载自网络,侵权请联系cnmhg168#163.com删除!文件均为网友上传,仅供研究和学习使用,务必24小时内删除。