软件工程建设监理课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《软件工程建设监理课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 建设 监理 课件
- 资源描述:
-
1、软件工程建设监理软件工程建设监理主要内容主要内容软件工程概述软件工程概述软件质量与质量保证软件质量与质量保证软件工程项目的实施与监理软件工程项目的实施与监理一、软件工程概述一、软件工程概述软件工程的定义软件工程的定义Boehm:运用现代科学技术知识来设计并:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料程序所必需的相关文件资料IEEE:软件工程是开发、运行、维护和修:软件工程是开发、运行、维护和修复软件的系统方法复软件的系统方法Fritz Bauer:建立并使用完善的工程化原则,:建立并使用完善的工程化原则,以较
2、经济的手段获得能在实际机器上有效运以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法行的可靠软件的一系列方法软件工程的定义软件工程的定义软件工程是用工程、科学和数学的原则与软件工程是用工程、科学和数学的原则与方法研制、维护计算机软件和有关技术及管方法研制、维护计算机软件和有关技术及管理方法。理方法。三个组成要素:方法、工具和过程。三个组成要素:方法、工具和过程。中心思想:是把软件当作一种工业产品,中心思想:是把软件当作一种工业产品,要求要求“采用工程化的原理与方法对软件进行采用工程化的原理与方法对软件进行计划、开发和维护计划、开发和维护”。目的:不仅是为了实现按预期的进度和经目的:
3、不仅是为了实现按预期的进度和经费完成软件生产计划,也是为了提高软件的费完成软件生产计划,也是为了提高软件的生产率与可靠性。生产率与可靠性。软件工程的目标软件工程的目标付出较低的开发成本达到要求的软件功能取得较好的软件性能开发的软件易于移植需要较低的维护费用能按时完成开发工作,及时交付使用软件工程目标之间的相互关系图软件工程目标之间的相互关系图低开发成本低开发成本易于维护易于维护按时交付按时交付高可靠性高可靠性高性能高性能互斥关系互斥关系互补关系互补关系软件工程的原则软件工程的原则抽象(abstraction)信息的隐藏(information hiding)模块化(modularity)局部化
4、(localization)一致性(consistency)完全性(completeness)可验证性(verifiability)软件工程的七条原理软件工程的七条原理用分阶段的生命周期计划严格管理用分阶段的生命周期计划严格管理 应该把软件生命周期分成若干阶段,并相应制定应该把软件生命周期分成若干阶段,并相应制定出切实可行的计划,然后严格按照计划对软件的开发出切实可行的计划,然后严格按照计划对软件的开发和维护进行管理。和维护进行管理。Boehm 认为,在整个软件生命周期中应指定并严认为,在整个软件生命周期中应指定并严格执行格执行6类计划:项目概要计划、里程碑计划、项目类计划:项目概要计划、里程
5、碑计划、项目控制计划、产品控制计划、验证计划、运行维护计划。控制计划、产品控制计划、验证计划、运行维护计划。软件工程的七条原理软件工程的七条原理坚持进行阶段评审坚持进行阶段评审 错误发现的越晚,改正它要付出的代价就错误发现的越晚,改正它要付出的代价就越大越大 软件的质量保证工作不能等到编码结束之软件的质量保证工作不能等到编码结束之后再进行,应坚持进行严格的阶段评审,后再进行,应坚持进行严格的阶段评审,以便尽早发现错误以便尽早发现错误 软件工程的七条原理软件工程的七条原理实行严格的产品控制实行严格的产品控制 用户需求经常变更用户需求经常变更采用基准配置管理等科学的产品控制技术采用基准配置管理等科
6、学的产品控制技术顺应用户的功能要求。当需求变动时,其顺应用户的功能要求。当需求变动时,其它各个阶段的文档或代码随之相应变动,它各个阶段的文档或代码随之相应变动,以保证软件的一致性。以保证软件的一致性。采纳现代程序设计技术采纳现代程序设计技术 提高软件开发的效率,又可以减少软件维提高软件开发的效率,又可以减少软件维护的成本护的成本 软件工程的七条原理软件工程的七条原理结果应能清楚地审查结果应能清楚地审查 软件是一种富有逻辑性的知识产品软件是一种富有逻辑性的知识产品软件开发小组的工作进展情况可见性差,软件开发小组的工作进展情况可见性差,难于评价和管理难于评价和管理 为更好地进行管理,应根据软件开发
7、的总为更好地进行管理,应根据软件开发的总目标及完成期限,尽量明确地规定开发小组的目标及完成期限,尽量明确地规定开发小组的责任和产品标准,从而使所得到的标准能清楚责任和产品标准,从而使所得到的标准能清楚地审查。地审查。软件工程的七条原理软件工程的七条原理开发小组的人员应少而精开发小组的人员应少而精 当开发小组为当开发小组为N人时,可能的通讯信道为人时,可能的通讯信道为N(N-1)/2,可见随着人数可见随着人数N的增大,通讯开销将急剧增大。的增大,通讯开销将急剧增大。承认不断承认不断改进软件工程实践的必要性改进软件工程实践的必要性 不断总结经验,收集进度和消耗等数据,进行出错不断总结经验,收集进度
8、和消耗等数据,进行出错类型和问题报告统计,以评估新的软件技术的效果,类型和问题报告统计,以评估新的软件技术的效果,指明须重视的问题。指明须重视的问题。软件的生存期软件的生存期开发软件有一个孕育、诞生、成长、成熟、开发软件有一个孕育、诞生、成长、成熟、衰亡的生存过程。这个过程即为计算机软件的衰亡的生存过程。这个过程即为计算机软件的生存期生存期软件生存期的六个步骤:计划、需求分析、软件生存期的六个步骤:计划、需求分析、设计、程序编码、测试及运行维护设计、程序编码、测试及运行维护软件生存期划分的原则:软件生存期划分的原则:各阶段任务尽可能独各阶段任务尽可能独立立软件的生存期软件的生存期制定计划制定计
9、划确定要开发软件系统的总目标确定要开发软件系统的总目标给出功能、性能、可靠性以及接口等方面的给出功能、性能、可靠性以及接口等方面的要求要求完成该软件任务的可行性研究完成该软件任务的可行性研究估计可利用的资源估计可利用的资源(计算机硬件、软件、人力计算机硬件、软件、人力等等)、成本、效益、开发进度、成本、效益、开发进度制定出完成开发任务的实施计划,连同可行制定出完成开发任务的实施计划,连同可行性研究报告,提交管理部门审查性研究报告,提交管理部门审查需求分析和定义需求分析和定义确定对待开发软件提出的需求进行分析并给确定对待开发软件提出的需求进行分析并给出详细的定义出详细的定义编写软件需求说明书或系
10、统功能说明书及初编写软件需求说明书或系统功能说明书及初步的系统用户手册步的系统用户手册提交管理机构评审提交管理机构评审软件设计软件设计概要设计概要设计 把各项需求转换成软件的体系把各项需求转换成软件的体系 结构。结构中每一组成部分都是意义明确的结构。结构中每一组成部分都是意义明确的 模块,每个模块都和某些需求相对应模块,每个模块都和某些需求相对应详细设计详细设计 对每个模块要完成的工作进行对每个模块要完成的工作进行 具体的描述,为源程序编写打下基础具体的描述,为源程序编写打下基础编写设计说明书,提交评审编写设计说明书,提交评审程序编写、软件测试程序编写、软件测试程序编写程序编写 根据软件设计方
11、案,编写程序代码根据软件设计方案,编写程序代码 结构。结构中每结构。结构中每一组成部分都是意义明确的一组成部分都是意义明确的 软件测试软件测试 单元测试,查找各模块在功能和结构上存在的问单元测试,查找各模块在功能和结构上存在的问题并加以纠正题并加以纠正组装测试,将已测试过的模块按一定顺序组装起组装测试,将已测试过的模块按一定顺序组装起来来按规定的各项需求,逐项进行有效性测试,决定按规定的各项需求,逐项进行有效性测试,决定已开发的软件是否合格,能否交付用户使用已开发的软件是否合格,能否交付用户使用运行、维护运行、维护改正性维护改正性维护 运行中发现了软件中的错误需运行中发现了软件中的错误需要修正
12、要修正适应性维护适应性维护 为了适应变化了的软件工作环为了适应变化了的软件工作环境,需做适当变更境,需做适当变更完善性维护完善性维护 为了增强软件的功能需做变更为了增强软件的功能需做变更软件生存期模型软件生存期模型软件生存期模型是跨越整个生存期的系统开软件生存期模型是跨越整个生存期的系统开发、运作和维护所实施的全部过程、活动和任发、运作和维护所实施的全部过程、活动和任务的结构框架务的结构框架瀑布模型瀑布模型演化模型演化模型螺旋模型螺旋模型喷泉模型喷泉模型增量模型增量模型瀑布模型瀑布模型演化模型演化模型由于在项目开发的初始阶段人们对软件的需求认识常常不够清晰,因而使得开发项目难于做到一次开发成功
13、,出现返工再开发在所难免。做两次第一次只是试验开发,其目标只是在于探索可行性,弄清软件需求第二次则在此基础上获得较为满意的软件产品演化模型演化模型需求分析需求分析快速设计快速设计建立原型建立原型评价原型评价原型修改原型修改原型开发产品开发产品丢弃型原型开发之后,已获取了更为清晰的需求信息 演式型原型作为软件最终产品的一部分,可满足用户的部分需求,进一步在此基础上开发,则可增加需求,实现后再交付使用。螺螺旋模型旋模型螺旋模型沿着螺线旋转,在四个象限上分别表达了四个方面的活动,即:制定计划确定软件目标,选定实施方案,弄清项目开发的限制条件风险分析分析所选方案,考虑如何识别和消除风险实施工程实施软件
14、开发客户评估评价开发工作,提出修正建议螺螺旋模型旋模型 喷泉模型喷泉模型迭代重复演进无间隙各阶段间无明显界限喷泉模型喷泉模型需求获取与分析需求获取与分析系统测试系统测试程序生成程序生成构件设计构件设计类层次结构类层次结构增量模型增量模型适合于知识型的软件系统的开发适合于知识型的软件系统的开发不要求一开始就有完整的软件系统需求,先完成不要求一开始就有完整的软件系统需求,先完成基本子集的开发,然后不断增加功能,反复进行,基本子集的开发,然后不断增加功能,反复进行,直到满足用户需求直到满足用户需求始终在软件人员和用户的参与下完成,始终在软件人员和用户的参与下完成,特别适用特别适用于研究性质的实验室软
15、件(用户需求不明确)于研究性质的实验室软件(用户需求不明确)总结总结阶段阶段成果计划问题定义关于规模和目标的报告书 可行性研究系统的高层逻辑模型:数据流图成本/效益分析 需求分析系统的逻辑模型:数据流图(MSC图)数据字典(类清单、对象间关系)算法描述 设计概要设计系统流程图、层次图、结构图(SDL)详细设计编码规格说明(SDL)软件测试综合测试方案和结果完整性一致的软件配置 运行维护完整准确的维护记录 二、软件质量与质量保证二、软件质量与质量保证软件质量因素可直接度量的因素只能间接度量的因素度量和量度度量(Measurement)度量是对开发过程进行检测,以提高开发过程的质量和劳动生产率量度
16、(Metrics)量度是度量的结果或度量中一个项的抽象表示,做为评价质量和劳动生产率的基础量度模型Boehm模型Boehm模型量度模型McCall模型McCall模型量度模型ISO模型ISO模型(软件质量需求评价准则)(软件质量度量评价准则)(软件质量设计评价准则)各因素间的影响软件质量保证质量保证策略以检测为重点以过程管理为重点以新产品开发为重点 软件质量保证活动技术方法和开发过程的选用正式技术评审的实施多层次软件测试标准的执行文档及其修改的控制度量和报告制度记录和记录保存SQA小组活动 开发过程的选用瀑布模型演化模型螺旋模型喷泉模型增量模型开发方法、语言的选用开发方法结构化开发方法面向对象
17、(OO)的开发方法形式化开发方法语言规格说明语言设计语言原型开发语言编程语言正式技术评审的实施软件评审是一个“过滤器”正式技术评审(FTR,Formal Technical Reviews)有时称为“走查(walkthrough)”正式技术评审FTR的目标发现软件在功能、逻辑和实现上的错误 验证评审的软件符合需求保证软件按照已确定的标准表述使软件以统一方式开发 使项目更易于管理FTR可以作为一个训练基地,使初级工程人员观察到软件分析、设计和实现不同的处理方法。也能促进人们变得更加熟悉正式技术评审(续)(一)评审会议35人参加会前准备,每个人工作量不超过2小时会议时间2小时评审结束时,必须作出决
18、定接受该产品,不再作进一步修改该产品错误严重,拒绝接受(改正后也必须进行另一次评审)暂时接受该产品(小错误已经发现,必须改正,但没有必要进行另外的评审)正式技术评审(续)(二)评审报告和记录保存报告评审了什么产品?谁评审的?发现了什么?结论是什么?记录确定该产品中问题的大小成为生产者修改错误时的行动项的校对表 还要建立一个跟踪过程,以保证问题列表中的项都被正确的改正了正式技术评审(续)(三)评审指南评审产品,不评审生产者建立一个议事日程,并遵循它限制争论和辯驳说明问题大小,不要企图解决所有提出的问题作记录限制参与人数和坚持充分准备为可能评审的产品开发一张检查表为FTR安排资源和时间表对所有的评
19、审人员进行有意义的培训评审你早期的评审标准的执行产品质量是企业的生命,标准是产品的基础,没有标准,就无产品质量可言软件工程国际标准体系ISO/IEC的软件工程标准体系结构框架ISO/IEC 12207和ISO/IEC TR15504ISO 9000-3(1993)/GB/T 19000.3(1994)CMM -57-标准的类别Standard(标准)Specification(规范)Criterion(准则)Guidance(指南)Convention(约定)标准的范围国际:ISO(国际标准化组织)区域:NATO(北大西洋组织)CJK(中、日、韩)国家:GB(中国)ANSI(美国国家标准协会)
20、FIPS(美国商务部国家标准局联邦信息处理标准)BS(英国国家标准)DIN(德国国家标准)JIS(日本工业标准)卜标准的范围行业:IEEE(美国电气和电子工程师协会)ACM(美国计算机协会)DOD(美国国防部)MIL-standard(美国军用标准)HB(中国航空标准)GJB(中国军用标准)厂标:IBM(国际商业机器公司)小中国与SE有关的国家标准基础:GB/T 11457-89(SE术语)开发:GB 8566-88(计算机软件开发规范)文档:GB 8567-88(计算机软件产品开发文件编制指南)GB 9385-88(计算机软件需求说明文件编制规范)GB 9386-88(计算机软件测试文件编制
21、规范)质量:GB/T 12504-90(计算机软件质量保证计划规范)管理:GB/T 12605-90(计算机软件配置计划规范)90年以后,国家标准与国际标准从等效原则改为等同原则,均采用双编码。如GB/T 19000.3(1994)-ISO 9000-3(1993)相关标准说明PDAM 12207/AMD1 12207的过程结果CD 15388 系统生存期过程IS 12207 软件生存期过程FDIS 14764 软件维护TR 15846 软件生存期过程软件配置管理DTR 16326 软件工程项目管理CD 15939 软件度量过程FD 14598-3 软件产品评价第三部分:开发者过程FD 145
22、98-4 软件产品评价第四部分:获取者过程IS 14598-5 软件产品评价第五部分:评价者过程FDIS 15910 软件用户文档过程TR 15271 ISO/IEC 12207使用指南ISO 9000-3 在软件开发、供应和维护中的使用指南TR 9294 软件文档管理指南ISO/IEC 15288 计划指南ISO 9000-3-GB/T 19000.3 质量管理和质量保证标准-在软件开发、供应和维护中的使用指南ISO 9000系列标准原为硬件制造业制定的标准,不能直接用于软件业的生产曾试图用改编的9001用于软件业的生产由于软件与硬件的性质截然不同,软件为人工智能产品,实践结果说明不行,于是
23、以ISO 9000系列标准的追加形式,专门制定了ISO 9000-3。标准的目的和范围本标准作为ISO 9000/GB/T 19000系列标准之一,旨在生产满足需求的软件而建议采用的控制手段和方法,即为从事软件开发、供应和维护的组织建立质量管理体系提供指南本标准适用于软件产品的整个生存期阶段和任何生存期模型,也适用于合同提出特殊要求的产品标准的主要内容本标准在给出软件质量管理体系要素时,没有按照ISO 9001/GB/T 19991的形式给出,而是按下列三部分给出:质量体系-框架质量体系-生存期话动质量体系-支持活动质量体系框架这部分主要从管理上描述了构成了质量体系的组织机构、管理职责、质量体
24、系的基本要求及构成质量体系的框架领导的职责、作用和采用的手段质量体系 GB/T 6583-ISO 8402给质量体系定义为:为实施质量管理所具有的组织机构、职责、程序、过程和资源。这一定义给出了质量体系的五个要素,同时明确了质量管理的核心是建立适合企业实际的质量体系。质量体系应以深入细致的质量体系文件为基础,应用系统的有序的方法将质量体系要素、需求和预防措施清楚地写入文件质量体系是贯穿产品整个生存期的一个综合过程,它强调的是在开发过程中的质量保证,以预防为主,而不是在问题发生后依靠纠正措施来解决问题。因此,应按质量体系要求制定并执行质量活动计划 质量体系生存期话动合同评审需方需求规格说明开发策
25、划质量计划设计与实现测试与验证验收复制、交付和安装维护质量体系-支持活动配置管理文档控制质量记录度量规则和惯例工具和方法 采购配套的软件产品培训 CMM CMM(The Capability Maturity Model)不是国际标准,是CMU/SEI 于1986年在Mitre公司的协助下,用于帮助机构改进其软件过程和联邦政府要求能提供一种用来评价软件承制方软件能力的方法,开始工作经过五年的努力,于1991/1992公开发布了基线版1.0之后,1992/1993 1.1版、1997/1998 2.0版,2000推出了CMMI 1.0版,它除了沿用CMM分级的形式外,还吸收了ISO/IEC TR
展开阅读全文