02-第2章软件过程模型.ppt

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

形式化方法模型 适用场合 适用于对安全性和可靠性要求极高的软件系统开发,如飞行器和医疗器械的控制系统。 净室软件工程 Cleanroom software engineering IBM,1987年提出 采用增量开发,每一个增量都要给出形式化描述,此描述经过变换得以实现 软件正确性通过形式化方法得以证明 不进行单元测试,系统测试的重心是评估可靠性 目标是零缺陷软件 扩展 内容 小结:现代软件过程模型 基于构件的开发模型 软件复用思想; 降低开发成本和风险; 加快开发进度,提高质量 商业构件不能修改,会导致需求的修改,进而导致系统不能完全符合需求 系统之间有共性的情况 小结:现代软件过程模型 形式化方法模型 1. 基于形式化数学变换; 2. 能够解决歧义性、不完整性、不一致性问题,可以提供无缺陷的软件; 3. 不需要测试来寻找错误,系统测试是为了评估可靠性 1. 形式化方法难于掌握; 2. 形式化描述和转换费时费力,成本很高 3. 对于一般客户,很难用这种方法进行沟通 对安全性和可靠性要求极高的软件系统开发 案例1:智能化小区 案例分析: 包括若干相对独立的业务管理功能 系统具体需求不明确且会发生变化() 部分技术方案可行性不确定() 系统需要具有可扩充性 用户需要熟悉和适应新的系统 项目复杂程度较大、风险较大 希望尽早投入市场() 模型选择: 案例2:医疗设备控制软件 案例分析: 需求明确且稳定 可靠性和安全性要求极高 对软件错误和故障的控制和跟踪能力强 需要对软件开发过程严格控制 需要大量严格的文档 模型选择: 案例3 校园一卡通系统 案例分析: 包括若干相对独立的功能 系统具体需求不明确且会发生变化 系统需要具有可扩充性 用户需要熟悉和适应新的系统 项目复杂程度中等、风险较低 产品和文档的再使用率较高 模型选择: 本次课小结 课堂小作业: 分别举出使用瀑布模型、原型化模型和增量模型的软件项目的例子。 五种传统软件过程模型 两种现代软件过程模型 本章参考文献 软件工程:实践者的研究方法(原书第7版),Roger S.Pressman著,郑人杰、马素霞译,机械工业出版社,2011年 软件工程导论(第5版),张海藩编著,清华大学出版社,2008年 软件工程,郑仁杰等编著,人民邮电出版社,2009年 软件工程(第9版),Ian Sommerville著,程成等译,机械工业出版社,2011年 软件的基本概念:软件是由程序、数据、文档三部分构成; 软件工程的基本定义:(1)应用系统的、规范的、可度量的方法,来开发、运行和维护软件,即把工程应用到软件。(2)对(1)中各种方法的研究。 软件过程——软件开发中所遵循的路线图 需求方也需要参与过程的问题定义、模型建立、测试。 瀑布模型是 1970 年 由 W.Royce 首先提出。 瀑布模型是把软件生存周期分为计划时期、开发时期、运行时期。在每个时期里又可划分为若干个阶段。 计划时期可分为问题定义、可性行研究两个阶段 1、问题定义:这是计划时期的第一步,它主要是要弄清“用户要计算机解决什么问题” 该阶段是软件生存周期中最短的阶段,一般它只需要一两天左右。 2、可性行研究:这一阶段主要是论证解决问题的方案是否可行,由此确定出工程规模和目标。然后再由系统分析员更准确地估算出系统的成本和效益。 3、需求分析:这个阶段的主要任务是确定系统必须具备那些功能。并设计出由用户确认的系统的逻辑模型,这里面包括有数据流图、数据字典、和简要的数据描述。所以这一阶段要产生的文档资料比较多 4、概要设计:这一阶段主要是建立起系统的总体结构,并画出由模块组成的“软件结构图” 5、详细设计:就是把问题具体化,也就是把概要设计阶段所产生出的模块图进一步细化,设计出系统的详细规格说明书 6、编码:这个阶段是由程序员来完成的,主要是把设计阶段所产生的各种图解和一些的文字描述利用指定的语言来翻译成源程序, 7、测试:它是开发时期的最后一个阶段,通常是先进行每个模块的测试,在软件工程中称它为单元测试,然后再进行将模块装配在一起进行测试,通常把它称为综合测试或者叫集成测试。 8、运行时期:是软件生存周期的最后一个时期,这个时期的主要任务就是对已实现的软件进行维护,其维护的目的就是为了延长软件的使用寿命和提高软件的效益。因为软件在运行期间会由于潜在的问题而发生错误;用户在使用后也会提出一些改进或扩充一些软件的要求;另外,对软件运行的硬件、软件环境有时也会发生变化等,所以这些情况使软件需要不断地进行维护才能继续使用而不至于废弃。可以说,软件维护是生存周期比较长的一个阶段 瀑布模型在软件工程中占有很重要的地位,它提供了软件开发的基本框架,非常有利于大型软件开发过程中人员的组织、管理,有利于软件开发方法和工

文档评论(0)

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

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

1亿VIP精品文档

相关文档