欢迎来到天天文库
浏览记录
ID:38725407
大小:1.34 MB
页数:91页
时间:2019-06-18
《软件工程1-3.过程模型》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、《软件工程》第一部分软件过程第3章惯例过程模型Chapter3PrescriptiveProcessModelsPrescriptive:givingdirectivesorrulesprescriptivea.规定的,指示的;约定俗成的1968年正式提出“软件工程”这一术语之后,软件工程围绕计算机科学、工程和管理三个方面,做了很多研究,建立了早期关于软件工程管理的一些基本准则,从中,我们可以看出早期软件工程的一些思路与出发点。其中最著名的是著名软件工程专家B.W.Boehm在1983年的一篇论文中,提出的软
2、件工程7条基本原理,反映了作为软件工程应该关注和考虑的若干本质问题:软件工程的基本原理(1)用分阶段的生命周期计划严格管理经统计表明,不成功的软件项目中有一半左右是由于计划不周造成的。Boehm认为,在软件的整个生命周期中应制定并严格执行六类计划:项目概要计划、里程碑计划、项目控制计划、产品控制计划、验证计划、运行维护计划。(2)坚持进行阶段评审大部分错误是在编码之前造成的错误发现与改正得越晚,所需付出的代价越高。因此,在每个阶段都进行严格的评审,以便尽早发现在软件开发过程的错误软件工程的基本原理(3)实行严
3、格的产品控制在软件开发过程中不要随意改变需求,因为改变某项需求往往需要付出较高的代价,但在实践中用户往往会提出需求变更,因此需要采取科学的产品控制技术。目前主要实行基准配置管理:基准配置是指经过阶段评审后的软件配置成分,如各个阶段产生的文档或程序代码。对涉及基准配置的修改,必须经过严格的评审,通过后才能实施修改。(4)采用现代程序设计技术实践表明:采用先进的技术既可提高软件开发的效率,又可提高软件维护的效率。80年代及之前:结构化分析、设计技术90年代:面向对象分析、设计技术软件工程的基本原理(5)结果应能清
4、楚地审查软件产品是看不见、摸不着的逻辑产品,开发过程难以评价和管理。根据软件开发项目的总目标及完成期限,规定开发组织的责任和产品标准,使所得的结果能够清楚地审查(6)开发小组的人员应该少而精开发小组人员的素质和数量是影响软件产品质量和开发效率的重要因素。开发小组人员数目的增加,使相互交流复杂、费用增加。(7)承认不断改进软件工程实践的必要性遵循前6条基本原理,就能够按照当代软件工程基本原理实现软件的工程化生产,但不能保证赶上时代前进的步伐。积极主动采纳新的软件技术,且不断总结经验。软件工程的基本原理惯例过程模
5、型通常称为“传统的”过程模型回顾通用过程框架(包含哪些框架活动?)下面我们要讨论一些惯例过程模型3.1惯例过程模型模型应用背景:在可以相当清楚地了解问题的需求,从沟通到部署,工作可按线性的方式进行。在对一个已有系统进行明确的调整或增强时(如税法修改了起征点,财务软件需要进行相应修改);需求能准确定义并且相对稳定的新项目(如老师布置的大作业)。3.2瀑布模型3.2瀑布模型基于通用过程框架的瀑布模型沟通项目启动需求获取策划项目估算进度计划项目跟踪建模分析设计构建编码测试部署交互支持反馈TheWaterfallMo
6、del3.2瀑布模型瀑布模型的另一个图示传统的生命周期模型70年由Royce提出典型瀑布模型具有顺序性和依赖性问题定义软件需求软件设计软件实现软件测试运行维护定义阶段开发阶段维护阶段瀑布模型的特征从上一项活动中接受该项活动的工作成果(工作产品),作为输入。利用这一输入实施该项活动应完成的内容给出该项活动的工作成果,作为输出传给下一项活动对该项活动实施的工作进行评审。若其工作得到确认,则继续下一项活动。3.2瀑布模型瀑布模型的优点:1.强调开发的阶段性;2.强调早期计划及需求调查;3.强调产品测试。3.2瀑布模
7、型瀑布模型的缺点:从认识论角度看,人的认识是一个多次反复循环的过程,不可能一次完成。但瀑布模型中划分的几个阶段,没有反映出这种认识过程的反复性。特别是瀑布模型过于依赖早期进行的唯一一次需求调查,不能适应需求的变化;软件开发是一个知识密集型的开发活动,需要相互合作完成,但瀑布模型没有体现这一点。特别是由于瀑布模型是单一流程,开发中的经验教训不能反馈应用于本产品的过程。3.2瀑布模型瀑布模型造成软件错误的积累和放大效应分析正确的规格说明原始要求错误的规格说明设计编码测试正确编码正确功能正确设计对错误说明的设计错误
8、编码可纠正错误错误设计错误设计的编码错误说明编码不可纠正和潜伏的错误交付的软件产品思考:1、我们的日常生活中,有哪些活动是符合瀑布模型的?2、为什么有时候我们的小型开发团队连瀑布模型都不能坚持做到?客观因素是什么?3、瀑布模型的实用之地在哪里?3.2瀑布模型模型应用背景:在许多情况下,初始的软件需求有明确的定义,但整个开发过程却不宜单纯运用线性模型。同时,可能迫切需要为用户迅速提供一套功能有限的软件
此文档下载收益归作者所有