本文主要介绍了软件项目管理的概念,讨论了软件项目管理中人员的组织方式,考核测评方法,并提出了技术人员职业幸福感的管理新思路,激励技术人员的开发热情和智慧,从而提高软件工程的质量。
论文关键词:软件工程;管理;协调;沟通
软件项目管理是在20世纪70年代中期美国首先提出的,当时美国国防部专门针对软件开发不能按时完成交付、预算超支和质量达不到要求的原因进行了研究。结果发现70%的项目是因为管理不善引起的,而非技术原因,于是人们逐渐认识到要重视软件开发管理工作。而在开发管理工作中最为重要的就是技术人员的管理。软件工程管理和其他的项目管理相比较有很大的特殊性。软件是属于知识产品,其开发进度和质革很难估计和度量,生产效率也难以预测和保证。因此,为了保证软件开发的质量,在软件系统开发和维护的过程中,除了要研究软件的技术之外,还要研究管理的方法。特别是对技术人员的管理,要做到科学化、制度化、人性化下面针对项目开发中人员的组织与管理的相关问题进行研究。
一、项目开发中的人员组织
提到软件工程项目管理,就不得不提到人,人即作为管理的实施者也是管理的对象,在软件项目中开发人员管理是核心的资源,其中人员的配置、调度安排贯穿整个软件项目过程中。人员安排的组织管理是否得当,对软件项目成功起到决定性的作用。
在软件项目初始阶段,要根据工作量大小、所需的专业技能类型、团队成员能力水平、性格和开发经验,组建开发小组。一般来说,开发小组的人数应陔在5-10人最为合适。在组建开发组时,还应充分估计到开发过程中的人员风险。由于工作环境、待遇、作强度、公司的整体工作安排和其他无法预知的因素,一个项目尤其是开发周期较长的项目几乎无可避免的要面临人员的流人流出:如果不在项目初期对可能出现的人员风险进行充分的估计,作必要的准备,一旦风险转化为现实,将有可能给整个项目开发造成巨大的损失:以较低的代价进行及早的预防是降低这种人员风险的基本策略。因此先要做好人员的组织工作。
二、项目开发中的人员管理
在软件工程项目中,人员组织主要有项目经理、软件项目经理(负责人)、软件工程组、系统工程组、系统测试组、软件质量保证组、软件配置管理组。
1、项目经理(负责人):项目经理(负责人)对整个项目负完全责任,是指导、控制、管理和规范某个软件和软/硬件系统建设的人,项目经理(负责人)是最终对客户负责的人。
2、软件项目经理(负责人):软件项目经理(负责人) 对一个项目的所有软件活动负完全责任,控制一个项目的所有软件资源,按照软件约定与项目经理(负责人)打交道。
3、软件工程组:软件工程组是负责一个项目的软件开发和维护活动(例如:需求分析、设计、编程和测试)的人员(包括管理人员和技术人员)。
4、系统工程组:系统工程组是负责下列工作的人(既有经理也有技术人员)的集团:规定系统需求;将系统需求分配给硬件、软件和其它成分;规定硬件、软件和其它成分之间的界面;以及监控这些成分的设计和开发以保证它们符合其规格说明。
5、系统测试组:系统测试组是一些负责策划和完成独立的软件系统测试的个人(既有经理又有技术人员)的集团,测试的目的是为了确定软件产品是否满足对它的要求。
6、软件质量保证组:软件质量保证组是一些计划和实施项目的质量保证活动的个人(既有经理又有技术人员)的集团,其工作的目的足保证软件过程的步骤和标准得到遵守。
7、软件配置管理组:软件配置管理组是一些负责策划、协调和实施软件项目的正式配置管理活动的个人(既有经理又有技术人员)的集团软件项目管理中的人员组织比较复杂,管理活动是一个闭环管理的过程。软件开发组织中的人员管理的一个关键点是,要意识到软件开发的团队组织是一群有创造力的软件工程师,在整个软件开发过程中应严格遵循规程,因为规程所制定的目的是保证一个项目小组所有人在一起协调有序的工作,任何违反规程的个人行为都将对整个小组的效率产生影响;而在需求分析和软件设计环节上,应大力鼓励创新和创造性思想,打破常规去发掘和发现用户真正的需求要求和需求动机,力图在系统设计一级上追求超出一般的解决方案。对团队中的成员表现可以建立一套评测标准,其目的不仅在于考核效绩,更在于为每个人量身定做职业和个人能力发展的道路。从而为项目开发作出基础保障。一个合格的软件工程师应在以下六个方面体现:
(1)软件编程能力。这是一个软件工程师的基础,主要衡量他的代码质量,有没有好的编程习惯,代码是否易懂、易维护、简洁有效。我们要求所有工程必须达到这个基本要求。
(2)体系结构设计能力。一方面衡量是否有能力完成系统结构设计,另一方面要求做实现的工程师能否领会系统结构的设计意图,有系统意识,并时刻贯穿于具体实现当中。
(3)领域知识。软件开发都是为解决某一领域的问题,而具有相关领域的知识将会有利于产生高质量且贴近用户的产品。
(4)管理和协调能力。软件开发是一个团队的活动,如何组织好一个团队并使其产生效率将直接影响资源的有效利用率。
(5)沟通和展示能力。团队的有效活动需要交流和沟通的支持,是我们又必须到内部交流所产生的代价,应设法提高交流的效率,使其在最小的代价下运转正常。
(6)创新和创造能力。创新能力将是一个软件开发团队富有活力的体现。要注意发掘和培养富有创造力的软件人才,使他们有施展才能的空间。
通过这六个方面的测评,这有利于软件开发团队健康而长期稳定地发展。对于不同素质的人在委派工作岗位时,要注意用人所长、避人所短。发挥团队的协作优势,促进项目的和谐进展。
三、项目绩效考核
良好的绩效评估能促使项目人员改变自己的行为,帮助个人在组织环境的自我学习中不断成长。项目绩效考核的对象包括项目团队、成员个人和项目经理,根据考核对象的不同,评价标准和评价方法会有所侧重点。在项目团队评价中,主要集中在时间和成本绩效管理,评价方式常用的是调查法,组织根据调查的结果对项目团队的发展、优势和劣势,以及给今后项目工作带来的经验等方面进行评估。而在团队成员和项目经理的考核中,比较有趣的是项目经理和团队成员一方面惧怕对自己的评估考核,担心考核的标准是否公平合理,自己的表现能否带来高额的奖金或工资的大幅增长。另一方面是内心又渴望组织的考核,认为自己对项目的努力程度以及付出的劳动成果应有良好的回报,考核的结果也正是对劳动成果的量化。不同的是项目经理在被评审的同时,还要承担对团队成员的考核工作。值得注意的是:项目经理在绩效评价过程中的介入深度,会因组织结构的不同而有所不同。例如:平衡矩阵中,项目经理和部门经理对团队成员进行联合评价;项目型矩阵中,项目经理应负责评估个人绩效。
一般来说,所有的绩效评估方法都将集中于它为各个项目和团队带来的技术管理经验和社会人文技能。在IT企业项且绩效管理过程中,为掌握关键知识的员工提供合适的岗位和奖金制度,并制定相应的绩效考核制度,给员工带来稳定感和挑战性,防止完工不报告等不良行为因素的发生尤为重要。这里我们比较推崇的方法是“360度反馈(360一degreefeedback)”评估。这种方法要求从参与项目活动的所有人那里收集到工作绩效方面的反馈意见,包括职能经理、同事和下级甚至客户。一方面这在结构层次简单的IT企业中较易实现,另一方面能全面发现个人的长处和短处,为提高绩效水平制定行动计划。关于这方面的讨论读者可以参考相关书籍。
四、营造轻松愉悦的工作环境
当注重人员管理的同时,也要从项目的工作环境人手,为软件工程项目工作人员营造轻松愉悦的工作环境,从而提高技术人员的工作热情,保证技术人员的心理健康。这里我们提倡培养技术人员的职业幸福感,对工程项目具有非常重要的意义。出色职业幸福感的管理可以大大提升技术人员的满意度,高的技术人员满意度能够获得有效用户满意度,于是就能够为工程项目创造更大的价值。来自哈佛大学的一项研究发现,工作人员满意度提高5%,会连带提升11.9%的外部客户满意度,同时也可以使企业效益提升2.5%。可见,企业若能有效提高员工的职业幸福感,就能提高工作效率,增强竞争力要想提高技术人员的职业幸福感,就要清楚他们最为关心的是什么。经过研究认为技术人员在工程项目中最关注的三个方面是:(1)能赚多少钱;(2)通过参与项目个人能有什么样的发展;(3)工作时能保证愉悦的心情,舒适的工作环境。因此在进行工作人员职业幸福感管理时也可以从这些方面入手,具体如下:
l、公开项目资金情况,明确个人可得收入
公开项目收支情况,让全体项目参与者了解整个项目的营收,增强奋斗目标。当参与者明确个人的项目收益后,能够激励参与者的工作热情,促进项目的完成。
2、提供良好的技术人员发展平台
自从传统的“铁饭碗”的终身雇佣关系被打破后,个人要在社会上生存,唯一的生存之道就是不断地发展,提升。因此,技术人员在依靠技术赚取收入的同时,能否发展提高,成为技术人员最为关注的问题。企业应为技术人员搭建一个公平、合理、公正的发展平台,建立员_丁=职业发展通道,明确晋升标准,岗位能力标准,牵引员工不断的努力提高。同时,在企业内部为技术人员提供课程、导师、轮岗等多种发展所需的资源,建立培训、职业规划等体系,为技术人员发展提供有力的支撑。减少完成一个项目,更新一批技术人员的现状,降低企业的培养成本,稳固一只技术过硬,相对稳定的合作团队。为企业的稳步发展奠定基础。
3、营造良好的文化氛围,体现人文关怀
随着知识经济的发展,“人”成为最大的财富,在“以人为本”的理念指导下,越来越重视技术人员的个人发展,关心他的个人感受。不仅应不断的丰富技术人员的文化生活,组织丰富多彩的文化活动,在组织内营造积极、奋进、信任、分享、合作的文化氛围。同时,也应建立科学、公正、公平的制度体系,包括上面提到的测评,薪酬福利等,使技术人员安心、快乐的工作,提高幸福指数,让技术人员得到较高的职业幸福感。
五、总结
为了保证软件开发项目的实施进度和质量,首要的任务就是把参与项目的人员管理好,要充分的发挥现代化的管理理念,人文化的管理手段,幸福感的管理氛围,使得项目参与人员能够发挥最大的聪明才智、调动最高的工作热情为项目取得完满的结果而努力工作。
持续集成是极限编程12个基本原则之一,正在被越来越多的团队所采用。软件项目管理涉及到九大知识领域,贯穿于软件过程的始终,目的是为了让软件项目的整个软件生命周期(从分析、设计、编码到测试、维护全过程)都能在管理者的控制之下,以预定成本按期,按质的完成软件交付用户使用。持续集成这种软件开发实践,对于软件项目管理的各个领域的管理有着积极的作用。 一、引言 软件项目经理不但要用管理知识管理整个项目.还...
本文针对软件开发中的进度延期、费用超标、质量低下等问题,探讨了如何利用项目管理中的相关控制方法进行软件开发过程控制。、论文在阐述软件项目管理内容的基础上,针对软件项目的三要素分别进行了探讨:进度控制、费用控制和质量控制,提出了几种有效的软件项目管理控制方法。这些研究对于加强我国软件项目管理控制过程,降低开发成本,减少开发风险具有重要的意义。 论文关键词:项目管理进度控制费用控制质量控制软件开发 ...
本文主要分析了我国软件项目管理的现状及存在的误区,总结了软件项目管理方面的经验,提出了初步的解决方案和办法。 随着计算机硬件水平的不断提高,计算机软件的规模和复杂度也随之增加。计算机软件开发从“个人英雄”时代向团队时代迈进,计算机软件项目的管理也从“作坊式”管理向“软件工厂式”管理迈进。这就要求软件开发人员特别是软件项目管理...
网络信息安全中防火墙扮演着重要角色,而硬件防火墙对大型网络安全更是至关重要,研究硬件防火墙将为大型网络的安全增加砝码。通过对硬件防火墙工作原理的研究,明白为何大中型网络要使用硬件防火墙,理解硬件防火墙在网络中的工作原理和过程,知道硬件防火墙的基本配置考虑要素。了解硬件防火墙的选购标准,增强对硬件防火墙在网络信息安全中重要性的认识。 论文关键词:网络信息安全;大型网络;硬件防火墙;三次握手;过滤;...
个人知识管理工具是实施知识管理的物质基础,通过对综合性的个人知识管理系统的比较分析,提出选择个人知识管理工具的原则,使个体能够高效地进行知识整合,提高个人在社会和组织中的价值。 论文关键词:个人知识管理工具;知识操作;知识组织;知识共享 1个人知识管理工具的类型 个人知识管理是知识识别、获取、开发、共享、利用和评价的过程。研究者从不同角度对个人知识管理工具进行了不同的分类。钟琳从企业中知识的...
在电子政务建设中,如何准确把握信息安全与应用建设的关系,既有效减小安全风险,又保证应用顺利开展,是许多信息系统建设者、使用者都会遇到的问题。对于这一问题的圆满解决,既需要有微观上的技术手段,又要宏观上的理论指导和观念更新,尤其是宏观方面的考量,在信息系统建设的整体把握和政策导向方面尤为重要。本文通过对应用与安全两者在信息系统中所处位置的形象比喻,试图理清应用与安全之间既相互矛盾、又互为依存的关系,...
网络语言的使用不仅是一种语言现象,也是一种社会文化现象,青少年群体是创造并使用网络语言的主体。旨在通过青少年对网络语言的使用状况和态度,分析其所蕴含的社会文化心理,以及社会现状与青少年使用网络语言的相互作用并对网络语言的规范提出些意见。 前言 21世纪是信息技术狂飙突进的时代,一种新的语言现象——网络语言随之诞生,并成为语言学研究的一个新的亮点。网络语言从本质上来说是现...
本文介绍了研制《地理信息系统原理及应用》多媒体教学软件的必要性以及软件设计思路及开发过程,着重阐述了该教学软件的特色和教学效果。 一、引言 《地理信息系统原理及应用》是测绘工程、土地管理专业方向的专业课。作为“3s”之一的地理信息系统(GIS)是以空间数据库为基础,在计算机软硬件环境的支持下,对空间相关数据进行采集、管理、操作、分析、模拟和显示,适时提供空间和动态的地理...
ASON作为下一代光网络中最重要的技术之一,在设备开发方面已经达到较高的水平,但是在应用方面还刚刚起步。本文通过分析ASON技术的特点和优势,讨论ASON在移动通信中的应用前景。关键词:ASON传送网移动通信 1引言 随着移动通信的飞速发展,数据服务量不断激增和接入业务日益多样化,对光传输网络在自适应能力方面提出了更高要求。当前通信网络的发展不仅要创造更大的带宽容量,还要解决如何将网络中的...
本文介绍了一个基于工作流技术而研制的软件项目管理系统。文章首先描述了传统软件项目管理系统的不足之处,提出用工作流的方法来设计软件项目管理系统,然后介绍了一些理论基础。文中重点阐述了系统的设计结构和所采用的一些技术,并给出了部分的具体实现方法。 论文关键词:工作流,JMS,项目管理,SPP,建模,工作流网 1前言 2O世纪7O年代以来,为了解决软机危机,改进软件过程能力,计算机科学家提出了软件...