【项目管理知识】软件项目管理的研究及在项目开发中的应用
- 格式:docx
- 大小:9.13 KB
- 文档页数:3
项目管理知识在实际工作中的应用一、项目管理的概述1.1 什么是项目管理1.2 项目管理的重要性1.3 项目管理的基本原则二、项目管理的五个过程组2.1 项目启动过程组2.2 项目规划过程组2.3 项目执行过程组2.4 项目监控过程组2.5 项目收尾过程组三、项目管理的十个知识领域3.1 项目整合管理3.2 项目范围管理3.3 项目时间管理3.4 项目成本管理3.5 项目质量管理3.6 项目人力资源管理3.7 项目沟通管理3.8 项目风险管理3.9 项目采购管理3.10 项目干系人管理四、项目管理在实际工作中的应用案例分析4.1 项目管理在软件开发中的应用4.2 项目管理在建筑工程中的应用4.3 项目管理在市场推广中的应用4.4 项目管理在新产品开发中的应用五、项目管理的挑战及应对策略5.1 项目管理中的常见挑战5.2 应对项目管理挑战的策略5.3 项目管理中的团队沟通与协作六、结论6.1 项目管理知识的重要性6.2 项目管理在实际工作中的应用总结一、项目管理的概述1.1 什么是项目管理项目管理是一种以目标为导向、系统化地组织、计划、实施、监控和收尾的过程。
它涉及到资源的协调和管理,以实现项目的预期成果。
1.2 项目管理的重要性项目管理的重要性体现在以下几个方面: - 项目管理能够确保项目按时、按质、按量完成。
- 项目管理能够提高项目的可控性,减少风险。
- 项目管理能够提高项目的效率和效益。
- 项目管理能够提高团队的协作和沟通能力。
1.3 项目管理的基本原则项目管理的基本原则包括: - 目标导向:明确项目的目标和期望成果。
- 可控性:通过有效的计划和监控,确保项目的可控性。
- 组织性:合理分配资源,建立有效的组织结构。
- 沟通与协作:保持团队成员之间的良好沟通和协作。
- 风险管理:及时识别并应对项目中的风险。
二、项目管理的五个过程组2.1 项目启动过程组项目启动过程组是项目管理的第一个阶段,包括项目启动、项目目标设定、项目范围确定等活动。
项目中的方法,工具和技术关于项目中方法,工具和技术的说明是一个很重要的内容.都是项目管理的重要元素.特举个项目中的例子如下:项目中的方法1.项目采用了RUP的相关方法论,以用例分析为驱动,得出相关的软件需求说明书和用例模型;以架构设计为核心,在软件需求基础上进行4+1视图的架构设计,得出相关的分析模型;具体的增量迭代在需求和架构上不迭代,在后续的结队开发中进行迭代。
2.项目借鉴敏捷开发的部分方法论,在结队开发任务中强调设计开发人员的紧密协作和工件的Review和单元测试。
强调项目个体技能对项目重要性;强调整个团队价值观对项目成功的重要性。
3.项目借鉴MSF的相关方法论,对项目人员角色和职责进行了明确的划分,保证了角色和职责的明确;在项目过程中采用每日构建流程,保证相关功能的持续集成和问题的及早暴露和发现。
项目采用的工具和技术1.需求采用Rose出用例模型和业务对象模型,采用DotNet____开发界面原型。
采用Word出软件需求说明书。
2.架构和设计采用Rose或XDE出分析模型和设计模型,采用PowerDesigner 出数据库设计,采用DotNet____出相关的原型。
3.编码采用DotNet____完成前台编码。
采用PL/SQLDeveloper或Toad完成后台数据库表和存储过程编码。
4.测试采用Nunit进行单元测试,采用LoadRunner进行性能测试。
5.项目方面采用CQ进行需求变更和BUG的管理;采用CC进行项目数据的管理;采用Excel进行测试用例的管理和追踪;采用RP进行需求追踪和需求状态的管理;采用***进行项目任务的管理;采用***进行度量数据的收集后分析;采用**系统管理相关的同行评审。
更多信息请访问:项目管理站论坛。
IPD与项目管理CMM的关系无论是项目管理体系,还是IPD、CMMI,它们都不等于管理的全部,就像是“管理从林”中的一棵棵树木。
越来越多的企业开始重视产品开发流程、过程的规范化,借以沉淀企业知识,使其快速面对市场,满足客户需求,进而引入IPD、CMMI、考|试/大PM等先进的管理方法与工具,但这些管理体系之间的联系与区别却是企业人员经常困惑的热点问题。
基本概念各有所重PM(ProjectManagement),中文译为“项目管理”,是一套通用的管理技术与方法,其有代表性的流派是美国项目管理协会(PMI)在《项目管理知识体系指南》(PMBOK)中提出的整套项目管理理论。
近年来,已经被公认为是一种有生命力并能实现复杂的企业目标的良好方法。
IPD,是IntegratedProductDevelopment的缩写,中文译为“集成产品开发”,是一套领先的、成熟的的产品开发的管理思想、模式和方法,是业界流行的实践,它的起源是美国80年代出现的PACE(产品及周期优化法)理论。
CMM(capabilitymaturitymodelforsoftware,软件能力成熟度模型)是美国卡内基梅隆大学软件工程研究所(SEI)应美国联邦政府的要求,于____年开发出来的一种用于评价软件承包商能力并帮助其改善质量的方法。
目前,它是国际上流行、实用的软件生产过程标准,以及软件企业成熟度认证标准。
考|试/大CMM由低至高共分为5个级别:初始级、可重复级、定义级、管理级和优化级。
CMMI(集成能力成熟度模型)在CMM的基础上增加了集成的产品和过程开发(IPPD)等专业领域,不再局限于软件。
IPD是项目管理在产品开发中的应用IPD是一个产品开发的流程。
流程(process)是将输入转化为输出的一组彼此相关的资源和活动。
能够量产的产品,是产品开发流程的输出。
而所谓“项目”,根据美国项目管理协会PMI的定义,考|试/大是指一项提供独特的产品或服务的、有明确目标和起始时间的工作。
软件项目管理经典案例全文共四篇示例,供读者参考第一篇示例:软件项目管理是现代企业中非常重要的一部分,它可以帮助企业有效地规划、执行和监控软件开发项目,确保项目按时、按质、按标准完成。
在软件项目管理领域,有许多经典案例可以供我们学习和借鉴。
下面我们就来看一些经典的软件项目管理案例。
1. IBM的OS/360项目IBM的OS/360项目是计算机历史上最有影响力的一个项目,也是软件项目管理领域的经典案例之一。
该项目开始于上世纪60年代,旨在开发一款操作系统,以支持IBM的大型机产品。
由于该项目规模庞大,涉及的技术复杂,以及开发团队庞大,因此项目进度一度非常缓慢。
IBM在项目管理方面做出了一系列创新,包括采用模块化开发、引入正式的项目管理方法等。
最终,IBM成功地完成了OS/360项目,为公司带来了巨大的商业成功。
2. 微软的Windows项目微软的Windows项目是另一个软件项目管理领域的经典案例。
Windows是微软公司的旗舰产品之一,它的开发历程非常漫长,技术难度也极高。
微软在Windows项目中采取了许多先进的软件项目管理技术,如敏捷开发、持续集成、自动化测试等。
这些技术帮助微软团队高效地协作,不断迭代产品,最终成功地推出了多个版本的Windows操作系统,赢得了广泛的用户认可和市场份额。
3. 苹果的iPhone项目苹果的iPhone项目也是软件项目管理领域的一个经典案例。
iPhone是苹果公司推出的一款革命性的智能手机,它的开发历程非常复杂,需要涉及硬件、软件、设计等多个领域的协同合作。
苹果在iPhone项目中采用了独有的创新模式,如设计驱动的开发、高度集成的团队协作等。
这些方法使得苹果成功地推出了多个版本的iPhone产品,成为全球最受欢迎的智能手机之一。
4. 谷歌的Android项目谷歌的Android项目也是软件项目管理领域的一个典范案例。
Android是谷歌公司开发的一款移动操作系统,它的开发历程充满挑战和机遇。
2024年软件资格考试信息系统监理师(基础知识、应用技术)合卷(中级)复习试题(答案在后面)一、基础知识(客观选择题,75题,每题1分,共75分)1、题干:在信息系统工程中,项目监理机构的主要职责不包括以下哪项?A、项目质量保证B、项目进度控制C、项目成本控制D、项目风险预测2、题干:以下关于信息系统工程监理计划的编制,错误的是:A、监理计划的编制应遵循国家有关法律法规和行业标准B、监理计划应在项目启动阶段编制完成C、监理计划应明确监理机构在项目中的组织架构和人员配置D、监理计划应包含项目质量、进度、成本、安全等方面的监理目标和措施3、题干:在信息系统工程中,以下哪一项不属于信息系统监理的工作内容?()A. 监督项目进度B. 监督项目质量C. 监督项目成本D. 监督项目团队建设4、题干:以下关于信息系统工程项目的风险管理,说法错误的是()。
A. 风险识别是风险管理的基础B. 风险分析是对识别出的风险进行评估C. 风险应对策略包括风险规避、风险转移和风险接受D. 风险监控是对风险管理的持续跟踪和评估5、在软件工程中,需求分析阶段的主要任务是:A. 定义软件系统的总体架构B. 描述软件系统的功能需求和非功能需求C. 设计软件系统的数据库结构D. 实现软件系统的核心功能6、在项目管理中,以下哪个工具可以用于评估项目风险的可能性和影响?A. Gantt图B. 状态图C. 概率影响矩阵D. 甘特图7、在信息系统工程中,以下哪项不属于系统集成阶段的主要任务?A. 确定系统架构B. 配置系统硬件C. 集成系统软件D. 编写用户手册8、以下关于信息系统监理师的职业道德规范,错误的是哪一项?A. 坚持诚信为本,客观公正B. 保守客户秘密,维护客户利益C. 遵守法律法规,执行行业规范D. 追求个人利益,损害客户利益9、在信息系统工程中,以下哪个不属于项目管理的核心过程?A、范围管理B、进度管理C、质量保证D、技术设计11、在信息系统工程中,以下哪项不属于项目风险识别的方法?A. 专家调查法B. 文件评审法C. SWOT分析法D. 质量控制计划法13、在信息系统工程中,以下哪个不是项目管理过程中的关键过程领域?A. 项目启动B. 项目规划C. 项目执行D. 项目收尾E. 项目预算15、以下哪项不是系统监理的主要任务?A. 确保信息系统项目的质量B. 确保信息系统项目的进度C. 确保信息系统项目的投资D. 确保信息系统项目的安全性17、在软件开发过程中,以下哪项不属于软件质量保证(SQA)的工作内容?A. 编写测试用例B. 编译代码C. 进行代码审查D. 设计软件需求19、在软件工程中,以下哪项不是软件开发生命周期模型?A. 瀑布模型B. V模型C. 面向对象模型D. 原型模型21、题干:在信息系统中,数据仓库的主要目的是什么?A、提高数据的安全性B、优化数据库性能C、为决策支持系统提供数据支持D、简化数据处理过程23、在软件工程中,下列哪项不是软件需求分析阶段的任务?A. 确定软件的功能和性能需求B. 分析软件的可行性C. 设计软件的架构D. 确定软件的测试策略25、在信息系统工程中,以下哪个选项不属于软件开发生命周期模型?A. 瀑布模型B. 螺旋模型C. 精益软件开发D. 信息系统监理27、关于项目管理知识体系(PMBOK),以下哪个说法是正确的?A. PMBOK只适用于信息系统项目管理。
(完整版)项目管理【案例分析】【案例背景】D公司是一家系统集成商,张某是D公司的一名高级项目经理,现正在负责某市开发区的办公网络项目的管理工作,该项目划分为综合布线、网络工程和软件开发三个子项目,需要三个项目经理分别负责.张某很快找到了负责综合布线网络工程的项目经理,而负责软件开发的项目经理一直没有合适的人选。
原来由于D 公司近年业务快速发展,承揽的项目逐渐增多,现有的项目经理人手不够。
张某建议从公司工作2年以上的业务骨干中选拔项目经理。
结果李某被张某选中负责该项目的软件开发子项目。
在项目初期,依照公司管理规定,李某带领几名项目团队成员刻苦工作,项目进展顺利。
随着项目的进一步展开,项目成员逐步增加,李某在项目团队管理方面遇到很多困难.他领导的团队经常因返工而效率低下、团队成员对发生的错误相互推诿、开会时人员从来没有到齐过,甚至李某因忙于自己负责的模块开会时都迟到过。
大家向李某汇报项目的实际进度、成本时往往言过其实,直到李某对自己负责的模块进行接口调试时才发现这些问题。
【思考问题】[问题1](10分)请分析项目中出现这些情况的可能原因(200字以内).答:(1)李某缺乏担任项目经理所需的足够的能力和经验(2)公司对项目经理的培养不重视,对项目经理的选拔任命不规范;(3)章某对李某的“传帮带”做的不够好;(4)公司对项目经理的工作缺乏指导和监督;(5)项目工作中的沟通没有建立有效的机制和方式方法;(6)缺乏有效的项目绩效管理机制。
[问题2](10分)你认为高级项目经理章某应该如何指导和帮助李某(300字以内)。
答:(1)章某应明确李某的工作职责,帮助其实现向项目经理角色的转变;(2)参加小李组织的周例会,以及时发现问题,予以指导;(3)对李某提供相关工作的指导或培训,尤其是在项目管理方面;(4)从整体项目层面对各子项目进行协调和计划,对子项目提出具体工作要求;(5)加强对子项目的日常监督,要项目经理以身作则;(6)针对子项目中出现的问题,及时提出纠正和预防措施。
软件项目管理中的关键成功因素软件项目管理是指针对开发、实施和维护软件项目的一系列活动和过程,旨在确保项目按时交付、高质量完成。
在软件项目管理中,存在着许多关键成功因素,这些因素在项目的整个生命周期中起着至关重要的作用。
本文将探讨软件项目管理中的关键成功因素,并分析其对项目成功的影响。
一、明确定义项目目标和范围在软件项目开始之前,项目团队必须明确定义项目目标和范围。
明确的项目目标有助于团队成员理解项目的重要性和目的,并为项目实施过程提供指导。
同时,准确定义项目范围可以帮助团队成员明确工作职责,避免不必要的工作重复或遗漏。
二、建立有效的沟通机制良好的沟通是软件项目管理中不可或缺的因素。
项目团队成员应保持密切合作,及时更新项目进展情况,共享信息和解决问题。
通过建立有效的沟通机制,可以减少信息传递的误差和延迟,确保项目各方面的顺利协作。
三、制定详细的项目计划项目计划是软件项目管理的重要组成部分。
项目团队需要制定详细的项目计划,包括项目的时间安排、资源分配和风险管理等。
详细的项目计划能够帮助团队成员明确任务和里程碑,合理分配资源,并在项目变更时快速做出调整,确保项目按计划进行。
四、拥有合适的团队和领导力在软件项目管理中,团队的构建和领导力的发挥至关重要。
项目团队应由技术能力和项目经验丰富的成员组成,以确保项目能够顺利进行。
同时,领导者应具备良好的沟通能力和决策能力,能够有效地推动项目进展并解决团队内部的问题。
五、严格的质量管理和测试质量管理和测试是确保软件项目成功的重要环节。
项目团队应制定严格的质量管理计划,包括对软件开发过程的控制和评估,以及对软件产品的全面测试。
通过质量管理和测试活动,可以及早发现和解决潜在问题,确保软件交付符合客户需求,并提高软件质量和可靠性。
六、风险管理和变更控制软件项目管理中难免会面临各种风险和变更。
项目团队应制定风险管理计划,及时发现和评估项目风险,并采取相应的风险应对策略。
同时,变更也是项目管理中常见的情况,团队应建立变更控制机制,确保变更的合理性和影响的可控性。
2022年11月全国计算机技术与软件专业技术资格(水平)考试《系统集成项目管理工程师(中级)》真题及详解(综合知识)单项选择题(共计75题,每题1分。
每题的四个选项中只有一个答案是正确的)1.()不属于“提升云计算自主创新能力”的工作内容。
A.加强云计算相关基础研究、应用研究、技术研发、市场培育和产业政策密衔接与统筹协调B.引导大型云计算中心优先在能源充足、气候适宜、自然灾害较少的地区部署,以实时应用为主的中小型数据中心在电力保障稳定的地区灵活部署C.加强核心电子器件、高端通用芯片及基础软件产品等科技专项成果与云计算产业需求对接,积极推动安全的云计算产品和解决方案在各领域的应用D.充分整合利用国内外创新资源,加强云计算相关技术研发实验室、工程中心和企业技术中心建设【答案】B【解析】提升云计算自主创新能力,加强云计算相关基础研究、应用研究、技术研发、市场培育和产业政策的紧密衔接与统筹协调。
发挥企业创新主体作用,以服务创新带动技术创新,增强原始创新能力,着力突破云计算平台大规模资源管理与调度、运行监控与安全保障、艾字节级数据存储与处理、大数据挖掘分析等关键技术,提高相关软硬件产品研发及产业化水平。
加强核心电子器件、高端通用芯片及基础软件产品等科技专项成果与云计算产业需求对接,积极推动安全可靠的云计算产品和解决方案在各领域的应用。
充分整合利用国内外创新资源,加强云计算相关技术研发实验室、工程中心和企业技术中心建设。
建立产业创新联盟,发挥骨干企业的引领作用,培育一批特色鲜明的创新型中小企业,健全产业生态系统。
完善云计算公共支撑体系,加强知识产权保护利用、标准制定和相关评估测评等工作,促进协同创新。
B 项属于统筹布局云计算基础设施。
2.物联网从架构上面可以分为()、网络层和应用层。
A.数据链路层B.感知层C.控制层D.物理层【答案】B【解析】物联网从架构上面可以分为感知层、网络层和应用层。
(1)感知层:负责信息采集和物物之间的信息传输,信息采集的技术包括传感器、条码和二维码、RFID射频技术、音视频等多媒体信息,信息传输包括远近距离数据传输技术、自组织组网技术、协同信息处理技术、信息采集中间件技术等传感器网络。
综合管理:项目的生命周期概述项目的生命周期描述了项目从开始到结束所经历的各个阶段,一般的划分是将项目分为“识别需求、提出解决方案、执行项目、结束项目”四个阶段。
实际工作中根据不同领域或不同方法再进行具体的划分。
例如,按照软件开发项目划分为需求分析、系统设计、系统开发、系统测试、运行维护几个阶段,而在建筑业中一般将项目分成立项决策、计划和设计、建设、移交和运行等阶段。
项目生命周期的划分对于IT服务项目来说,从厂商看项目是从接到合同开始,到完成规定工作结束,但如果从客户角度看,项目是从确认有需求开始,到使用项目的成果实现商务目标结束,生命周期的跨度要比前者大。
因为项目的根本目标是满足客户的需求,所以按后者划分考虑比较有益,对项目管理成功也大有帮助:,识别需求。
当需求被客户确定时,项目就产生了。
这个阶段的主要任务是确认需求,分析投资收益比,研究项目的可行性,分析厂商所应具备的条件。
商务上这个阶段以客户提出明确的《需求建议书》或《招标书》为结束标志。
这个阶段尽管可以由客户单独完成,但如果厂商介入则非常有利:一方面可了解客户真正需要什么;另一方面早期的交流可建立良好客户关系,为后续的投标和合同奠定基础。
收集整理第二,提出解决方案。
主要由各厂商向客户提交标书、介绍解决方案。
这个阶段是赢得项目的关键,公司既要展示实力又要合理报价。
如果竞标成功则签定合同,厂商开始承担项目成败的责任。
这个阶段容易出的问题是:因看不见终产品,销售人员可以“随便说”,甚至过度承诺(因不用他们去执行),由此会造成公司的损失。
防治的方法是一方面在合同中明确定义项目的目标和工作范围,另一方面在公司一层建立合同审核机制。
第三,执行项目。
从公司角度来看这才是项目的开始。
这个阶段项目经理和项目组将代表公司完全承担合同规定的任务。
一般需要细化目标,制定工作计划,协调人力和其他资源;定期监控进展,分析项目偏差,采取必要措施以实现目标。
因为IT 项目的不确定性,项目监控显得非常重要,特别是有众多项目同时运行的IT公司,必须建立公司一级的监控体系跟踪项目的运行状态。
项目管理的目标是什么?做了四年项目了,单枪匹马的干过,团队合作的也干过;政府项目做过,商业项目也做过;Web的项目过,Windows的项目也做过;给钱的项目做过,没钱的项目也没少做。
那么,项目管理究竟是什么?或者说包括哪些?先从目标来看,项目管理的目标可是说是将项目需求种的所有要求都完成。
这是基本的目标,不过如果仅仅是着眼于这个目标,那么项目经理和工头又有什么差别?而且实践证明,如果这样来管理项目,那么十有八九项目终是要失败的。
原因?软件项目从来不像想象的简单,一板一眼的按流程完成合同中规定的要求就可以交付项目的情况,通常是可遇而不可求的。
所以不能把项目管理的目标仅仅放在实现合同规定的项目需求上。
敏捷方法论提出的观点是,要为客户创造价值,以提高客户的竞争力为出发点,这比仅仅完成合同更进了一步。
客户是整个软件项目的发起者,从这一个角度来讲,甚至可以认为客户所说得一切都是对的!时刻牢记这一点,通常能够是项目的进行保持在一个更接近正确路线的状态。
客户需要什么?客户遇到这个问题会怎么办?客户觉得这个功能重不重要?客户在这个功能点上会不会提出变化?常常问问自己这些问题,通常能够保证项目不会做成想当然的样子。
如果自己回答不了这个问题,那么赶快拿起身边的电话吧(当然不是让你订购什么)。
理想的情况当然是客户就坐在你的身边,这也是敏捷地观点:把客户作为团队的成员。
说到这儿肯定会有人跳出来说:什么都是客户说了算,那项目永远不要想交付了,因为客户总会有新的想法,那公司还搞个P呀?我觉得很多人在作项目的时候喜欢和客户对立起来,原因也很容易理解,辛辛苦苦写出来的东西被客户一句:我需要的东西不是这样的,就推翻了。
然后需求全变了,以前做得都没有用了,工期又进在眼前,老板在催,开始加班,带着一股怨念,拖着疲惫的身心,之能写出垃圾代码。
于是,项目失败也就不远了。
回过头来看,似乎噩梦似乎是从客户变更需求开始的。
需求变更变成了程序员挥之不去的梦魇。
软件项目管理的研究及在项目开发中的应用
针对软件项目开发的特点和软件开发包项目高失败率的善通过对软件项目管理方法的研究提出了软件项目开发过程的一种管理流程和相应的子流程,实现了对软件项目控制和管理。
前言
软件项目管理是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对成本、人员、进度、质量、风险等进行分析和管理的活动。
实际上, 软件项目管理的意义不仅仅如此,进行软件项目管理有利于将开发人员的个人开发能力转化成企业的开发能力,企业的软件开发能力越高,表明这个企业的软件生产越趋向于成熟,企业越能够稳定、持续地发展。
软件项目管理的特殊性表现在:①软件产品是无形的。
软件项目管理者不能像其他项目管理者那样,能够从被开发的产品上看到进度、已经完工的部分
是否与设计相符等,他们只能从其他人所提交的文档中来掌握相关的情况。
② 没有标准的软件过程。
对软件过程的理解虽然已经取得了长足的进步,但是软
件管理者还是不能确切地预见某一软件过程何时有可能出现问题。
③大型软件
项目常常是一次性的”。
由于软件项目与一个国家、地区的经济政策相联系, 与用户的发展战略、经济实力、管理水平相适应,软件项目的开发过程中所采用的技术和管理方式与当时的计算机和通信技术有关,因此大型软件项目一般都不同于早先的项目,管理者纵使有在计划中降低不确定性的经验,也很难较准确地预见问题的出现,以前的经验教训也较难在新项目中发挥大的作用。
从目前国内外的软件企业来看,软件危机”的阴影仍然存在,软件行业的项目实施情况一直很不乐观。
研究表明,软件项目失败的原因主要有两个: 是应用项目的复杂性;二是缺乏合格的软件项目管理人才。
实践证明,缺乏有效的项目管理是导致软件项目失控的直接原因。
软件项目管理的方法研究
从软件项目的管理角度来看,项目的直接责任人是软件项目经理。
也就是
说,项目经理是项目整体管理的责任人,要在规定的时间范围内,在不超过经费的情况下,能够达到或超过项目干系人的愿望。
项目整体管理围绕项目计划进行,主要过程有计划制定、计划执行和计划变更控制。
项目经理在以下几个方面对软件项目进行全面的管理:
(1) 制定项目计划。
软件项目计划是一个用来协调所有其他计划,以指导项目执行和控制的可操作的文件。
它体现了对客户需求的理解,是开展项目活动的基础,是软件项
目跟踪与监控的依据。
项目计划主要由全局计划和下属计划两大部分组成。
在上级主管签发项目任务书后,项目经理立即和核心成员组成一个项目规划小组,对项目进行规划,得到项目的全局计划,主要内容有项目的目标与范围、人力资源计划、软件资源和硬件资源计划、财务计划、整体任务进度计划。
这一部分计划要上一级机构领导审批。
下属计划一般包括配置管理计划、质量管理计划、阶段开发计划和测试计划等,因为项目计划与项目执行应该是相互渗透的,因此在下属计划制定时,项目经理必须把握的原则是:某一部分的工作由谁负责,则该部分的计划就由谁来制定;下属计划部分一般由项目经理审批即可。
(2) 制定开发过程。
软件开发的风险之所以大,是由于软件过程能力低,其中关键的问题在于软件开发组织不能很好地管理其软件过程,为此必须强调和加强软件开发过程的控制和管理。
软件项目的开发过程主要有系统调研、需求分析、概要设计、详细设计、编码、测试、实施与维护等,但对于不同的软件项目,虽然大体上
过程相同,但不同的项目其每一个过程所包含的一系列具体的开发活动(子过程)千差万别,而且不同的项目组采用不同的开发技术、使用不同的技术路线,其
开发过程的侧重点亦不一样。
因此项目经理在软件项目开发前,根据所开发的软件项目和项目组的实际情况,建立起一个稳定、可控的软件开发过程模型,并按照该过程来进行软件开发是项目成功的基本保证。
软件开发过程要做到稳定、可控,真正对项目起到规范和约束作用,关键在于以下
几个方面:① 整个开发过程以流程的形式表示,过程简单、清楚。
② 重要的过程以子流程表示,对总体流程进行细化和补充。
③ 定义总体流程和各子流程进入的必备条件和结束条件。
④ 明确流程结束时需要考核的内
容。
⑤所有前面四项通过评审和批准。
(3) 加强过程控制。
软件项目的开发和实施往往都是在“变化”中进行的。
可以毫不夸张地说,软件项目的变化是持续的、永恒的,找不到不会变化的软件项目。
需求会变,技术会变,系统架构会变,代码会变,甚至连环境都会变;项目经理在完成相应的项目计划和准备后,其主要任务就是进行过程控制。
软件项目的过程控制包括过程管理和变更控制。
过程管理主要是依据项目计划对软件项目进行监控,能顺利进行过程管理的关键是项目管理制度化。
制度化的主要内容有:① 对项目组成员的工作定期检查。
② 要求所有的开发过程以文档形式表示。
③ 制定各种文档的模板,并要求在项目的整体开发过程中,以统一的模板来撰写文档。
④ 项目组成员在开发过程中严格按照规定的流程进行,若更改过程,必须按变更管理的规程进行。
如何在受控的方式下引入变更、监控变更的执行、检验变更的结果、终确认并固化变更,并使变更具有追溯性,这一系列问题直接影响项目的成败。
为
此,变更的控制关键要从以下两点人手:①制定适合于本项目的变更处理流
程,并严格按流程来处理所有变更。
②做好配置管理,保证软件项目的工作产
品在整个项目周期中的完整性”。