软件工程实用教程-第11章_软件项目管理
- 格式:ppt
- 大小:3.39 MB
- 文档页数:48
计算机软件工程项目管理方案1.项目管理概述项目管理包括在项目生命周期中协调所有项目管理知识领域所涉及的过程。
它确保项目所有的组成要素在正确的时间结合在一起,以成功的完成项目。
进行项目整体管理时,必定涉及项目的范围、质量、时间和成本管理以及人力资源、沟通、风险管理等各个环节,项目管理一个复杂的工程,在此主要针对项目的进度管理、变更管理、沟通管理、质量管理、风险管理等相关策略进行描述。
2.项目管理过程项目管理是在项目活动中综合运用知识、技能、工具、技术在一定的时间、成本、质量等要求下实现项目成果性目标的过程。
系统的成果目标就是实现在建设单位建立运行可靠、符合规范及用户需求的生产任务管理系统。
从项目管理的角度讲,项目建设过程主要包括项目的启动、项目计划、项目执行以及项目收尾。
要进行全方位的项目管理,需要关注项目管理过程诸多方面的管理要素。
这些要素分布在项目管理知识体系的核心知识域、保障域、伴随域和过程域中并贯穿于项目管理过程的各个阶段。
2.1.项目启动阶段项目现状调研、需求分析、可行性研究、项目建议书(立项申请书)、项目章程等均属于项目的启动任务。
而项目章程标志着项目的开始。
系统项目具有较强的专业性,进行可行性研究是必要的。
对项目的投资的必要性、技术的可行性、财务的可行性、组织的可行性、经济的可行性,以及风险因素及对策均要有清楚的认识。
2.2.项目计划阶段2.2.1.项目章程项目启动后,就要正式批准一个项目的文档。
项目章程主要包括:项目目的、可测量的项目目标和相关成功标准、项目总体要求、概括性项目描述、项目风险、总体里程碑进度计划、项目成本、项目经理及其职责和职权。
系统应提倡基于SOA 的方式进行研发和部署,实现敏捷业务重构。
项目章程的建立标志着项目的启动,项目经理任选及项目经理的权限级别在项目章程中明确给出,并在项目章程中给出概要的里程碑及进度计划。
2.2.2.项目管理计划系统的建设管理计划指的是包括总体计划在内的需求、设计、开发、实施过程,涵盖了技术、质量、人力资源、财务、风险管理所有过程的分计划。
软件工程与项目管理学习软件开发的流程与方法掌握软件项目管理的技术与工具首先,让我们来了解什么是软件工程以及软件项目管理。
软件工程是一门通过系统性的方法来开发和维护软件的学科。
而软件项目管理则是一种对软件项目进行规划、组织、指导和控制的方法。
在软件工程与项目管理学习中,了解软件开发的流程与方法以及掌握软件项目管理的技术与工具至关重要。
一、软件开发的流程与方法1. 需求分析:软件工程的第一个步骤是需求分析,即确立软件的需求和功能。
在这一阶段,软件工程师需要与客户进行沟通,了解并记录客户的需求,然后将其转化为软件需求规格说明书。
2. 设计阶段:在需求分析的基础上,软件工程师将进行软件的设计。
这包括系统设计和详细设计两个层次。
系统设计阶段将系统划分为模块,并定义各模块的功能和接口。
详细设计阶段则是在系统设计的基础上,进一步详细设计每个模块的内部结构和算法等。
3. 编码实现:在设计完成后,软件工程师将根据设计的要求进行编码实现。
编码过程中需要遵守编码规范,并使用适当的编程语言和开发工具。
4. 软件测试:完成编码后,需要对软件进行各种测试,以确保其质量和稳定性。
软件测试包括单元测试、集成测试、系统测试等。
5. 部署与维护:当软件测试通过后,软件工程师将进行软件的部署和安装,并提供必要的培训和技术支持。
在软件上线后,还需要进行软件的维护和升级。
以上是软件开发的一般流程与方法,不同的软件开发项目可能会有所差异。
然而,了解这些基本流程和方法是学习软件工程的基础。
二、软件项目管理的技术与工具1. 进度管理:软件项目管理中的进度管理是确保项目按时完成的关键。
项目经理需要制定详细的计划,并跟踪各项任务的进度,及时发现并解决可能的延迟或问题。
2. 范围管理:软件项目的范围管理是控制项目的需求和功能的变更,以确保项目目标的稳定。
项目经理需要对需求变更进行评估,并在必要时进行变更控制。
3. 风险管理:软件项目中的风险管理是预测、识别和评估项目中的各种风险,并采取相应的措施进行管理。
第1章概述(习题和参考答案)[推断题]1. 由于今日个人计算机不断发展壮大,人们不再接受软件团队的开发方式。
(×)2. 由于软件是产品,因此可以应用其他工程制品所用的技术进行生产。
(×)3. 购买大多数计算机系统所需的硬件比软件更昂贵。
(×)4. 大多数软件产品在其生命周期中不须要增加功能。
(×)5. 大多数软件系统是不简洁变更的,除非它们在设计时考虑了变更。
(√)6. 一般来说,软件只有在其行为和设计者的目标一样的状况下才能成功。
(×)[选择题]1. ()因素促使计算机系统越来越困难。
(D)A. 计算机内存和存储容量上的巨大增长B. 外部输入/输出选项的更加多样性C. 计算机体系结构方面的深刻变更D. 以上全部选项2. 下面的()不再是现代软件工程师关注的问题。
(A)A. 为什么计算机硬件的成本这么高?B. 为什么软件须要很长时间才能完成?C. 为什么开发一个软件的成本这么高?D. 为什么不能在产品发布前去除软件错误?3. 软件会慢慢退化而不会磨损,其缘由在于()。
(C)A. 软件通常暴露在恶劣的环境下B. 软件错误通常发生在运用之后C. 不断的变更使组件接口之间引起错误D. 软件备件很难订购4. 大多数软件照旧是定制开发的,其缘由在于()。
(C)A. 软件组件重用是特别普遍的B. 可重用的组件太昂贵而无法运用C. 软件在不运用其他组件的状况下很简洁构造出来D. 商业组件在许多应用领域中可以得到5. 下面的()说法是正确的。
(C)A. 软件危机在20世纪70年头末期全面爆发B. 当前先进的软件工程方法已经解决了软件危机的问题C. 软件危机是指在计算机软件的开发和维护过程中遇到的一系列严峻问题D. 软件危机是指在软件产品中存在一系列的质量问题6. 软件工程的基本目标是()。
(B)A. 消退软件固有的困难性B. 开发高质量的软件C. 努力发挥开发人员的创建性潜能D. 更好地维护正在运用的软件产品7. ()是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。