三章软件项目管理

上传人:无*** 文档编号:153503578 上传时间:2022-09-19 格式:PPT 页数:113 大小:1.17MB
收藏 版权申诉 举报 下载
三章软件项目管理_第1页
第1页 / 共113页
三章软件项目管理_第2页
第2页 / 共113页
三章软件项目管理_第3页
第3页 / 共113页
资源描述:

《三章软件项目管理》由会员分享,可在线阅读,更多相关《三章软件项目管理(113页珍藏版)》请在装配图网上搜索。

1、第三章第三章 软件项目管理软件项目管理n项目管理的概念项目管理的概念n软件项目度量软件项目度量n软件项目计划与估算软件项目计划与估算n风险分析和管理风险分析和管理n项目进度安排项目进度安排n软件质量保证软件质量保证n软件配置管理软件配置管理项目管理的谱系项目管理的谱系人员管理人员管理产品管理产品管理项目管理项目管理过程管理过程管理软件项目管理软件项目管理项项目目参参与与者者项项目目负负责责人人软软件件项项目目组组协协调调通通信信问问题题软软件件范范围围问问题题分分解解确确定定软软件件过过程程模模型型过过程程分分解解确确定定危危险险信信息息确确定定解解决决方方案案 软件项目管理的目的、任务和内容

2、软件项目管理的目的、任务和内容目的目的 为了使软件项目能够在预定成本、进度、质为了使软件项目能够在预定成本、进度、质量的前提下顺利完成,必须对软件工程项目进量的前提下顺利完成,必须对软件工程项目进行计划、组织、监控和管理行计划、组织、监控和管理 任务任务n制定软件项目的实施计划和方案;制定软件项目的实施计划和方案;n对人员进行组织和分工;对人员进行组织和分工;n按照计划进度,以及成本管理、风险管理、质按照计划进度,以及成本管理、风险管理、质量管理的要求进行软件开发,完成软件项目的量管理的要求进行软件开发,完成软件项目的各项要求和任务。各项要求和任务。3.1.1 软件度量软件度量3.1 软件项目

3、度量软件项目度量软件度量分类软件度量分类3.1.1.1 度量、估算度量、估算n度量度量 metrics度量具有数字特征,软件工程范围的度量是软度量具有数字特征,软件工程范围的度量是软件开发过程、软件资源或软件产品简单属性的件开发过程、软件资源或软件产品简单属性的定量描述。定量描述。如,程序规模、操作符个数、程序中错误的个数如,程序规模、操作符个数、程序中错误的个数等。等。n估算估算 estimation对软件产品、过程、资源进行预测对软件产品、过程、资源进行预测估算可以采用经验公式、或参考历史资料估算可以采用经验公式、或参考历史资料估算用于事前签订合同、立项、制定工作计划估算用于事前签订合同、

4、立项、制定工作计划等等 软件的外部属性和内部属性软件的外部属性和内部属性n外部属性外部属性 软件产品、过程、资源与环境的关系软件产品、过程、资源与环境的关系如,成本、效益、劳动生产率、可靠性、可如,成本、效益、劳动生产率、可靠性、可维护性维护性n内部属性内部属性 软件产品、过程、资源、环境自身的属性软件产品、过程、资源、环境自身的属性如,产品结构、模块化程度、复杂性、程序如,产品结构、模块化程度、复杂性、程序长度等。长度等。产品产品-过程过程-资源资源n产品的内部属性产品的内部属性程序代码长度程序代码长度 程序功能程序功能 模块化模块化 重用性重用性控制流控制流 数据流数据流 模块耦合度与内聚

5、度模块耦合度与内聚度 n产品的外部属性产品的外部属性程序的可靠性程序的可靠性 可用性可用性 可维护性可维护性软件的可理解性软件的可理解性 有效性有效性 可移植性可移植性 n过程的内部属性过程的内部属性 工作量工作量 计划和进度计划和进度 一段时间内某类事件一段时间内某类事件发生的次数发生的次数 n过程的外部属性过程的外部属性 成本成本 可控制性可控制性 可观察性可观察性 稳定性稳定性n资源的内部属性资源的内部属性 人人 软硬件环境软硬件环境 方法方法 经验经验n资源的外部属性资源的外部属性 成本成本 时间时间3.1.1.2 面向规模的度量面向规模的度量n代码行数代码行数 LOC或或KLOCn生

6、产率生产率 Pl=L/E 其中其中 L 软件项目代码行数软件项目代码行数 E 软件项目工作量(人月软件项目工作量(人月 PM)Pl 软件项目生产率(软件项目生产率(LOC/PM)n代码出错率代码出错率 EQRl=Ne/L 其中其中 Ne 软件项目的代码错误数软件项目的代码错误数 EQRl 每千行代码的错误数每千行代码的错误数n每行代码平均成本每行代码平均成本 Cl=S/L 其中其中 S 软件项目总开销(元美元)软件项目总开销(元美元)Cl软件项目每行代码的平均成本软件项目每行代码的平均成本n文档与代码比文档与代码比 Dl=Pd/L 其中其中 Pd 软件项目文档页数软件项目文档页数 Dl 每千行

7、代码的平均文档数每千行代码的平均文档数例例 软件项目记录软件项目记录项目项目工作量工作量 PM成本成本万美元万美元代码行代码行kLOC文档页数文档页数 Pd错误数错误数 Ne人数人数 MAaa-012416.812.1365293Ccc-046244.027.21224865Fff-034331.420.21050646生产率:生产率:Pl=L/E=12.1kLoc/24PM=504Loc/PM出错率:出错率:EQRl=Ne/L=29个个/12.1kLoc=2.4个个/kLoc平均成本:平均成本:Cl=S/L=168 000美元美元/12.1kLoc=13.88美元美元/Loc每千行代码的平均

8、文档页数:每千行代码的平均文档页数:Dl=Pd/L=365Pd/12.1kLoc=30.16Pd/kLoc 规模度量的优缺点规模度量的优缺点用软件代码行数估算软件规模简单易行。用软件代码行数估算软件规模简单易行。缺点缺点n代码行数的估算依赖于程序设计语言的功能和表代码行数的估算依赖于程序设计语言的功能和表达能力;达能力;n采用代码行估算方法会对设计精巧的软件项目产采用代码行估算方法会对设计精巧的软件项目产生不利的影响;生不利的影响;n在软件项目开发前或开发初期估算它的代码行数在软件项目开发前或开发初期估算它的代码行数十分困难;十分困难;n代码行估算代码行估算只适用于过程式程序设计语言只适用于过

9、程式程序设计语言,对非,对非过程式的程序设计语言不太适用等等。过程式的程序设计语言不太适用等等。根据事务信息处理程序的基本功能定义的,根据事务信息处理程序的基本功能定义的,在系统设计初期可以估算出软件项目的规模在系统设计初期可以估算出软件项目的规模 FP=CT*0.65+0.01*Fi 其中:其中:CT按表按表3.1计算计算()Fi 是复杂性调节值是复杂性调节值 Fi 取值取值 0,1,.,5 当当 Fi=0 时,表示时,表示 Fi 不起作用不起作用 Fi=5 时,表示时,表示 Fi 作用最大作用最大3.1.1.3 面向功能的度量面向功能的度量 表表3.1 功能点度量功能点度量测量参数测量参数

10、 值值 权值权值用户输入数用户输入数 *4 用户输出数用户输出数 *5 用户查询数用户查询数 *4 文件数文件数 *7 外部界面数外部界面数 *7 CT 表表3.1中的五个信息量按下列方式取值中的五个信息量按下列方式取值用户输入数用户输入数 用户为软件提供的输入参数个数用户为软件提供的输入参数个数用户输出数用户输出数 软件系统为用户提供的输出参数个数软件系统为用户提供的输出参数个数用户查询数用户查询数 一个联机输入确定一次查询,软件以一个联机输入确定一次查询,软件以 联机输出的形式联机输出的形式,实时地产生一个响应实时地产生一个响应文件数文件数 统计逻辑的主文件个数统计逻辑的主文件个数外部界面

11、数外部界面数 统计所有机器可读的界面,利用这些统计所有机器可读的界面,利用这些 界面可以将信息从一个系统传送到另一界面可以将信息从一个系统传送到另一 个系统个系统 用功能点定义相应的概念用功能点定义相应的概念n生产率:生产率:Pf=FP/E 其中其中 Pf表示每人月完成的功能点数表示每人月完成的功能点数n平均成本:平均成本:CiCi=S/FP =S/FP 其中其中 CiCi表示每功能点的平均成本表示每功能点的平均成本n文档与功能点比:文档与功能点比:Di=Pd/FP Di=Pd/FP 其中其中 DiDi表示每个功能点平均具有的文档页数表示每个功能点平均具有的文档页数n代码出错率:代码出错率:E

12、ORiEORi=NeNe/FP /FP 其中其中 EORiEORi表示每个功能点的平均错误个数表示每个功能点的平均错误个数 面向功能的度量面向功能的度量n软件规模的功能点度量没有直接涉及软件系统本软件规模的功能点度量没有直接涉及软件系统本身的算法复杂性。身的算法复杂性。n1986年年Jones把软件项目中的算法复杂性因素引入把软件项目中的算法复杂性因素引入到功能点计算中来,为了避免混淆,我们把到功能点计算中来,为了避免混淆,我们把Albrecht定义的功能点称为定义的功能点称为简单功能点简单功能点,用,用FPs表表示,把示,把Jones推广的功能点称为推广的功能点称为功能点功能点,用,用FP表

13、示。表示。n推广的功能点包括计算机程序中用于各类问题求推广的功能点包括计算机程序中用于各类问题求解的算法因素,如求解线性代数方程组、遍历二解的算法因素,如求解线性代数方程组、遍历二叉树的各个结点、处理中断等等。叉树的各个结点、处理中断等等。n功能点计算仍用上面的公式功能点计算仍用上面的公式,其中其中CT按表按表3.2计算。计算。表表3.2 推广的推广的功能点度量功能点度量 测量参数测量参数 值值 权值权值用户输入数用户输入数 *4 用户输出数用户输出数 *5 用户查询数用户查询数 *4 文件数文件数 *7 外部界面数外部界面数 *7 算法算法 *3 CT n对一般的工程计算或事务处理软件,用表

14、对一般的工程计算或事务处理软件,用表3.1和表和表3.2两两种方法计算出来的种方法计算出来的FP值应该基本上相同值应该基本上相同n对于比较复杂的软件系统对于比较复杂的软件系统 FP比比FPs的值高的值高20%35%面向功能的度量的优缺点面向功能的度量的优缺点优点优点与程序设计语言无关,与程序设计语言无关,它不仅适用于过程式语它不仅适用于过程式语言,也适用于非过程式的语言言,也适用于非过程式的语言;软件项目开发初期就能基本上确定系统的输入、软件项目开发初期就能基本上确定系统的输入、输出等参数,功能点度量能用于软件项目的开输出等参数,功能点度量能用于软件项目的开发初期。发初期。缺点缺点它涉及到的主

15、观因素比较多,如各种权函数的它涉及到的主观因素比较多,如各种权函数的取值;取值;信息领域中的某些数据有时不容易采集;信息领域中的某些数据有时不容易采集;FPFP的值没有直观的物理意义。的值没有直观的物理意义。3.1.1.4 代码行度量与功能点度量的比较代码行度量与功能点度量的比较n代码行度量依赖于程序设计语言,而功能点度代码行度量依赖于程序设计语言,而功能点度量不依赖于程序设计语言。量不依赖于程序设计语言。nAlbrecht和和Jones等人对若干软件采用事后处理等人对若干软件采用事后处理的方式分别统计出不同程序设计语言每个功能的方式分别统计出不同程序设计语言每个功能点与代码行数的关系,用点与

16、代码行数的关系,用LOC/FP的平均值表示。的平均值表示。n表表3.3表明,表明,一行一行Ada语言代码的语言代码的“功能功能”平均平均是一行是一行FORTRAN语言代码语言代码“功能功能”的的1.4倍。倍。一行四代语言代码的一行四代语言代码的“功能功能”平均是一行传统平均是一行传统程序设计语言代码程序设计语言代码“功能功能”的的3至至5倍。倍。表表3.3 各种语言的各种语言的LOC/FP(平均值平均值)程序设计语言程序设计语言 LOC/FP(平均值平均值)汇编语言汇编语言 300COBOL 100FORTRAN 100Pascal 90Ada 70面向对象的语言面向对象的语言 30四代语言四

17、代语言(4GL)20代码生成器代码生成器 15 3.1.2软件复杂性度量软件复杂性度量1976年年 T.J.McCabe McCabeMcCabe度量法又称环路复杂性度量度量法又称环路复杂性度量,基于程序控制基于程序控制结构的软件复杂性度量模型。结构的软件复杂性度量模型。程序控制结构图程序控制结构图 n程序结构对应于有一个入口结点和一个出口结点的有向图程序结构对应于有一个入口结点和一个出口结点的有向图n图中每个结点对应一个语句或一个顺序流程的程序代码块图中每个结点对应一个语句或一个顺序流程的程序代码块n弧对应于程序中的转移弧对应于程序中的转移n它它,因此计算它,因此计算它先要画出程序图。先要画

18、出程序图。n程序图是退化的程序流程图。流程图中每个处理都退化成程序图是退化的程序流程图。流程图中每个处理都退化成一个结点,流线变成连接不同结点的有向弧。一个结点,流线变成连接不同结点的有向弧。McCabeMcCabe度量法度量法 McCabe用程序控制结构图的用程序控制结构图的巡回秩数巡回秩数V(G)作作为程序结构复杂性的度量为程序结构复杂性的度量 V(G)=e-n+2 其中:其中:e为结构图的边数为结构图的边数 n为结构图的结点数为结构图的结点数 可以证明可以证明 V(G)等于结构图中有界或无界的封等于结构图中有界或无界的封闭区域个数闭区域个数例例3.1计算计算程序控制结构的程序控制结构的V

19、(G)值值E=1 E=3N=2 N=3V=1 V=2计算计算程序控制结构的程序控制结构的V(G)值值E=4 E=3N=4 N=3V=2 V=2计算计算程序控制结构的程序控制结构的V(G)值值E=6N=5V=3例例3.1 计算如图所示程序控制结构图的计算如图所示程序控制结构图的V(G)值。值。(a)e=1,n=2,v=1;(b)e=3,n=3,v=2;(c)e=4,n=4,v=2;(d)e=3,n=3,v=2;(e)e=6,n=5,v=3.示例:示例:在前面的例示中,n11,m13,V(G)mnp131113.p1nMcCabe建议把建议把V(G)作为模块规模的定量指标,作为模块规模的定量指标,

20、一个模块一个模块V(G)的值不要大于的值不要大于10 n当当V(G)10时,模块内部结构就会变得复杂,给时,模块内部结构就会变得复杂,给编码和测试带来困难。编码和测试带来困难。n这种度量的缺点是:这种度量的缺点是:对于不同种类的控制流的复杂性不能区分对于不同种类的控制流的复杂性不能区分 简单简单IF语句语句与与循环语句循环语句的复杂性同等看待的复杂性同等看待 嵌套嵌套IF语句语句与与简单简单CASE语句语句的复杂性是的复杂性是一样的一样的 模块间接口模块间接口当成当成一个简单分支一个简单分支一样处理一样处理 一个一个具有具有1000行的顺序程序行的顺序程序与与一行语句一行语句的复杂性相同的复杂

21、性相同3.2 软件项目计划与估算软件项目计划与估算3.2.1 3.2.1 软件项目计划软件项目计划3.2.2 软件项目估算软件项目估算常用的估算方法常用的估算方法参照已经完成的类似项目估算待开发项目的成本和工作参照已经完成的类似项目估算待开发项目的成本和工作量。量。将大的项目分解成若干子项目,在估算出每个子项目成将大的项目分解成若干子项目,在估算出每个子项目成本和工作量之后,再估算整个项目。本和工作量之后,再估算整个项目。将软件项目按软件生存周期分解,分别估算出软件项目将软件项目按软件生存周期分解,分别估算出软件项目在软件开发各个阶段的工作量和成本,然后再把这些工在软件开发各个阶段的工作量和成

22、本,然后再把这些工作量和成本汇总估算整个项目。作量和成本汇总估算整个项目。根据实验或历史数据给出软件项目工作量或成本的经验根据实验或历史数据给出软件项目工作量或成本的经验估算公式。估算公式。n四种方法可以同时、单独或组合使用,以便取长四种方法可以同时、单独或组合使用,以便取长补短,提高项目估算的精度和可靠性。补短,提高项目估算的精度和可靠性。n采用采用分解技术分解技术估算软件项目应考虑系统集成时需估算软件项目应考虑系统集成时需要的工作量。要的工作量。n为了实现软件项目估算,实践中开发了大量的软为了实现软件项目估算,实践中开发了大量的软件项目件项目自动估算工具自动估算工具,用以支持软件工作量或成

23、,用以支持软件工作量或成本估算。本估算。n分解技术分解技术采用采用”分而治之分而治之”的策略进行软件项目估算的策略进行软件项目估算.将项目分将项目分解为若干个主要的功能及相关的软件工程活动解为若干个主要的功能及相关的软件工程活动,通通过逐步求精的方式进行成本及工作量估算。过逐步求精的方式进行成本及工作量估算。n经验估算模型经验估算模型可用于补充分解技术可用于补充分解技术n自动估算工具自动估算工具实现一种或多种分解技术或经验模型,与人机交互实现一种或多种分解技术或经验模型,与人机交互结合,自动估算将是很好的选择。结合,自动估算将是很好的选择。3.2.2.1 3.2.2.1 代码行、功能点和工作量

24、估算代码行、功能点和工作量估算n软件项目的规模是影响软件项目成本和工作量的软件项目的规模是影响软件项目成本和工作量的重要因素。重要因素。n软件项目软件项目代码行和功能点估算是成本和工作量估代码行和功能点估算是成本和工作量估算的基础。算的基础。n采用上面的估算方法可以估算出采用上面的估算方法可以估算出LOCLOC或或FPFP的的乐观值乐观值a a,悲观值悲观值b b和和一般值一般值m m,然后根据下列加权公式计然后根据下列加权公式计算出期望值算出期望值 e=(ae=(a4m4mb)b)6 6 希望希望LOCLOC或或FPFP的值落在区间的值落在区间a,ba,b之外的概率极小之外的概率极小 n当当

25、LOC或或FP的期望值估算出来之后,根据以前软的期望值估算出来之后,根据以前软件项目开发的平均生产率件项目开发的平均生产率LOC/PM或或FP/PM就可就可以计算出工作量。以计算出工作量。n如,软件项目的规模估算为如,软件项目的规模估算为310FP,以前完成的以前完成的软件项目的生产率为软件项目的生产率为5.5FP/PM,于是工作量估算于是工作量估算为为E=310/5.5=56PM。例例 3.2 估算计算机辅助设计软件项目估算计算机辅助设计软件项目将将CAD项目按功能分解为七个子项目项目按功能分解为七个子项目用户界面和控制;用户界面和控制;二维几何分析;二维几何分析;三维几何分析;三维几何分析

26、;数据库管理;数据库管理;计算机图形显示;计算机图形显示;外设控制;外设控制;设计分析。设计分析。表表3.4给出七个子项目代码行的乐观估计、悲观给出七个子项目代码行的乐观估计、悲观计和一般估计值,然后计算出加权平均值。计和一般估计值,然后计算出加权平均值。估算计算机辅助设计软件项目估算计算机辅助设计软件项目n 分析七个子项目的规模复杂性和难度,参照以分析七个子项目的规模复杂性和难度,参照以前开发类似项目的经验给出开发每行代码的平均成前开发类似项目的经验给出开发每行代码的平均成本,每月开发的代码行数。本,每月开发的代码行数。n 用这两组数据计算出七个子项目的开发成本和用这两组数据计算出七个子项目

27、的开发成本和工作量。工作量。n 最后汇总的最后汇总的CADCAD软件开发项目软件开发项目 规模为规模为 33360 33360 LOCLOC 成本为成本为 656680$656680$工作量为工作量为 144.5 144.5 PMPM。n再用这两种方法分别估算软件开发子项目在软件再用这两种方法分别估算软件开发子项目在软件工程各个阶段的工作量,估算结果列入表工程各个阶段的工作量,估算结果列入表3.5。n两种方法估算的工作量分别为两种方法估算的工作量分别为144.5PM和和152.5PM,相差相差5%左右。左右。n估算的成本分别为估算的成本分别为656680$和和708075$,相差,相差7%左右

28、。左右。两种方法估算的工作量和成本基本一致。两种方法估算的工作量和成本基本一致。表表3.4 代码行和成本、工作量估算代码行和成本、工作量估算 功能功能 乐观乐观 一般一般 悲观悲观 加权加权$LOC 成本成本 工作量工作量 LOC LOC LOC 平均平均 /LOC /PM (人月人月)用户界面控制用户界面控制1790 2400 2650 2340 14 315 32760 7.4 二维几何分析二维几何分析4080 5200 7400 5380 20 220 107600 24.4三维几何分析三维几何分析4600 6900 8600 6800 20 220 136000 30.9数据库管理数据

29、库管理 2900 3400 3600 3350 18 240 60300 13.9图形显示图形显示 3900 4900 6200 4950 22 200 108900 24.7外设控制外设控制 1990 2100 2450 2140 28 140 59920 15.2设计分析设计分析 6600 8500 9800 8400 18 300 151200 28.0总计总计 33360 656680 144.5 表表3.5工作量估算工作量估算 功能功能 需求分析需求分析 设计设计 编码编码 测试测试 总计总计 用户界面控制用户界面控制 1.0 2.0 0.5 3.5 7二维几何分析二维几何分析 2.

30、0 10.0 4.5 9.5 26三维几何分析三维几何分析 2.5 12.0 6.0 11.0 31.5数据库管理数据库管理 2.0 6.0 3.0 4.0 15计算机图形显示计算机图形显示 1.5 11.0 4.0 10.5 27外设控制外设控制 1.5 6.0 3.5 5.0 16设计分析设计分析 4.0 14.0 5.0 7.0 30总计总计(人月人月)14.5 61 26.5 50.5 152.5 每人月成本每人月成本 5200 4800 4250 4500成本成本()75400 292800 112625 227250 708075 3.2.2.2 经验估算模型之一经验估算模型之一

31、CoCoMo模型模型n计算机软件的估算模型是根据以前完成项目的实计算机软件的估算模型是根据以前完成项目的实际数据导出的,用于软件项目的计划阶段。际数据导出的,用于软件项目的计划阶段。n 模型是根据模型是根据“从前的从前的”,“局部的局部的”数据得出的,数据得出的,估算模型不可能完全适用于当前所有的软件项目估算模型不可能完全适用于当前所有的软件项目和全部开发环境。这些模型的计算结果仅供参考。和全部开发环境。这些模型的计算结果仅供参考。n 两个常用的估算模型两个常用的估算模型 CoCoMo模型模型 Putnam模型模型 CoCoMo模型模型n1981年年Boehm提出提出“构造性成本模型构造性成本

32、模型”(Constructive Cost Model),简称简称CoCoMo模型。它是在静态、单变量模型的模型。它是在静态、单变量模型的基础上构造出来的。基础上构造出来的。n CoCoMo模型分为基本、中间、详细三个层次,分别用于模型分为基本、中间、详细三个层次,分别用于软件开发的三个不同阶段。软件开发的三个不同阶段。n基本基本CoCoMo模型模型 用于系统开发的初期,估算整个系统用于系统开发的初期,估算整个系统的工作量的工作量(包括软件维护包括软件维护)和软件开发所需要的时间。和软件开发所需要的时间。n 中间中间CoCoMo模型模型 用于估算各个子系统的工作量和开发用于估算各个子系统的工作

33、量和开发时间。时间。n详细详细CoCoMo模型模型 用于估算独立的软部件,如子系统内用于估算独立的软部件,如子系统内部的各个模块。部的各个模块。1 基本基本CoCoMo模型模型静态、单变量模型静态、单变量模型 E=aLb (3-1)D=D=cEcEd d (3-2)其中:其中:E表示工作量,单位是人月表示工作量,单位是人月(PM)。D表示开发时间,单位是月表示开发时间,单位是月(M)。L是项目的代码行估计值,单位是千行代码是项目的代码行估计值,单位是千行代码 a,b,c,d是常数,取值如表是常数,取值如表3.6所示。所示。Boehm把软件划分为组织型、半独立型和嵌入型三类,允许把软件划分为组织

34、型、半独立型和嵌入型三类,允许不同应用领域和复杂程度的软件按照三类软件的适用范围选不同应用领域和复杂程度的软件按照三类软件的适用范围选取相应的参数取相应的参数a,b,c,d。给出了代码行数与工作量、工作量与开发时间之间的函数关系给出了代码行数与工作量、工作量与开发时间之间的函数关系 表表3.6 简单简单CoCoMo模型参数模型参数软件类型软件类型 a b c d 适用范围适用范围组织型组织型 2.4 1.05 2.5 0.38 各类应用程序各类应用程序半独立型半独立型 3.0 1.12 2.5 0.35 各类实用程序、各类实用程序、编译程序等编译程序等嵌入型嵌入型 3.6 1.20 2.5 0

35、.32 实时处理、实时处理、控制程序、控制程序、操作系统操作系统 2 中间中间CoCoMo模型模型n中间中间CoCoMo模型模型 以基本以基本CoCoMo模型为基础,在工作量估计公式模型为基础,在工作量估计公式中乘以工作量调节因子中乘以工作量调节因子 EAF E=aLb*EAF (3-3)其中:其中:L是软件产品的目标代码行数是软件产品的目标代码行数 a,b是常数,取值如表是常数,取值如表3.7所示所示。中间中间 CoCoMo模型模型表表3.7 中间中间CoCoMo模型参数模型参数 软件类型软件类型 a b 组织型组织型 3.2 1.05 半独立型半独立型 3.0 1.12 嵌入型嵌入型 2.

36、8 1.20 CoCoMo模型模型 工作量调节因子工作量调节因子EAFEAF与软件产品属性、计算机属性、人员与软件产品属性、计算机属性、人员属性、项目属性有关属性、项目属性有关n软件产品属性软件产品属性 软件可靠性、软件复杂性、数据库的规模。软件可靠性、软件复杂性、数据库的规模。n计算机属性计算机属性 程序执行时间、程序占用内存的大小、软件开发环境的程序执行时间、程序占用内存的大小、软件开发环境的变化、软件开发环境的响应速度。变化、软件开发环境的响应速度。n人员属性人员属性 分析员的能力、程序员的能力、有关应用领域的经验、分析员的能力、程序员的能力、有关应用领域的经验、开发环境的经验、程序设计

37、语言的经验开发环境的经验、程序设计语言的经验n项目属性项目属性 软件开发方法的能力,软件工具的质量和数量、软件开软件开发方法的能力,软件工具的质量和数量、软件开发的进度要求。发的进度要求。CoCoMo 模型n四种属性共四种属性共15个要素。个要素。n每个要素调节因子每个要素调节因子 Fi,i=1,2,.,15,的值分为:的值分为:很低、低、正常、高、很高、极高,共六级。很低、低、正常、高、很高、极高,共六级。n正常情况下正常情况下 Fi=1。nBoehm推荐推荐的的Fi值范围值范围 (0.70,0.85,1.00,1.15,1.30,1.65)n当当15个个Fi的值选定后,的值选定后,EAF的

38、计算如下的计算如下 EAFF1F1*F2F2*F15F15 CoCoMo 模型 调节因子集的定义和调节因子定值是由统调节因子集的定义和调节因子定值是由统计结果和经验决定的。不同的软件开发组织,计结果和经验决定的。不同的软件开发组织,在不同的历史时期,随着环境的变化,这些数在不同的历史时期,随着环境的变化,这些数据可能改变。据可能改变。使用中间使用中间CoCoMo模型可以估算开发软件产模型可以估算开发软件产品的工作量,比较各种开发方案的工作量。品的工作量,比较各种开发方案的工作量。例例3.3 用基本用基本CoCoMo模型估算例模型估算例3.2工作量、开发时间和项目开发人数工作量、开发时间和项目开

39、发人数在例在例3.2中,目标代码行数为中,目标代码行数为 33.3 KLOCCAD软件开发属于中等规模、半独立型软件开发属于中等规模、半独立型从表从表3.7中查到中查到a=3.0,b=1.12。代入公式代入公式(3-1)E=3.03.0L L1.121.12 =3.033.333.31.121.12 =152 PM 将将E E的估算值代入公式的估算值代入公式(3-2)3-2)取取 C=2.5 d=0.35C=2.5 d=0.35 D=2.5 D=2.5E E0.350.35 =2.5 =2.5*1521520.350.35 =14.5 M =14.5 M 建议参加项目开发的人数建议参加项目开发

40、的人数 N=E/D=152/14.511N=E/D=152/14.511n例中计算出来的例中计算出来的1111人是粗略估计人是粗略估计n在软件项目开发过程中,在软件项目开发过程中,1111个人不可能都有相同个人不可能都有相同的能力和个性,相同的经验和知识结构,并且在的能力和个性,相同的经验和知识结构,并且在软件开发的各个阶段对人的要求也不同。软件开发的各个阶段对人的要求也不同。CoCoMo模型模型 若干人共同开发一个软件项目还应该增加他们之若干人共同开发一个软件项目还应该增加他们之间相互通信和交换意见的额外工作量。间相互通信和交换意见的额外工作量。设设 N个程序员组成小组,实现相同规模的程序,

41、相个程序员组成小组,实现相同规模的程序,相互通信数为互通信数为 =N(N-1)/2 每次通信和交换意见的平均工作量为每次通信和交换意见的平均工作量为 则则 增加的通信开销为增加的通信开销为 EcN(N-1)/2 (3-4)2NC例例3.4 计算一个程序的通信开销计算一个程序的通信开销 3人和人和5人开发一个程人开发一个程序相互通信和交换意见的序相互通信和交换意见的关系如图所示关系如图所示 将将N=3和和N=5分别代入公分别代入公式式(3-4)Ec(3)3(3-1)/23 Ec(5)5(5-1)/210 CoCoMo模型模型 由由N个程序员组成的小组共同开发一个程序总的工作量个程序员组成的小组共

42、同开发一个程序总的工作量ET满足满足 ET=E+Ec (3-5)程序员小组的生产率是程序员小组的生产率是 PG=LOC/(E+Ec)(3-6)程序员小组生产率和单个程序员生产率的比为程序员小组生产率和单个程序员生产率的比为 Rp=E/(E+Ec)(3-7)随着程序员小组人数的增加随着程序员小组人数的增加,EcNN2 2/2,程序员小组的生程序员小组的生产率将会下降。产率将会下降。模型表明模型表明 盲目增加程序员人数会推迟软件完成的日期盲目增加程序员人数会推迟软件完成的日期 3.2.2.3经验估算模型之二:经验估算模型之二:Putnam模型模型n 1978年,年,Putnam提出了大型软件项目工

43、作量提出了大型软件项目工作量(一般一般在在30人年以上人年以上)估算模型。估算模型。n它是一个动态多变量模型,适用于软件开发的各个它是一个动态多变量模型,适用于软件开发的各个阶段,估算模型以大型软件项目的实测数据为基础,阶段,估算模型以大型软件项目的实测数据为基础,导出工作量分布曲线。导出工作量分布曲线。n该曲线与著名的该曲线与著名的Rayleigh-Norden(R-N)曲线相似,曲线相似,它描述了开发工作量,开发时间和软件代码行数之它描述了开发工作量,开发时间和软件代码行数之间的关系。间的关系。Putnam模型模型方程方程 L=CL=CK K E E1/3 1/3 t td4/3 4/3

44、(3-8)其中:其中:L 表示源程序代码行数表示源程序代码行数 td 表示开发时间表示开发时间 Ck 表示技术状态常数表示技术状态常数 E 表示工作量表示工作量 (以人年记,包括维护以人年记,包括维护)Putnam模型揭示了软件项目的工作量、软件开发时模型揭示了软件项目的工作量、软件开发时间和程序代码长度三者之间的关系间和程序代码长度三者之间的关系Putnam模型模型n差的软件开发环境差的软件开发环境 软件开发没有方法学的支持,缺乏对文档的评审,采用软件开发没有方法学的支持,缺乏对文档的评审,采用批处理方式。批处理方式。n一般的软件开发环境一般的软件开发环境 应有软件开发方法学的支持,有适宜的

45、文档和评审,采应有软件开发方法学的支持,有适宜的文档和评审,采用交互处理方式。用交互处理方式。n好的软件开发环境好的软件开发环境 应采用应采用CASE工具和集成化工具和集成化CASE环境。环境。CK=2000 比较差的软件开发环境比较差的软件开发环境 8000 一般的软件开发环境一般的软件开发环境 11000 比较好的软件开发环比较好的软件开发环 Putnam模型模型 由由(2-18)3 3 3 4 3 4 E L/(CK*td )(3-9)ntd对应于对应于Rayleigh-Norden曲线的最大值,表示软件交付曲线的最大值,表示软件交付时工作量最大,参与软件项目的人最多。时工作量最大,参与

46、软件项目的人最多。n当工作量估算出来之后,利用每人年的开销当工作量估算出来之后,利用每人年的开销($/PY)可以估可以估算成本。算成本。n公式公式(3-9)表明,开发软件项目的工作量与交货时间的表明,开发软件项目的工作量与交货时间的4次次方成反比,将方成反比,将0.9td代替代替(3-9)式的式的td计算计算E发现,提前发现,提前10%的时间要增加的时间要增加52%的工作量,降低了软件开发生产率。的工作量,降低了软件开发生产率。n软件开发过程中人员与时间的折衷是一个十分重要的问题。软件开发过程中人员与时间的折衷是一个十分重要的问题。Putnam模型3.3.1风险分析风险分析风险的概念风险的概念

47、n风险与将要发生的事情有关,风险与将要发生的事情有关,研究风险就是研究研究风险就是研究明天将要发生的事情明天将要发生的事情n风险涉及思想、观念、行为、地点、时间等多种风险涉及思想、观念、行为、地点、时间等多种因素因素n风险随条件的变化而改变,人们风险随条件的变化而改变,人们通过通过改变、选择、改变、选择、控制与风险密切相关的条件减少、控制与风险密切相关的条件减少、回避回避风险风险n改变、选择、控制条件的策略是不确定的改变、选择、控制条件的策略是不确定的3.3风险分析和管理风险分析和管理软件风险软件风险n软件风险和其它风险一样存在不确定性软件风险和其它风险一样存在不确定性,有些是很有些是很难预测

48、的。难预测的。n对风险的不确定性进行量化,估算某一风险可能对风险的不确定性进行量化,估算某一风险可能带来的损失。带来的损失。n除关注软件项目的一般性风险外,还要关注软件除关注软件项目的一般性风险外,还要关注软件项目的特殊风险,如项目的背景、特殊要求、关项目的特殊风险,如项目的背景、特殊要求、关键内容、薄弱环节、技术难点、人员状况、工作键内容、薄弱环节、技术难点、人员状况、工作环境等。环境等。软件项目存在各种风险,人们关心的问题:软件项目存在各种风险,人们关心的问题:n什么风险会导致软件项目的彻底失败什么风险会导致软件项目的彻底失败?n顾客需求、开发环境、目标机、时间、成本的改变顾客需求、开发环

49、境、目标机、时间、成本的改变对软件项目的风险会产生什么影响对软件项目的风险会产生什么影响?n人们必须抓住什么机会、采取什么措施才能有效地人们必须抓住什么机会、采取什么措施才能有效地减少风险、顺利完成任务减少风险、顺利完成任务?不同类型的风险不同类型的风险n项目风险项目风险预算、进度、人力、资源、客户及需求预算、进度、人力、资源、客户及需求项目的复杂度、规模、结构的不确定性等项目的复杂度、规模、结构的不确定性等n技术风险技术风险设计、实现、接口、验证和维护设计、实现、接口、验证和维护规约的二义性、技术的不确定性、陈旧的技术、领规约的二义性、技术的不确定性、陈旧的技术、领先的技术先的技术n商业风险

50、商业风险无需求的产品、策路风险、管理风险、预算风险无需求的产品、策路风险、管理风险、预算风险软件风险分析包括的部分软件风险分析包括的部分n 风险标识风险标识 n 风险估算风险估算 n 风险规划风险规划 n 风险监控风险监控软件风险分析软件风险分析风险标识风险估算风险规划风险监控潜 在 地 风险列表优先级高的风险列表风险规划和应急计划风险评估1风险风险标识标识n对待风险不能采取回避态度对待风险不能采取回避态度 项目开始时应对一般性风险和特定产品风险进项目开始时应对一般性风险和特定产品风险进行系统标识,並随着项目的展开不断更新。行系统标识,並随着项目的展开不断更新。n一般可预测风险一般可预测风险

51、产品规模、商业影响、客户、过程、技术、环产品规模、商业影响、客户、过程、技术、环境、人员及经验等。境、人员及经验等。n识别风险的有效方法识别风险的有效方法 风险检测风险检测表表 为了帮助项目管理人员、项目规划人员为了帮助项目管理人员、项目规划人员,全面了全面了解软件开发过程存在的风险,解软件开发过程存在的风险,Boehm Boehm 建议设计并建议设计并使用各类风险检测使用各类风险检测表,表中条目指明表,表中条目指明,常見並可预常見並可预测的风险。测的风险。有些风险可以预料,有些很难预料。有些风险可以预料,有些很难预料。例例3.6 人员配备风险检测表人员配备风险检测表(1)开发人员的水平如何。

52、开发人员的水平如何。(2)开发人员在技术上是否配套。开发人员在技术上是否配套。(3)开发人员的数量如何。开发人员的数量如何。(4)开发人员是否能够自始至终地参加软件开发工作。开发人员是否能够自始至终地参加软件开发工作。(5)开发人员是否能够集中全部精力投入到软件开发工作。开发人员是否能够集中全部精力投入到软件开发工作。(6)开发人员对自己的工作是否有正确的期望。开发人员对自己的工作是否有正确的期望。(7)开发人员是否接受过必要的培训。开发人员是否接受过必要的培训。(8)开发人员的流动是否能够保证工作的连续性。开发人员的流动是否能够保证工作的连续性。上述问题可以选用上述问题可以选用0,1,2,3

53、,4,5来回答。完全肯定取值为来回答。完全肯定取值为0,反,反之之为为5,中间情况分别取值,中间情况分别取值1,2,3,4值越大表示风险越大。值越大表示风险越大。人员配备风险检测表反映了人的因素给软件项目带来的风险。人员配备风险检测表反映了人的因素给软件项目带来的风险。2 2风险估算风险估算 如果某一风险检测表如果某一风险检测表由由m m项组成,每项选取一项组成,每项选取一个整数值个整数值0,1,0,1,,N N,在最理想的情况取值为在最理想的情况取值为0 0,反,反之取值为之取值为N N,对于中间状态依次取值,对于中间状态依次取值1,2,1,2,N-1N-1 当当 N=1 N=1 时取值时取

54、值 0,1 0,1,对应布尔量真,对应布尔量真/假假(T/F)T/F)设第设第i i种风险检测表第种风险检测表第j j项取值项取值XijXij,对应的加权系对应的加权系数是数是WijWij,于是第于是第i i种风险的估算值可以定义为种风险的估算值可以定义为 m m i i WijXijWijXij(mN(mN)j=1 j=1 其中其中 WijWij m m,WijWij 0 (3 0 (310)10)风险估算风险估算 如果第如果第i种风险对整个软件项目的风险估算加权种风险对整个软件项目的风险估算加权系数是系数是i,i=1,2,l.为风险要素的个数为风险要素的个数,i1,则软件项目风险估算定义为

55、则软件项目风险估算定义为 l lRii (311)i=1n0R1当当R接近于接近于0时表示风险比较小,时表示风险比较小,R接接近于近于1时表示风险比较大。时表示风险比较大。n当当ii 比较大时,表示第比较大时,表示第i类风险出现并带来不类风险出现并带来不良影响的可能性比较大,必须引起足够重视,设良影响的可能性比较大,必须引起足够重视,设法改善条件,减小法改善条件,减小i的值。的值。3 风险评价和管理风险评价和管理 风险评价是风险管理的重要步骤风险评价是风险管理的重要步骤任务任务 n进一步审查风险预测的精度;进一步审查风险预测的精度;n更新风险优先次序;更新风险优先次序;n考虑控制和考虑控制和/

56、或避免可能发生风险的办法。或避免可能发生风险的办法。风险评价风险评价定义定义 用三元组用三元组ri,li,xi描述风险描述风险,i=1,2,3 其中:其中:ri 表示风险表示风险 li 表示风险发生的概率表示风险发生的概率 xi 表示风险产生的影响表示风险产生的影响 对大多数软件项目,应该定义性能、成本及进对大多数软件项目,应该定义性能、成本及进度的风险参考水平值,当某一风险或风险组合值度的风险参考水平值,当某一风险或风险组合值超过水平值时项目被迫停止。超过水平值时项目被迫停止。风险评估的步骤风险评估的步骤1 定义项目的风险参考水平值;定义项目的风险参考水平值;2 建立三元组,给出相应的参考水

57、平值;建立三元组,给出相应的参考水平值;3 预测一组临界点,定义项目终止区域;预测一组临界点,定义项目终止区域;4 预测什么样的风险组合会影响参考水平预测什么样的风险组合会影响参考水平 值值风险表风险表 (13)风险风险 类别类别 概率概率 影响影响 RMMM123n项目开始时应在第一列列出所有风险项目开始时应在第一列列出所有风险;n第二列给出风险类别;第二列给出风险类别;n第三列给出每种风险发生的概率;第三列给出每种风险发生的概率;n第四列给出各种风险产生影响的评估值;第四列给出各种风险产生影响的评估值;n第五列给出风险缓解、监控和管理计划。第五列给出风险缓解、监控和管理计划。风险表(风险表

58、(23)n评估值按风险因素:评估值按风险因素:性能、成本、进度的影响类别求加权平均值性能、成本、进度的影响类别求加权平均值n影响类别取值:灾难的影响类别取值:灾难的1,严重的,严重的2,轻微的,轻微的3,可忽略的可忽略的4。n对风险表中的风险按照发生概率大小、影响大小,对风险表中的风险按照发生概率大小、影响大小,由大至小排序由大至小排序。风险表(风险表(33)n项目管理者对风险表进行研究后应定义一条中止项目管理者对风险表进行研究后应定义一条中止线,线上的风险较大者应给予特别的关注,线下线,线上的风险较大者应给予特别的关注,线下的风险需要进一步的跟踪、评估、排序。的风险需要进一步的跟踪、评估、排

59、序。n对风险发生概率较大的事件应引起特别关注,要对风险发生概率较大的事件应引起特别关注,要及早采取措施尽量避免它的发生。及早采取措施尽量避免它的发生。风险评价和管理风险评价和管理三元组三元组ri,li,xi是风险管理的基础是风险管理的基础设设 高级职员流动给项目带来高级职员流动给项目带来风险风险r1,根据历史的经验或直观感觉,高级职员离开根据历史的经验或直观感觉,高级职员离开课题组的课题组的概率概率 l1=70%,这一风险这一风险导致导致事件事件 x1 发生发生 项目开发时间延长项目开发时间延长 15%,成本增加,成本增加 20%项目负责人采取的风险管理措施项目负责人采取的风险管理措施(1)项

60、目开始前控制产生风险的原因。项目开工后应设法项目开始前控制产生风险的原因。项目开工后应设法减轻风险的影响。减轻风险的影响。(2)了解项目开发人员变动的原因,在项目开发期间应控了解项目开发人员变动的原因,在项目开发期间应控制上述原因,尽量减少人员的流动。制上述原因,尽量减少人员的流动。(3)在工作方法和技术上采取适当措施,防止因人员流动在工作方法和技术上采取适当措施,防止因人员流动给工作带来损失。给工作带来损失。(4)项目在开发过程中应及时公布并交流项目开发的信息。项目在开发过程中应及时公布并交流项目开发的信息。(5)建立组织机构,确定文档标准、并及时生成文档。建立组织机构,确定文档标准、并及时

61、生成文档。(6)对工作进行集体复审,使多数人都能了解工作的细节,对工作进行集体复审,使多数人都能了解工作的细节,跟上工作进度。跟上工作进度。(7)为关键技术准备后备人员。为关键技术准备后备人员。RMMM计划计划n风险缓解、监控和管理计划风险缓解、监控和管理计划 Risk Mitigation,Monitoring,and Management Plan 将风险分析工作文挡化,成为项目的一部分。将风险分析工作文挡化,成为项目的一部分。n执行执行RMMM计划需要成本计划需要成本 当软件项目比较大时,可能标出当软件项目比较大时,可能标出30至至40种风险,种风险,如果为每种风险定义如果为每种风险定义

62、3至至7种风险管理步骤,则风种风险管理步骤,则风险管理本身就是一个项目。险管理本身就是一个项目。n将将Pareto的的20-80规则用于软件项目的风险标识,规则用于软件项目的风险标识,即即20%的风险具有的风险具有0.80的权,而其余的的权,而其余的80%风险风险只有只有0.20的权。要善于标识属于的权。要善于标识属于20%的主要风险,的主要风险,降低降低RMMM计划的规模和复杂性。RMMM计划大纲计划大纲 计划大纲计划大纲1.引言引言 1.1文挡的范回和目的文挡的范回和目的 1.2主要风险综述主要风险综述 1.3责任责任 1.3.1管理者管理者 1.3.2技术人员技术人员2.项目风险表项目风

63、险表 2.1中止线以上的风险描述中止线以上的风险描述 2.2影响概率及影响因素影响概率及影响因素3.风险缓解、监控和管理风险缓解、监控和管理 3.1缓解缓解 3.1.1一般策略一般策略 3.1.2缓解风险的特定步骤缓解风险的特定步骤 3.2监控监控 3.2.1被监控的因素被监控的因素 3.2.2监控方法监控方法 3.3管理管理 3.3.1意外事件计划意外事件计划 3.3.2特殊考虑特殊考虑4.RMMM计划时间安排表计划时间安排表5.总结总结3.4 项目项目进度安排进度安排 制定软件项目进度表有两种途径。制定软件项目进度表有两种途径。(1)(1)软件开发小组根据提供软件产品的最后期限软件开发小组

64、根据提供软件产品的最后期限从后往前安排时间。从后往前安排时间。(2)(2)软件项目开发组织根据项目和资源情况制定软件项目开发组织根据项目和资源情况制定软件项目开发的初步计划和交付软件产品的日期。软件项目开发的初步计划和交付软件产品的日期。软件开发组织希望按照第二种方式安排工作进软件开发组织希望按照第二种方式安排工作进度。多数场合遇到的都是比较被动的第一种方式。度。多数场合遇到的都是比较被动的第一种方式。对软件项目的进度安排比对软件成本的估算要求对软件项目的进度安排比对软件成本的估算要求更高。成本的增加可以通过提高产品定价或通过更高。成本的增加可以通过提高产品定价或通过大批量销售得到补偿,而项目

65、进度安排不当会引大批量销售得到补偿,而项目进度安排不当会引起顾客不满,影响市场销售。起顾客不满,影响市场销售。nPERTPERT技术和技术和CPMCPM方法方法PERTPERT技术叫做计划评审技术(程序评估与审查技术)技术叫做计划评审技术(程序评估与审查技术)CPMCPM方法叫做关键路径法方法叫做关键路径法它们都是安排开发进度,制定软件开发计划最常用它们都是安排开发进度,制定软件开发计划最常用的方法。它们都采用网络图来描述一个项目的任的方法。它们都采用网络图来描述一个项目的任务网络,也就是从一个项目的开始到结束,把应务网络,也就是从一个项目的开始到结束,把应当完成的任务用图的形式表达出来。通常

66、用两张当完成的任务用图的形式表达出来。通常用两张图来表示。一张图给出项目的所有任务,另一张图来表示。一张图给出项目的所有任务,另一张图给出应按照什麽次序完成这些任务,给出各任图给出应按照什麽次序完成这些任务,给出各任务的衔接务的衔接。PERT和和CPM方法提供了定量描述工具,包括方法提供了定量描述工具,包括关键路径。完成关键路径上所有任务时间的总和,关键路径。完成关键路径上所有任务时间的总和,就是项目开发所需要的最短时间。就是项目开发所需要的最短时间。用统计模型估算开发每个子任务需要的工作量和时用统计模型估算开发每个子任务需要的工作量和时间。间。计算各子任务的最早启动时间和最迟启动时间计算各子任务的最早启动时间和最迟启动时间。例:某一项目进入编码阶段考虑如何安排三个模块例:某一项目进入编码阶段考虑如何安排三个模块A,B,C的开发工作,其中的开发工作,其中A是公用模块,是公用模块,B和和C的测试有赖于的测试有赖于A的调的调试试C为现成已有的模块,但对它要做理解之后做部分修改。直为现成已有的模块,但对它要做理解之后做部分修改。直到到A,B,C做组装测试为止。做组装测试为止。图中各边表示要完

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!