第十章 管理技术
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Gantt图(横道图)
时间 (小时)
作业
2
4
6
8
10 12 14
16
182022刮旧漆刷新漆清理
旧木板房刷漆工程的Gantt图
Gantt图(横道图)
Gantt图(横道图)的三个主要缺点: • 不能现实地描绘各项作业彼此间的依赖关系; • 进度计划的关键部分不明确,难于判定哪些部分应当 是主攻和主控的对象; • 计划中有潜力的部分及潜力的大小不明确,往往造成 潜力的浪费。
人员组织
传统的管理结构是层次结构,在层次结构内,每 一级人员向其上级报告工作并且管理下一级的人员。
软件 经理 审查 小组 第1组 项目 经理1 第2组 第3组 项目 经理2 第1组 第2组 项目 经理3 第1组 第2组
程序设计小组的组织
• 程序设计小组的人数不能太多,否则组员间彼此通 信的时间将多余程序设计时间。
最 迟 时 刻
3 0 2 2 1 2 0 (0) 2
持 续 时 间 机 动 时 间
6
6
12 12 15 9 20
10
21 (0)
11
23
6 1 12 4 6 (11) 7 18
机动时间
一个作业可以有的全部机动时间等于它的结束时间 的最迟时刻减去它的开始时间的最早时刻,再减去这个 作业的持续时间: 机动时间 = (LET)结束 – (EET)开始 – 持续时间
软件工程管理的特点
• • • • • • • 软件产品的抽象性 软件产品的严密性 软件产品的“一次性” 软件产品的智力性 软件产品的持久性 软件产品难以度量 软件产品易出错
从用户到系统分析员的信息转移 从思维到文档的信息转移 从文档到思维的信息转移 •软件产品必须维护
软件工程的进度计划
管理复杂的工程项目非常困难,最好的办法是把它 分解成一系列比较容易管理的子任务。 通常的做法是把工程项目分解成许多逻辑步骤(作 业),然后安排这些作业的顺序,确定每项作业需要用 的时间,以及作业开始和终止的时间。这也就是制定进 度计划的任务。 制定作业计划所使用的图形工具: Gantt图(横道图) 工程网络
小结
• • • • • •
软件过程 软件工程管理的特点 进度计划 人员组织 质量保证 项目计划
质量保证
软件质量 可理解性 可维护性 灵活性 可测试性
产品运行
可移植性 可再用性 互运行性
正确性 健壮性 效率 完整性 可用性 风险
质量保证
审查 是在软件生命周期每个阶段结束之前,都正式 使用结束标准对该阶段生产出的软件配置成分进行严格的 技术审查。
审查步骤:
• 计划: 组织审查组,分发材料,安排日程等; • 概貌介绍:当项目复杂庞大时,可考虑由作者介绍概貌; • 准备: 评审员阅读材料取得有关项目的知识; • 评审会: 目的是发现和记录错误,通常每次会议不超过 90分钟; • 返工: 作者修正已经发现的问题; • 复查: 判断返工是否真正解决了问题。
主程序员组
采用主程序员组有以下几点考虑:
• • • •
软件开发人员多数比较缺乏经验; 程序设计过程中有许多事务性的工作; 多渠道通信很费时间,将降低程序员的生产效率; 主要目的是提高生产率。
主程序员组
主程序员的核心组成: • 主程序员是经验丰富能力强的高级程序员; • 辅助程序员协助主程序员工作并且在必要时能代替主 程序员; • 程序管理员完成和项目有关的全部事务性工作。
项目计 划
项目报告通常包括:在这段时间内已经完成的工作; 下阶段计划要完成的工作;问题范围;到目前为止已经用 掉的成本;项目预算执行情况及其它有关的信息。
变动控制
任何软件开发都是迭代过程,也就是说,在设计软 件时会发现需求说明中的问题,在实现过程中又会暴露 出设计中的错误,如此等等。 变动可以分为两类: • 为了改正小错误需要的变动; • 为了增加和删掉某些功能,或者为了改变完成某个功 能的方法而需要的变动。
质量保证
审查和管理复审 测试
• 测试计划:确定测试范围、方法和需要的资源等; • 测试过程:详细描述和每个测试方案有关的测试步骤 和数据; • 测试结果:把每次测试运行的结果归入文档,如果运 行出错,则应产生问题报告,并且必须通 过调试解决所发现的问题。
项目计 划
项目计划包括以下主要内容:
• • • • • • • • • • • 概述 阶段计划 组织计划 测试计划 变动控制计划 文档计划 培训计划 复审和报告计划 安装和运行计划 资源和配置计划 索引
工程网络
工程网络是制定进度计划是另一种常用的图形工 具,它同样能描绘任务分解情况以及每项作业的开始 事件和结束时间,此外,它还显示地描绘各个作业彼 此间的依赖关系。
工程网络
5 3 1 2 4 6 9 8 1 0 11
7
估算进度
8 5 11 6 15 8 15 21 2 23
事 件 号
最 早 时 间
• 系统的总体设计应该能够保证各个小组负责开发的 各部分之间的接口是良好定义的,并且是尽可能简单的。
• 小型的程序设计小组通常改用非正式的组织方式。 在这样的小组中,由全体讨论决定应该完成的工作,并 且根据每个人的能力和经验分配适当的任务。
程序设计小组的组织
程序设计小组的组织这种非正式的组织方式也有严重 缺点: 由于没有明确的权威指导开发工程的进行,组员间将 缺乏必要的协调,最终可能导致工程失败。
第十三章 管理技术
• • • • • •
软件过程 软件工程管理的特点 进度计划 人员组织 质量保证 项目计划
软 件 过 程
软件过程 是软件生存周期中的一系列相关(软件生产 和管理方面)的过程。 软件过程分类 基本过程:与软件生产直接相关的过程。获取过程, 供应过程,开发过程,运行维护过程; • 支持过程:有关方按其支持目标所从事的一系列相关 活动。文档过程,配置管理过程,质量保 证过程,验证确认过程,评审等过程; • 组织过程:与软件生产组织有关的过程。管理过程, 基础设施过程,改进过程,培训过程。