《软件工程-第7章第6-7节.pptx

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

7.6喷泉模型7.6.1基本思想喷泉模型是一种以用户需求为动力,以对象作为驱动的模型。它适合于面向对象的开发方法。它克服了瀑布模型不支持软件重用和多项开发活动集成的局限性。喷泉模型使开发过程具有迭代性和无间隙性。系统某些部分常常重复工作多次,相关功能在每次迭代中随之加入演化的系统。无间隙是指在分析、设计和实现等开发活动之间不存在明显的边界。

喷泉模型如图7.6所示。它以面向对象的软件开发方法为基础,以用户需求作为喷泉模型的源泉。

7.6.2喷泉模型的特点喷泉模型的特点如下:(1)喷泉模型规定软件开发过程有四个阶段,即分析、系统设计、软件设计和实现。(2)喷泉模型的各阶段相互重叠,它反映了软件过程并行性的特点。(3)喷泉模型以分析为基础,资源消耗呈塔型,在分析阶段消耗的资源最多。(4)喷泉模型反映了软件过程迭代的自然特性,从高层返回低层无资源消耗。

(5)喷泉模型强调增量开发,它依据分析一点,设计一点的原则,并不要求一个阶段的彻底完成,整个过程是一个迭代的逐步提炼的过程。(6)喷泉模型是对象驱动的过程,对象是所有活动作用的实体,也是项目管理的基本内容。(7)喷泉模型在实现时,由于活动不同,可分为系统实现和对象实现,这既反映了全系统的开发过程,也反映了对象族的开发和重用过程。

7.7基于知识的模型基于知识的模型又称智能模型,它把瀑布模型和专家系统结合在一起。该模型在开发的各个阶段上都利用了相应的专家系统来帮助软件人员完成开发工作,使维护在系统需求说明一级上进行。为此,建立了各阶段所需要的知识库,将模型、相应领域知识和软件工程知识分别存入数据库,以软件工程知识为基础的生成规则构成的专家系统与含有应用领域知识规则的其他专家系统相结合,构成了该应用领域的开发系统。

1.模型表示基于知识模型的表示如图7.7所示。该模型基于瀑布模型,在各阶段都有相应的专家系统支持。

7.7基于知识的模型1)支持需求活动的专家系统支持需求活动的专家系统用来帮助减少需求活动中的二义性、不精确性和冲突易变的需求,这种专家系统要使用应用领域的知识,要用到应用系统中的规则,建立应用领域的专家系统来支持需求活动。2)支持设计活动的专家系统支持设计活动的专家系统用于支持设计功能的CASE中的工具和文档的选择,这种专家系统要使用软件开发的知识。

7.7基于知识的模型3)支持测试活动的专家系统支持测试活动的专家系统用于支持测试自动化,利用基于知识的系统选择测试工具,生成测试数据,跟踪测试过程,分析测试结果。4)支持维护活动的专家系统支持维护活动的专家系统将维护新的应用开发过程的重复活动,运行可利用的基于知识的系统来进行维护。

7.7基于知识的模型2.模型的特点知识模型以瀑布模型与专家系统的综合应用为基础。该模型通过应用系统的知识和规则帮助设计者认识一个特定的软件的需求和设计,这些专家系统已成为开发过程的伙伴,并指导开发过程。将软件工程知识从特定领域分离出来,这些知识随着过程范例收入知识库,产生规则,在接受软件工程技术的基础上被编码成专家系统,用来辅助软件工程的开发。在使用过程中,软件工程专家系统与其他领域的应用知识的专家系统连接起来,形成了特定的软件系统,为开发一个软件产品所应用。

7.7基于知识的模型3.模型的优点知识模型的优点如下:(1)通过领域的专家系统,可使需求说明更完整、准确和无二义性。(2)通过软件工程专家系统,提供一个设计库支持,在开发过程中成为设计者的助手。(3)通过软件工程知识和特定应用领域的知识和规则的应用来提供对开发的帮助。

7.7基于知识的模型4.模型的缺点知识模型的缺点如下:(1)建立适合于软件设计的专家系统是非常困难的,超出了目前的能力,是今后软件工程的发展方向,要经过相当长的时间才能取得进展。(2)建立一个既适合软件工程又适合应用领域的知识库也是非常困难的。(3)目前的状况是在软件开发中正在应用AI技术,在CASE工具系统中使用专家系统,用专家系统来实现测试自动化,在软件开发的局部阶段有所进展。

谢谢!西安电子科技大学出版社

文档评论(0)

酱酱 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档