软件工程课件 第十一章 软件项目管理
合集下载
软件工程第十一章面向对象设计

THANKS
感谢观看
01
抽象类是一种不能被实例化的 类,它只能被其他类继承。
02
抽象类可以包含抽象方法和具 体方法。抽象方法是没有具体 实现的方法,需要在继承抽象 类的子类中实现。
03
通过继承抽象类,子类可以继 承抽象类的属性和方法,并且 可以重写或实现抽象类中的方 法。
接口与抽象类的选择
在设计软件时,选择使用接口还是抽象类取决于具体需求和设计目标。
关系
关系描述了对象之间的交互和联系。 常见的关系包括关联、聚合和继承。
继承与多态的设计
继承
继承是一种实现代码重用的方式,子类可以继承父类的属性和方法,并可以扩展或覆盖它们。通过继承,可以建 立类之间的层次结构,使得代码更加清晰和易于维护。
多态
多态是指一个接口可以有多种实现方式,或者一个对象可以有多种形态。多态可以提高代码的灵活性和可扩展性, 使得程序更加易于维护和修改。
02
类与对象的设计
类的定义与属性
类的定义
类是对象的抽象,它描述了一组具有相同属性和行为的对象。类定义了对象的结构、行为和关系。
属性
属性是类中用于描述对象状态的变量。每个对象都有其自己的属性值,这些属性值决定了对象的状态 。
对象的行为与关系
行为
行为是类中定义的方法,用于描述对 象可以执行的操作。方法定义了对象 的行为和功能。
高层模块不应该依赖于低层模块,它们都应 该依赖于抽象。
面向对象设计的优势
提高代码可重用性
通过类和继承实现代码重用,减少重 复代码。
提高代码可维护性
面向对象设计使得代码结构更加清晰, 易于理解和维护。
提高开发效率
通过快速原型开发,快速构建软件系 统。
《软件工程》教学课件 第11章 软件项目管理

式为组织型、半独立型或嵌入型。
下 表 是 根 据 63 个 项 目 的 数 据 统 计 结 果 , 按 照 基 本 的 COCOMO模型估算的工作量和进度。
总体类型 组织型
半独立型 嵌入型
工作量 MM=10.4(KLOG)1.05 MM=3.0(KLOG)1.12 MM=3.6(KLOG)1.20
进度 TDEV=10.5(MM)0.38 TDEV=10.5(MM)0.35 TDEV=10.5(MM)0.32
i1
其中:ai — 估计的最小行数 bi — 估计的最大行数 mi — 最可能的行数
将估算的源代码行数,乘以根据经验推算的每行源代 码所需成本,即为该软件的成本。
IBM 估算模型
1977年由Waiston 和 Felix 总结了IBM联合系统 分部(FSD)负责的60个项目的数据,利用最小二 乘法拟合,得到如下估算公式:
PERT(Program evaluation & review technique)计 划评审技术或CPM(Critical path method)关键路径法, 都是采用网络图来描述项目的进度安排。如图描述了开发 模块A、B、C的任务网络图。各边上所标注的数字为该任 务所持续的时间,数字结点为任务的起点和终点。
70
任务
月份 1 2 3 4 5 6 7 8 9 10 11 12
60
需求分析 ▲ ▲ ▲
50
总体设计
▲ ▲▲
40
详细设计
▲▲
30
编码 软件测试
▲ ▲▲
20
10
▲▲▲
0 一月
二月
三月
四月
五月
六月
进度表
2.甘特图(Gantt Chart)
下 表 是 根 据 63 个 项 目 的 数 据 统 计 结 果 , 按 照 基 本 的 COCOMO模型估算的工作量和进度。
总体类型 组织型
半独立型 嵌入型
工作量 MM=10.4(KLOG)1.05 MM=3.0(KLOG)1.12 MM=3.6(KLOG)1.20
进度 TDEV=10.5(MM)0.38 TDEV=10.5(MM)0.35 TDEV=10.5(MM)0.32
i1
其中:ai — 估计的最小行数 bi — 估计的最大行数 mi — 最可能的行数
将估算的源代码行数,乘以根据经验推算的每行源代 码所需成本,即为该软件的成本。
IBM 估算模型
1977年由Waiston 和 Felix 总结了IBM联合系统 分部(FSD)负责的60个项目的数据,利用最小二 乘法拟合,得到如下估算公式:
PERT(Program evaluation & review technique)计 划评审技术或CPM(Critical path method)关键路径法, 都是采用网络图来描述项目的进度安排。如图描述了开发 模块A、B、C的任务网络图。各边上所标注的数字为该任 务所持续的时间,数字结点为任务的起点和终点。
70
任务
月份 1 2 3 4 5 6 7 8 9 10 11 12
60
需求分析 ▲ ▲ ▲
50
总体设计
▲ ▲▲
40
详细设计
▲▲
30
编码 软件测试
▲ ▲▲
20
10
▲▲▲
0 一月
二月
三月
四月
五月
六月
进度表
2.甘特图(Gantt Chart)
第11章 软件项目管理-软件工程基础(第3版)-胡思康-清华大学出版社

第 4 页4
软件项目管理概述
软件项目管理目标
软件项目管理成功的目标包括以下几方面: ⑴ 如期完成项目 ⑵ 项目成本控制在计划之内 ⑶ 妥善处理用户的需求变动 ⑷ 保证项目质量⑸ 保持对项目进度的跟踪与控制
第11章 软件项目管理
第 5 页5
软件项目规模度量
任何软件项目都需要定量描述才能制定软件开发成本。只有把软件项目 中设计的各项因素,如软件开发时间、人员数量、开发环境的软件工具和硬 件系统、资金等资源的指标尽可能量化,才能准确估算软件产品的规模、复 杂度、工作总量。没有定量的项目将难以展开软件管理和实施过程。
❖系统的内部处理复杂吗
❖代码设计可重用吗
❖ 设计中包括转换和安 装吗
❖ 系统的设计支持不同 组织的多次安装吗
❖ 系统的实际有利于用 户的修改和使用吗
第 10 页10
软件项目规模度量
面向功能的度量
一旦计算出功能点,就可仿照LOC的方式度量软件的生产率、质量和 其它属性:
生产率 = FP/E 质量 = ER/FP 成本 = S/FP 文档 = ER/FP
第11章 软件项目管理
第 2 页2
软件项目管理概述
软件项目管理的特点
⑷ 软件产品虽然分通用软件和领域软件,但其都是“定制”的定向系统 ,目前仍无法摆脱手工开发模式。“没有完全一样的软件项目”,这不仅对 项目实施过程难以控制,而且还需要根据具体应用领域、环境等制定特殊管 理过程和内容。
⑸ 源于应用领域的复杂性和软件开发技术的复杂性,软件自身是一个复 杂系统。因而软件管理要对复杂软件系统过程做到未雨绸缪,对软件开发内 容抽丝剥茧般的细致。 ⑹ 软件项目管理需要综合各方面,特别是社会因素、精神因素、认知要素、 技术问题、领域问题、用户沟通等各项复杂内容。
《软件工程》PPT课件

问题定义(续)
系统全部弄清楚了。还有一些人可能会给你展示一些企业的十分详 尽的管理示图,如物资流管理图、生产管理图、计划财务管理图等。 因为他们也可能认为,只要分析员把这些图看懂了,就会对他们要 建立的系统搞清楚了。
但是,在问题定义阶段千万不要陷入到这些表格和图纸中。因为不 管是表格还是图纸,其中都包含了大量的、只有用户才能懂的术语。 当然,并不是说在问题定义阶段,这些图纸表格没有一点作用。对 一些关键性的语汇可以请用户讲清楚,这样有利于问题定义的准确 性。
快速原型(续)——类型之三
为了保证软件产品的质量,在总体设计和详细设计过程中,用 原型来验证总体结构或某些关键算法。如果设计方案验证完成后就 将原型丢弃,则构造原型的工具不必与目标系统的生产环境一致。 如果想把原型作为最终产品的一部分,原型和目标系统可使用同样 的程序设计语言。
快速原形的开发过程
问题定义的目的是要在短时间内,对用户的要求有一个比较准确的 估计,对要实现的系统规模做到胸中有数。但仅有这些还不够,还 要搞清用户不打算干什么,在这个系统中哪些内容不用实现。工作 的宗旨是搞清要做什么并划清要实现的系统的范围边界。
在完成问题定义的过程中,用户在一开始,可能会给你大堆大堆的 表格,因为他们可能认为只要把表格给你讲清楚,你就会对这个
系统定义与用户 需求分析
原型设计 编码
完善原 型
测试原 型
产品系统的设 计实现
第三课时
喷泉模型 软件重用模型
第一章第三课时
喷泉模型
基于喷泉模型,Hodge等人提出将软件开发过程
划分为概念模型分析、系统设计、对象设计与实现、
测试和系统组装集成等五个阶段,它也体现出分析
和设计之间的重叠 ①概念模型分析:这个阶段主
第11章_质量概念

对软件工程工作产品进行技术审查的成本。 数据收集和度量估算的成本。 测试和调试的成本。
质量成本
失效成本是那些如果在将产品发给客户之前或 之后没有错误就不会存在的费用。失效成本可分 为内部失效成本和外部失效成本。 内部失效成本发生在当你在发货之前发现错误 时,内部失效成本包括:
为纠正错误进行返工所需的成本。 返工时无意中产生副作用,必须对副作用加以缓解而发生的 成本。 组织为评估失效的模型而收集质量数据,由此发生的相关成 本。
质量成本
质量成本包括追求质量过程中或在履行质 量有关的活动中引起的费用以及质量不佳 引起的下游费用等所有费用。为了解这些 费用,一个组织必须收集度量数据,为目 前的质量成本提供一个基准,找到降低这 些成本的机会,并提供一个规范化的比对 依据。质量成本可分为预防成本、评估成 本和失效成本。
质量成本
ISO 9126质量因素(6个)
功能性:软件满足已确定要求的程度,由以下子属性表 征:适合性、准确性、互操作性、依从性和安全保密性。 可靠性:软件可用的时间长度,由以下子属性表征:成 熟性、容错性和易恢复性。 易用性:软件容易使用的程度,由以下子属性表征:易 理解性、易学习性和易操作性。 效率:软件优化使用系统资源的程度,由以下子属性表 征:时间特性和资源利用特性。 维护性:软件易于修复的程度,由以下子属性表征:易 分析性、易改变性、稳定性和易测试性。 可移植性:软件可以从一个环境移植到另一个环境的容 易程度,由以下子属性表征:适应性、易安装性、符合 性和易替换性。
Garvin的质量维度
耐久性。是否能够对软件进行维护或改正,而 不会粗心大意地产生料想不到的副作用?随着时 间的推移,变更会使错误率或可靠性变得更糟吗? 适用性。软件能在可接受的短时期内完成维护 和改正吗?技术支持人员能得到所需的所有信息 以进行变更和修正缺陷吗? 审美。美的东西具有某种优雅、特有的流畅和 醒目的外在,这些都是很难量化的,但显然是不 可缺少的。美的软件具有这些特征。 感知。在某些情况下,一些偏见将影响人们对 质量的感知。
软件项目管理ProjectPPT课件

自动化测试工具
自动化测试工具的定义
自动化测试工具是一种用于自动化测试的软件工具,它能够模拟手工测试用例的执行,提高测试效率和准确性。
常见的自动化测试工具
Selenium、Appium、Junit等是最为常见的自动化测试工具,它们提供了测试脚本编写、测试用例执行、测试报告 生成等功能,方便测试人员进行自动化测试。
常见的项目管理软件
Trello、Asana、Jira等是最为常见的项目管理软件,它们提供了任务管理、看板管理、甘 特图等功能,方便项目经理进行项目进度和资源的监控。
项目管理软件的应用
在软件项目中,团队成员可以通过项目管理软件来分配任务、跟踪进度、管理资源等操作 ,确保项目能够按时交付并满足质量要求。
成本增加。
04
05
缺乏有效的沟通机制,导致 项目团队对需求理解存在偏
差,影响项目质量。
案例三:高效的项目团队建设
总结词:高效的项目团队 是软件项目成功的关键因 素。
选拔具备专业技能和良好 沟通能力的团队成员,提 高团队整体素质。
详细描述
建立明确的职责分工和协 作机制,确保团队成ቤተ መጻሕፍቲ ባይዱ能 够高效协作。
THANKS FOR WATCHING
特点
软件项目具有明确的目标、时间限制 、资源限制、技术要求和多学科交叉 的特点,需要跨部门、跨领域的团队 协作。
软件项目管理的重要性
提高项目成功率
有效的项目管理能够降低项目风险,提高项 目成功率,避免资源浪费。
提升软件质量
通过项目管理,可以确保软件产品符合质量 要求,提高软件质量。
降低开发成本
合理的项目计划和资源分配可以降低开发成 本,提高项目经济效益。
看板等方式来管理项目进度,确保项目能够快速响应需求变化。
《软件工程与项目管理》课件_第5章

图5.6 信息内聚模块
(7) 功能内聚。若一个模块中各个部分都是为完成一项 具体功能而协同工作、紧密联系、不可分割的,则称该模块 为功能内聚模块。功能内聚模块是内聚性最强的模块。
2.耦合性 耦合性是对模块之间的相对独立性(互相连接的紧密程 度)的度量。它取决于各个模块之间接口的复杂程度、调用 模块的方式以及哪些信息通过接口。 一般模块之间可能的连接方式有七种,构成耦合性的七 种类型。不同类型耦合的强弱关系如图5.7所示。
析,确定系统具体的实施方案,然后进行结构设计,确定软件结构。 总体设计的一般步骤如下:
(1) 设计系统方案。 (2) 选取一组合理的方案。 (3) 推荐最佳实施方案。 (4) 功能分解。 (5) 设计软件结构。 (6) 设计数据库和文件结构。 (7) 制定测试计划。 (8) 编写概要设计文档。 (9) 审查与复审概要设计文档。
(5) 标记耦合。如果一组模块通过参数表传递记录信息, 则它们之间的耦合称为标记耦合。事实上,这组模块共享了 某一数据结构的子结构,而不是简单变量。这就要求这些模 块都必须清楚该记录的结构,并按结构要求对记录进行操作。
图5.9 控制耦合
(6) 数据耦合。如果一个模块访问另一个模块时,彼此 之间通过数据参数(不是控制参数、公共数据结构或外部变 量)来交换输入、输出信息,而且交换的信息仅限于数据, 则称这种耦合为数据耦合。数据耦合是松散的耦合,模块之 间的独立性比较强。
(2) 逻辑内聚。这种模块把几种相关的功能组合在一起, 每次被调用时,由传送给模块的控制型参数来确定该模块应 执行哪一种功能。逻辑内聚模块比巧合内聚模块的内聚程度 要高,因为它表明了各部分之间在功能上的相关关系。
(3) 时间内聚(经典内聚)。这种模块大多为多功能模块, 但要求模块的各个功能必须在同一时间段内执行,例如初始 化模块和终止模块。时间内聚模块比逻辑内聚模块的内聚程 度又稍高一些。在一般情况下,时间内聚模块各部分可以以 任意的顺序执行,所以它的内部逻辑更简单。
《软件工程实用教程》教学课件2-软件项目管理

需
系
求
统
分
分
析
析
师
师
软件架构设计师 数据库设计师 软件界面设计师
网络架构设计师
网络 工程师
实现阶段 软件开发工程师 编码程序员
质量保障 工程师
软件测试 工程师
产品发布工程师
项目经理
结束阶段
通过对一些知名企业的调研,在整个软件项目活动的五个阶段大致涵盖了14个职位 ; 项目经理、需求分析师、系统分析师、系统架构设计师、软件架构设计师、网络架构设计
抽象性 缺陷检测的困难性 高度的复杂性 缺乏统一规则
5
2. 软件项目管理的内容
什么是软件项目管理
软件项目管理是为了使软件项目能够按照预定的 成本、进度、质量顺利完成,而对成本、人员、 进度、质量、风险等进行分析和管理的活动。
软件项目管理的对象是软件工程项目,它所涉及 的范围覆盖了整个软件工程过程。
师、数据库设计师、软件界面设计师、软件工程师、编码程序员、网络工程师、软件测 试工程师、质量保障工程师及产品发布工程师;
IT组织管理
软件开发组织机构设置 组织机构的职责分工 软件开发项目组的角色
28
总结
了解 理解 掌握
风险管理中识别和应对风险的方法
项目组的组织方式及其特点 配置管理的内容和目的 项目计划的内容和方法 软件质量的属性有哪些
小组成员之间的通讯是平行的,如果小组有n个成员,则 可能的通讯信道为 n (n-1)/2条。
民主制程序员组通常采用非正式的组织方式,虽然名义上 有一个组长,但其与组内其它成员完成同样的任务。
由小组全体成员讨论协商决定应该完成的工作,并依据各 成员能力和经验分配适当的任务。
优点:
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件项目的规划 人员的组织管理 软件风险管理 软件配置管理
11.2 成本估算技术
成本估算是可行性分析的重要依据, 成本估算是可行性分析的重要依据 , 也是软件 管理的重要内容,直接影响到软件开发的风险. 管理的重要内容,直接影响到软件开发的风险. 软件开发成本主要是指软件开发过程中所花费 的工作量及相应的代价,即主要是人的劳动的消耗. 的工作量及相应的代价,即主要是人的劳动的消耗. 以软件计划,需求分析,设计,编码到测试的 以软件计划,需求分析,设计, 软件开发全过程所花费的代价为依据. 软件开发全过程所花费的代价为依据. 一个大型,复杂项目,由于其项目的度, 一个大型,复杂项目,由于其项目的度,成本 估算并不是一件简单的事,必须建立相应的估算模型, 估算并不是一件简单的事,必须建立相应的估算模型, 按照一定的方法,技术来进行估算. 按照一定的方法,技术来进行估算.
1977年由 年由Waiston 和 Felix 总结了 总结了IBM联合系统 年由 联合系统 分部( 60个项目的数据 分部 ( FSD) 负责的 60 个项目的数据 , 利用最小 ) 负责的60 个项目的数据, 二乘法拟合,得到如下估算公式: 二乘法拟合,得到如下估算公式: E=5.2*L 工 作 量: (PM) ) 项目持续时间: 项目持续时间: D=4.1*L (月) 人员需要量: 人员需要量: S=0.54*E (人) DOC=49*L (页) 文 档 数: 其中: 源代码行,以千行计. 其中:L _ 源代码行,以千行计.
嵌入型( 嵌入型(Embadded)
软件, 硬件关系紧密 , 操作有限制条件 , 对接口 , 数 软件 , 硬件关系紧密,操作有限制条件,对接口, 据结构,算法要求较高.如大型复杂的事务处理系统, 据结构,算法要求较高.如大型复杂的事务处理系统,大 超大型的操作系统,军事指挥系统, 型,超大型的操作系统,军事指挥系统,航天控制系统等
11.1.2 项目管理的主要活动 11.
包括: 包括: 可行性分析 软件成本估算 软件计划
软件项目的规划 人员的组织管理 软件风险管理 软件配置管理
11.1.2 项目管理的主要活动 11.
软件项目的规划 人员的组织管理 软件风险管理 软件配置管理
包括: 包括: 人员配备原则 人员配备模式 软件团队建设 软件项目沟通活动
11.2 成本估算技术
一,影响成本估算的因素 1. 软件人员的业务水平 2. 软件产品的规模及复杂度 规模: 小型,中型 规模:按YOURDON分类法分为 超小型 小型 中型 大 分类法分为 超小型,小型 中型,大 超大型,极大型 型,超大型 极大型. 超大型 极大型. 复杂度:应用程序, 实用程序, 复杂度:应用程序, 实用程序,系统程序 低 高
IBM估算模型是一种静态单变量模型,它利用已估算 估算模型是一种静态单变量模型, 估算模型是一种静态单变量模型 的结果,如源代码行,来估算各种资源的需求量. 的结果,如源代码行,来估算各种资源的需求量. 估算模型不是一种通用模型, 但 IBM 估算模型不是一种通用模型 ,因此应用中应 根据具体实际情况调整模型中的参数. 根据具体实际情况调整模型中的参数.
即源代码行估算模型(Deiphi技术) 源代码行估算模型 Deiphi技术) 估算模型( 技术 Rand公司提出的 Deiphi技术 是由n 公司提出的Deiphi 技术, 由 Rand 公司提出的 Deiphi 技术 , 是由 n 位专家进行成本 估算.每位专家根据系统规格说明书,反复讨论给出a 估算.每位专家根据系统规格说明书,反复讨论给出ai, bi 的值,并按照下式反复估算源代码 期望值Li 源代码的 及 mi的值,并按照下式反复估算源代码的期望值Li ,期望=
1 n
n
∑L
i=1
i
其中: 其中:ai — 估计的最小行数 mi — 最可能的行数
bi — 估计的最大行数
将估算的源代码行数, 将估算的源代码行数,乘以根据经验推算的每行源代 码所需成本,即为该软件的成本. 码所需成本,即为该软件的成本.
11. 11.2.2 IBM 估算模型
COCOMO模型(Constructive Cost Model) 模型( 模型 ) 公司开发, 由 TRW公司开发 , 是由 公司开发 是由Boehm提出的结构型成本 提出的结构型成本 估算模型,其特点是精确,易用. 估算模型,其特点是精确,易用. 是一种层次模型,按照其祥细程度分为三级: 是一种层次模型,按照其祥细程度分为三级: 即基本的COCOMO模型,中间的 模型, 即基本的 模型 中间的COCOMO模型和 模型和 详细的COCOMO模型. 模型. 详细的 模型 该模型主要对工作量MM ( 单位: 该模型主要对工作量 MM( 单位 : PM) 和进 MM ) 进行估算. 度 TDEP( 单位 : 月 ) 进行估算 . 模型中考虑到估 ( 单位: 算量与开发环境有关,将开发项目分为三类: 算量与开发环境有关,将开发项目分为三类:
11.2 成本估算技术
二.软件成本的估算量 源代码行(LOC) 源代码行(LOC) 机器指令行/非机器语言的执行步 机器指令行/ 开发工作量 人-月(PM) 人-年(PY) 人-日(PD) 月 ) 年 ) 日 ) 软件生产率 LOG/PM ¥/LOC ¥/PM 软件开发时间
11.2.1 专家估算模型
11.1.2 项目管理的主要活动 11.
软件项目的规划 人员的组织管理 软件风险管理 软件配置管理
包括: 包括: 风险识别 风险分析 风险规划 风险监控
11.1.2 项目管理的主要活动 11.
是为了有效地控制 和管理软件开发过 程中的变化, 程中的变化,进行 标识, 标识,组织和控制 修改的技术. 修改的技术. 配置管理活动: 配置管理活动: 配置项的标识 版本管理 系统构建 变更控制
11.1.1 软件项目管理的任务 11.
一,软件项目管理的"4P" 软件项目管理的"4P"
过程 (process)
工具 (tools)
技术集成 项目 (Project) 结果 产品 (Product) 人员 people) (people) 参与
自动化
11.1.1 软件项目管理的任务 11.
二,软件项目管理过程 软件项目管理, 软件项目管理,是对整个软件生存期的所有活动 进行管理.主要过程包括: 进行管理.主要过程包括: 1.项目启动 1.项目启动 确定系统范围,组建项目团队,建立项目环境. 确定系统范围,组建项目团队,建立项目环境. 2.项目规划 2.项目规划 确定项目活动,项目成本估算, 确定项目活动,项目成本估算,制定进度计划 3.项目实施 3.项目实施 监控项目执行,管理项目风险, 监控项目执行,管理项目风险,控制项目变更 4.项目收尾 4.项目收尾 项目验收,软件安装培训, 项目验收,软件安装培训,项目总结
11.2.3 Putnam 估算模型 估算模型
K= L
3 3 4
L= Ck K
1 3
Ck t d
系统定义 功能设计规格说明 功能设计 规格说明
td
4
3
系统开发 设计与编码
运行与维护
系统定义
测试与确认
安装 时间
大型项目的工作量分布情况
9.5.5 COCOMO模型
11. 11.2.4 COCOMO模型 COCOMO模型
不可见性 不确定性 人员流动性
11.1 软件项目管理概述
随着软件的规模和复杂度的不断增大, 随着软件的规模和复杂度的不断增大 , 开发人 员的增加以及开发时间的增长, 员的增加以及开发时间的增长 , 这些都增加了软件 项目管理的难度. 项目管理的难度. 例如: 2000的开发 例如:Windows 2000的开发 是微软公司历史上 最艰巨的任务,仅核心部门的的成员就有2500 2500人 最艰巨的任务,仅核心部门的的成员就有2500人, 测试用的代码就有1000万行, 1000万行 测试用的代码就有1000万行,测试中所用到的脚本 程序就有6500 6500种 .象规模如此之大的软件系统, 程序就有6500种….象规模如此之大的软件系统, 如果没有科学的,规范的,有效的管理, 如果没有科学的,规范的,有效的管理,是不可能 成功的.因此软件项目管理成为软件工程的重要研 成功的.因此软件项目管理成为软件工程的重要研 究内容之一. 究内容之一.
11.2.3 Putnam 估算模型 估算模型
Putnam 估算 模型 是一种动态多变量模型 , 是 估算模型是一种动态多变量模型, 模型是一种动态多变量模型 根据一些大型项目中工作量的分布情况推导出来的. 根据一些大型项目中工作量的分布情况推导出来的 .
L K=
3
Ck 3 t d
L= CkK
4
1 3
总体类型 组织型 半独立型 嵌入型 工作量 MM=10.4(KLOG)1.05 ( ) MM=3.0(KLOG)1.12 ( ) MM=3.6(KLOG)1.20 ( ) 进度 TDEV=10.5(MM)0.38 ( ) TDEV=10.5(MM)0.35 ( ) TDEV=10.5(MM)0.32 ( )
11
第十一章
软件项目管理
11.1 软件项目管理概述
项目管理是广泛应用于各种工程, 项目管理是广泛应用于各种工程,金融等技术 管理过程,管理的好坏决定了工程的成败. 管理过程,管理的好坏决定了工程的成败. 软件及IT 行业, 尤其是软件产品的特殊性, 软件及 IT 行业 , 尤其是软件产品的特殊性 , 软件项目管理对于保证软件产品的质量具有极为重 要的作用,是决定一个产品或企业能否成功的最重 要的作用, 要的指标. 要的指标.
3.开发所需时间
对确定规模,复杂度的软件存在一个"最佳开发时间" 对确定规模,复杂度的软件存在一个"最佳开发时间". 4.软件开发技术水平 4.软件开发技术水平 指开发方法,工具,语言等,技术水平高,效率高. 指开发方法,工具,语言等,技术水平高,效率高. 5.软件可靠性要求 可靠性要求愈高,成本愈高. 5.软件可靠性要求 — 可靠性要求愈高,成本愈高.