2007秋_软工_03第二章项目管理01
软件项目管理教程(二)
信息发布
PPT文档演模板
软件项目管理教程(二)
绩效报告
PPT文档演模板
软件项目管理教程(二)
干系人管理
PPT文档演模板
软件项目管理教程(二)
采购计划
PPT文档演模板
软件项目管理教程(二)
发包计划
PPT文档演模板
软件项目管理教程(二)
询价
PPT文档演模板
软件项目管理教程(二)
供应商选择
PPT文档演模板
PPT文档演模板
软件项目管理教程(二)
整体变更控制
PPT文档演模板
软件项目管理教程(二)
项目收尾
PPT文档演模板
软件项目管理教程(二)
范围计划
PPT文档演模板
软件项目管理教程(二)
范围定义
PPT文档演模板
软件项目管理教程(二)
创建WBS
PPT文档演模板
软件项目管理教程(二)
范围验证
PPT文档演模板
软件项目管理教程(二)
范围控制
PPT文档演模板
软件项目管理教程(二)
活动定义
PPT文档演模板
软件项目管理教程(二)
活动排序
PPT文档演模板
软件项目管理教程(二)
活动资源估计
PPT文档演模板
软件项目管理教程(二)
活动持续时间估计
PPT文档演模板
软件项目管理教程(二)
制订进度计划
PPT文档演模板
软件项目管理教程(二)
PPT文档演模板
2020/12/19
软件项目管理教程(二)
制定项目章程
PPT文档演模板
软件项目管理教程(二)
制定项目初始范围
PPT文档演模板
软件工程 第2章 项目管理基础知识
2.3 项目管理知识体系
项目综合管理 项目范围管理 项目时间管理 项目成本管理 项目质量管理 项目人力资源管理 项目沟通管理 项目风险管理 项目采购管理
8
2.4 小节
项目管理就是将项目管理知识、技能、工具和技 术应用于项目活动之中,可以将软件项目管理活 动视做一系列相互联系的过程。 项目管理过程可归纳为5个过程组:启动过程组、 规划过程组、实施过程组、监控过程组与收尾过 程组。 项目管理包括9个知识领域:项目综合管理、项 目范围管理、项目时间管理、项目成本管理、项 目质量管理、项目人力资源管理、项目沟通管理、 9 项目风险管理与项目采购管理。
2.2 项目管理过程与过程组
2.2.3 项目管理过程的裁剪
不同类型的软件项目应选用不同的项目管理过程 不同阶段的软件项目应选用不同的项目管理过程 不同软件项目的管理过程会有不同的具体过程 不同软件项目的管理过程会有不同的具体过程顺序 不同软件项目的管理过程会有不同的条件与约束 不同软件项目的管理过程会有不同的简化程度 不同软件项目的管理过程需要不同的集成程度 项目变更会使项目管理过程随之变化 7
21世纪高等院校计算机系列教材
软件系统分析与设计
殷建民 主编
刘东瑰 赵良军 欧阳默 副主编
中国水利水电出版社
1
第2章 项目管理基础知识
项目与项目管理 项目管理过程与过程组 项目管理知识体系
2
2.1 项目与项目管理
2.1.1 项目
项目是在特定条件下、具有特定目标的 一次性任务,是在一定时间内、满足一 系列特定目标的多项相关工作的总和。 项目的临时性 项目的独特性 项目的渐进性
3
2.1 项目与项目管理
2.1.2 项目管理
项目管理就是将各种知识、技能、工具和 技术应用于项目之中,以达到项目的要求。 项目范围 项目时间 项目成本 项目质量
软件工程项目管理入门教程
软件工程项目管理入门教程第一章:软件工程项目管理概述1.1 软件工程项目管理的定义软件工程项目管理是指对软件开发项目的规划、组织、协调和控制,以确保项目能够按时、按质、按量地交付,并满足用户需求和预期目标。
1.2 软件工程项目管理的重要性软件工程项目管理的重要性在于确保项目的成功交付,有效管理资源和风险,提高项目的质量和效率。
它能够帮助项目团队增强协作能力,提高沟通效率,降低项目失败风险。
1.3 软件工程项目管理的基本原理软件工程项目管理的基本原理包括项目目标明确、需求变更管理、计划和进度管理、团队协作、质量管理和风险管理等。
第二章:软件工程项目管理流程2.1 项目启动阶段项目启动阶段是确定项目目标和范围,明确项目可行性,并启动项目组织和资源准备工作的阶段。
2.2 项目规划阶段项目规划阶段是制定详细的项目计划和进度安排,确定项目资源和风险管理策略,以及定义项目团队的组织结构和角色职责的阶段。
2.3 项目执行阶段项目执行阶段是按照项目计划进行工作的阶段,包括需求分析、系统设计、编码、测试、部署等活动,并进行项目进度和质量的监控和控制。
2.4 项目收尾阶段项目收尾阶段是项目的总结和交付阶段,包括项目验收、用户培训、文档归档、项目经验总结等活动。
第三章:软件工程项目管理工具3.1 项目管理软件项目管理软件是指用于辅助项目管理的计划、进度、资源和风险管理的工具,常用的有Microsoft Project、JIRA、Redmine等。
3.2 版本控制工具版本控制工具是用于管理软件开发过程中的代码版本和变更,确保项目代码的一致性和可追溯性,常用的有Git、SVN等。
3.3 缺陷管理工具缺陷管理工具用于跟踪和管理软件开发过程中的缺陷和问题,提供问题报告、分配和解决的功能,常用的有Bugzilla、JIRA等。
3.4 团队协作工具团队协作工具用于促进项目团队之间的交流和协作,提供在线文档编辑、讨论、任务分配等功能,常用的有Microsoft Teams、Slack等。
软件工程实用教程2-软件项目管理
项目组的组织原则
软件开发小组的规模不宜太大,人数不能太多, 一般3-5人左右为宜。 切忌在开发过程中增加人员,这将使人员之间的 联系增多,造成通信成本的增加而导致效率降低 。
项目组的组织方式
民主制程序员组 主程序员组 现代程序员组
民主程序员组
小组成员完全平等,享有充分民主,通过协商做出决策。 小组成员之间的通讯是平行的,如果小组有n个成员,则 可能的通讯信道为 n (n-1)/2条。 民主制程序员组通常采用非正式的组织方式,虽然名义上 有一个组长,但其与组内其它成员完成同样的任务。 由小组全体成员讨论协商决定应该完成的工作,并依据各 成员能力和经验分配适当的任务。
项目管理的过程
启动软件项目 制订项目计划 评审项目计划 编写管理文档
8
项目管理的内容
项目的范围管理 时间管理 成本管理 质量管理 人员的组织管理 沟通管理 风险管理 采购管理和集成管理
9
任务2 对项目进行计划
一个软件项目如果要进入到系统实施阶段,需要做
软件工程
第二章 软件项目管理
第二章 软件项目管理
了解软件项目管理的内容
软件项目产品的特点 软件项目管理的内容 IT项目估算、计划和进度管理 组织管理
对项目进行计划
任务1 了解软件项目管理的内容
软件管理的目标就是保证软件项目的成功,
就是保证在规定的时间内、预算计划内开发 出令用户满意的软件产品。软件开发的所有 成员都紧紧围绕这一个目标进行工作。 那么,针对上一章选取的软件项目进行项目 管理,应该包含哪些具体的内容呢?
主程序员
软件工程中的软件项目管理教程1
软件项目管理的基本原则
沟通
建立良好的沟通渠道 及时沟通项目进展
ห้องสมุดไป่ตู้
规划
制定详细的项目计划 分解项目任务
执行
按计划执行任务 保证质量和进度
监控
监控项目进度和成本 及时发现问题并解决
软件项目管理的挑战
时间压力
严格的交付期限要 求
资源限制
人力、物力、时间 等资源受限
需求变更
客户需求频繁变化
沟通障碍
目管理中不可或缺的一环。
文档归档
整理文档
对项目相关文档进行分类整理,确保文档的秩序和易查性。
归档存储
将整理好的文档进行归档存储,以备日后项目查询和复盘之需。
文档备份
对重要文档进行备份,保障数据安全和项目信息的完整性。
●06
第六章 软件项目总结与回 顾
项目总结与回顾
在软件项目管理中,总结是非常重要的环节,通过对 项目成功和失败原因的分析,可以总结出经验教训, 为未来项目提供借鉴。项目回顾则是对项目整体进行 评价,包括绩效、经验积累等。未来展望则是为了制 定下一步计划,提出改进建议,展望未来软件项目管
成项目目标。
●04
第四章 软件项目监控
监控进度
在软件项目管理中,监控进度是至关重要的一环。通 过监控项目的实际进度并与计划进度进行比较,可以 及时发现问题并做出调整,确保项目按照计划顺利进
行。
质量监控
质量检查
检查项目成果质量
满足客户需求
保证交付的产品能 够满足客户需求
评估成果
评估项目交付成果 符合质量标准
变更管理
调整计划
合理安排工作顺序
控制范围
确保项目目标不失控
第2章 软件项目管理基础
3. 管理过程 3.1 管理目标和优先级 3.2 假设,依赖和限制 3.3 风险管理 3.4 监督和控制机制 4. 技术过程 4.1 方法,工具和技术 4.2 软件文档 4.3 项目支持功能 5. 工作元素,日程表和 预算
第2章 软件项目管理基础
2.3 项目管理活动
n 在项目定义期间,项目经理的主要活动是定义 组织结构和定义工作产品、任务、时间表和角 色。
n 发展 ➢ 1986年11月,美国卡内基.梅隆大学,启动 ➢ 1991年8月,公开发布CMM v1.0 ➢ 1993年2月,CMM 1.1 ➢ 近几年来,CMM又推出了2.0 版本,同时进入了 ISO 体系,称为 ISO/IEC15504 或SPICE.
第2章 软件项目管理基础
2.7 CMM基本概念
n 项目总结:项目经理,团队领导和客户正式开始 启动项目。
第2章 软件项目管理基础
n 4、项目稳定状态阶段:团队领导要负责跟踪 团队状态和在团队会议上提出问题。包括以下 活动
n 项目规模定义 n 控制 n 风险管理 n 项目重计划
第2章 软件项目史。 主要活动有
n 技能矩阵是在项目中关于要完成任务的 人的技能、知识和兴趣的一张简单表。
n 技能矩阵的一行(或列)表示来自工作分 解结构的工作单元——任务、活动和项 目功能。一列(或行)表示项目参与者。
第2章 软件项目管理基础
n 我们把3种项目区分开:主要技能、次要 技能和兴趣。
n 主要技能使一个人能胜任领导一个工作单元。 n 次要技能使一个人能参与任务。 n 兴趣表示在任务中一个人感兴趣但不具备该
n 关键过程域:描述软件过程的属性,通 过完成一组相互关联的活动,实现一组 对建立过程能力至关重要的目标。
软件项目管理知识点
软件项目管理知识点第一章概括项目营运就是一个连续进行的且重复的任务组,而项目有其生命周期——从开始到结束。
项目管理协会将项目定义为“为创立独到的产品或服务而进行的一种暂时性的工作”项目的特色: 1. 暂时性 2. 独到性项目和营运的差别营运就是一系列不可以作为项目的任务。
共同点: 1. 都需要有包含人力资源(人)在内的资源。
2.都严格的遇到资源限制,与无穷制的状况截然相反3.都要被管理,即需要进行计划、执行和控制4.都要有达到的目标不一样点:项目定义中的两点:暂时性和独到性项目的分类1.土木匠程、建筑、石化、矿业开采等邻域的项目2.制造项目3.管理项目4.研究项目项目管理项目管理的定义项目管理是必定的主体,为了实现其目标,利用各样有效的手段,对执行中的项目周期各阶段工作进行计划、组织、协调、指挥、控制,以获得优秀经济效益的各项活动的总和。
项目管理是在人们对工商业项目中复杂多变的各样作业活动进行计划、协调与控制的过程中发展起来的。
软件项目管理软件项目是一种特别的项目,它创立的独一产品或服务是逻辑主体,没有详细的形状和尺寸,只有逻辑的规模和运转的成效。
项目经理项目经理的职责1.交流2.谈判3.解决问题4.影响力5.领导力项目经理的权益1.拟订项目的有关决议2.精选项目成员的权益3.对项目获取的资源进行再分派项目管理过程组和知识领域项目管理知识系统( PMBOK)是美国项目管理学会组织( PMI)开发的一套对于项目管理的知识系统,它是项目管理专业人员(PMD)考试的重点资料。
项目管理过程组1.启动过程组2. 规划过程组3. 执行过程组4. 监控过程组5. 扫尾过程组项目管理知识领域项目集成管理、项目范围管理、项目时间管理、项目成本管理、项目质量管理、项目人力资源管理、项目交流管理、项目风险管理、项目采买管理(9 个)第二章软件项目集成管理项目集成管理定义项目集成管理波及在整个项目的生命周期中协调左右其余项目的知识领域。
软件项目管理第二章课后习题答案
二、项目启动1. 项目启动阶段,甲乙双方的主要任务分别是什么?答:软件项目是甲乙双方合作的一个工程(乙方通常为软件开发方),从不同的角度,往往对项目的认知程度不同。
软件的用户在软件项目中作为甲方采购软件产品和软件服务。
软件应用项目和软件服务项目通常是一个软件项目在甲方和乙方两个方面反映,站在甲方立场看,是一个软件应用项目;而站在乙方立场,则是一个软件开发服务项目。
乙方的主要任务包括明确项目需求、项目商业论证、项目经理指派、识别项目干系人、制定项目章程、召开乙方项目启动大会等。
甲方的主要任务是参加和协助乙方做好项目启动各项工作。
2.作为项目前期负责人,在接到任务后将如何启动项目?答:项目前期负责人在接到任务后可以开始如下工作逐步启动项目:(1)识别项目需求。
从投资方角度,识别需求是项目度启动过程和整个项目生命周期的最初活动,在这个过程中,为项目的目标确定,以及可行性分析和项目立项提供直接、有效的依据,为需求建议书的撰写提供基础。
(2)项目商业论证。
项目商业论证指文档化的经济可行性研究报告,用来对尚缺乏充分定义的所选方案的收益进行有效性论证,是启动后续项目管理活动的依据。
(3)识别干系人。
项目干系人是指可能影响项目决策、活动或结果的个人、群体或组织,以及会受或自认为会受项目决策、活动或结果影响的个人、群体或组织。
(4)制定项目章程。
目章程是项目启动阶段正式批准的项目文件。
从某种意义上说,项目章程实际上就是有关项目的要求和项目实施者的责、权、利的规定。
(5)召开项目启动大会。
召开项目启动大会不仅能够让项目团队成员互相认识,还可以在项目启动大会上介绍项目背景及计划、正式批准综合性项目管理计划,并在干系人之间达成共识。
3.什么是项目章程?答:项目章程是项目启动阶段正式批准的项目文件。
从某种意义上说,项目章程实际上就是有关项目的要求和项目实施者的责、权、利的规定。
项目章程多数由项目出资人或项目发起人制定和发布的,它给出了关于批准项目和指导项目工作的主要要求,所以它是指导项目实施和管理工作的根本大法。
《软件项目管理实用教程》-习题参考答案
习题参考答案第一章软件项目管理概述一、习题1. 项目管理和技术工作之间有什么关系?【答案】技术毫无疑问是我们实现产品落地的唯一工具。
需求产生、产品设计其实都是人们的愿景而已,那如何去实现呢,就需要我们用技术手段进行支撑落地。
项目管理作为一门专业已经得到认可,这表明知识、过程、技能、工具和技术的应用对项目的成功有显著影响。
其实项目管理是为产品或项目的有效落地产生的一种管理方法。
因此不难看出,项目管理和技术工作是相辅相成,缺一不可的。
2. 软件项目和一般项目的区别是什么?【答案】软件项目也被称为IT项目,是一种和信息技术(Information Technology,IT)相关的特殊项目,它创造的唯一产品或者服务是逻辑体,没有具体的形状和尺寸,只有逻辑的规模和运行的效果。
软件项目不同于其他项目,不仅是一个新领域而且涉及的因素很多,管理也比较复杂。
软件项目如下2个特点可以很好地区别于其他一般项目:(1)目标渐进性软件项目,作为一类特殊的项目,按理说,一开始也应该有明确的目标,然而,实际的情况却是大多数软件项目的目标不是很明确,经常出现任务边界模糊的情况。
在项目前期只能粗略地进行项目定义,随着项目的进行才能逐渐完善和明确。
(2)智力密集型软件项目是智力密集型项目,软件项目工作的技术性很强,需要大量高强度脑力劳动。
因此必须充分挖掘项目成员的智力、才能和创造精神,不仅要求开发人员具有一定的技术水平和工作经验,而且还要求他们具有良好的心理素质和责任心。
与其他性质的项目相比,软件项目中人力资源的作用更为突出,必须在人才激励和团队管理问题上给予足够的重视。
3. 什么是项目管理过程?项目管理过程之间有什么关系?【答案】项目管理在软件开发的技术工作之前就应该开始,而在软件从概念到实现的过程中继续进行,并且只有当软件开发工作最后结束时才终止。
其过程可分为以下几个管理过程组。
开始项目以上过程及之间的关系是指导性的,在实际实施某一软件项目时,可根据项目性质、项目规模、工作重点等灵活制定相应的管理过程。
项目管理软件Project-007应用教程
47
定位资源冲突
❖资源管理工具栏
选择【视图】→【工具栏】→ 【资源管理】。 打开资源管理工具栏后,点击快捷按钮可以快速定位有资源冲突的
任务。 缺陷:需要分析才能看出有冲突的资源。
48
解决资源冲突
❖增加资源总量 ❖增加工作时间
安排资源加班 调整资源日历
❖推迟开始工作时间
若资源冲突是由于资源同时在两个或者数个任务上工作产生的, 可以通过设定资源推迟参加某项任务的时间来解决资源冲突。
个子任务。
❖资源过度分配的两种主要表现
分配给一个资源的工时总量大于它的最大可用工时量; 同一种资源被分配给实践中重叠的几个任务或项目中。
43
定位资源冲突
❖资源工作表 ❖资源图表 ❖资源使用状况 ❖资源管理工具栏
44
定位资源冲突
❖资源工作表
选择【视图】→【资源工作表】。 资源库中显示为红色的即是过度分配的资源。 缺陷:在资源工作表中只能查看有哪些资源出现了过度分配。
其中有些任务在执行时如果延误就会影响整个项目 的工期。
这样一类直接影响项目工期变化的任务就是关键任 务。
❖关键路径
由关键任务组成的一系列日程称之为关键路径。
53
查看关键任务和关键路径
❖使用跟踪甘特图
选择【视图】→【跟踪甘特图】菜单命令,查看项目的 关键路径。
No Image
54
查看关键任务和关键路径
❖只使用资源的部分工作时间
这种方案会延长任务的工期
49
练习-解决资源冲突
❖要求
以“新产品调研”项目为例 查看有哪些资源出现了冲突 尝试通过不同方式解决资源冲突 任务信息参见附表
50
附表-任务信息
工程项目管理软件及应用project2007
第一章项目是指在一定约束条件下(主要是限定资金、限定时间等),为完成某一独特的产品或服务具有特定目标的一次性任务。
各种不同的项目,其内容是千差万别的。
但它们都具有相似的特性。
目标性、独特的性质、一次性、可限制性、不确定性、不可挽回性任何项目都会在范围、时间和费用3个方面受到约束,这就是项目管理的三要素(有时也称项目三角形),它们中的任何一个发生变化就会影响其他两个,其定义如下:范围:项目的目标和任务,以及完成这些目标和任务所需的工作。
时间:反映在项目日程中的完成项目所需的时间。
费用:即项目的预算,它取决于资源的成本。
这些资源包括完成任务所需的人员、设备和材料。
一个项目的生命周期就是从定义项目目标、制定项目计划直至最终完成项目的过程,具体包括下述阶段。
定义项目目标、制定项目计划、发布项目计划、跟踪项目进度并调整计划、完成项目并存档项目管理是项目管理者在有限的资源约束下,运用系统的观点、方法和理论,对项目涉及的全部工作进行有效的管理,即对项目的投资决策开始到项目结束的全过程进行计划、组织、指挥、协调、控制和评价,以达到项目的目标。
项目管理的知识领域是指作为了项目经理必须具备与掌握的重要知识与能力,这些知识领域涉及很的管理工具和技术,用来帮助项目经理与项目组成员完成项目的管理。
项目范围管理项目时间管理项目成本管理项目质量管理项目人力资源管理项目沟通管理项目风险管理项目采购管理项目综合管理(每项的定义见教材)第二章Project 2007的功能:共享项目信息编制和组织信息跟踪项目方案的优化度分析信息计算检测和维护Project 2007的组成:从使用者的角度Project 2007可分为Microsoft Project Professional 2007、Microsoft Project Server 2007和Microsoft Office Project Web Access 2007这3部分。
软件工程项目管理教程
项目交付后的跟踪
进行客户满意度调查 处理客户反馈 更新维护文档 总结经验教训
项目经验总结
项目经验的总结与分享
总结项目经验,分享成功经验和教训。
项目管理实践的反思
反思项目管理过程中的不足,寻找改进之路。
项目管理的持续改进
持续改进项目管理方式,提高管理效率和质量。
项目管理的未来发展
未来项目管理将更加注重数据分析和智能化,利用 人工智能和大数据技术来提升管理效率和决策能力。 同时,培养卓越的项目管理人才也是未来发展的重
接受他人意见,不 断改进
谢 谢 观 看!
WBS 需求收集工具
● 03
第3章 项目进度管理与风险管理
项目进度管理
项目进度管理是确保项目按时完成的关键。 通过有效的进度管理,可以及时发现项目进 度偏差,采取措施进行调整。关键过程包括 制定进度计划、监控进度以及报告进度。工
具和技术包括甘特图、里程碑图等。
风险管理概述
风险管理的基本概念
风险管理的步骤
软件工程项目管理教程
制作人: 时间:202X年X月
目 录
第1章 软件工程项目管理概述 第2章 项目规划与需求分析 第3章 项目进度管理与风险管理 第4章 项目成本管理与质量管理 第5章 沟通管理与团队管理 第6章 项目总结与反思
第7章 结语
● 01
第1章 软件工程项目管理概述
项目管理概念
项目管理是通过对项目的计划、组织、指导 和控制来达到项目目标的过程。项目管理的 重要性在于确保项目按时、按质、按预算完
包括成本估算、成本预算和成本控制。
成本管理概述
成本管理的定义
明确项目成本的管 理范围和目标
成本管理的方法
成本管理的重要性
软件工程第2章 软件项目管理
项目小组有多种管理机制,如:民主分权制、主 程序员负责制、职业项目经理负责制、层级负责 制。下面介绍3种典型的组织方式。
民主制程序员组
小组成员之间的通信是平行的,如果小组内有n 个成员,则可能的通信信 信的时间将多于程序设计时间。一般说来,程序 设计小组的规模应该比较小,以2~8名成员为宜。
由于程序员组成员人数不宜过多,当软件项目规模 较大时,应该把程序员分成若干个小组,采用下图所示 的组织结构。
该图描绘的是技术管理组织结构,非技术管理组织结构与此类 似。由图可以看出,产品开发作为一个整体是在项目经理的指导下进行 的,程序员向他们的组长汇报工作,而组长则向项目经理汇报工作。当 产品规模更大时,可以适当增加中间管理层次。
一种做法是首先刮掉四面墙壁上的旧漆,然后给每面墙壁都刷 上新漆,最后清除溅在每个窗户上的油漆。显然这是效率最低的做 法,因为总共有15名工人,然而每种工具却只有5件,这样安排工作 在任何时候都有10名工人闲着没活干。
大家可能已经想到,应该采用“流水作业法”,也就是说, 首先由5名工人用刮板刮掉第1面墙上的旧漆(这时其余10名工 人休息),当第1面墙刮净后,另外5名工人立即用刷子给这面 墙刷新漆(与此同时拿刮板的5名工人转去刮第2面墙上的旧漆), 一旦刮旧漆的工人转到第3面墙而且刷新漆的工人转到第2面 墙以后,余下的5名工人立即拿起刮刀去清除溅在第1面墙窗 户上的油漆,……。这样安排使每个工人都有活干,因此能够 在较短的时间内完成任务。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Product 1)确定待制造的软件范围(约束) 2)范围界定的量化 3)采用功能分解确定成本和进度
•目标:以怎样的数据对象输入,输出怎样的可见数据对象 •功能和性能:执行怎样的功能,达到怎样的性能,才能满足目标要求 2)范围界定的量化包括: 从管理层 例如: 从技术层 例如: •用户数量限定 •列表的大小 •允许响应的时间 •算法理解性(采用语言) •内存大小
项目度量的意义: 1)从过去项目的进展,所花费的工作量来估算现在的软件项目工作量及时间。 2)用估算值与实际项目进度比较,以分析监控项目
个人 度量
形成
项目度量
形成
过程度量
北京邮电大学信息安全中心
2007年秋季
19
软件工程
项目度量的指标
直接测量: •代码行 较容易的 •执行速度 •内存大小 •阶段时间的报错率 间接测量:
2007年秋季
4
软件工程
4个P的主要内容:
1 People 1)项目组负责人的能力判断 2) 项目组结构选择 3)项目组内部的管理方式 4)项目组达到高性能的条件 5)导致项目组挫败的因素 6)防止项目组挫败的措施
4 Project 1) 项目的基本要素 2) 制订项目计划的要点W5HH 3)项目的决定因素 4)项目的协调通讯途径 3 Process 1) 确定过程模型的目的 2) 确定过程模型的原则 3) 项目适应模型的规律 4) 过程活动
6)防止项目组挫败的措施 • 不要盲目修改目标 • 给小组的多一些决策权和控制权 • 选择适当的过程,防止繁重的工作任务 • 明确成员的角色 • 个人的失误应视为小组的失误 • 负责人应能识别成员差异
返回
北京邮电大学信息安全中心
2007年秋季 8
软件工程
1) 确定待制造的软件范围(约束) 包括: •运行环境:有怎样约束
2007年秋季
北京邮电大学信息安全中心
6
软件工程
3) 项目组内部的管理方式 • 民主分散式(DD):无固定负责人,临时性问题,不分小组的集体讨论 • 控制分散式(CD):有固定负责人,通过部分集体讨论解决问题 • 控制集中式(CC):子任务问题由小组讨论,项目组解决高层问题 北京邮电大学信息安全中心
总计数值
计数 × × 平均 4 5 4 10 7
北京邮电大学信息安全中心
•每人月的代码数行数 •每人月的文档页数
2)难以用于项目开始之前的估算
2007年秋季 21
软件工程
面向功能的度量 功能的测量:需要利用对其他值的测量,间接导出 每个功能可以用如下5个信息域来标定:
5个功能标定信息域: •用户输入数:向软件输入不同类型应用形式的数据(查询数单计) •用户输出数:向用户提供输出报表、屏幕、出错消息等形式的信息 •用户查询数:软件对应要求的联机实时查询响应 •文件数:数据的逻辑组合,数据库表或文件 •外部接口数:可以将信息传送到另一系统的接口 设定3个复杂度加权因子值:
例2:
根据项目的规模不同,过程活动的内容也不同
简单项目的“客户交流”活动内容: 复杂项目的“客户交流”活动内容: •评审客户需求 •安排与客户进行的正式促进性会议 •研究解决问题方案 •为正式会议准备工作文档和议程 •召开会议 •共同制订能反映软件数据的、功能行为和特征的小规约 •评审小规约,确定正确性、一致性和无二义性 •把小规约组装成范围文档 •与所有相关人员一起评审范围文档 •根据评审修改范围文档 •列出需要澄清的问题清单 •与客户讨论需要澄清的问题 •与客户共同给出范围陈述 •与所有相关人员一起评审范围陈述 •根据评审修改范围陈述
2007年秋季 17
软件工程
软件项目管理
1 基本概念 2 软件项目度量 3 软件项目计划 4 风险分析 5 项目进度和管理 这一章,重点是软件工程学的管理技术方法 >>>>>
北京邮电大学信息安全中心
2007年秋季
18
软件工程
软件项目度量
项目度量目标:
改善项目组的工作流程和技术活动,减少风险,提高质量。
返回
北京邮电大学信息安全中心
2007年秋季 14
软件工程
1) 项目的基本要素 •要有明确的开始 •要有保持动力的因素 •进度必须可跟踪 •保持明确的决策 •要有过程分析活动 2) 制订项目计划的要点W5HH •项目开发的目的 (Why) •项目准备做什么 (What) •项目什么时候做 (When) •项目的各功能谁负责 (Who) •他们的机构组织位于哪里 (Where) •怎样实施计划和管理 (How) •需要有多少资源 (How much)
北京邮电大学信息安全中心
第二章 软件项目管理
信息安全中心 李 晖 lihuill@
1
软件工程
软件工程
内容回顾
软件工程基础
软件的概念、特点和分类 软件的发展和软件危机 软件工程的概念 软件生存期
项目计划、需求分析、总体设计、详细设计、程 序编码、集成测试、确认测试、运行维护
软件生存期模型
2007年秋季
返回
7
软件工程
4)项目组达到高性能的条件 • 成员间相互信任 • 技术分布适合问题 • 独立性成员应离开小组 5)导致挫败的因素和防止措施 • 混乱无序的工作气氛 • 个人之间的摩擦 • 不适当的过程选择 • 不确定的角色安排 • 连续失败导致的缺乏信心
People 1)项目组负责人的能力判断 2) 项目组结构选择 3)项目组内部的管理方式 4)项目组达到高性能的条件 5)导致项目组挫败的因素 6)防止项目组挫败的措施
Project 1) 项目的基本要素 2) 制订项目计划的要点W5HH 3)项目的决定因素 4)项目的协调通讯途径
3)项目的决定因素 •技术难度 •程序规模 •分组工作必要的时间长短 •问题划分的难易程度 •质量及可靠性的严格程度 •时间工期的严格程度 •社交性问题的多少(扯皮问题)
返回
北京邮电大学信息安全中心
用户输入数 用户输出数 用户查询数 文件数 外部接口数 简单 3 4 3 7 5 平均 4 5 4 10 7 复杂 6 7 6 15 10
2007年秋季 22
北京邮电大学信息安全中心
软件工程
功能点复杂度调整的14个值 1. 系统需要可靠的数据备份 2.系统需要数据通讯 3.系统有分布处理 4.系统有严格的性能要求 5.系统在现有的负载很重的操作系统环境下运行 6.系统需要联机数据登录 7.系统需要联机在多屏幕操作切换下完成输入操作 8.系统需要联机更新主文件 9.输入、输出、查询很复杂 每项对应的值 10.内部处理逻辑很复杂 不需要 11.需要支持代码复用 需要很简单的 12.需要包括数据转换和安装 需要一般的 13.需要支持不同组织的多次安装 需要较多的 14.需要支持用户方便的修改和使用 需要很复杂的 需要很复杂且重要的
3
软件工程
1 基本概念
Pressman的软件工程管理要点: People:项目组成人员的选择、划分、组织和协调原则 Product:确定项目规模范围目标,分解功能确定成本和进度 Process:确定项目过程模型,及对应活动的战略及度量 Project:项目实施的技术原则、度量及计划、控制
北京邮电大学信息安全中心
第二类:正式的、人员之间有约束 需求评审 设计评审 状态评审 代码检查
第三类:非正式的、人员之间有约束 问题解决小组会议 配置安排小组会议 第四类:电子通讯 电子公告栏 电子邮件 第五类:人员间的网络 各种人员之间的讨论
返回
北京邮电大学信息安全中心
2007年秋季 16
软件工程
返回
北京邮电大学信息安全中心
返回
2007年秋季 11
软件工程
4)过程活动 •产品功能的实现与确定的过程活动相对应 •过程的活动根据项目的规模可以是不同的
产品功能的实现与过程活动矩阵表:
北京邮电大学信息安全中心
2007年秋季
12
软件工程
例1:
产品功能的实现与过程活动对应:
返回
北京邮电大学信息安全中心
2007年秋季 13
软件工程
Process 1) 确定过程模型的目的 2) 确定过程模型的原则 3) 项目适应模型的规律 4) 过程活动
2) 确定过程模型的原则
•根据使用该项目产 品的用户情况 •根据项目产品本身 的特征是什么 •根据开发项目组工 作的环境怎样
北京邮电大学信息安全中心
3)项目适应模型的规律(一般情况) •已经有先例的项目: 瀑布模型 •问题明确且时间紧的项目: 增量模型 •规模较大且时间紧的项目: 增量模型 •需求不确定的项目: 原型模型 •带有突破性技术的项目: 螺旋模型 •客户难以沟通和理解的项目:原型模型 •明显复用潜力的项目: 构件模型
2 Product 1)确定待制造的软件范围(约束) 2)范围界定的量化 3)采用功能分解确定成本和进度
北京邮电大学信息安全中心
2007年秋季
5
软件工程
1) 项目组负责人的能力判断 •有激励手段和凝聚控制力 •能读懂人 •有想法,有创新精神 •准确的判断力并能采取灵活果断措施 •有高压下坚持的信心和能力 2) 项目组结构选择 分配的人力资源是n个人工作k年
例如:字处理软件产品 分解功能包括: •连续语音输入 •连续键盘输入 •自动复制编辑 •页面布局 •自动建立索引目录 等
考虑
•语音输入要不要训练功能 •复制编辑自动化程度 考虑 •页面布局有多少功能 等
•成本 •进度
返回
北京邮电大学信息安全中心
2007年秋季 10
软件工程
1) 确定过程模型的目的 •工作任务划分适量 •质量措施环节明确
瀑布模型、原型模型、演化模型(螺旋、增 量)、面向对象模型
软件工程的基本目标
北京邮电大学信息安全中心