第5章软件项目计划 软件项目计划是软件工程活动的开始。首先是 估算,估算是对未来的一种预测,具有不确 定性。 但我们有许多办法和技术对工作量和时间进行 估算,它是其他一切活动开始的基础。项目 计划是通往成功的行车图,没有它我们会迷 失方向。 51对估算的观察 作为一个项目管理者,他首先就应具有在 未来还是一团迷雾时对项目的估算能力
第5章 软件项目计划 软件项目计划是软件工程活动的开始。首先是 估算,估算是对未来的一种预测,具有不确 定性。 但我们有许多办法和技术对工作量和时间进行 估算,它是其他一切活动开始的基础。项目 计划是通往成功的行车图,没有它我们会迷 失方向。 5.1 对估算的观察 作为一个项目管理者,他首先就应具有在 未来还是一团迷雾时对项目的估算能力
第5章软件项目计划 二估算一个软件工作的资源、成本、进度。这就 需要了解以前的有用信息。估算具有与生俱 来的风险。 项目的复杂性对计划中固有的不确定性产生重 大影响。不过,复杂性是相对的。例如实时 应用相对一个批处理小组来说是复杂的,但 对一个经常开发高速处理应用的软件项目组 而言,可能被认为是小菜一碟。目前也有 些软件用于对复杂性进行测量
第5章 软件项目计划 估算一个软件工作的资源、成本、进度。这就 需要了解以前的有用信息。估算具有与生俱 来的风险。 项目的复杂性对计划中固有的不确定性产生重 大影响。不过,复杂性是相对的。例如实时 应用相对一个批处理小组来说是复杂的,但 对一个经常开发高速处理应用的软件项目组 而言,可能被认为是小菜一碟。目前也有一 些软件用于对复杂性进行测量
第5章软件项目计划 项目规模也是影响估算准确性的重要因素。 随着规模的增长,软件中各个元素之间 的依赖性也迅速增长,问题分解后,元 素仍然很大。所有可能出错的地方都会 岀错。结构不确定性的程度也会对佔算 的风险产生影响。结构是指:需求能被 确定的程度,功能能被分解的容易程度, 以及必须要加工的信息的层次性
第5章 软件项目计划 项目规模也是影响估算准确性的重要因素。 随着规模的增长,软件中各个元素之间 的依赖性也迅速增长,问题分解后,元 素仍然很大。所有可能出错的地方都会 出错。结构不确定性的程度也会对估算 的风险产生影响。结构是指:需求能被 确定的程度,功能能被分解的容易程度, 以及必须要加工的信息的层次性
第5章软件项目计划 历史信息的可用程度也会对估算的风险产 生影响。不记得过去的人必然会重蹈覆 辙 风险是由为资源、成本以及进度建立的定 量估算中存在的不确定性来测量的 〓应该满足于事物的本性所能容许的精确度 当只能近似于真理时,就不要去追求绝 对的准确
第5章 软件项目计划 历史信息的可用程度也会对估算的风险产 生影响。不记得过去的人必然会重蹈覆 辙。 风险是由为资源、成本以及进度建立的定 量估算中存在的不确定性来测量的。 应该满足于事物的本性所能容许的精确度, 当只能近似于真理时,就不要去追求绝 对的准确
第5章软件项目计划 52项目计划目标 软件项目计划目标是提供一个框架,使得管 理者能够对资源、成本及进度进行合理的估 算。估算是在项目开始时在一个限定的时间 内做的,必然会随着项目的进展不断更新 53软件范围 软件开发的第一个活动就是确定软件的范围 软件范围确定了功能性能、约束条件、接口 及可靠性。约束条件标识了硬件,可用内存 等的限制
第5章 软件项目计划 5.2 项目计划目标 软件项目计划目标是提供一个框架,使得管 理者能够对资源、成本及进度进行合理的估 算。估算是在项目开始时在一个限定的时间 内做的,必然会随着项目的进展不断更新。 5.3 软件范围 软件开发的第一个活动就是确定软件的范围。 软件范围确定了功能、性能、约束条件、接口 及可靠性。约束条件标识了硬件,可用内存 等的限制
第5章软件项目计划 5.3.1获取定义软件范围所需的信息。 在软件项目开始前,事情总是有某 种程度的模糊不清。用户与开发者通过 会议和访谈建立沟通。但沟通的建立是 需要一个过程的,开始时双方都不知道 说什么
第5章 软件项目计划 5.3.1 获取定义软件范围所需的信息。 在软件项目开始前,事情总是有某 种程度的模糊不清。用户与开发者通过 会议和访谈建立沟通。但沟通的建立是 需要一个过程的,开始时双方都不知道 说什么
第5章软件项目计划 5.32一个范围定义的例子 与用户通信使得我们可以定义数据、功能、必 须实现的行为、性能、约束及相关信息、。如, 假定要开发驱动一个传送带分类系统的软件, 范围说明如下 传送带分类系统(CLSS)将沿传送带移动的盒 子进行分类。每一个盒子由一个包含零件号 的条形码来标识,并在传送带末端分送到六 个箱子中的一个。这些盒子要通过一个由条 形码阅读器及一台PC所组成的分类站。分类 站的PC连接到一个分流器上,他把盒子分送
第5章 软件项目计划 5.3.2 一个范围定义的例子 与用户通信使得我们可以定义数据、功能、必 须实现的行为、性能、约束及相关信息。如, 假定要开发驱动一个传送带分类系统的软件, 范围说明如下: 传送带分类系统(CLSS)将沿传送带移动的盒 子进行分类。每一个盒子由一个包含零件号 的条形码来标识,并在传送带末端分送到六 个箱子中的一个。这些盒子要通过一个由条 形码阅读器及一台PC所组成的分类站。分类 站的PC 连接到一个分流器上,他把盒子分送
第5章软件项目计划 到不同的箱子中。盒子以随机的方式通过 且其间的距离相同。传送带以每分钟五 分钟的速度移动
第5章 软件项目计划 到不同的箱子中。盒子以随机的方式通过, 且其间的距离相同。传送带以每分钟五 分钟的速度移动
第5章软件项目计划 传送带方向 箱子 分流器 分类站
第5章 软件项目计划 分流器 分类站 1 2 3 4 5 6 箱子 传送带方向
第5章软件项目计划 项目计划者检査范围说明,并提炼出所有重要 的检查功能,也就是功能分解。 读条形码作为输入; 读脉冲流速计: 解零件编码数据 →·检索数据库; 确定合适的箱子 产生分流器的控制信号; 保存盒子目的地记录
第5章 软件项目计划 项目计划者检查范围说明,并提炼出所有重要 的检查功能,也就是功能分解。 • 读条形码作为输入; • 读脉冲流速计; • 解零件编码数据; • 检索数据库; • 确定合适的箱子; • 产生分流器的控制信号; • 保存盒子目的地记录