软件工程模型与方法 13、软件维护 14、软件项目管理 15、软件能力成熟度模型.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《软件工程模型与方法 13、软件维护 14、软件项目管理 15、软件能力成熟度模型.ppt》由会员分享,可在线阅读,更多相关《软件工程模型与方法 13、软件维护 14、软件项目管理 15、软件能力成熟度模型.ppt(37页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、软件工程模型与方法 Models&Methods of SE第13,14,15章 肖丁肖丁 2主要内容主要内容u软件维护u软件项目管理u软件能力成熟度模型3第第13章:软件维护章:软件维护u软件维护的定义u软件维护的分类u软件维护的活动u软件的逆向和再工程4软件维护的定义和分类软件维护的定义和分类u在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程,即在软件运行维护阶段对软件产品所进行的一切改动。改正在系统运行过程中暴露出来的一些潜在程序错误或设计缺陷,称为改正性维护。为了适应在软件使用过程中数据环境发生变化或处理环境发生变化而进行的软件修改,称为适应性维护。为满足用户的其他要
2、求,就需要修改软件并把这些要求纳入到软件之中,称为完善性维护。为了提高软件的可维护性、可靠性等而事先进行的软件改动,称为预防性维护。5影响软件维护工作量的因素影响软件维护工作量的因素u系统大小:系统越大,理解掌握起来越困难。系统越大,所执行功能越复杂。因而需要更多的维护工作量。u程序设计语言:使用强功能的程序设计语言可以控制程序的规模。语言的功能越强,生成程序的模块化和结构化程度越高,所需的指令数就越少,程序的可读性越好。u系统年龄:系统随着不断的修改,结构越来越乱;由于维护人员经常更换,程序又变得越来越难于理解;长期的维护过程中文档在许多地方与程序实现变得不一致。u其它:例如,应用的类型、数
3、学模型、任务的难度、开关与标记、IF嵌套深度、索引或下标数等,对维护工作量都有影响。6软件维护中的典型问题软件维护中的典型问题u首先软件维护人员大多数情况下不是软件开发人员,为此他们会遇到以下问题:阅读和理解别人写的程序非常困难。需要维护的软件往往没有合格的文档,或者文档资料明显不足。不能指望开发人员仔细说明软件。决大多数软件在设计时没有考虑将来的修改,从而导致了软件的可维护性很差。软件维护不是一项吸引人的工作,由于以上原因经常导致维护出现困难,从而使软件维护人员产生厌烦和挫折感。7软件维护的活动软件维护的活动u为了有效地进行软件维护,就必须:建立维护机构给出软件维护的工作管理流程为每一个维护
4、申请规定标准的处理步骤8软件维护的管理工作流程软件维护的管理工作流程9软件维护的标准化软件维护的标准化u修改请求:一般由用户、程序员或管理人员提出,是软件维护的开始;u分类与鉴别:根据修改请求,由维护机构来确认其维护类别,给一个编号,并输入数据库保存;u分析:先进行维护的可行性分析,然后进行详细分析;u设计:汇总全部信息开始更改,本阶段应更改设计的基线、更改测试计划、修订详细分析结果、核实维护需求;u实现:制定程序更改计划并进行软件更改。包括编码、单元测试、集成、风险分析、测试准备审查、更新文档;u系统测试:主要进行程序之间的接口测试,以确保加入了修改的软件满足原来的需求,回归测试是确保不要引
5、入新的错误;u验收测试:最终的综合测试,由客户、用户和第三方共同进行;u交付:此阶段是将新的系统交给用户安装并运行。10软件的逆向工程和再工程软件的逆向工程和再工程u术语“逆向工程”来自硬件。成功的逆向工程应当通过考察产品的实际样品,导出该产品的一个或多个设计与制造的规格说明。u软件的逆向工程是分析程序,是设计恢复的过程,需要从已存在程序中抽取数据结构、体系结构和程序设计信息。图图13-7 逆向工程过程逆向工程过程非结构化源代码结构化源代码初始的规格说明最终的规格说明理解界面理解界面理解处理理解处理理解数据理解数据分析模式分析模式分析模块分析模块分析程序分析程序分析语句分析语句分析系统分析系统
6、求精与简化求精与简化提取抽象提取抽象重构代码重构代码11软件的再工程软件的再工程u软件再工程是一类软件工程活动,是一个工程过程,它将逆向工程、重构和正向工程组合起来,将现存系统重新构造为新的形式。u再工程的基础是系统理解,包括对运行系统、源代码、设计、分析、文档等的全面理解。u在这些理解的基础上,执行重构生成一个设计,它产生与原来程序相同的功能,但具有比原来程序更高的质量。该模型是一个循环模型,模型组成部分的每一个活动都有可能被重复,且对于任意一个特定的循环来说,过程可以在完成任意一个活动之后终止。在某些情况下这些活动以线性顺序发生,但也有的时候交错发生。12第第14章章 软件项目管理软件项目
7、管理u项目和软件项目的定义u软件项目管理过程u软件项目度量软件规模度量软件项目估算u软件项目进度安排u软件项目的组织结构13项目和软件项目的定义项目和软件项目的定义u项目,是一项为了创造某一唯一的产品或服务的时限性工作。具有以下特征:需要由人来完成;受到有限资源的限制;需要计划、执行和控制。u软件项目是一种成果体现为软件产品的项目,其特有的特征表现为:软件产品是无形的;软件产品没有标准的软件过程;大型软件项目开发常常是“一次性的”。14项目的管理过程项目的管理过程u项目管理就是为了满足甚至超越项目干系人员对项目的需求和期望的一些活动,并将理论知识、技能、工具和技巧应用到项目的活动中。u项目管理
8、包括以下九个知识领域:1.综合管理:将项目管理各种必要要素综合为整体的过程和活动,并在项目管理过程组范围内识别、定义、组合、统一并协调。2.范围管理:界定为了确保成功地完成项目所需要做的工作,也是仅仅被要求做的工作。3.时间管理:阐述确保项目按时完成所需的各项过程。4.成本管理:阐述了确保项目按照规定预算完成需要进行的费用规划、估算、预算的各项过程。5.质量管理:阐述了确保项目达到其既定质量要求所需实施的各项过程。6.人力资源管理:阐述了组织和管理项目团队的各个过程。7.沟通管理:阐述了为确保项目信息及时而恰当地提取、收集、传输、存储和最终处置而需要实施的一系列过程。8.风险管理:阐述了与项目
9、风险管理有关的过程。9.采购管理:阐述了采购或取得产品、服务或成果,以及合同管理所需的各过程。15项目目标及其制约因素项目目标及其制约因素u项目目标就是在一定时间、预算内完成工作的范围,以使客户满意。u实现项目目标要受到四个因素的制约,它们是:项目范围是为使客户满意必须做的所有工作;项目成本就是完成项目所需要的费用,它必须在客户为这个项目提供的资金限额以内;项目进度是安排每项任务的起止时间以及所需的资源等,是为项目描绘的一个过程蓝图。客户满意度:是指完成的项目质量是否达到预期的效果。16软件项目管理过程软件项目管理过程u启动软件项目:这是软件项目管理的第一个过程,目的是确定软件项目的目标、范围
10、。通常,软件人员和用户是在系统需求工程阶段确定项目的目标和范围的;u制定项目计划:项目计划是建立项目行动指南的基准,包括对软件项目的估算、风险分析、进度安排、人员的选择与配备等;u项目计划的执行:根据定义的计划由具体的人员实施的各项活动;u项目的控制:在项目的执行过程中所必须的监督、跟踪和控制活动,保证按时保质地完成计划的任务;u项目结束:在项目执行完毕时进行的总结。17软件项目度量软件项目度量u所谓度量,是指根据已明确的规则把数字或符号指定给现实世界中实体的某一属性,以便阐述实体的某种状态。u软件度量涉及的范围较广,其度量实体大致划分为三大类:产品:是指在软件开发过程中产生的各种中间产品、发
11、布的资料和文档等,如规格说明书、设计模型、代码、测试用例等。过程:是与软件相关的一些活动,如编制规格说明书、详细设计、测试等活动。资源:是指开发过程中使用的资源,包括人员、团队、软件和硬件、办公地点等。18软件度量的内容软件度量的内容u软件度量就是为了获取上述实体属性的值。这些实体的属性又划分为内部属性和外部属性。内部属性:是能够纯粹用实体自身来度量的属性。如产品中设计模块实体的内部属性有:规模、可复用性、耦合度、内聚度等。外部属性:是指由实体与其相关环境一起共同才能度量的属性。如产品中设计模块实体的外部属性有质量、复杂性、可维护性等。u实体属性的度量又可分为直接度量和间接度量:直接度量:指实
12、体属性的度量不依赖于其他属性的度量。间接度量:指实体属性的度量与一个或多个其他属性的度量标准有关。19软件项目规模度量软件项目规模度量u其主要目的是为软件项目估算建立基线,是估算软件项目工作量、编制成本预算、策划合理项目进度的基础。u其度量对象包括软件产品、软件开发过程和软件资源;u需要度量的属性包括:项目投入的费用、投入的人力、持续的时间;产生的代码行数、完成的功能点数;发生的错误数;软件的生产率、软件质量等。20代码行度量方法代码行度量方法u代码行指所有的可执行的源代码行数,包括可交付的动作和控制语句、数据定义、数据类型声明等。生产率KLOC工作量(人月数)质量错误数KLOC单位成本成本
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程模型与方法 13、软件维护 14、软件项目管理 15、软件能力成熟度模型 软件工程 模型 方法 13 软件 维护 14 项目 管理 15 能力 成熟度
![提示](https://www.deliwenku.com/images/bang_tan.gif)
限制150内