




已阅读5页,还剩67页未读, 继续免费阅读
(计算机应用技术专业论文)面向信息系统的需求获取研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
北方i 业人学硕士学位论文 摘要 随着社会发展,大部分企业正在进行或已经完成信息化建设。然而,在企业的信息 系统的建设过程巾,出现了许多问题,其中最为突出的就是需求问题。长久以来,人们 认为所谓信息系统,就是购置套服务器,安装一套软件,在这一平台上处理日常业务 流程,而极少对项目进行立项分析和对需求进行充分的调研,这就使得获取的需求通常 是不完整、不清晰、不准确的。这种短见的做法没有认识到信息系统建设的长期性和复 杂性,给信息系统开发带来了困难。 针对上述情况,本文在总结实际项目经验的基础上结合信息系统开发的总体规划 方法和需求建模的z a c h m a n 框架、i d e f 方法、u m l 建模方法,提出了一种需求获取模 型( 简称c a r d ) ,旨在对信息系统的需求规范和需求开发过程提出些改进。c a r d 需求获取模型以数据建模为中心,以建立企业组织机构人员模型为起点,以业务模型连 接数据模型和人员模型,同时建立质量模型以涵盖企1 2 的非功能需求。通过将需求调研 数据生成数据库结构和对数据库表操作的演示页面,辅助系统原型的快速实现,从而提 高获取的需求质量,减少需求开发中与涉众的交流,缩短项目开发的时间,为需求分析 过程提供良好的需求属性支持,更好地保障项目的成功完成。 本文总结近年来需求工程的发展与研究现状,较为全面地分析面向对象的需求工程 和结构化的需求分析方法,通过对其比较分析,得出需求分析对需求调研获取的调研数 据的要求。总结信息系统的总体规划方法,讨论信息系统需求建模的三种方法,即 z a c h m a n 框架、i d e f 方法和u m l 模型的特点,提出c a r d 需求获耿模型。结合 c a r d 需求获取模型,考虑需求调研人员实际需要的辅助功能,得到r e s 需求获取辅 助开发系统的设计框架,以此为基础叙述实现的技术途径。经过初步测试性使用,在需 求获取过程和系统辅助原型开发方面基本达到预期效果。 关键词:软件需求工程,需求获取,需求建模,信息系统 北方t = 业人学硕士学位论文 r e s e a r c ho fs o f t w a r er e q u i r e m e n te l i c i t a t i o n o ni n f o r m a t i o ns y s t e m a b s t r a c t w i t ht h es o c i a ld e v e l o p m e n t ,m o s te n t e r p r i s e sa r ed e v e l o p i n gi n f o r m a t i o ns y s t e m s ,s o m e h a v ea c c o m p l i s h e dt h et a s k h o w e v e r , m a n yp r o b l e m sa p p e a r e dd u r i n gt h ep r o c e s sa n dt h e r e q u i r e m e n tp r o b l e mb e c o m e st h em o s tp r o m i n e n to b _ e p e o p l eh a v eb e e nr e g a r d e di n f o r m a t i o n s y s t e ma st op u r c h a s eas e to fs e r v e r s ,i n s t a l las u i to fs o f t w a r e ,a n dt r a n s a c td a i l yb u s i n e s s p r o c e d u r eo nt h ep l a t f o r m ,w h i l es e l d o mc a r r yo u tp r o j e c ta n a l y s i sn o r s u f f i c i e n ti n v e s t i g a t i o n o nt h er e q u i r e m e n t t h t t s ,t h er e q u i r e m e n ti s u s u a l l yi n c o m p l e t e ,u n c l e a r o ri n a c c u r a t e n e g l e c t i n gt h el o n gt i m ea n dc o m p l e x i t yo f c o n s t r u c t i o no f i n f o r m a t i o ns y s t e m ,d i f f i c u l t i e sa n d r i s k sh a v eb e e nb r o u g h tt ot h ei n f o r m a t i o ns y s t e md e v e l o p m e n t a c c o r d i n gt ot h es i t u a t i o n s ,o nt h eb a s i so fs u m m a r i z i n ge x p e r i e n c ei na c t u a lp r o j e c t s , c o m b i n i n gt h em e t h o do fl a y o u to f t h ei n f o r m a t i o ns y s t e md e v e l o p m e n to nt h ew h o l e ,a sw e l l a sm e t h o d so f r e q u i r e m e n tm o d e l s :z a c h m a nf r a m e ,i d e fm e t h o d ,a n du t v t lm o d e l i n gm e t h o d , t h i s p a p e rb r i n g s f o r w a r dan e wr e q u i r e m e n te l i c i t a f i o nm o d e ln a m e dc o m p u t e ra i d e d r e q u i r e m e n td e v e l o p ( a b b r e v i a t ea sc a r d ) ,a i m i n ga ta m e l i o r a t i n gt h er e q u i r e m e n tc r i t e r i o n o ft 1 1 ei n f o r m a t i o ns y s t e ma n dt h ep r o c e s so fe x p l o i t i n gr e q u i r e m e n t c a r dc e n t e r so nd a t a m o d e l i n g ,s t a r t sw i t he s t a b l i s h i n gp e r s o n n e lm o d e l so fe n t e r p r i s e so r g a n i z a t i o n , j o i n st h ed a t a m o d e la n dp e r s o n n e lm o d e lw i t ht h eb u s i n e s sm o d e l ,a n db u i l d sq u a l i t ym o d e lt of u l f i l ln o f u n c t i o n a lr e q u i r e m e n t so fe n t e r p r i s e sa tt h es a m et i m e t h e n , d a t a b a s es t r u c t u r ea n d d e m o n s t r a t i o np a g e sc a nb ec r e a t e dt oa s s i s ta c h i e v i n gp r o t o t y p es y s t e m ,w h i c hc a ni m p r o v e r e q u i r e m e n tq u a l i t y ,r e d u c et h ec o r n n m n i c a t i n gt i m ew i t hc o r r e l a t i v e s ,s h o r t e nd e v e l o p i n gt i m e o f p r o j e c t sa n de n s u r es u c c e s so f p r o j e c t s i nt h ep a p e r f i r s t l yw es u m m a r i z e dt h ed e v e l o p m e n to fr e q u i r e m e n te n g i n e e r i n g ,e d u c e i n f o r m a t i o nd e m a n do fr e q u i r e m e n ta n a l y s i s ,b ya n a l y z i n ga n dc o m p a r i n go b j e c to r i e n t e d r e q u i r e m e n te n g i n e e r i n ga n ds t r u c t u r ea n a l y s i sm e t h o d s e c o n d l y ,o nt h eb a s i so fa n a l y z i n g t h r e er e q u i r e m e n tm o d e l i n gm e t h o d sw h i c ha r ez a c h m a nf r a m e ,i d e fm e t h o da n du m l , d e c r y p t e dd e s i g n eo fc a r dr e q u i r e m e n te l i c i t a t i o ns y s t e m a tl a s t ,t h ep r o c e s so f d e v e l o p m e n ta n dt h ea p p l i c a t i o no fp i v o t a lt e c h n o l o g i e s a r ed e s c r i b e di nd e t a i l ,t h e nt h e s y s t e m sb e h a v i o r i sv a l u e dm a df o r e g r o u n do f p r o g r e s si se x p a t i a t e d k e yw o r d s s o f t w a r er e q u i r e m e n te n g i n e e r i n g ,r e q u i r e m e n te l i c i t a t i o n ,r e q u i r e m e n t m o d e l i n g ,i n f o r m a t i o ns y s t e m 3 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的 研究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含 其他人已经发表或撰写过的研究成果,也不包含为获得j e 直至些盔堂或其他教 育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示谢意。 学位论文储签铈洚字吼游咖日 学位论文版权使用授权书 本学位论文作者完全了解j b 左王些盍堂有关保留、使用学位论文的规定, 有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅 和借阅。本人授权j e 左王些盍堂可以将学位论文的全部或部分内容编入有关数 据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后适用本授权书) 学位论文作者芋名:带移铲 签字日期m 积笋6 7 月。日 工作单位: 通讯地址: 导师签名 捌飞 签字日期:。房n 骺 一2 一 电话: 邮编: 北方上鼗大学颤士学位论文 引言 随着信息时代的发展,讣簿机软件的需求愈来愈复杂,舰模愈来愈大,而且随着仓 浊的黢疑,工作过程重维,需求变更已愈泉愈成为必然。 软件危机持续了3 0 年之久,至今仍无法锝以穰好缝解决。究其原因,固然与软传 本身鼢特点有关,毽长麓以来,缺乏软彳牛开发_ 秘维护的矗! 确方法以及忽视软件开发过程 的质量控制乃是最为关键豹琢戮。魄翔:忽视软件开发翁期的需求分析:开发过程缺乏 统一的、规范化的方法论的指导;文档资料不齐全或不准确;忽视与用户之间、开发组 员之间的交流;忽视测试的萤要性;不重视维护或由于上述原因造成维护f :作的困难等 等f 2 1 f 3 i 。 这章羊,赣经常 b 琨髑户对“已完成”系统不满意,软件产品的质量经常出现漏灏, 替丁大堆。匾s t a n d i s hg r o u p 从1 9 9 4 年到2 0 0 1 年酶c h a o sr e p o r t s 证实,导致项毯失 败的疑重要瓣原因与较徉需求蠢共t “,嗣时有一些研究表明,在软 孛维护除段谚改一个 需求错误要比存需求开发阶段多付出2 0 0 倍的成本。由此可融,需求分析作为软件生 命周期的第一个阶段,并贯穿了:整个软件生命周期,其重露性越来越突出。软件项目要 收得成功,最重要的是研究与项目相关的软件需求。 在8 0 年代中期,逐步形成了软件工程的子领战需求工程。进入9 0 年代后,需 求工程成为软俘赛研究的重点之一。扶1 9 9 3 年起,每两年举办一次需求工程因题i 研讨 会( i s r e ) ,1 9 9 4 年起,每瓣年举办一次需求工程因际会汉( c r e ) 。一些关于霰求 1 :程的】:弦小组援继成立。 通i 重这些年的研究,需求:穰纳方法学发展很快,对需求工程方法学不同侧面的研 究和螳缀舆论述为需求工程的发展奠定了基础。开前的研究主露集中在需求分析和需 求管理,而对于需求工程的起点工作需求获取方而,却是很少有人涉足,究具缘 由,其一是需求获取更倚重于需求分析员的个人素质,没有随宠的煅律可以遵循;其二 是不灏信息系统郡县有备垂鲍 亍监特龟帮企业特色,难予从中寻我褶通豹方法。 然谣,对需求获取的研究主嚣楚惑义重大。首先,需求拜发蕊第一步蔹是获取嗣尹t 需 求,淹好定义的软件需求是从鬻求调研开始,如果在需求调研时虢没有褥到完整、正确 的项翻信息,即使在需求分析阶段建立完美的模型也是不能取得成功的。 其次,随着社会发展加速,市场商机往往是一瞬即逝,导致企业业务流程的复杂多 变,因此很多企业对于信息系统提出了更高的要求,即墅求能做到系统的快速开发,露 求能在缀短的几个月之内完成系统的上线试运行;并希囊能在运行过程中可以对系统妲 北方 :业大学硕上学位沦文 务流程甚至相关数据信息进行灵活自由定制。这对当前的信息系统开发方法提出了挑 战。因此,研究需求开发技术,实现系统的快速开发和灵活定制,有着重要意义。 本文从基于信息系统的需求秩取入手,通过分析现有的需求分析技术和建模理论, 结合信息系统的特色需求,充分利用现有的技术成果和实际经验,提出了以数据为中心 的需求获取模型框架。在此基础上,通过运用成熟的w e b 开发技术,利用m i c r o s o f t v i s u a ls t u d i o n e t 开发工具,开发出了以需求获取为为主,兼有需求辅助分析功能的需 求丌发平台。在此平台上,通过w e b 浏览器,可以实现了需求基础数据的录入、修 改、删除、审批、查询功能,同时,通过将需求数据做简单处理,生成实体数据的数据 库结构,并实现了对数据表操作页面的自动生成,来辅助实现系统原型的快速开发,通 过客户对原型系统的反馈,来更好的完成需求调研工作。 一2 一 方u 【业入学硕士学位论文 自从f r e db r o o k s 在1 9 8 7 年提出“没有银弹”以来,软件行业的很多从业人员都在 为寻找“银弹”而不懈努力,在逐步重视业务分析、需求分析和软件设计,并且,通过 软件重嗣、需求精化和快速原型、递增式开发、优秀的设计等方法使褥软件的开发效率 褥到了火幅度提高。虽然,我们依然没有找到真诿解决闷怒的办法,;i j - 怒,软件工程的 发展与应用给解决“软件危机”带来曙光。下文总结需求工程的发展与研究现状,描述 信息系统簇本概念和发展,提出了本课题的研究目标和主要内容的组织形式。 l 綦羿究现状 1 1 l 需求正程的发展 无沧是在需求工程的理论研究,还怒需求工程的技术实践上,国内的软件行业和国 外的软件行1 2 都存在着缀太弱差距。 在理论研究领域,除了翁而所提到的需求工程国际会议外,国外研究机构已经提出 了很多需求工程方法,综合看柬,大致可以分为四类:面向过程、面向数据、面向控 制、面向对致。 蕊国过程的分梅方法主要研究系统输入输出的转纯方式,对数撼本旁及控毒方垂并 不穰重视。传统的结构分析方法s a ( s t r u c t m ea n a l y s i s ) 矧、s a d t ( s t r u c t u r ea n a l y s i s a n dd e s i g nt e c h n i q u e ) 7 1 和可执行可操作模型、d e s c a r t e s 以及形式方法v d m ( v i e n n a d e s i g nm e t h o d ) 1 8 1 、z p 7 博都属 二这一类。其中结构化分析方法是目前应用最广泛、最 成熟豹信息系统开发方法。 藩向数据的方注强调以数据结构的方式描述和分孵系统状态,j s d 和关系实体 ( e r ) 模型部属此类吼 面向控制的方法强调剐步、死锁、瓦斥、并发以及进糨激活和挂起,数据流图就是 典警的灏囱控制毂方法,s a d t 是以嚣良蹬利豹方法为辅孵 1 。l 。 疰商对象的方法糖分折建立在系统对象以及对象精j 交瓦的基础上,通过对象的属 性、分类结构和集合绵构定义和沟通需求。从对象模型、动态模型和功能横j ! i ! ! 三个方面 对问题进行描述。厦向对琢的方法正在成为需求分析中的一个热点,并展现出良好的应 用翦景。y o u r d a n 和c o a d 豹o o a 方法、b o o c h 的方法、j a c o b s o n 的o o s e 、 r u m b a u g h 豹o i v i t 方法等,都是这一方法的典鍪! 滚派 1 1 l 旧。 北方j :业大学硕士学位论文 在需求工程应用领域,国外的软件丌发过程比较规范,形成了需求分析和需求管理 的一套理论和管理体系,如基于c m m ( 软件能力成熟度模型) 、c m m i ( 软件能力成 熟度模型集成) 和1 s 0 9 0 0 0 标准。并且,国外已经有很多公司在从事需求工具的研究和 开发,也开发出了很多实用产品,如t e l e l o g i e 公司的d o o r s 、m mr a t i o n a l 的 r e q u i s i t ep r o 、b o f l a n d 公司的c a l i b e rr m ,这些产品已经很好的应用在国外的软件公 司。 而国内在需求工程领域研究情况和应用状况则不容乐观,不仅在需求工程的理论研 究方面比较落后,而且,在实践应用领域也是存在很多问题。我们可以学习国外的理论 研究成果,但是却无法成功应用国外的软件产品。这是由于国内的软件公司大部分处于 初级阶段,公司规模比较小,人员流动大,抗风险能力差,即使要提高对需求工程的重 视也是心有余而力不足。在为数不多的大型软件公司中,虽然已经实施了软件工程化开 发和管理,但很多也是流于形式,或者是用来提高公司在客户中的知名度,而员工对软 件的工程化思想并没有提高。 总体看来,我国的软件行业要快速发展,形成规模,需要研究和学习先进的软件工 程理论,并开发出适合中国国情的需求工具,同时,加强对开发人员和用户对需求工程 的理解和学习。 1 1 2 形式化方法 目前,很多需求工作者认为需求的质量在很大程度上依赖于从领域用户处获取的知 识,依赖于领域用户参与需求工程的程度,如何i r 领域用户紧密的结合到需求工程的活 动中来,是当前研究的热点问题。目前有代表性的工作包括c r e w s 方法、k a o s 方 法、i + 方法等【1 4 】【1 5 】【1 6 1 。 c r e w s 是e s p r i t 的一个项目,它关注领域用户参与需求抽取、验证和使用,并 提出有效的合作越来越重要,提出四种情景来帮助需求抽取工作,情景需要得到用户的 理解并有传统需求工程方法的支持。基于情景驱动的需求获取方法是数据驱动的,它收 集从应用中提取的信息,并组织这些信息,创建一个可视化的需求模型。这种方法的好 处在于用户非常熟悉领域知识,他们可以很容易参与并贡献思想。而情景的选择是需求 获取成功的关键。 k a o s 方法和l 方法都是基于模型出发的方法。k a o s 方法提供了一种需求规格说 明语言,一种基于目标驱动的软件需求确定模型和有关的元级知识。k a o s 语言提供了 一套丰富的基本概念定义,如对象、操作、代理、目标、需求、假设、脚本等,可以捕 捉w h a t 、w h y 、w h o 和w h e n 四类需求。k a o s 方法中,需求模型确立分为以下步 4 一 北方工业大学硕仁学位论文 骤:目标确立、对象操作捕获、目标操作化和责任分配。模型建立过程也是系统目标 的求精过程。i + 方法则提出要为a c m r 创建各种依赖关系,提出了四种依赖关系:目标 依赖关系、行为依赖关系、资源依赖关系和软目标依赖关系。k a o s 和i + 方法都将日 标a g e n t 活动资源等作为基本的抽象,并用某种语义关联将它们集成在一起。这两种基 于模型的方法主要用于需求分析,它们使用语义关联来表示需求模型,这些语义关联对 早期的需求分析比较关键,但不利于让领域用户参与,也就是说,领域客户较难自己定 义这些语义关联,特别是对于大型企业应用。 中科院数学所金芝研究员以企业信息系统为研究背景,提出了一种基于本体的需求 获取方法f 1 7 j 1 8 i f ”1 1 2 0 l ,该方法用企、皿本体和领域本体为基本线索,引导领域用户令面描 述现实系统,并通过重用领域需求模型,构造应用软件需求模型。这种方法的主要特点 足:用领域用户可以理解的语言与他们交互,让他们能积极地参与需求获取活动:需求 获取在模型的制导下完成,利于保证需求获取的完整性和一致性;在多种知识的支持 下,自动完成对现实系统的理解和目标系统需求模型的构造。同时金芝研究员提出基于 组织本体的需求分析方法,即以问题领域描述为起点的多范例自动建模和分析方法,提 出组织结构的合理性,组织目标的可实现性和组织过程的口丁行性等三个分析准则。分析 的结果可以进一步引导领域用厂t 补充和修改问题领域描述,分析完成后得到的问题领域 模型可以作为前期需求文档,为进一步的软件需求建模提供依据。 目b i 对于需求获取没有形成一套规范的软件需求获取和描述方法。主要是研究对需 求分析的形式化描述。已经研制出多种形式化语言和半形式化的规格说明语言,用以对 系统的状态和行为进行描述和验证:l o t o s 、e l o t o s 、过程描述语言p d l 、z 语 言、b 语言、v d m 、统一建模语言u m l ,并对形式化语言之问的转换进行了研究,从 而能够对系统需求给出更深入精确的形式化描述和验证。 近年来已经开发出一些需求分析工具,其中有代表性的自动化工具有:软件需求工 程方法学( s r e m ) 、问题陈述语言问题陈述分析器( p s l p s a ) 。它们提供一组程序, 帮助分析员制定需求规格说明。以自动化为主的工具给分析员提供另一种可供选择的方 案。软件需求能够用一种规格说明语言来描述,这种语言把关键字指示符与自然语言 ( 例如英语) 描述结合起来。规格说明语言被送进一个处理机,它产生出一份需求规格说 明,更为重要的是,它同时还产生出一组有关规格说明的一致性和组织的诊断报告。 1 1 3 信息系统发展 信息系统概念是一个历史范畴,它的内涵随着时间的推移而不断在变化。“管理信 息系统”( m a n a g e m e n t i n f o r m a t i o ns y s t e m ,m i s ) 的出现是在1 9 7 0 年,瓦尔特肯尼万 5 一 北方一1 2 业大学硕士学位论文 ( w a l t e rt k e n n e v a n ) 定义m i s 为:以书面或口头的形式,在合适的时间,向经理、 职员以及外界人员提供过去的,现在的并预测未来的有关企业内部及环境的信息,以帮 助它们进行决策。随着信息技术的发展和广泛应用,管理信息系统已经不能独自涵盖计 算机在组织管理中的所有应用领域,出现了含义更广泛的信息系统的概念口”。 信息系统可以看作是管理信息系统概念的发展,或者是信息技术的发展促使了信息 系统概念的形成并普遍被接受和认同。如斯代尔( s t a i r ) 把信息系统定义为:一系列相 互关联的,可以收集( 输入) 、操作和存储( 处理) 、传播( 输出) 数据和信息,并提 供反馈机制以实现其目标的元素或组成部分的集合。在企业组织中最常见的信息系统包 括事务处理系统、管理信息系统、决策支持系统、综合服务系统等。 回顾信息系统的发展历史,其发展轨迹是一个从e d p 到t p s ,再到m i s 、d s s 和 o i s 的发展过程,同时,在发展过程中,密切结合了业务领域,实现了业务内容和信息 技术的融合。其发展的动力一方面来自于在企业管理实践中的需求,另一方面则是得益 于计算机和软件技术的飞速发展。在现代企业管理实践中,只有拥有快速的市场反应能 力和灵活多变的策略,才能在激烈的竞争环境立足并发展。 1 2 研究目标及内容 本文研究了软件需求、需求获取过程和软件需求管理,结合信息系统的需求模型, 遵循c m m i 和i s 0 9 0 0 0 对软件需求管理的要求,比较常用的需求管理工具,构建了以 业务流程为中心,以数据模型、人员模型、质量模型为辅的信息系统需求获取模型 c a r d ( c o m p u t e ra i d e dr e q u i r e m e n td e v e l o p m e n t ) ,并实现了基于c a r d 的需求获取 辅助开发系统r e s ( r e q u i r e m e n t e l i c i t a t i o n s y s t e m ) ,实现以下目标: 提供对需求调研数据的录入,为建立业务模型、数据模型、人员模型和质量模 型提供基础信息 采用b s 结构,支持用户灵活登录,并支持客户自主填写调研信息 层次性获取业务数据实体、人员组成结构、非功能需求和业务模型,依次建立 良好的需求关系,形成良好的需求跟踪链 实现了数据实体到数据库的转换,可以通过填写数据实体信息生成数据库模型 根据数据实体生成a s p n e t 的页面代码和实体类,可以实现实体数据的增 加、删除、修改、查看操作。 通过实体页面的自动生成,根据业务流程信息,可以实现系统原型的快速开 发,而原型系统可以增强客户体验,进一步完善需求调研工作。 6 北方t 业大学硕1 二学位论文 1 3 论文组织结构 本文第一章简要介绍了本课题的背景和研究现状,包括需求1 :程的发展、形式化方 法的研究情况等,提出了课题的研究内容和目标是构建一个基于c a r d 的需求获取辅 助系统r e s ,描述其_ = 三要的实现日标。 第二章介绍了需求工程的基础知识,包括需求获取、需求分析和面向对象的需求i : 程。本章分析了需求获取和需求分析活动的目的和存在问题,讲述了面向对象的需求工 程活动,并且对软件开发生命周期和需求活动的关系进行了分析,确定了c a r d 需求 获墩模型在软件开发过程中的地位和需求获取平台的目的。 第三章描述了基于信息系统的需求模型。总结已有的信息系统建模方法,包括信息 系统总体规划方法和信息系统需求建模方法。信息系统总体规划方法有结构化分析和设 计方法、企业系统规划、战略数据规划方法、信息工程方法。信息系统需求建模方法l | 的z a c h m a n 框架、i d e f 方法和u m l 模型。提出了基于信息系统的需求模型。 第四章简要分析了系统在技术上的取舍,通过比较分析,确定了系统在技术实现e 采用b s 结构,使用a s p n e t 技术实现,并分析了系统在安全性方面的措施。 第五章是c a r d 需求获取辅助开发系统的实现分析。将c a r d 需求建模过程分为 五个过程域,分别为软件立项、领域模型分析、需求调研、需求分析和原型体验。并时 c a r d 需求获取辅助丌发系统实现中的技术选型分析。 第六章简要介绍c a r d 需求建模工具的详细实现。第七章对本文做出总结,提出 今后的研究方向。 一7 北方上业人学硕十学位论文 2 需求工程 根据i e e e 软件工程词汇表( 1 9 9 7 ) 中需求定义为: ( 1 ) 用户解决某一问题或达到某一目标所需的条件或权能( c a p a b i l i t y ) ( 2 ) 系统或系统构件为了满足合同、规约、标准或其他正式实行的文档所需具有的 条件或权能 ( 3 ) 一种反映上面所描述的条件或权能的文档说明 i e e e 的定义从用户角度和开发者角度来阐述需求。对于“需求”的定义还有很多 其他形式,但是并没有一个清晰,无二义性的“需求”的术语存在,而任何文档形式的 需求仅仅是一个模型,一种概述,我们所要确保的就是所有项目的参与者在描述需求的 理解上达到共识。 而关于需求工程概念,有很多定义1 3 j ,如a l a nd a v i s 把需求工程定义为“直到( 但 不包括) 把软件分解为实际架构组件之前的所有活动”( d a v i s ,1 9 8 8 ) 。换句话说, 即内部设计之前的一切活动;b e nk o v i t s 把需求工程的特性非常简洁的描述为“需求的 设计”( k o v i t s1 9 9 9 ) ;i a nb r a y 则把需求工程概况为“对问题域及需求作调查研究和 描述,设计将满足那些需求的皆系统的特性并用文档说明( b r a y2 0 0 2 ) ”。其中,比 较公认的是k a r lw i e g e r s 在其著作s o r w a r er e q u i r e m e n t ) ) 中所作的定义:需求工程包 括需求开发和需求管理,需求开发可进一步细分为获取、分析、规格说明、确认,这些 子科学涵盖了为软件和软件相关产品收集、评估和 己录需求相关的所有活动,需求管理 的任务则是“与客户就软件项目的需求达成并保持一致,l “。 本章介绍了需求工程的基础知识,包括需求获取、需求分析和面向对象的需求工 程。分析需求获取和需求分析活动的目的和存在问题,讲述面向对象的需求工程活动, 并且对软件开发生命周期和需求活动的关系进行了分析,确定了c a r d 需求获取模型 在软件开发过程中的地位和r e s 需求获取平台的目的。 2 1 需求获取过程分析 需求获取是在问题及其最终解决方案之间架设桥梁的第一步,是软件需求过程的主 体。一个项目的目的就是致力于开发正确的系统,要做到这一点就要足够详细地描述需 求,也就是系统必须达到的条件或能力,使用户和开发人员在系统应该做什么,不应该 做什么方面达成共识。我们都知道开发软件系统最为困难的部分就是准确说明开发什 一8 一 北方上业人学硕士学位论文 么,最为困难的概念性工 乍便是编写出洋纲技术需求,这包括所有面向用户、蕊向极器 和其它软件系统l l 擘接口。 获取需求就是为了解决这些问题,它必不可少的成聚就是对项甘中描述的用户需求 的普遍理解,一旦理解了需求,分析者、7 l :发者和用户就能探索出描述这些需求的多种 解决方案。这一除段的e 作一旦傲错,将最终会给系统带来极大损害的部分,出于需求 获取事物造成的对需求定义豹任何改动,酃将导致设讨、实现和寡8 试上鹣大羹返工,丽 这时花费的资源和时问将大大超过f f 细精确获取需求的时间和资源。而且通常会暴露出 两方面向题。 第1 ,软件需求不髓如实反映疆户的囊正需要。比较常见的一秘误解是露求的籍单 弱复杂程凄决定了焉户魁秀链够寞芷理躲捐应的内容:谈认为客户强能看悸麓单的需 求,但怒对开发没有直接帮助;只有复杂的需求才有用,但是大多用户又不可能看得 懂。事实上,造成这类问题的主要原因是捕获的需求不能反映用户的视角,凶而,用户 站在自己的立场 i 很难判断需求是否完备秘正确,特别楚在开发活动的早期。 第= ,软 譬需求不笼被开发园陵的不阑王 直接共蠲。理论上,歹l = 发函队所有成员 的工作内容都受软件需求制约;现实中,如果不采用理想的需求捕获方式,只有分析人 员的工作看起束和软件需求的内容直接关联,其它人的工作内容和软件需求的关联并不 直观,影武上的差旯或转述往经不易察觉地造成了渚多歧义、冗余或者缺穴。 多年,分褥者慧怒秘孀情节或经历来攒述屠户昶* k 4 t - 象统的交互方式,从丽获取 需求,l v a rj a c o b s o n 和其他人把这种看法系统地阐述成用使用实例的方法进 ? 需求获取 和建模:一个使用实例捕述了系统和一个外部“执行者”的交互顺序,这体现执行者完 成一项任务并给涉众带来盏处,执行者怒撑一个人,或另一个软件应用,或一个硬件, 或其它些与系统交互以饕;溪慕些目标的安俸,执行者可以映豫到一个葳多个可隧操作 的打j 户炎的角色。 使用实例为表达用户需求提供了一种方法,而这方法必须与系统的、业务需求相一 致。分析者和罔户必须检查每一个使用实例,在把它们纳入浠球之前决定其是西在项目 瑟定义的范溺内。摹丁 “搜用实倒”方法进行需求获取魏霹的在于:攒述羽户需要使用 系统完成豁所有任务。存礴论上,使用实倒的结果集蒋包括所有合理的系统功能。存现 实中,这种方法不町能获得所有需求,但比较而苦,基于使用实例的方法可以带来更好 魄效果。 9 e 方工业大学硕士学位论文 撼于实例的需求获取过程遵循如下步骤: ( 1 ) 编写辩豢文挡:黪景文档应该包括篱绥的产蕊i 2 务西标,所有的用铡和功能需 求都必须遵从能达到的业务需求。项目前景文档中的说明使所有项目参与者对项目的嗣 标麓达成共识。 ( 确定用户类:为避免出现疏忽菜一用户群需求的情况,要将可能使用产品的客 户分成不同组别。他们可能在使用频率、使用特性、优先等级或熟练程度等方面都有所 差舅。详细描述& 它们的个性特点及任务状况,将有髓予产晶设计。然后在每个嗣户类 中确定适当的代表:为每类用户选择能真j 下代表他们需求的人作为那一类用户的代表, 并g 传出凌策。 ( 3 ) 确定用例:运用需求获取方法对系统的重要部分进行用例开发并设鬣优先级: 从用户代表处收集他们使用软件完成所需任务的描述,编写用例,描述用户与系统间的 交互方式和对话瑟求。 ( 4 ) 召开碰用程序丌发联系会议:应用程序丌发联系会议是范围广的、简便的专题 讨论会,也楚分析人员与客户代表之闻一静锻爨 的合作办法,可以在会上就融完成鳍工 作或泰完成的工作与客户麓开讨论,并能由此拟出需求文档的底稿。 ( 5 ) 分析用户工作流程:观察用户执行业务任务的过程。画一张简单的示意图( 最 好是数据漉盈) 来描绘用户什么时候获缮什么数据,并怎棰使用这些数据。并与客户讨 论此内容。 1 0 托方l :照大学硕七学位论文 ( 6 ) 确定质量疆缝藕其它非功畿嚣求: 点。这些特点包括性麓、有效槛、霹嚣性、 息相对柬说就非常重要了。 在功能需求之辨再考虑一下# 功能建勺质鼙特 呵用性等,丽这些质量j 蓠牲上客户提供的信 ( 7 ) 通过检奇当前系统的问题报告来进一步完善需求:客户的蒯题报告及补充需求 为新产品或新版本提供了大量丰富的改进及增加特性的想法,负责提供用户支持及帮助 的人能为需求过程提供檄有价值的信息。 ( 8 ) 跨项目重用需求:如果客户要求的功能与已有产品很相近,则可查看需求是否 有足够的灵活性以允许重用一些已有的软件维件。 2 。2 需求分析活动 分橱是一个需要慎重对待豹概念,我们可殴对萁意义作一个基本醵指定,分拆怒: 遴过对滔露 或的磷究,获得该领域特性以及存在于其中( 需要解决) 翡阀题特憾鲶透彻 攥解势用文档说明。需求分斩包括对需求避行推敲和润色以保证所有的涉众都能够惩! 解 需求,以及仔细检查找其中的错误、疏漏和其他缺陷。具体工作有将商层的需求分解成 具体细节、创建开发原型,以及评估可行性并协商需求的优先级别。其目的是开发商质 鬣、内容详细的需求让管理者能够对项目做出实际的评估,使技术人员能够继续进行 设计、丌发和坝i 试。 现在人们越来越认识到软件工程在软传开发中的重要作用。目前国内软件在开发中 还没有对软件开发的过程进行明确规定,文捎不完蘩,也不规范,软件矮爨的成功往往 归功于软件, :发缰的一些杰出个入或小缀蛉努力。这静依蔟于个别入员上的成功并不能 为全鳃织豹软孛生产率稻质量的掇凌葵定有效的基础,只有透过建立全过程的改善,采 弼严格的软 牛工程方法和管壤,并篮坚持不懈戆付港实践,才能取褥全组织的软件过程 能力的不断提高,使软件开发更规范合理。 霈求分析在项目开发中的地位如图2 2 所示。 需求分析通常的工作包括有: 绘制关联图:绘制系统关联图是用于定义系统与系统外部实体删的界限和接i 的简 单模型。同时它也明确了通过接口的信息流和物质流。 创建开发原型:创建用户接因骧型当开发人员或用户彳;能确定需求时,开发一个用 ,o 接口原型,这样往褥许多概念釉霹发生的搴更为直观嚷了。用户通过谮价蹶垂i 将使 顼醴参与者髭更好缝相互理解掰黉解决酶阚遂。注意要技出需求文档与辣型之闻蹰有的 冲突之处。 北方v , i k 人学娟士学位论文 蛩z 2 器棼骨软热撵措 分析可行性:分析需求可行性在允许的成本、性能要求下,分析每项需求实施的可 行性,明确与每项需求实现相联系的风险,包括与其它需求的冲突,对外界因素的依赖 和技术障磷。 确定需求优先缎:确定需求的优先级s 目应用分柝方法米确定使藤实铡、产品特性戏 单项需求实现的优先级别。蚪优先级为基础确定。品版木将包括哪些特性或哪类需求。 当允许需求变更时,在特定的版本中加入每项变更,并在那个版本计划中做出需要的 变更。 为需求建立模型:为需求建立模型需求的图形分柝模型是软伟需求规格说明极蠹 f 的 补充漉明。它们能提供不同的信息与关系阻有勘于找到不正确的、不致的、遗漏的和 冗余的需求。这样的模型包括数据流图实体关系图、状态变换图、对话框图、对象类 及交互作用图。 编写数据字典:数据字典是对系统罔到韵所有数据项和结绚的定义,以确保开发人 员使焉统一的数据定义。在需求阶段,数据字典至少应定义客户数据顼以确保客户弓开 发小组是使用一致的定义和术语。分析和设计工具通常包括数据字典组件。 应用质量功能调配:使用质量功能调配。质量功能渊配是一种高级系统技术,它将 产品特性、属性与对客户的熏要性联系起来。该技术提供了一种分析方法以明确那魑是 客户最为关注的特性。它:| 巷需求分为三类:期望需求,即客户或许劳未提及,僵翔誉缺 少会让他们感到不满意;普通需求;兴奋需求,即实现了会给客户带去惊喜,但若未实 现也不会受到责各。 一1 2 一 北方 j 业大学硕十学位论文 2 3 面向对象的需求工程 目前,作为解决软件危机的一个最佳对策,是采用面向对象( o b j e c to r i e n t e d ) 的 技术。面向对象的开发方法强调从问题域的概念到软件程序和界面的直接映射。事实 上,把客观世界看成朝:多对象更接近人类的自然思维方式,而且对象相对稳定。软件需 求的变动往往是功能的变动,而功能的执行者对象傲不会有大的变化。这便是面 向对象技术广生与发展的根源。另外,面向对象技术支持信息隐蔽、数据抽象与封装, 使得软什的开发、修改和维护易丁i 进行口“。 面向对象的建模是一种新的设计思想,- , 9 关于计算和信息结构化的新思维。面向 对象的建模,把系统看作是相互协作的对象,这些对象是结构和行为的封装,都属于某 个类,那些类具有某种层次化的结构。系统的所有功能通过对象之间相互发送消息来获 得。而向对象的建模可以视为是一个包含以下元素的概念框架:抽象、封装、模块化、 层次、分类、并行、稳定、可重用和可扩展。面向对象的建模思想的出现是面向过程和 严格数据驱动的软件丌发方法的渐进演变结果。 2 _ 3 1u m i 广- - i i n i f i e dm o d e l i n gl a n g u a g e 面向对象的分析与设计方法,在8 0 年代术至9 0 年代巾发展到一个高潮。但是,诸 多流派在思想和术语上有很多1 i 同的提法在术语、概念上的运用也各不相一j ,需要一 种统一的符号来拙述面向对象的分析和设计活动。u m l 应运而生。它不仅统一了 b o o c h 、r t u n b a u g h 和j a c o b s o n 的表示方法,刚且有进一步的发展,最终成为大众所共 同接受的标准建模语言。u m l 是一种定义良好、易于表达、功能强大且普遍适用的建 模语言。它融入了软件工程领域的新思想、新方法和新技术。不仅支持面向对象的分析 与设计,还支持从需求分析开始的软件开发全过程田1 1 。 u m l 是面向对象技术发展的重要成果。获得科技界、工业界和应用界的广泛支 持,截止1 9 9 6 年底的统计,已有7 0 0 多家公司表示支持采用u m l 作为建模语言,稳 占面向对象技术市场的8 5 ,成为可视化建模语言事实上的工业标准。1 9 9 7 年,o m g 采纳u m l l 1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度购物中心商铺招商租赁管理合同范本
- 2025年度企事业单位应急周转借款合同范本
- 2025版外汇风险对冲基金投资合同
- 2025版跨境电商融资抵押租赁合同
- 2025版内衣行业电子商务平台合作订货合同模板
- 2025版围栏施工项目质量检验与认证服务合同
- 2025年航空航天零件打磨维修合同
- 贵州省福泉市2025年上半年公开招聘村务工作者试题含答案分析
- 2025版农产品电商物流配送服务合同书
- 2025版企业内部培训与职业技能提升合同
- 2024年特殊作业理论考试试题及答案
- 《个案研究法》课件
- 低压电工作业第六章电力线路
- 第一课+初三我来了-心理健康九年级 (北师大版)
- 高考语文复习语言文字运用语法和逻辑专题课件88张
- 招标投标物业管理投标文件范本
- 2023年企业法人A证考试试题
- 第十八讲文学批评(三)·形式主义课件
- (完整版)5社会体育导论教学教案
- 关于成立社会工作服务中心的可行性报告(民办非企业单位成立可行性报告标准示范)
- 能源的转换与利用课件
评论
0/150
提交评论