《软件工程基础第12章.pptx》由会员分享,可在线阅读,更多相关《软件工程基础第12章.pptx(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、112.1 软件工程管理概述1.软件产品的特点2.软件工程管理的重要性3.软件工程管理的内容 包括对软件开发成本、控制、开发人员、组织机构、用户、软件开发文档、软件质量等方面的管理。第1页/共21页212.2 软件规模估算12.2.1 软件开发成本估算方法12.2.2 代码行技术和任务估算技术1.代码行技术2.任务估算技术第2页/共21页312.2.3 功能点技术信息域特性输入项数、输出项数、查询数、主文件数和外部接口数。估算功能点的步骤估算功能点的步骤有三个。计算未调整的功能点数UFP第3页/共21页4 计算未调整的功能点数UFPUFP=a1Inp+a2Out+a3Inq+a4Maf+a5I
2、nf 其中,ai(1i5)是信息域特性系数,值由相应特性的复杂级别决定。计算技术复杂因子TCF序号技术因素Fi技术因子值1数据通信F12分布式数据处理F23性能标准F34高负荷的硬件F45高处理率F56联机数据输入F67终端用户效率F78联机更新F89复杂的计算F912可重用性F1211安装方便F1112操作方便F1213可移植性F1314可维护性F14第4页/共21页5计算技术因子对软件规模的综合影响程度DI:技术复杂性因子TCP由下式计算:TCP=0.65+0.01 DI 计算功能点数FP FP=UFP TCP 第5页/共21页612.2.4 COCOMO模型1COCOMO(COnstru
3、ctive COst MOdel)模型是Boehm提出的构造性成本模型。三种COCOMO模型1)基本COCOMO模型2)中级COCOMO模型3)高级COCOMO模型第6页/共21页712.2.4 COCOMO模型2.COCOMO估算公式1)基本COCOMO模型估算公式式中,E为开发所需的人力(人月),D为所需的开发时间(月),KLOC为估计提交的代码行数,ab,bb,cb和d b是指不同软件开发方式对应的值,导出生产率(代码行/人月)和所需人员数的计算公式:生产率=(KLOC)/E 人员数=E/DE为开发所需的人力(人月),D为所需的开发时间(月),KLOC为估计提交的代码行数。第7页/共21
4、页82)中级COCOMO模型类型成本因素成本因素系数取值范围产品属性1.所要求的软件可靠性2.数据库规模3.产品复杂性0.75-1.400.94-1.160.70-1.65计算机属性4.执行时间约束5.主存限制6.虚拟机的易变性7.计算机周转时间1.00-1.661.0-1.560.87-1.300.87-1.15人员属性8.分析员能力9.应用领域中实践经验12.程序员能力12.虚拟机使用经验12.程序语言使用经验1.46-0.711.29-0.821.42-0.701.21-0.901.14-0.95项目属性13.现代程序设计方法14.软件工具的使用15.开发进度限制1.24-0.821.2
5、4-0.831.23-1.12第8页/共21页9中级COCOMO模型估算公式为:其中,E为开发所需的人力(人月),KLOC是估算的代码行数,不同的开发方式所对应的ai,bi值 第9页/共21页1012.2.5程序环行复杂度的度量(1)V(G)=m-n+2 =7-6+2=3(2)V(G)=P+1 =2+1=3(3)强连通的程序图中,线性无关的有向环的个数为 3。第10页/共21页1112.3 进度计划12.3.1 Gantt 图第11页/共21页1212.3.2 工程网络技术工程网络技术又称PERT(Program Evaluation and Review Technique)技术,利用PER
6、T图制定进度计划。1.计算最早时刻2.计算最迟时刻3.关键路径4.机动时间第12页/共21页13对图12.1所示的工程中各项任务的进度安排,可用Gantt图画出:第13页/共21页1412.4 人员组织1.开发人员2.组织机构按课题划分的模式(Project Format)按职能划分的模式(Functional Format)矩阵形模式(Matrix Format)程序设计小组的组织形式有3种:主程序员组、民主组织及层次式组织。3.用户第14页/共21页1512.5 软件配置管理软件配置(Software Configuration)是软件产品在软件开发或运行过程中产生的全部信息。软件配置管理
7、(Software Configuration Management)简称SCM,是在软件的整个生存周期内管理变更的一组活动。软件配置管理(Software Configuration Management,简称SCM)的四项任务:()标识变更。()控制软件配置的全部变动,即“控制变更”。()确保变更正确地实现。()报告配置的变更。第15页/共21页1612.6 软件质量保证计算机软件质量是软件的一些内部特性的组合,质量不是在软件产品中被测试出来的,而是在软件开发和生产过程中形成的。软件质量(Software quality)的定义为:(1)软件产品中能满足给定需要的性质和特性的总体。(2)软
8、件具有所期望的各种属性的组合程度。(3)顾客和用户觉得软件满足其综合期望的程度。(4)确定软件在使用中将满足顾客预期要求的程度。为保证软件充分满足用户要求而进行的有计划、有组织的活动称为软件质量保证,其目的是生产高质量的软件。第16页/共21页1712.6.1 软件质量的特性软件质量是指软件满足明确规定或隐含定义的需求的程度。软件质量的要点:软件功能必须满足用户规定的需求;软件应遵守规定标准所定义的一系列开发准则;软件应满足某些隐含的需求。如,可理解性、可维护性等。软件质量的特性:功能性可靠性易使用性效率可维护性可移植性第17页/共21页1812.6.2 软件质量保证措施软件质量保证是软件工程
9、管理的重要内容。包括以下措施:v应用好的技术方法v测试软件v进行正式的技术评审v标准的实施v控制变更v程序正确性证明v记录、保存和报告软件过程信息第18页/共21页1912.7 软件工程标准与软件文档12.7.1 软件工程标准1.软件工程标准化的定义2软件工程标准的分类 FIPS 135是美国国家标准局发布的软件文档管理指南NSAC-39是美国核子安全分析中心发布的安全参数显示系统的验证与确认ISO 5807-985是国际标准化组织公布的信息处理数据流程图、程序流程图、程序网络图和系统资源图的文件编制符号及约定,已成为中华人民共和国国家标准GB1526-89。3.软件工程标准的层次(1)国际标
10、准(2)国家标准(3)行业标准(4)企业规范(5)项目(课题)规范12.7.2 软件文档的编写第19页/共21页20第12章小结软件管理技术包括成本估计技术、人员组织、计划管理、软件配置管理、软件质量保证及软件工程文件规范。软件开发组织可以采用民主制程序设计小组、主程序员组或层次式小组的形式。主程序员组程序设计小组,核心有三个人:主程序员、辅助程序员和程序管理员。软件开发的管理可采用层次结构,层次不宜过多。实现文档规范化十分重要。软件配置管理是对软件工程的定义、开发、维护阶段的一种重要补充。在软件生存期间,必须不断地进行配置审计工作,要保证基线在技术、管理上的完整性和正确性,保证对软件配置项所作的变动是服从需求规定的。第20页/共21页软件工程基础陆惠恩主编21感谢您的观看!第21页/共21页