您的位置:网站首页 > app开发 > 做软件开发的公司 > 正文

软件项目的人员组织与管理分析

作者:知网科技 日期:2020/6/17 人气:
标签:


 

       软件项目的成败从本质上还是依赖于人,人员是最重要的资源。事实表明,优秀的人才加上一流的管理是项目成败的关键所在。

 

       软件项目人员组织

 

       目前,大多数软件的规模不是单个软件开发人员在给定时间内可以完成的。因此,软件开发人员的协作是必不可少的。软件开发过程中,软件开发人员的构成、组织形式在很大程度上影响着软件开发的效率,是项目管理中待解决的一个重要问题。

 

       常见的软件项目人员组织形式有3种,民主制程序员组、主程序员组和技术与管理分离式组织结构。

 

       1.民主制程序员组

 

       顾名思义,民主制程序员组就是小组成员具有完全平等的地位,组织的决策依赖于成员的民主投票决定。因此,任意两个小组成员之间都可能通信,即n个成员可能有n(n—1)/2条通信路径。

 

       采用民主制程序员组的好处是成员平等参与项目决策权,有利于激发他们的创造力和主动性,有利于大家通力合作攻克技术难题。这种组织形式适合软件规模较小,组内成员经验丰富、技术能力强、习惯于共同开发软件项目的情况。

 

       它的缺点是缺乏具有权威的领导者,当出现分歧时可能无法解决。此外,该方法不适合大规模开发的情况,也无法充分发挥少数经验丰富、技术高超的程序员的作用。

 

       2.主程序员组

 

       IBM公司在20世纪70年代提出主程序员组的方法,它是在某种程度上对民主制程序员组的一种矫正。主程序员组的结构如图3.1所示,它由1名主程序员、1名后备程序员、1名秘书和1-3名程序员组成。他们的分工如下。
 


 

       其中,主程序员选用经验多、技术好、能力强的程序员担任,负责软件体系结构的设计和关键部分的详细设计,并且负责指导其他程序员完成详细设计和具体编码工作。后备程序员协助主程序员工作,代表小组与其他团队进行交流,并在必要时(主程序员生病、出差或跳槽)接替主程序员的工作。后备程序员同样要求经验多、技术好、能力强的程序员担任。秘书负责组内与项目有关的全部事务性工作,如维护项目的资料、文档、代码、数据和测试用例等。程序员负责完成指定部分的详细设计和编码工作。

 

       这种组织形式的优点在于:分工专业化,能充分发挥每个人的特长;组织内部的管理简单化,组内成员都向主程序员负责,简化了成员间的沟通和协调,提高了工作效率。缺点是:要求主程序员和后备程序员既懂技术,又有高超的管理技巧,但现实社会中这样全才型的人很少。

 

       3.技术与管理分离式组织结构

 

       民主制程序员组的一个优点是成员都对发现程序中的错误持有积极、主动的态度。主程序员组的结构中,主程序员对每个程序员的代码负责,同时他又负责考核每个程序员的业绩。因此,在和主程序员审查代码时,程序员未必会积极、主动查找自己的错误。从管理角度看,这是一种制度缺陷。
 


 

       如图3.2所示,技术与管理分离式的组织结构吸收了民主式管理和主程序员管理的优点,将技术开发工作和行政管理工作分离,分别由技术组长和管理组长担任。技术组长负责小组内的技术决策,参与全部代码的审查工作。管理组长负责非技术的事物性管理决策,对小组成员的业绩进行考核。

 

       这种组织结构的好处是,取消了主程序员的行政管理工作,不仅有利于寻找主程序员的人选,也有利于小组成员积极、主动地查找程序中的错误。使用这种结构时,明确技术组长和管理组长的管理权限很重要。但再细致的规定,也不可能面面俱到,有时也会出现职责不清的矛盾。

 

       当软件规模较大时,可能需要几十甚至上百个程序员共同完成项目,由于一个组内成员不宜太多,因此程序员会分成若干个组。图3.3所示为一种可行的组织形式,程序员向自己的组长汇报工作,组长向项目经理汇报工作,整个项目在项目经理的协调下进行。如果规模更大时,可以增加中间的管理层次。
 


 

       需要说明的是,图3.3描绘的是技术管理部分的组织结构,而非技术管理部分的组织结构与此类似。


(())
顶一下
参与讨论
姓名: 验证码:看不清楚,换一个
最新评论

联系我们

软件开发: 15838307519(司经理)

网络营销: 13676968269(王经理)

网络建设: 13073737771(郭经理)

24小时服务电话: 0371-56683330

了解更多APP开发

+好友