软件第三方开发管理

2024-07-05

软件第三方开发管理(通用10篇)

软件第三方开发管理 篇1

通信行业是我国较早建设信息系统并使用电子技术处理业务的行业, 国内几家运营商都拥有各自功能强大、技术先进的企业信息化部门, 在软件开发以及软件开发管理上均有一定成功的经验。但随着当今通信行业竞争的不断加剧, 新业务和新产品层出不穷, 以及多元化社会广大人民群众日益丰富的应用需求, 同时当今通信网络在一个IP化, 全业务融合化的进程中, 特别是三网融合的大背景, 以及物联网在我们国家的引入与应用, 对新业务新产品进行定制的需求将越来越多、研发需求必然也将越来越多, 同时其使用者也由原来的企业员工将逐渐过渡到广大用户, 必然导致其建设投资也将越来越大。

在信息技术日新月异、专业化分工日趋细化的形势下, 集约化经营是在竞争中生存的必然要求, 通信行业必然不能通过无限制扩大内部科技力量的规模来满足, 新业务新产品研发外包或由第三方开发越来越会成为主流和必然, 其一方面可以降低人力资源的投入成本, 解决软件开发力量不足的问题, 另一方面还可以充分利用社会上专业分工细化的研发力量以及日新月异的信息技术来高速发展并提高企业的创新能力, 快速高效地实现业务需求, 准确推出新业务新产品, 进而使运营企业将更多的精力投入到强化核心业务竞争力上面。只有这样, 运营企业才可以化被动为主动, 获得竞争优势。

目前软件研发外包已然在运营企业各地广泛施行, 但是远远不能满足当前的业务需求, 借助互联网学习来的经验, 大力普及与推广第三方开发将进一步向前发展, 当然我们欣喜的看到第三方开发也已起步。

如何学习使用先进管理手段, 更加科学合理有效地施行第三方开发, 满足用户日益多样化与迫切的业务需求, 从而充分体现集约化经营效益, 这也已成为当今我国运营企业将面临的紧迫课题。

为此, 本文就当前国际国内软件行业先进管理模式SA - CMM模型这一先进管理手段做简单自我浅析, 提高运营企业在第三方软件开发项目管理水平方面进行一点简单建议, 希望能在解决软件第三方开发方面存在的问题上做出一些小的贡献。

一、 目前运营企业软件外包项目的管理过程及方式

目前运营企业越来越多的软件项目已经选择了外包的开发模式, 其实施过程通常分为以下几个阶段: 项目启动、项目招标、项目开发、项目验收、项目收尾。

而第三方开发还未见明确的相关流程规范, 几乎是在沿用外包管理模式。

二、存在的问题

当前运营企业在施行软件外包项目、第三方开发的过程中, 经常面临着管理粗放、流程不完整、有效监控缺失等诸多问题, 软件获取能力的成熟度比较低, 难以充分发挥高水平的投入产出效益, 与国际先进软件开发相比, 在项目管理上尚有较大差距。自我观察大致有以下几个方面的问题:

(一) 项目管理组织的专业性有待提高。首先从组织结构设置方面, 对软件外包、第三方开发项目缺乏专门的机构进行管理。项目监督和采购, 业务支撑人员大多来源于不同的内部组织, 临时参与到项目中来, 缺乏全面的项目管理专业知识, 项目监督人员不熟悉采购管理方法, 采购人员, 业务支撑不熟悉软件开发以及项目监督方法, 往往导致外包、第三方开发项目的目标偏差度较大。

(二) 项目管理的规范性有待提高。当前运营企业在外包、第三方开发项目实施的各个阶段, 普遍缺乏规范性, 致使项目管理因缺乏规范化、标准性的依据而随意性较大, 项目管理的有效性和执行效率较差, 缺乏对承包方、第三方开发者的监督制约, 同时全过程管理水平也有待提高。

(三) 风险控制水平有待加强。通信行业作为国计民生的基础行业, 决定了其是一个对风险控制比较严格的行业, 但当前运营企业在软件项目外包、第三方开发过程中却缺乏对项目的有效风险控制, 从而使项目在实施过程出现的各种问题不能很好的解决, 增加了项目失败的可能性, 同时也加大了新业务新产品, 以及核心关键网络的安全隐患。

参考文献

[1]白荣欣.资源外包成因的研究综述[J].中国科技论文在线, 2011 (6) .

[2]康一梅.软件项目管理[M].北京:清华大学出版社, 2010, 4.

[3]刘慧, 陈虔.IT执行力-IT项目管理实践[M].电子工业出版社, 2004, 5.

电子阅览室管理辅助软件的开发 篇2

关键词:电子阅览室;管理;辅助软件

中图分类号:TP311.52文献标识码:A文章编号:1007-9599 (2013) 06-0000-02

1当前电子阅览室的管理现状

在现代高等教育发展的今天,大学之间的相互竞争日益激烈。在网络信息化高度发达的今天,高校纷纷建立起电子阅览室。

电子阅览室是高校为学生提供上网的地方,阅览、咨询、培训、服务为一体的现代化多功能阅览室,为学生查资料提供查找资料的场所!是图书馆流动性很大的一个部门,其管理难点除了有效地防止微机系统的人为破坏和感染病毒外,还对读者访问站点和读者玩游戏进行监控。不少读者反映由于玩游戏的人较多,影响了他们的正常阅览。在功能强大的管理系统的管理下,为什么还会出现以上这些情况?经过分析,我们认为现有的管理软件的功能还不能充分满足图书馆服务需求。

由于大量的管理软件是针对网吧开发的,网吧管理软件主要考虑上网稳定、计费精确、游戏更新方便;而学校电子阅览室以教学为主,以提供在校学生学习信息技术为主要任务,只接待本校学生,要求管理严格。开放的网络平台充斥着各种诱惑,如果不处理好这个问题,就会与建立电子阅览室的初衷背道而驰,影响大学生的健康成长。高校电子阅览室的管理软件缺乏控制游戏和浏览不健康网站方面的功能,使得电子阅览室管理的局限性显而易见。

2学生利用电子阅览室的调查现状

根据笔者在阅览室工作多年的实际经验,在不进行任何良性引导的情况下, 80%的学生上网取向是以休闲娱乐、猎奇和情感交流为主。发现在电子阅览室中娱乐的人数远远超过了利用电子阅览室在网上查询信息的学生人数。大部分低年级学生以娱乐为主,利用网上资源进行娱乐、消遣活动。一些大学生热衷于网络的各种游戏,他们或人机对擂,或联机对抗,久而久之,渐渐对自己的学习不感兴趣,出现了平时不认真听课,作业靠抄袭应付,考试不择手段地进行作弊,甚至旷课逃学等现象。他们中的相当一部分,把学校图书馆的电子阅览室几乎当成了电子游戏室,电子阅览室的主要功能无法正常发挥。学校对于这种情况十分头痛,也先后制定了相关处罚条例,采取了有关禁止网络游戏的措施,但收效甚微。

有的学生过分留恋通过电子阅览室享受到的娱乐、休闲和消遣,常常乐而忘返,把食品饮料带进电子阅览室,一呆就是一天,有的长达11小时,直到清退读者的时候才无可奈何地离开,真像是以此为家了。

因此,我们希望,图书馆界能重视电子阅览室管理软件的使用问题,让图书馆电子阅览室的管理水平上升到一个新境界。开发一种适用于高校电子阅览室的专用游戏和不健康网站控制软件,用于辅助电子阅览室的管理。

从当前出现的游戏控制软件来看,大概分为两类:一类是家庭用的家长控制软件,主要用于父母控制孩子的网络行为,而另一类则是集成在网吧管理软件中,大部分只能监视用户,主要依靠网吧服务员的守法意识,循环查看、发现、手动杀死不法网络行为来实现,能够自动控制的游戏和不健康网站早已在软件中定制,还不是自动执行,效果很小。

针对这一问题,我们提出利用网络本身来对高等院校的图书馆电子阅览室进行科学管理的想法。开发专用的软件,对网上信息的合法性、符合高等学校的管理规定和需要等进行实时的、自动分析和控制,以便提高浏览不健康网站和打游戏的监管能力,从而提高电子阅览室的管理水平,填补绿色大型分布式集中控制型电子阅览室管理辅助软件空白,并有独立的版权。

电子阅览室实施改良后的管理软件以后,上网环境完全转变,泡网的读者没有了,偷偷玩游戏的少了,可以说用“小”手段解决了“大”问题。

3具体来讲研究内容包括两方面

3.1首先是电子阅览室管理辅助软件的编制和兼容性的设计

兼容性(Software Compatibility),由于一系列的各种计算机从程序设计者角度看来都具有相同的机器属性,因此按这个相同的机器属性编制的机器语言程序以及编译程序都能不加修改地应用于这一系列计算机,我们称这种情况下的一系列计算机是软件兼容的,它们的区别仅在于运行所花费的时间不同。软件兼容性是衡量软件好坏的一个重要指标,包括以下属性:(1)与软件无需采用有别于为该软件准备的活动或手段就可能适应不同的规定环境有关的软件属性;(2)使软件遵循与可移植性有关的标准或约定的软件属性;(3)与软件在该软件环境中用来替代制定的其他软件的机会和努力有关的软件属性。

综合全国各地高等院校图书馆电子阅览室的软硬件情况如下:

硬件环境:X86系列计算机

网络环境:Internet网络,大部分是5类网,支持tcp,ip,ftp,dhcp,wins,ipx/spx/netbios等一系列常用协议

操作系统环境:客户机。主要是windows系列,包裹windows xp,windows2003,windows 2000/nt,windows 9X等,近来win7也逐渐增多。

应用程序环境复杂,本软件不依靠任何客户端应用程序。

服务器:包裹windows2000/nt,linux,unix等

数据库:SQL server,access,mySQL等

应用环境综述如下:客户端是X86平台上的Windows系统,Internet网络。大部分电子阅览室只有管理机,没有服务器,更没有数据库服务器。小部分有的大都只支持TCP/IP和FTP。

如上所述,本软件基于兼容性的考虑,客户端定位于windows操作系统。不使用专用数据库,而依据传输数据量较小、内容固定的特点,使用文件代替数据库。通信协议也使用稳定,使用范围最为广泛的FTP协议,以达到跨网段远程控制的目的。为解决丢包,延迟等传输问题,在软件中添加了文件完整性检测的手段。不使用专用服务器和数据库,而以常见的FTP服务软件代替,如SERVER-U等。这样,就可以用管理机代替服务器进行管理,不需要专门的投资。进行了这3点定位后,本软件能够适用于大部分现有的电子阅览室。

3.2软件的编制

服务器端采用FTP服务软件。客户端采用功能强大的Visual C++ 6.0可视化软件开发工具。它兼容性好,应用广泛,有强大的网络通讯能力,浩如烟海的子程序库。

开发软件:基于以上现状的调查,发现现阶段学生玩的游戏主要有两种,一种是大型的专用程序,另一种是新兴起的网页游戏,开发的软件也以查杀这两种游戏为主,流程如下:

4意义

本项研究在国内同类研究中尚属首次,体现了具有时代特色的创新,为应用网络技术对其他相关领域进行管理提供了可行性的借鉴,拓宽了网络管理方法研究的领域。其主要创新点体现在两个方面:

4.1将网络技术创造性的引入高等学校的图书馆电子阅览室的网络环境管理中,提供了一种新的网络环境分析和管理方法,对高等学校图书馆管理提供了新的手段。这将有利于整个图书馆的管理方法研究向深层次推进,特别是这种基于网络的电子阅览室管理软件可以实现不同学校、不同校区、不同电子阅览室的统一管理,从而能够对图书馆的管理更上一层楼提供一个新的方法,为各个高校图书馆管理合作提供统一的依据和平台。

4.2首次将高校图书馆电子阅览室网络环境的管理提到议事议程中,对净化学习环境,提高高校人才的培养平台,提高图书馆设备利用率,建设一个高效和成熟的图书馆利用系统有重要的推动意义。

参考文献:

[1]潘旭伟,李娜.基于Web资源的组织知识服务研究[J].图书情报工作,2012,56:10.

[2]李琳.高校电子阅览室现状的调查与分析[J].图书与档案,2012,33.

[3]卓然,胡艳.论高校图书馆电子阅览室现状[J].信息与电脑,2010,4.

[4]张微平.让电子阅览室不再成为学生玩游戏的乐园[J].科技情报开发与经济,2008(18):9.

[5]朱静.高校电子阅览室网络游戏现象分析与对策[J].图书馆杂志,2004,8.

[作者简介]牛鲁玉(1971.10-),女,山东泰安人,山东农业大学图书馆,馆员,本科,研究方向:图书情报与管理。

软件第三方开发管理 篇3

软件配置管理(SoftConfigureManagement,SCM),简单而言就是对软件及相关内容的变化进行规范和高效管理。软件配置管理贯穿于整个软件生命周期,为软件研发提供了一套管理办法和活动原则。[1]它提供了工作空间管理、并行开发支持、权限控制、变更管理等一系列管理模式,贯穿于整个软件产品开发生命周期,成为软件质量保证、过程改进和项目管理的基础,是软件产品开发企业不可或缺的重要管理手段。但是如何针对某类项目具体实施配置管理,将现有配置管理相关理论和软件开发过程有机结合在一起,实现贯穿软件开发过程的配置管理实施方法是一个需要深入研究的问题。

1软件配置管理概述

1.1软件配置管理的内容

随着计算机应用的深入,软件项目的需求日益复杂且变更频繁。配置管理逐渐成为软件生命周期中的重要控制过程,在软件开发过程中扮演着越来越来重要的角色。

在整个项目的软件生存周期内,软件配置管理记录了软件产品的整体演化过程,是对处于不断变更、完善过程中的软件产品进行跟踪和管理的过程。整个管理过程包含版本控制、建立软件配置库、配置项变更控制、软件基线记录报告、配置审计与追踪、配置状态报告等多项活动,它通过控制、记录、追踪对软件的修改和每个修改生成的软件配置项来实现对软件产品的管理,完成对软件产品及其开发过程、生命周期的控制和规范,实现软件产品完整性、一致性、可控性。

站在整个开发过程的高度,一个完整、优秀的配置管理过程能够覆盖整个系统软件开发、测试、变更、维护的各个方面,同时对软件开发过程进行宏观管理和控制,使软件开发过程具备更好的可预测性,软件产品具有可重复性和可追溯性,从而大大提高软件开发的效率和质量,建立和维护软件项目产品的完整性,保障所有软件开发资源的维护和集成。[2]1.2配置管理在软件开发过程中的重要性

对于大型软件开发项目来说,在技术日新月异、人员流动频繁情况下,对软件开发过程中的大量文档、数据和代码进行统一管理、维护,建立相应的知识产权库,把个人的零散研发积累转化为项目共有的知识产权,这对于提高工作效率,缩短产品研发周期,增强软件可维护性和产品核心竞争力具有至关重要的作用。

配置管理与项目开发的成功与否息息相关。众所周知,软件配置管理的最终目标是管理软件产品。由于软件产品是在用户不断变化的需求驱动下不断变化的。为了保证对产品进行有效的控制和追踪,配置管理过程不能仅仅对静态的、成形的产品进行管理,而必须对动态的、成长的产品进行管理。由此可见,配置管理同软件开发过程紧密相关。配置管理必须紧扣软件开发过程的各个环节:管理用户所提出的需求,监控其实施,确保用户需求最终落实到产品的各个版本中去,并在产品发行和用户支持等方面提供帮助;响应用户新的需求;推动新的开发周期等。通过配置管理过程的控制,用户对软件产品的需求如同普通产品的订单一样,遵循严格的流程,经过受控的生产流水线,最后形成产品,发售给用户。各个角色间职责明确,泾渭分明,又前后衔接,相互协调。

软件配置管理是软件开发的基石,它为软件研发提供协作开发的环境,规范了开发流程,大大提高了研发效率,确保了研发过程中的可追溯性,使整个软件研发过程成为相互协调、相互促进的有机整体。

2软件配置管理的实施

2.1软件的开发过程

软件开发过程包含软件需求分析、体系结构设计、代码开发和变更、软件集成、各级测试、产品交付等所有活动和任务的全过程。[3]项目开发和维护阶段是实施配置管理主要活动的阶段。软件开发过程中的配置管理如图1所示。

(a)软件部分开发全过程(b)配置管理的实施过程

图1(a)描述了软件部分开发全过程,图1(b)描述了配置管理的实施过程。二者有机结合形成了实施配置管理的软件开发模型。

在项目计划阶段,配置管理的主要活动是制定配置管理计划。项目开发维护阶段是项目研发的主要阶段,包括设计、软件研发、测试和产品发布等活动。而软件配置管理的实施贯穿于整个项目的开发和维护。

1.3配置管理工作流程

在项目开发和维护阶段,配置管理活动主要分为以下几个方面:

(1)配置管理人员完成的管理和维护工作。

(2)集成人员和开发人员执行的软件配置管理策略。

(3)变更流程。

这几个方面彼此独立又相互联系。

2.3实施软件配置管理的关键活动

在一个完整的软件开发过程中,实施软件配置管理活动包括配置标识、版本控制、变更管理、状态统计、配置审计等概念。其中,配置标识定义了配置项名称;版本管理跟踪了开发过程中变更行为和版本信息;变更控制管理、记录不同配置项间执行更改的过程;状态统计则在版本控制和过程管理的基础上,量化软件开发的进度;而配置审计通过功能和变更审计,对软件实施过程及信息项的完整性、正确性进行检验。软件开发过程中软件配置管理的各项关键活动如图2所示。

3软件配置管理策略

3.1版本管理策略

版本控制是配置管理的一个关键问题。[4]版本通过记录配置项的当前状态,为后续开发提供依据;而且还可以追溯版本以前的状态。而版本管理的主要功能就是对软件生存期内各种软件实体、文档等信息项的修改和变化的管理。此外,版本管理支持并行开发,能够有效地解决版本的同步以及不同开发者之间的交流问题,减少编码错误和重复劳动。序列化开发和并行开发的对比如图3所示。

软件配置管理策略分为基于构件策略、可变粒度策略、面向任务策略、并行开发策略多种管理策略。其中并行开发策略被广泛应用于不同用户、需求多变、更改频繁的大型软件研发项目。

并行开发策略采用团队模式对整个软件项目进行同步变更,实现了开发人员同时在同一软件模块上工作,同时对同一代码部分做不同修改,互不干扰,协同工作而又不失去控制,并支持变更内容合并,最大限度地调动资源,在较短时间内完成更多功能的研发,缩短产品发布时间,使软件研发过程规模化、规范化、成熟化。

3.2配置项标识策略

在配置管理中,配置项就是受软件配置管理控制和管理的工作单元。[5]需要记录变更或状态的所有元素都可以纳入配置项管理。例如:开发及维护环境中开发工具和项目管理工具;设计产品中的规格说明、测试计划、用户手册等文档;编码产品中的源代码、执行程序等元素,都可作为配置管理的配置项。

配置项可以是大粒度的,也可以是小粒度的。可以是多个元素,也可以是元素的集合。粒度越小,管理成本越高,配置进度也越高。配置项集合如图4所示。

通常把同一工作任务下的1组元素定义为1个配置项,而不针对一个个元素进行单独管理,以节约管理成本。变更控制的对象如图5所示。

3.3发布策略

发布过程的系统目标码版本包括系统执行码、系统参数及相关文档等。版本发布策略构建了统一的发布环境,保障了软件的正确集成,为开发人员的后续工作提供了稳定的基础。软件发布版本树如图6所示。

当项目经理确定需交付软件版本时,配置管理人员需为新的软件版本建立发布标签,标识发布版本的开发环境。从上一版本中检出发布版本,进行编译链接,生成可执行代码提供给测试人员测试,完成测试后,配置管理委员会(CCB)成员对该版本发布进行审核,审核通过后,配置管理人员按照要求生成发布文件并冻结开发权限。发布策略流程如图7所示。

4结束语

我国软件配置管理的发展相较于西方发达国家落后了几十年时间,存在着很大差距。未来的软件配置管理将被置于更重要的位置,集自动化、规模化、多功能于一体,且具备持续改进、富有针对性的管理模式将成为今后的主要研究方向。如何切实提高过程管理质量,规范软件配置管理,设计通用、接口简单、可扩展的软件配置管理模式,促进我国软件产业的飞速发展,将在未来很长一段时间需要持续关注和不断探索。

摘要:软件配置管理贯穿于整个软件生命周期,为软件研发提供了一套管理办法和活动原则。文章描述了软件配置管理的重要性,针对软件开发过程中配置管理的实施过程、变更控制进行了详细阐述,提出包括版本管理策略、配置项标识策略、发布策略在内的软件配置管理策略。

软件第三方开发管理 篇4

关键词:软件外包;项目管理;风险;措施

中图分类号:F272.92 文献标识码:A文章编号:1007-9599 (2011) 15-0000-02

Software Development Outsourcing Project Management Case Analysis and Study

Xu Fang

(Zhejiang Institute of Mechanical&Electrical Engineering,Hangzhou310053,China)

Abstract:Outsourcing is a very big market,currently in the country,many software companies in the software outsourcing industry,or their own part of the business awarded to the outsourcer,outsourcing software projects outsourcing software project management with the development in recent years,more and more attention,with the company's content management project and there are both associated with differences in the actual article on the outsourcing of specific business case risk analysis,the corresponding solutions,and summarizes the project implementation problems and improve opinion,for the outsourcing project management software companies to provide a reference.

Keywords:Software outsourcing;Project management;Risk;Measures

一、引言

软件外包就是企业为了专注核心竞争力业务和降低软件项目成本,将软件项目中的全部或部分工作发包给提供外包服务的企业完成的软件需求活动。作为品牌和实力正处于培育发展阶段的软件公司,在市场拓展过程中为了克服积累不够等弱点,把自己不擅长或非发展方向的项目进行外包是非常普遍的现象。近年来软件外包在我国发展势头迅猛,因此软件外包业孕育着广阔的市场前景。而搞好外包项目管理是关键环节。软件项目外包本质来说,是软件开发过程从公司内部部分或全部延伸到公司外部的管理规范与管理技术。与内部实施相比,管理难度有过之而无不及。本文结合公司外包项目实际情况,分析了软件项目外包管理中存在的风险和应对措施,为其他软件项目的外包管理工作提供一定的借鉴。

二、项目背景概述

某公司为中小型软件开发企业,有比较稳定的开发团队,测试团队刚刚组建,力量比较薄弱。需要开发的项目要求高、开发周期短,具有较大的压力。本次系统的开发,公司选择了将测试工作外包给某软件外包公司完成。

目前软件企业测试团队的建设中,不可避免地会遇到许多棘手的问题,诸如:(1)招募过程中无法评估相关人员的测试水准和能力;(2)招募后没有为测试人员提供良好的测试技术培训体系;(3)无法正确快速地组建测试团队以融合到研发过程中;(4)无法系统地使测试人员最快限度地掌握最新测试技术用以研发需求;(5)如果各个项目的进度不是连续性的,测试人员的工作有可能会出现阶段性停滞而增大了成本等等。

通过分析公司的实际情况,选择将测试工作外包主要是基于以下一些原因:(1)公司测试人员短缺。该系统实施时,其它多个项目处于测试阶段,如果为此项目招聘人员,考虑招聘时间和培训时间,可能难以保障项目进度;(2)公司缺少自动化的测试工具,在项目启动时,尚无相关购买决定;(3)表面上看,把测试工作发包给同一城市的公司,将导致成本上升,但如果选择的是一个比较专业的公司,考虑到测试工作效率问题,最终成本实际会降低。

因此在项目启动时,公司项目组很快就做出了将测试工作外包的决定。通过外包给企业和项目带来的好处如下:(1)人员外包成本低于自身招募的综合成本;(2)来自专业测试公司的人员将比自身招募人员获得更多的来自测试公司的技术支持;(3)专业测试公司能够为企业带来更多基于项目业务需求的技术支持。

在选择外包公司时,公司将同城市的某外包公司列为第一候选人并开始与对方进行洽谈。该公司在当地有较高知名度,并且公司与其母公司有较多往来,将其列为首选对象是一种比较自然的选择。

三、项目外包风险分析及应对措施

软件外包具有很多优势,如可以降低或保持软件开发成本和管理成本,使企业专注于核心能力和核心竞争力等。但由于发包方和承包方之间存在不可避免的地域、文化、法律、价值观及管理方法等方面的差异,使得软件外包在其生命周期全过程中存在各种风险。在外包项目所面临的诸多挑战和风险当中,有些风险与企业自己开发项目面临的风险相似,但更多会面临不一样的、比自己开发多得多的风险。除非这些风险能够得到更好的控制和管理,否则,可能会遭遇比企业自己開发项目更多的失败的可能性[1]。

(一)风险分析

软件外包工作由于天然存在的地理、文化差别,其失败的风险几率较大,所以从事外包的管理人员在项目启动之前尤其要对项目中可能存在的风险因素有一个比较全面地识别和分析。比较好的一种风险识别方法是结构化的头脑风暴法,通过集思广益找出所有可能影响到项目进度、成本、质量的因素。一个非常重要的风险因素的来源是项目计划的假设和约束,一旦项目成功所作的假设不能达到,这些就会成为未来影响项目正常进展的问题。

风险贯穿于软件外包的全过程,具体表现形式多种多样。一般情况下主要包括以下几方面:(1)成本容易超出客户预算;(2)内部的信息系统专业能力流失;(3)失去对信息系统的控制;(4)外包开发商倒闭;(5)使用的产品种类受限制;(6)难以对开发方的职能与安排进行控制;(7)形成对开发商的依赖;(8)存在损失战略信息的风险;(9)外包开发商的系统落后;(10)外包商的文化与人员的适应性差。

从事软件项目管理的项目经理可能都知道这么一个事实,一个项目经理85%的时间都用在各方面的沟通交流上。很多项目出现问题都不是在技术上碰到难题,而更多的是由于沟通不畅引发的后果。这是公司首次将测试工作外包给其它公司。作为项目经理,通过分析有以下潜在问题可能会导致项目进行不顺利甚至失败:(1)异地交流问题:由于目前公司场地座位紧张,对方测试组需要在自己公司场地工作,由于面对面的沟通比较少,可能导致沟通问题;(2)开发流程差异:双方开发、测试团队之间需要频繁交流,这些交流很大程度上依赖于项目文档以及项目管理方法,双方所使用的项目文档风格若存在较大不一致,将导致沟通问题;(3)文化差异:双方人员存在大的工作文化、工作习惯差异,使得开发团队和测试团队之间难以沟通;(4)绩效问题:对于测试工作,还难以建立一个定量的指标去衡量工作效率,如果对方测试团队中部分人员效率低下,公司可能难以及时发现,从而影响质量;(5)知识产权:对方缺少完善的知识产权保护机制;(6)人员流失:在项目执行过程中,对方发生项目组人员流失,可能影响项目进程;(7)冲突化解:在一个公司、项目组内,所发生的争执更加容易化解,但涉及到两家公司时,容易更多地寻找对方的失误,使得争执、冲突扩大。

另外还有一些常见的外包风险,例如对工作规模估算过低,由于采取了单位计价方式付费,因此,即使是发生由于公司开发质量过低、需求更改过于频繁导致递交测试版本过多等原因引起测试工作量增加,对于对方而言,并不存在问题,因为这会使得对方收入增加,但会影响团队积极性,对公司方而言,需要从质量保障、变更控制、成本管理角度解决问题,在外包管理上,规模增加导致的管理问题有限。

一旦识别出尽可能多的风险因素之后,需要对这些因素进行评估,并不是所有的风险都需要去规避,所以必须分析哪些风险会对项目产生重大影响,哪些风险发生的可能性非常高。根据这些分析结果排出项目中优先级比较高的风险因素,然后针对这些风险分别找出规避的措施以及风险发生时的应对举措。

(二)风险控制

对于每个风险都能找到一定的规避和减少损失的措施,而控制外包风险的一般方式包括:(1)建立各方可度量和实施的共享目标和回报;(2)引入多个供应商作为激励机制;(3)建立一个交叉职能的合同管理团队;(4)建立绩效矩阵;(5)执行定期竞争性评估和基准检查;(6)实施短期合同;(7)在合同中明确数据的所有权。

针对上述项目,在确定将测试工作外包,并且选择了候选公司之后,作为项目经理需要完成下列工作:(1)确认该公司是否确实有实力完成该系统测试工作;(2)了解对方工作文化和工作习惯,确认双方团队可以很好沟通、协同;了解对方工作流程,编写工作说明书,明确双方职责、递交工作件(包含内容、质量要求和时间要求)、协同规则;(3)建立外包项目管理计划。

为了明确问题(1),作为发包方,公司的项目管理人员、研发人员和测试部门几名工程师走访了该公司,请该公司介绍采用类似技术的项目案例,对方介绍了为国外客户完成类似测试工作的案例,通过这些案例,我们可以确认该公司具有相应技术能力实施测试工作。

在计费方式上,可以选择固定计划方式、单位计价方式或者混合的方式。由于测试工作量存在不确定因素,该项目确定采用单位计价方式付费:由对方公司在项目不同阶段提供我方所要求数量的测试工程师,发包方按照每月工作时间付费。接下去,对方公司提供一份候选人名单,在工作开始前,发包方需要对这些候选人进行面试,确保对方承接此测试项目人员具有对应能力。

在列出了前面所提的7大問题之后,作为项目经理组织了一个座谈会去确认这些问题存在的程度。这个座谈会由双方分别派出一个包含开发、测试团队的完整项目组参加,向对方展示典型的项目执行过程案例,从而使双方人员都建立对对方项目管理的了解。另外,也需要与对方一些管理人员进行交谈。

通过一系列的调查、分析,在上述7个问题中,后5个问题影响会比较小:(1)文化差异:双方在同一个城市,但非同一家公司。因此,双方将存在文化差异,但这个差异应该有限。(2)绩效问题:对方属于专业型外包公司,长期从事对欧美外包业务,已经建立起了很好的内部绩效管理体系,在了解该体系之后,可以确认对方可以管理好绩效问题。(3)知识产权:对方有一套完整的客户知识产权保护体系。实际上,对于外包公司来说,保护客户知识产权也是他们的“生命线”。(4)人员流失:对方年均人员流失率低于本市平均水平,并且有大量合格人员可以在流失发生时补充到该项目。在对对方测试组进行领域知识、系统需求培训时,要求对方按照增加15%人员的比例参加培训,这样,万一人员流失,可以从后备人员中挑选人员进入项目组,他们的适应时间会较短。(5)冲突化解:由于公司业务特点,对方有较好的内部管理、职员教育体系,问题出在发包方的概率更大。这可以从发包方日常管理中解决问题。

前面两个问题会有相对大一些的影响。下面是采取的一些解决方案:(1)异地交流问题:对方长期从事对欧美外包业务,其员工具备丰富的远程协同工作经验,而发包方员工该方面经验比较缺乏。表面上看,问题会更可能出在发包方,但分析对方项目后发现,由于对方一直从事欧美金融领域外包业务,项目文档极其详细,这超过了发包方项目文档详细程度。简单地由发包方提高项目文档详细程度并不可取。采取了这样一些解决方案:双方人员所使用的PC均安装摄像头,可以视频交流;使用远程桌面;对于我们所使用的项目文档中的递交报告进行修改,要求更加详细地给出所递交版本的详细变更信息和最期望先被测试的功能点。(2)流程差异:由于不同公司对于项目开发、质量保障会有自己的流程。在这个问题上,采取的做法是:以发包方现有流程为基准,安排对方测试人员熟悉该流程。另外,发包方也进行一些改进:在以往项目流程中作为发包方的递交报告不够细,现在需要加以改进。

(三)存在问题及改进

上述问题,通过处理在项目进行时都没有出现大的问题。但在异地交流问题上,还是碰到了一些麻烦。使用远程桌面,确实可以帮助测试人员与开发人员建立对问题的共同理解,但效率还是远低于面对面的交流。当再次执行类似外包工作时,建议可以考虑进行每周两次的、相对固定时间的开发、测试碰头会,而在这个项目中是每周一次。在开发流程上,以发包方的流程定义为蓝本,同对方讨论后进行局部修改。这样做法,减少了发包方的工作量,但代价是对方需要学习的内容变多。对方的基于内部网的过程管理系统更多、更完善,在今后项目实施时,如果项目内容、服务供应商情况类似,一个改进的方法是:仍旧是以发包方流程为基础,但会参考、使用对方内部网上自行开发的小工具。

四、结束语

从实际的外包项目管理经验中可以看出,对于类似外包工作,工作的重点,即最容易出问题的地方是如何保持好两个或者更多人组成的团队沟通代价最小化。发包方和外包方需要根据实际情况建立良好合作模式。此外,外包项目的管理比企业内部开发项目的管理更复杂,担负更大的风险,需要更紧密的进度和质量监控。外包项目除了需要部分技术人员和用户群体参与外,更增加了一组外包商的资源,可以考虑充分运用。最后,项目经理需要做出一个详细的、完整的项目计划,并认真分析存在的风险和应对措施,以确保外包项目的顺利实施。

参考文献:

[1]王梅源.软件外包项目全过程风险管理[M].武汉:华中科技大学出版社,2009

软件第三方开发管理 篇5

信息技术的飞速发展, 极大地带动了社会财富增长的同时, 软件产业也迅速成熟与发展壮大。印度作为软件业中的一枝奇葩, 快速成长为仅次于美国的全球第二大软件制造大国。我国软件业与印度几乎同期开始发展, 尽管我国也发展很快, 却在软件开发的发展过程中暴露出许多问题, 成为我国软件业发展的一大瓶颈。本文试从软件开发管理的角度对印度软件业与我国软件业进行比较分析, 结合我国软件业发展的优势, 提出能给我国软件业发展以启迪的建议。

1 中印软件业发展历程

20世纪80年代, 随着美国和西方国家个人计算机用户的急速增长, 以及局域网和Web网的兴起, 再加上政府对软件产业政策的一系列改革措施, 印度软件取得长足的进展。而后, 到20世纪90年代初, 许多军用技术转为民用, 跟Internet相关的通讯技术和太空技术成为发展的重点。以此为契机, 印度的软件产业实现了第二次飞跃。到了1998年后, 国际风险投资和印度产业形成了良性的互动, 促使印度的软件产业继续高速发展。

我国软件业的发展可以追溯到20世纪50年代, 各大高校开设计算数学专业。但中国软件真正作为产业出现, 是从20世纪80年代后期开始的。在这一时期内, 推出了一系列中文信息处理软件。可是1995年后, 随着Windows95中文版的发布, 以DOS为主的中文操作系统逐渐失去了用武之地, 相应的本土厂商也纷纷倒闭或从事开发中文支持类产品。国外软件厂商在这个时期纷纷涌入国内市场, 我国的软件产业步入一个发展低潮阶段。2000年以后, 随着我国经济和产业结构的调整, 以及世界信息产业的飞速发展, 政府在这一时期内的扶持力度大大加强, 逐渐使中国软件业步入一个快速增长期。

从两国软件产业的发展历程来看, 两国软件产业根据各自国情不同, 他们发展的侧重点以及战略方向也是有所不同的。印度更重视软件外包, 这样伴随着西方发达国家经济的发展, 印度的软件产业迅速发展壮大。而我国的软件业从一开始就更注重满足内需, 受我国自身经济发展的限制, 所以发展相对缓慢。

2 中印软件在软件开发管理中的比较

在软件开发过程中, 软件项目管理始终起举足轻重的作用。所谓项目管理就是通过计划、组织和控制等一系列活动, 合理地配置和使用各种资源, 以达到既定目标的过程。许多项目的失败并不是从事软件开发工作的软件工程师无能, 而是因为缺乏合理而有效的项目管理。在影响软件项目管理的诸多因素中, 软件过程、需求分析、人员配置、项目经理等尤为重要。

2.1 软件过程

软件过程是软件项目整个过程所采用方法的总称。它的合理与否直接影响着整个软件工程的进度规划以至成败。具体地说, 过程定义了运用方法的顺序、应该交付的文档资料、为保证软件质量和协调变化所需要采取的管理措施, 以及标志软件开发各个阶段的里程碑。为获得高质量的软件产品, 软件过程必须科学、有效。软件过程管理能力, 已经成为软件企业最核心的竞争力之一。

目前, 被业界公认成熟的过程模型有:瀑布模型、快速原型模式、螺旋模型等。

瀑布模型是一直是被广泛采用的生命周期模型。瀑布模型的优势在于它是规范的、文档驱动的方法, 可以确保软件的开发进度。这种模型的问题是, 最终开发出的软件产品可能并不是用户真正需要的。快速原型模型就是快速建立起来的可以在计算机上运行的程序, 可以是最终产品能完成的部分功能。它的原理就是通过让用户在计算机上试用这个原型, 来尽快了解目标系统的概貌。然后在实践过程提出许多修改意见, 从而获取用户的真正需求。在软件开发过程中必须及时识别和分析风险, 并且采取适当措施以消除或减少风险的伤害。正是基于这个目的, 提出了风险驱动的螺旋模型。它的基本思想是:使用原型及其他方法来尽量降低风险。在每个阶段之前都增加风险分析过程。但这要求软件开发人员必须具有丰富的风险评估经验和这方面的专业知识。

印度在软件项目管理中, 从人员培训、软件开发的规范化管理, 到软件最终的质量检测, 无一不按照国际标准来要求, 使得他们开发的软件产品, 运行稳定、质量上乘。

我国受“个人英雄主义”的影响, 存在许多包打天下的“小作坊式”开发的企业。步入21世纪以来, 中国软件企业才逐渐意识到软件过程管理的重要性, 并且也开始采取各种措施来提高自己的软件过程管理能力, CMM (软件能力成熟度模型) 的影响力也越来越高。截止2008年, 我国达到CMM/CMMI5标准的企业已达到19家。

2.2 需求分析

一个软件项目要想成功, 定义需求是第一步, 也是最重要的。需求定义的越准确越明了, 接下来项目实施的过程就会越顺利越平坦。一般来说, 需求分析的任务主要有:确定对系统的综合要求, 包括功能需求、性能需求、可靠性和可用性需求、接口需求等;分析系统的数据要求;导出系统的逻辑模型、通常采用数据流图、实体联系图、状态转换图去描述整个逻辑模型;最后修正系统的开发计划。

印度软件非常重视项目需求分析, 他们往往都有一套完善的需求分析模型 (prototypes) , 通过这个模型, 制定出一个经各方一致同意的、清楚的、完整的、详细的、整体的、可实现的、可测试的需求。

我国的软件业也非常重视需求分析, 但由于一些环境的影响, 往往不能在需求分析阶段做出理想的需求分析, 往往在开发过程中, 会有一些特殊的需求。这些需求有的需要花少的代价完成, 有的则直接导致整个软件项目的成败。

2.3 人员配置

高素质的软件开发人员对软件项目的成败起着尤为重要的作用。在越来越大的软件项目面前, 过去单枪匹马的情形已经不再适用, 而是必须把多名软件开发人员合理地组织起来, 使他们有效地分工协作共同完成开发工作, 这就需要每个开发人员要有良好的团队精神。

印度的软件公司的人员配置, 一般一个项目组成员数为5个, 最多不超过10个。印度公司很注重团队意识的培养, 本质上也就是要求员工之间的互相协调和理解。

在我国, 由于软件产业在发展历程中留下的一些旧思想, 由于我国人才结构的特殊性, 使得人才配置在项目过程中也出现许多漏洞。再加上开发人员之间缺乏有效的彼此交互的通信方式, 使得项目进展也会遇到不少阻力。

2.4 项目经理

项目经理是整个项目的灵魂人物, 其对项目的成败与否起着至关重要的作用。项目经理应具备最重要的能力有:团体管理和领导能力、沟通和人际交往能力。一个好的项目经理还应具备责任心、预测风险、掌控整体进度、进行合理规划和激励所有项目成员的能力。

在印度, 项目经理在一个项目开展之前, 需要完成:项目计划、项目配置管理计划、项目过程手册。在项目开发过程中, 项目经理一般要做到以下4点:对本项目的进展非常了解、对想阶段所需完成的工作非常了解、对项目成员的能力比较了解以及能够对成员的工作安排都比较合理。

受传统文化的影响, 中国的项目经理往往是原来技术中的骨干, 高层管理者相信在当今竞争激烈的项目环境中, 面临技术难题, 即使不能及时组织到相应资源, 项目经理也能利用自身的技术能力亲自找寻问题解决方案。“从技术到管理”已经成为我国许多开发人员的职业发展路线, 几乎一半以上的软件项目经理都来源于技术专家。这也导致他们经常暴露普遍的一个缺点, 就是他们往往对技术问题过于关注, 而忽视了项目的整体控制, 忽视项目同企业战略的相互关系。所以, 我国的项目在注重技术的同时, 也必须重视“软技术”的学习。

3 中国软件产业的优势

经过30多年的发展, 我国的软件的产业虽没有印度的软件业发展壮大, 但也取得了显著的成绩, 软件企业也结合自身的一些特点形成了一系列的软件开发管理方案。在其发展过程中, 也显露了我国自身软件业的一些优势。

3.1 内需优势

随着我国制造业、物流以及公共事业的快速发展, 再加上各级网络设施的日趋完善, 各行各业管理信息化的呼声越来越高。国外一些先进的管理理念也逐渐渗透到各行各业的管理层, 信息化管理早已在国内达成共识。所以, 随着我国综合国力的不断提升, 对我国的软件产业发展来说, 是一个崛起的最佳机会。

3.2 成本优势

由于软件产业的特殊性, 它最大的成本则是人员的费用。我国软件产业中, 人员的费用和其他发达国家的相比, 有很大优势。劳动力价格的相对低廉就能有效地节省软件研究和开发的成本。并且随着网络技术的发展, 与软件产业相关的领域, 比如计算机、网络通信等一些先进技术, 我们可以从国外引进并进行改进, 这样就节省了许多初期大量的研发投入。

3.3 人才优势

从上个世纪末开始, 中国的高等教育以及各级培训部门规模逐渐增大, 从事计算机与软件产业相关的人员数量也居于所有专业的首位。除此之外, 随着软件产业国际化的趋势, 我国现有的项目管理者对发达国家一些先进的管理理念也逐渐熟悉并有进一步的了解。我国通过PMP认证的人数逐年成倍增长, 为我国日后软件产业的腾飞打下了良好的基础。

4 对我国软件产业改进的建议

基于我国的软件业的优势及实际情况, 并借鉴印度软件业发展的经验, 笔者总结出以下针对我国软件业的一些改进建议。

政策方面。我们要结合自己的国情与软件产业现状, 在满足国内需求的前提下, 坚定推进软件产业国际化, 扩大我们的外包市场。并在此过程中, 不断完善相关的政策和法律规定以确保我国软件产业的健康发展。

人才的配置应更加合理。合理的软件人才结构应该是软件蓝领、软件工程师、软件架构和分析师依次成金字塔状。尽管我们有大量的软件从业者, 但现在的高等教育过于重视正规院校的学历教育, 导致软件蓝领和精通管理的高级软件人员明显不足。这种现状极大限制了软件产业的进一步发展。针对这种情况, 企业和相关部门应该加大培训力度, 以确保软件蓝领和高级软件管理人员的高效化。

学习先进的管理理念。在软件项目管理过程中, 我们应将国外的一些成熟的管理经验引进到我国的软件产业中, 并创新出属于我们的软件开发管理规范。在需求分析阶段, 要让客户尤其是客户领导意识到需求分析的重要性, 尽量将需求分析做到更准确更标准, 一些难以确定的必须经客户高层确认, 以保证软件开发的质量;人才管理方面, 要加强团队意识的培养, 项目经理要及时进行“软技术”方面的学习和深造, 重视与客户沟通和交流, 沟通是所有管理措施实施的手段和准备。

5 对我国软件产业的展望

通过从软件开发管理来对比中印软件业的发展, 我们可以得出, 我国的软件业虽然起步较早, 但基本属于自己摸索式的或个人英雄主义式的前进, 缺乏规范化和标准化, 导致我国软件业的发展缓慢。随着国际软件业的发展, 先进的管理经验和开发模式将不断填补这一缺陷, 结合我国对软件产业的支持、鼓励和保护, 我们有理由相信, 在不久的将来, 我国的软件行业也将加入世界的顶尖行列。

参考文献

[1]孙杭生, 张小溪.中国与印度软件业发展比较分析[J].江苏商论, 2008 (6) .

[2]张佳玉.中印软件业比较分析[D].重庆:西南政法大学, 2007.

[3]李福英.从印度软件项目管理谈我国软件质量保障[J].软件世界, 2001 (11) .

[4]松涛.中国—印度软件业的对话[J].中国创业投资与高科技, 2005 (5) .

[5]周任.中国与印度软件业发展之比较[J].南亚研究季刊, 2004 (1) .

[6]张海藩.软件工程导论[M].北京:清华大学出版社, 2003.

[7]曹开郴.中印软件产业竞争力最新对比分析[J].程序员, 2005 (8) .

[8]萨默维尔 (Sommerville, I.) .软件工程[M].程成, 陈霞, 译, 北京:机械工业出版社, 2007.

[9]吴南雁.印度软件业崛起之迷[N].中国财经报, 2006 (9) .

[10]魏晓燕.印度软件业崛起探因[J].广东工业大学学报, 2006 (4) .

浅谈软件开发管理策略 篇6

1 软件开发中实行项目管理的意义

项目管理就是在项目活动中运用一系列的知识、技能、工具和技术,以满足或超过相关利益者对项目的要求,实际上就是通过项目各方干系人的合作,把各种资源应用于项目,以实现项目的目标,满足项目干系人的需求,其本质就是对时间、质量和成本的管理。随着软件开发的深入、各种技术的不断创新以及软件产业的形成,人们越来越意识到软件过程管理的重要性,管理学的思想逐渐融入软件开发过程中,项目开发的管理日益受到重视。

2 目前在软件项目管理中存在的误区

现在大多数企业都认识到了在项目中进行管理的重要性,但是仍然有许多企业在实施项目管理的过程中存在着这样那样的误区,主要表现在以下几点。

项目经理不够专业。在软件企业中,缺乏专业的项目管理人员来实施项目管理及担任项目经理,通常被任命的项目经理主要是因为他们能够在技术上独当一面,但是他们在管理方面特别是项目管理方面的知识比较缺乏。

项目计划缺乏纲领性。项目经理对总体计划、阶段计划的作用认识不足,因此制定总体计划时比较随意,不少事情没有仔细考虑;阶段计划因工作忙等理由经常拖延,造成计划与控制管理脱节,无法进行有效的进度控制管理。

缺乏有效的管理意识。部分项目经理不能从总体上把握整个项目,而是埋头于具体的技术工作,造成项目组成人员之间忙的忙、闲的闲,计划不周、任务不均、资源浪费。有些项目经理没有很好的管理方法,不好安排的工作只好自己做,使项目任务无法有效、合理地分配给相关成员,以达到“负载均衡”。

缺乏有效的沟通制度和机制。在项目中一些重要信息没有进行充分和有效的沟通。在制定计划、意见反馈、情况通报、技术问题或成果等方面与相关人员的沟通不足,造成各做各事、重复劳动,甚至造成不必要的损失;有些人没有每天定时收邮件的习惯,以至于无法及时接收最新的信息。

风险管理意识淡泊。有些项目经理没有充分意识到风险管理的重要性,对计划书中风险管理的章节简单应付了事,随便列出几个风险,随便地写一些简单的对策,对于后面的风险防范起不到什么指导作用。

项目干系人的不确定性。在范围识别阶段,项目组对客户的整体组织结构、有关人员及其关系、工作职责等没有足够了解以至于无法得到完整需求或最终经权威用户代表确认的需求;或者是多个用户代表各说各话、昨是今非,但同时又要求项目尽早交付;项目后期需求变化随意,造成项目范围的蔓延,进度的拖延,成本的扩大。

缺乏项目团队的合理分工。项目团队内部有时由于各阶段不同角色或同阶段不同角色之间的责任分工不够清晰而造成工作互相推诿、责任互相推卸的现象;有时各阶段不同角色或同阶段不同角色之间的责任分工比较清晰,但是各项目成员只顾完成自己那部分任务,不愿意与他人协作。这些现象都将造成项目组内部资源的损耗,从而影响项目进展。

3 解决软件项目管理中存在的误区的有效策略

要想解决上面描述的误区,归根到底还是要从管理学的角度入手,即在软件项目的开发过程中加入过程管理的内容,这样我们可以在软件开发中对各个过程的质量加以控制,从而达到保证软件产品质量的目的。为了有效提高管理水平,我们应该努力做到以下几点。

项目经理接受系统的项目管理知识培训是非常必要的,有了专业领域的知识与实践,再加上项目管理知识与实践和一般管理的知识和经验的有机结合,必能大大提高项目经理的项目管理水平。

计划的制定需要在一定条件的限制和假设之下采用渐近明细的方式进行不断完善。提高项目经理的计划意识,采用项目计划制定相关知识、技术、工具,加强对开发计划、阶段计划的有效性进行事前事后的评估。

加强项目管理方面的培训,并通过对考核指标的合理设定和宣传引导项目经理更好地做好项目管理工作。技术骨干在担任项目经理之前,最好能经过系统的项目管理知识,特别是其中的人力资源管理、沟通管理的学习,并且在实际工作中不断提高自己的管理素质,丰富项目管理经验,提高项目管理意识。

制定有效的沟通制度和沟通机制,提高沟通意识;采取多种沟通方式,提高沟通的有效性。通过制度规定对由于未及时收取邮件而造成损失的责任归属;对于特别重要的内容要采用多种方式进行有效沟通以确保传达到位,例如:除发送邮件外还要电话提醒、回执等,重要的内容还要通过举行各种会议进行传达。

通过学习项目管理知识掌握风险识别、量化、对策研究、反应控制的工具和方法,掌握项目风险管理所必备的知识。通过加强对项目规划中风险管理计划的审核提高项目组的风险管理意识。总结本行业项目中常见的风险及其对策作为风险管理计划中必要的风险内容,并切实评估相应对策的有效性和可行性。

项目的目的就是实现项目干系人的需求和愿望。项目干系人管理应当从项目的启动开始,项目经理及其项目成员就要分清项目干系人包含哪些人和组织,通过沟通协调对他们施加影响,驱动他们对项目的支持,调查并明确他们的需求和愿望,减小其对项目的阻力,以确保项目获得成功。

项目经理应当对项目成员的责任进行合理的分配并清楚地说明,同时应强调不同分工、不同环节的成员应当相互协作,共同完善。

实施有效的项目管理绝非易事,对于软件企业而言,这不是一个小的改变,而是一种变革,企业需要为此付出艰苦的努力,同时,成熟有效的项目管理无疑将对企业起着至关重要的作用,项目管理的水平将是企业核心竞争力之一。

参考文献

[1]郭研.软件项目管理[J].物流科技,2005(2).

[2]何国伟.论软件项目管理的质量(上)[J].质量与可靠性,2003(6).

[3]何国伟.论软件项目管理的质量(下)[J].质量与可靠性,2004(2).

如何提高软件开发管理质量 篇7

进入21世纪以来, 随着信息技术的迅猛发展和应用的广泛普及, 计算机软件以及一些嵌入式软件的规模也在逐渐壮大, 软件管理显得愈发重要, 需要逐步规范。如果软件管理跟不上, 将很难实现技术的超越, 要想开发出优秀的软件产品, 必须加强软件开发的科学管理, 这是当前我国软件发展面临的重大问题。目前, 在软件开发管理方面我们可以借鉴软件能力成熟度模型, 研究如何高效率、高质量、低成本地开发软件产品。

2 软件能力成熟度模型

2.1 概念

软件研制能力成熟度模型由美国国防部委托软件工程研究所 (SEI) 开发, 用于评价软件研制单位的质量保证能力。该标准通过对国内外许多大公司的实践验证, 效果十分明显, 已被国际上广泛采用。该标准是一个软件产品开发的模型, 从关注整个软件研制体系的角度出发, 提供了一个软件研制过程改进的参考模型, 描述了一组有效过程的特征, 提供了一组最佳的实践, 它的主要关注点体现在生产率、性能、成本、相关方满意度等方面。软件成熟度模型的核心思想是, 为了使软件开发更加科学化、标准化、使企业能够更好的实现其商业目标, 特将软件开发看作是一个过程, 并根据这一原则对软件开发和维护进行过程的监控和研究。软件能力成熟度概念的引入, 使一个特定过程得到了更加清晰的定义、管理、测量和有效控制, 解决了路径的问题。

2.2 主要内容

软件能力成熟度模型采用分级表示法, 按照预先确定的过程域集来定义组织的改进路径, 并用成熟度等级进行表示, 该标准将组织的软件研制能力成熟度分为五个等级, 其中1级 (或ML1) 称为初始级, 2级 (或ML2) 称为已管理级, 3级 (或ML3) 称为已定义级, 4级 (或ML4) 称为已定量管理级, 5级 (或ML5) 称为优化级。图1给出了软件研制能力成熟度的五个等级。

成熟度等级描述的是一个已定义的、组织过程改进的进化过程。当组织的某个等级达到要求时, 表示组织过程的一个重要部分已经成熟, 并为它进入下一个成熟度等级做好了准备。成熟度等级根据与每组已预先定义过程域相关的专用目标和共用目标是否达到要求, 判定组织是否满足相应的成熟度等级。在五个成熟度等级中, 每一个等级是实现下一个成熟度等级的基础。

3 软件研制过程中存在的问题

在软件开发过程中, 通常存在的问题主要体现在以下方面:

(1) 项目策划不足。主要表现为, 项目组成员拿到一个软件任务时, 对于这项任务的难易程度、工作量和代码规模估计不足, 对项目开发过程中可能存在的风险识别不充分, 利益相关方的参与范围不明确, 对项目组成员需要达到的技术水平认识不到位, 工作项不够细化等, 从而导致项目的延期交付等问题比较突出, 给企业的经济利益和声誉等带来损失。在实际工作中, 我们经常碰到这样的例子, 在软件需求评审阶段, 项目经理没有将用户纳入到相关方需要参与的计划中, 从而用户没有参与需求的评审, 可能导致开发方对某些指标理解与用户的意图不一致, 从而使得开发的过程中没有完全满足用户的要求, 当用户验收发现这一问题时为时已晚。

(2) 程序文档管理不充分。程序文档是开发人员与用户重要的交流渠道, 是用户使用和维护系统的重要依据, 是项目组知识积累的过程, 也是软件工程开发的依据和项目成果的重要组成部分, 因此监督开发人员编写程序文档是项目经理或者软件经理管理项目成果的重要内容。在项目进程中, 项目组成员都没有认识到文档管理的重要性, 程序文档的整理被安排到项目终止阶段完成, 而没有与开发工作同步, 致使文档不完备, 给系统移交以及用户维护带来了许多计划外的工作量。同时, 如果文档编写不规范, 编写质量比较差, 没有体现软件开发中的必要要素, 评审把关不严, 而最初的软件开发人员离职或者离岗, 就可能给后续继任者带来开发上的困难, 导致任务工期的延长或者软件维护上的困难。有相当一部分的软件开发人员偏爱编写代码, 但是不关注整理软件文档, 即使按照任务要求编写了必要的文档, 编写质量也不高, 经常缺少或者漏掉文档中必要的元素, 这将导致其他成员根据该文档获得的资料较少, 从而不利于项目的传承。举个大家比较容易忽视的一个例子, 在设计文档中, 对于数据的定义是无符号还是有符号的, 则在使用过程中需要注意的事项是不一样的, 如果设计师设计的是有符号的, 而代码编写人员按照无符号编写, 则数据范围明显不同。

(3) 成本核算的有效性不足。对于一项大型的、长周期的软件项目, 其费用和规模也相对较大, 因此, 在软件开发过程中, 就必须重视软件开发的成本问题。目前, 很多企业对软件开发的成本缺乏管理, 对于开发一个软件实际需要的成本没有一个有效的数据进行支撑, 导致成本核算存在问题。如果一个团队开发一个项目, 总共用了半年的时间, 但这半年是大家经常加班加点完成的, 那么开发这个项目的实际的工作量就不能用半年的时间来计算, 必须将成员的这种勤勉的程度和精力计算进去, 才能得到一个比较合理的结果。如果之前项目的成本核算是不科学或者是无效的, 则当企业再接到一个软件项目时, 将很难提供一个接近实际项目的软件规模和所需要的总工作量等数据。

4 借鉴成熟度模型解决存在的问题

在软件研制能力成熟度等级1级也即初始级中, 软件开发通常都是随意的和无序的。在这个过程中, 软件能否开发成功主要依赖于开发人员的技术水平和勤奋程度, 而不依赖于项目的组织。而项目的组织或者企业的组织通常不提供支持开发的稳定环境。虽然处在这种随意、无序的环境下, 成熟度等级1的组织也能生产可用的产品, 提供可接受的服务;但是, 预算和进度等问题常常超出他们可控的范围。在成熟度等级2级即已管理级中, 组织的项目能够确保软件开发过程按照既定的方针进行策划执行, 这些项目为了产生受到控制的工作产品, 往往聘用有专业技能的人员。在成熟度等级2级, 在已定义的时间点管理者能够见到工作产品的状态和服务的交付, 工作产品受到了适当的控制, 工作产品和服务能够满足一定的标准和规范。针对上文中提到的问题, 我们可以通过学习借鉴软件研制能力成熟度模型来制定有效的方法和措施, 使得软件的管理变得更科学有效。

(1) 项目策划管理。在软件研制能力成熟度模型中, 有一专门过程描述项目策划需开展的工作和各项工作的细化程度, 并建议采用估计值的方法对工作量进行估计, 给出了估计时需考虑的各种因素, 主要有:项目的需求、项目的范围、已经确定的任务和工作产品、技术实现途径、产品的规模和复杂性等。在项目策划阶段要求项目经理或者软件经理将各种因素进行综合考虑, 根据项目实际情况采用不同的估计方法对项目的规模和工作量进行估计, 从而对计划进行细化管理, 同时要有能力识别项目开发过程中可能存在的风险, 如需求不明确或可能发生变更, 相关方提供的材料不能按时到位等, 经理人员要能给出风险发生时相应的有效应对措施, 以使风险对项目带来的影响降到最低。另外, 在项目策划阶段还要考虑项目组成员的技术水平能否胜任所开展的工作, 如果能力与工作之间存在差距, 需考虑需不需要对其进行培训、培训内容是什么、在何时开展培训等。

(2) 文档管理。软件研制能力成熟度模型要求软件的开发设计要按照标准规范开展, 软件的需求文档、设计文档以及测试文档等都给出了标准的要求, 使软件开发人员在进行相关文档的编制时有据可循, 不会漏掉必要的要素, 同时要素的编制也要按照通过审批的标准性规范进行编写, 每人都按照标准进行工作, 就不会存在人员差异带来的文档质量的差异。标准中不仅要求文档编制按照一定的标准进行编写, 同时要求在软件开发的各个阶段开展该阶段文档的编制和评审。例如, 在需求开发阶段要完成需求规格说明的编写和评审, 在设计阶段要完成设计文档的编写和评审等, 不能等到项目结题再统一补充, 这可解决文档编制不充分、不完整或者不准确带来的计划外问题。

(3) 成本核算管理。软件研制能力成熟度模型提出了测量分析的概念, 主要规定了测量分析的目标, 测量项, 分析技术, 测量数据的采集、存储、分析以及报告和客观的结果等内容。该活动能够支持客观的策划和估计, 对照已经制定的计划和目标, 跟踪项目的实际绩效, 将测量的结果纳入到组织资产库中, 从而成为以后要增加的过程中所需要的基础材料。这项活动需要项目组成员的全员参与, 项目经理或者软件经理要及时与项目组成员收集项目进展情况的信息, 项目组成员也要定时对自己的工作量进行总结和整理, 及时上报经理人员, 各方在整个项目的开发阶段, 能够及时掌握项目动态, 了解该项目不同阶段所花费的工时和工作量等。企业对每个项目测量到的信息进行收集、整理、成库, 可以很好地指导后续项目策划工作的实施。

5 结语

软件开发管理过程中的项目策划、文档管理以及对各种数据的测量分析等, 是软件开发管理的必要手段和过程, 这些过程的开展直接关系到项目能否按计划、按标准开展, 可以遵循成熟度模型提高软件开发管理质量。

摘要:在介绍软件能力成熟度模型及主要内容的基础上, 详细分析了当前我国软件开发管理中在项目策划、文档管理以及成本核算等方面存在的主要问题, 提出了遵循成熟度模型提高软件开发管理质量的方法。

高校软件项目开发过程管理 篇8

进入21世纪, 随着软件工程学科的发展, 人们对软件开发过程管理的认识越来越深刻。管理是影响软件开发项目全局的因素, 而技术只影响局部, 许多问题不是出在不懂怎么做, 而是没有安排好, 做的次序不对, 或不知道如何做得更好。有效的软件过程管理, 有助提高软件的开发效率和生产质量, 降低生产成本。

目前软件开发深入各个领域, 高校作为国家重要的科研基地, 承担了大量的软件开发任务。高校软件开发组织不同于常规意义上的软件开发组织, 在软件开发过程上有其自身的特点和要求, 企业中已应用成熟的软件开发管理方法并不完全适用。为了适应这种特点, 必须结合高校实际, 对企业中软件开发过程管理方法做出适当的更改和调整。

1、高校软件项目开发的特点

高校软件项目开发多由教师和学生组织成临时团队协作完成, 其主要特点如下:

1.1 创新性强、研究性强, 项目难度大。

高校所涉及的软件项目, 和一般企业不同, 多属于前沿性的研究课题, 探索成分较多, 软件开发过程中, 需要查阅大量文献, 即时关注国内外研究动态, 软件需求经常变化, 修改较多。

1.2 开发团队成员新手多、人员流动大、管理经验欠缺。

教师和学生是高校软件项目开发的主力, 他们虽然有较好理论水平, 但实践经验非常不足, 对软件整个生存周期的管理体会不深, 管理意识薄弱。

1.3

高校软件开发项目和企业相比, 对于开发成本、用户意见、进度等方面的控制不如企业那样严格。

1.4 高校软件项目开发过程中, 经常会忽略测试阶段的工作。

开发人员的兴趣多集中在功能的实现上, 而对软件运行的性能关注不多, 预先测试工作很少, 这就造成事后不得不耗费大量力气去弥补。

2、高校软件项目开发的过程管理改进

基于上述特点, 笔者结合实际, 根据自己的实践工作经验, 对于高校软件项目开发过程的管理, 提出如下改进措施:

2.1 团队管理

团队管理要有纪律性, 分工明确, 责任清晰。可基于项目开展工作, 尽量采用扁平化的组织结构, 角色简洁, 不必要的角色设置及时删除并做优化调整。

2.2 文档管理

高校软件项目开发团队往往是基于某个课题成立的临时组织, 流动性大, 文档管理的不完善非常不利于知识的流动和传播。CMM作为软件过程管理的工业标准, 它的各个关键过程域对于文档的要求都严格细致, 高校软件项目开发过程中, 引入C M M过程规范可以有效保证文档管理的完整规范性, 但CMM管理复杂, 实际应用中, 需适当裁剪, 具体来说, 可以在开发的各个阶段设置几个结束点, 在这几个结束点上, 编写严格的规范的文档书写标准, 在结束点之前, 流水帐一样记录下所做所想, 将有关信息用更自由方式记录保存, 在某个阶段结束之后, 花一定时间来创建和对文档格式化, 只保留关键节点的文档, 从而有效节省文档开发工作量, 提高工作效率。

2.3 计划管理

项目启动之前, 应有大致实施计划。项目实施过程中, 项目负责人要不断对照原有计划进行工作调整。高校软件项目开发需求变更频繁, 同时, 软件开发自身的难度大复杂性大等特点也要求计划制订时不能跨越太长时间段, 要立足当前, 逐步推进, 逐步细化。高校软件项目开发在时间性上的要求要比企业弱一点, 要保证有充足时间完成研究过程, 但这并不是说高校软件项目开发就无时间限制, 在开发过程中, 可每隔两周进行一次小会讨论, 制订未来两周内详细的研究开发计划, 并对未来三个月内的工作做粗略规划, 下次计划的制订要紧密结合上次计划完成情况, 及时调整。

2.4 开发过程管理

在开发工作具体开始之前, 要制定详细的开发工作流程, 高校软件项目开发流程主要包括下面几个阶段:需求分析、系统设计、编码测试、收尾四个阶段。

2.4.1 需求分析阶段管理

和企业不同, 高校软件项目开发的需求除部分来源于客户需求, 更多的, 则来源于一些研究性课题研究的需要。这也导致高校软件项目开发的需求分析管理和企业有很大不同。高校软件项目开发的需求包括问题求解和需求确定两个部分。问题求解部分主要的工作是构思的形成、构思的筛选和概念的形成与评估, 其中, 牵涉大量国内外文献的研究和综述, 在构想确立的过程中要经常开会讨论, 由专家对构想进行初步评估, 全部审核通过后, 需由负责人撰写详细的问题求解报告, 在此过程中搜集整理的资料随同报告分类保存。需求确定阶段则针对问题求解报告, 编写详细的需求计划书, 有条件的情况下, 可采用一些快速开发工具针对需求设计开发原型, 开发原型应包括核心功能和关键难点的实现, 设计尽量的简单, 不求完善, 软件原型的设计可帮助预测需求的合理性, 以最快的速度得到需求反馈。需求分析书在最初设计时并不要求过分细致, 要抓住重点, 力求简单易懂, 在最终文档交付之前, 可进行多次迭代开发以尽可能的减少实际开发中的更改。

2.4.2 系统设计阶段管理

通用的建模工具如U M L可帮助进行系统整体设计。系统的分析报告应包括以下几个要点:系统整体的功能模块框架体系, 系统中的用户权限分析、系统整体运行流程和系统的数据结构构建体系, 此外, 还应包括关键难点的技术实现可行性。良好的系统设计可有效降低编码过程中的返工问题。

2.4.3 编码和测试阶段管理

高校软件项目开发中编码阶段, 最大不足是代码编写不规范, 变量函数的命名各成体系, 没有正式标准, 注释部分描写不清, 这就造成代码可读性差, 严重降低代码重用性。高校软件项目开发的另一大不足是对测试重视不够, 这就很难保证软件产品的质量和性能。结对编码对改善上述不足有很好效果, 由两人结对进行代码开发, 一人负责代码功能的实现, 另一人负责代码的可读性和运行的正确性和完善性。这样可有效提高代码编写速度, 使编写者更有信心, 同时可保证未来代码运行的正确性, 发现问题及时修改, 避免把所有问题积累到最后再做处理。在此阶段, 文档书写可以少一些, 关键部分有记录即可, 但代码要书写规范, 语句尽可能的精简清晰, 可读性可理解性要强。源代码的管理也是该阶段的一个重要工作, 常用的配置管理软件, 如CVS等可有效控制和管理版本的更改变动, 全过程配置管理, 有利于项目内统一的编码、测试, 保持一致性。

2.4.4 收尾阶段管理

在团队解散前, 收尾工作要做好, 整个过程中的文档和最终软件成果指定专人整理归类, 为后续开发和维护打下良好的基础。

2.5 跟踪管理

在软件项目开发过程中, 项目负责人的角色很重要, 要及时跟踪团队资源变更情况, 跟踪项目执行的范围和进展情况, 确定未做的有多少, 已完成的有多少。

2.6 培训管理

高校软件项目开发中, 可依据实际采用内外部培训、自我培训、专家指导等多种形式。培训内容要按具体情况展开, 一般来说, 新人培训应该包括组织内部已经形成的制度和纪律, 软件文档编写约定, 软件开发流程中的各项验收和管理标准, 团队的组织结构角色分工, 除此外, 可结合具体项目制订项目入门的快速指南。通过共同分析项目的目标和管理规范的必要性, 使分配的任务得到新加入的开发人员的认可, 有利于工作积极性的调动。

2.7 支持开发全过程的网络管理平台的构建

在有条件的情况下, 建立基于网络的软件开发全过程的协同工作平台可有效帮助提高软件开发过程的管理, 特别是对高校软件项目开发来说, 可在一定程度上解决开发团队缺少固定时间地点所造成的沟通缺失, 更好的保管归类开发过程的文档, 方便查询, 同时使团队成员对开发过程中的规范性有更深刻的理解。

3、结语

总之, 高校软件项目开发过程管理, 需从自身固有的特性出发, 一方面, 要逐步建立和完善规范化的管理模型, 另一方面, 在实际操作上, 要从现有环境和条件出发, 在项目不同阶段、不同团队和不同模块采用灵活多样的方法, 以期获得最佳的实践效果。

摘要:高校软件项目开发具有创新性强、变更频繁, 开发人员新手多、管理经验欠缺、流动性大等特点。其过程管理, 既要参照软件企业常用管理方式保证规范性, 同时又需结合自身特性赋予更多灵活性, 在开发的各个阶段, 需采取多种方式综合管理, 以平衡各方效益。

关键词:软件开发管理,敏捷管理,软件过程改进

参考文献

[1]张海藩.软件工程导论 (第五版) [M].北京:清华大学出版社, 2008

[2]萨默维尔, 程成, 陈霞.软件工程 (原书第8版) [M].北京:机械工业出版社, 2007

[3]唐俐威.软件开发的敏捷管理方法研究[D].哈尔滨:哈尔滨工业大学, 2006

外挂或变身第三方软件? 篇9

从插件到外挂

外挂的发展最早可以追溯到2003年,实际上当外挂第一次为游戏而设置功能前,它就以一种特殊的形式——按键精灵,存在于网络当中了。2001年兄弟论坛开发了按键精灵,目的在于解放玩家双手,让人更轻松地游戏,但它并不具备太大的危害性,在某种程度上可以说更像现在的插件。

解放双手的外挂在操作中因一些特殊遭遇而变了味道。当大家发现自动拾取物品的外挂可以加快速度后,都开启外挂以更方便地抢夺战利品。外挂开发者为使自己开发的外挂产品被某款游戏的多数玩家认可使用,于是加强对外挂功能的研究。早期通过按键精灵编写脚本的方式,也直接成了读取游戏数据包从而改写游戏内存纪录代码为主要方式。这样的外挂在应用上极大地影响了网游平衡性,也给网络游戏运营商带来了损失。

2003年,借助流行网游而盛行的各类外挂开始找寻自己的存在价值。外挂如同网络游戏一样拥有了自己的价格、包月、购买使用权等收费方式,让游戏玩家在为游戏支出的同时又增加了一部分额外的花销。然而,一些玩家在对比外挂使用的开销后还是选择了为外挂付费,这样的态度使得外挂在2003年至2005年之间,大行其道,导致厂商的产品下线甚至企业破产。外挂的商业化使其危害性更加突出,网络游戏运营商终于按耐不住开始着手打击,外挂因此走向了与厂商势不两立的局面。

从外挂到插件

外挂与游戏厂商之间在10年经营发展中形成了一种不断斗法的局面。一个是要力争自己成为一种网游产业的附属品,而另一方则是视其水火不相容,势要将其毁灭于萌芽期。斗法的过程中外挂有了新的发展。

在游戏厂家利用寻找外挂源头和打击外挂使用者两种方式打击外挂的压力下,外挂开发者在商业化运作下开始寻求出路。不论是何种原因,外挂一旦接触到扰乱网游平衡性的问题就会成为厂家的打击对象。而游戏厂商打击外挂的主要原因,也是其严重破坏游戏的平衡世界,让游戏的寿命缩短。这样一来,一些软件开发者开始寻求更为合理的方式让外挂以一种全新的方式出现,这就是一种网游外挂的变种插件程序。插件是辅助游戏的一种第三方程序,其在辅助内容上并不存在修改游戏数据,破坏游戏平衡的因素。而外挂则不同,外挂的定义已经专门针对对网络游戏虚拟世界造成严重不平衡的情况。于是,当插件与外挂定义区分开来后,厂家开始对插件放松了监督甚至主动吸纳其成为自己产品的一个附属服务内容,而外挂依然是被打击的对象。

或变身第三方软件?

如今,外挂和插件已经成为伴随网络游戏发展而来的两个全新内容。其中插件是真正帮助网游玩家的第三方程序,因此还拥有自己的发展空间。而外挂则因为破坏游戏平衡,至今被各游戏厂家喊打不及。

与2005年以前比,外挂的控制如今已经相当收敛,然而不论网游运营厂商寻找什么样的方式去监督,都无法获得满意的结局。即便一些大型游戏企业为了解决外挂影响,对自己运营产品中的用户使用外挂现象进行大规模封停处罚,但一款游戏中的玩家数量是有限的,被封停的账号同样付出了时间,这样的强力打击手段对于使用外挂玩家本身而言,与直接将其踢出游戏没有任何差异。于是厂家的大规模封停也会担心自身产品用户的急速减少,这种左右为难的局面还是存在于大多网游当中。

试论软件开发项目的管理 篇10

一 实施软件开发项目管理的意义

近年来, 我国的软件开发不断的深入和发展, 随着各种软件技术的不断创新和软件产业的日益发展, 人们越来越意识到软件开项目管理的重要性, 软件开发项目的管理越来越受到人们的重视。我们所说的项目管理就是指的在项目活动中运用一系列的知识、技能、工具和技术来满足或超过相关利益者对项目的要求, 软件开发的项目管理也是这个意义, 它就是使得软件开发结合上管理学的知识, 通过软件管理人员的相互合作, 来实现软件开发项目的目标, 实施软件开发项目管理有利于更好的实现软件开发的目标, 更高效率的实现软件开发。

二 目前在软件项目管理中存在的误区

虽然目前有很多的软件企业都已经意识到了软件开发项目的管理的重要性, 但是他们的软件项目管理中却存在着很多的误区和问题, 这些误区和问题主要表现在以下几个方面:

1.项目经理不够专业。项目经理在整个软件开发项目的管理中发挥着重要的作用, 因为无论是项目的实施还是决策都是由项目管理人员来制定的, 项目经理在软件开发项目的管理中的作用尤其重要, 因此, 项目经理必须是由具有相当高的技术和管理能力的人来担任, 而我国目前的现状是对项目经理的要求不高, 项目经理不够专业, 这就是软件开发项目中的一项非常不利的问题。

2.项目计划缺乏纲领性。目前的软件企业的软件开发项目管理项目计划缺乏纲领性, 项目经理对总体计划和阶段计划的作用认识不足, 使得整个项目的计划都缺乏纲领性, 最终容易导致管理计划与管理实践之间相脱离, 很难高效率的实现软件开发项目的目标。

3.缺乏有效的管理意识。有许多企业的项目经理只有高超的技术技能却没有一定的管理意识和管理技能, 他们总是在具体的技术工作上下工夫, 却没有意识到对整体项目的把握, 容易造成任务分配不公平, 资源浪费等问题, 也无法实现软件开发项目的最终的目标。

4.缺乏有效的沟通制度和机制。很多的企业由于缺乏有效的沟通制度和机制, 使得很多的重要的信息没有及时有效的得到传递, 在制定计划、意见反馈、情况通报、技术问题或成果等方面与相关人员的沟通不足, 从而造成了不必要的损失。

5.风险管理意识淡泊。在软件的开发项目中具有风险管理意识是非常重要的, 然而目前就有很多项目经理没有意识到这一点, 他们的大意很可能使得在一次小的危机到来之时就是的他们措手不及。

6.项目干系人的不确定性。有些企业在范围识别阶段, 项目组无法充分了解客户的整体组织结构、有关人员及其关系、工作职责等, 也就会无法得到完整需求和最终经权威用户代表确认的需求, 从而使得项目范围蔓延、进度的拖延和成本的增加。

7.缺乏项目团队的合理分工。软件企业的整个的软件开发项目是需要整个项目团队的共同努力来实现的, 由于缺乏项目团队的合理分工, 就使得分工不明确, 成员之间相互推诿, 责任不清, 职责不明, 影响整个项目的完成进度。

三 解决软件项目管理中存在的误区的有效策略

既然在软件开发项目的管理中存在着误区, 我们就要积极找出解决这些问题的方法, 我们要运用管理学的方法从软件开的角度, 有针对的性的解决问题, 我们主要要做到以下几点:

1.项目经理应该积极的接受系统的项目管理知识培训, 掌握稳定的知识技能和管理技能, 在掌握好自己的专业知识和进行专业实践的基础上, 还要具有一定的管理知识和实践, 具有专业素质和管理素质。

2.要制定合理的项目计划, 并对计划进行不断的完善和改进, 首先项目经理应该注意提高自己的计划意识, 制定合理的项目计划才能是项目管理人员按着项目的计划来执行项目, 这样才更加具有针对性, 才有利与项目管理的高效率的实现。

3.项目经理要提高自己的项目管理意识, 企业要积极的引导和培训项目经理使他们做好项目管理的工作, 有一定的管理能力和管理经验, 使得自己的整体的管理素质有所提高, 从而更好的在整个软件开发项目中起到带头作用。

4.企业要制定有效的沟通制度和沟通机制来提高整个项目管理人员的沟通意识。只有采取多种沟通方式才能提高沟通的有效性。只有沟通顺畅了, 才能够使得信息得到有效的传递, 才能够在最短的时间能征集最广泛的意见, 能够提高效率, 有利于实现软件开发项目的目标。

5.项目管理人员要提高自己的风险意识, 可以通过学习项目管理知识来掌握风险识别、量化、对策研究、反应控制的工具和方法, 掌握项目风险管理所必备的知识。项目管理人员还应该学会对本行业项目中常见的风险及其对策进行总结, 只有这样, 当面对突如其来的风险时, 项目团队才能够从容应对。

6.实现项目干系人的需求和愿望是项目的目的。项目干系人管理应当从项目的启动开始, 项目经理及其项目成员就要分清项目干系人包含哪些人和组织, 并且要影响和驱动他们对项目的支持, 查明他们的需求和愿望, 减小阻力确保成功。

7.对团队成员进行合理的分工, 使其明确各自的职责, 使得项目成员之间相互配合, 共同来完成软件开发项目。

四 结语:

上一篇:财经基本技能下一篇:美工制作