最新软件工程导论第九章-项目计划与课件ppt
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
9.1 软件项目特点及软件管理功能 9.1.3 确定软件项目的工作范围
软件计划的第一个任务就是确定软 件的工作范围,即软件的用途及对 软件的要求。其中主要包括软件的 功能、性能、接口和可靠性等四个 方面。计划人员必须使用管理人员 和技术人员都能理解的无二义性的 语言来描述工作范围。
9.2 确定软硬件资源
9.4 成本估计及控制 9.4.2 专家估算法
Deiphi技术的步骤: 3.各位专家对该软件提出三个规模的估算值,
即: ai——该软件可能的最小规模(最少原代码行
数); mi——该软件最可能的规模(最可能的原代
码行数); bi——该软件可能的最大规模(最多原代码行
数)。 无记名地填写表格,并说明做此估算的理由。
9.4 成本估计及控制 9.4.2 专家估算法
Deiphi技术的步骤: 4.组织者对各位专家在表中填写的估算值进
行综合和分类 5. 组织者召集会议,请专家们对其估计值有
很大变动之处进行讨论。专家对此估计值 另做一次估算。 6. 在综合专家估算结果的基础上,组织专家 再次无记名地填写表格。
9.4 成本估计及控制 9.4.2 成本估算模型
9.4 成本估计及控制 9.4.1 软件开发成本估计方法
2.自底向上的估计法 这种方法是把待开发的软件细分, 直到每一个子任务都已经明确所需 要的开发工作量,然后把它们加起 来,得到软件开发的总工作量。
9.4 成本估计及控制 9.4.1 软件开发成本估计方法
3.差别估计法 这种方法综合了上述两种方法的优 点,是把待开发的软件项目与已完 成的软件项目进行比较,不同的部 分则采用相应的方法进行估算。
9.2 确定软硬件资源 9.2.3 软件
1.支持软件 包括范围广泛的各种工具。最基础的 支持软件是操作系统、编译原理、数 据库和图形包等,它们是开发人员的 必备工具。在软件生存期的各阶段还 要有其他相应的支持软件。
2.实用软件 相当于软件库,可以结合到新的系统 中,如各种标准子程序等。
9.3 人员的计划和组织
9.2 确定软硬件资源 9.2.2 硬件
硬件资源包括以下三类 : 1.宿主机 宿主机是指在软件开发阶段使用的计算
机和有关外部设备。
2.目标机 运行所开发软件的计算机叫目标机,其
中也包括有关的外部设备。
3.其他硬件设备 在进行专门软件开发时,有时需要某些
特殊的硬件资源,如开发过程控制软 件时所需的A/D,D/A等专用设备。
9.4 成本估计及控制
9.4.1 软件开发成本估计方法 9.4.2 专家估算法 9.4.2 成本估算模型
9.4 成本估计及控制 9.4.1 软件开发成本估计方法
1.自顶向下的估算方法 这种方法是从项目的整体出发,进 行类推。即估计人员根据已完成项 目所耗费的总成本(或总工作量), 推算将要开发的软件的总成本(或 总工作量),然后按比例将它分配 到各开发任务中去,再检验它是否 能满足要求。
9.4 成本估计及控制 9.4.2 专家估算法
专家估算法是指由多位专家进行成 本估算。避免单独一位专家可能的 偏见。有多种方法把这些估算值合 成一个估算值。
9.4 成本估计及控制 9.4.2 专家估算法
Deiphi技术的步骤: 1.组织者发给每位专家一份软件系统的规格
说明书(略去名称和单位)和一张记录估算 值的表格,请他们进行估算。 2. 专家详细研究软件规格说明书的内容。然 后组织者召集小组会议,在会上,专家们与 组织者一起对估算问题进行讨论。
软件工程导论第九章-项目计 划与管理
9.1 软件项目特点 及软件管理功能
9.1.1 软件项目的特点 9.1.2 软件管理的功能 9.1.3 确定软件项目的工作范围
9.1 软件项目特点及软件管理功能 9.1.1 软件项目的特点
软件项目的特点: 1.智力密集,可见性差。软件工程过
程充满了大量高强度的脑力劳动。 软件开发的成果是不可见的逻辑实 体,软件产品的质量难以用简单的 尺度加以度量。对于不深入掌握软 件知识或缺乏软件开发实践经验的 人员,是不可能做好软件管理工作 的。
9.3 人员的计划和组织
• 正式的小组 对于一个需要n个人k年完成的软件项目 ,
应将n个人被组成k个小组,每个小组分 配一个或多个功能,并有具体组织,协 调工作由小组和软件主管共同进行。 • 主程序员小组 组的核心由一位高级工程师(主程序 员)、二至五位技术人员和一位后备工 程师组成。主程序员小组的主要目标是 发挥集体力量。
1. IBM模型 2.COCOMO模型 3.Balley-Basili原模型 4.Schneider模型
9.5 进度计划
9.5.1 软件工作的特殊性 9.5.2 各阶段工作量的分配 9.5.3 制定开发进度
9.5 进度计划 9.5.1 软件工作的特殊性
软件产品是逻辑产品,当几个人共同 完成任务时,人与人之间就有一个思 想交流的问题,称之为通信关系。通 信是要付出代价的,不只是要花时间, 同时由于通信中的疏忽常常会使错误 增加。
ห้องสมุดไป่ตู้
9.1 软件项目特点及软件管理功能 9.1.1 软件项目的特点
软件项目的特点:
5.软件开发工作渗透了人的因素。为 高质量地完成软件项目,不仅需要 软件人员具有一定的技术水平,而 且还要求他们具有良好的心理素质。 软件人员的情绪和工作环境对他们 的工作有很大影响。与其他行业相 比,这一特点十分突出,必须给予 足够的重视。
9.2.1 人力资源 9.2.2 硬件
9.2 确定软硬件资源 9.2.1 人力资源
• 在考虑各种软件开发资源时,人是 最重要的资源。在安排开发活动时 必须考虑人员的技术水平、专业、 人数、以及在开发过程各阶段中对 各种人员的需要。
• 计划人员首先估算范围并选择为完 成功能开发工作所需要的技能,还 要在组织状况和专业两方面作出安 排。
9.1 软件项目特点及软件管理功能 9.1.2 软件管理的功能
软件管理的主要功能包括以下四方面: 1.制定计划:规定待完成的任务、要
求、资源、人力和进度等。 2.建立项目组织:为实施计划,保证
任务的完成,需要建立分工明确的 责任机构。 3.配备人员:任用各种层次的技术人 员和管理人员。 4.指导:鼓励和动员软件人员完成所 分配的工作。