在软件企业,组织结构一般采用矩阵式和事业部式,小公司适合矩阵式,大公司适合事业部式,事业部内部也是矩阵式。所以矩阵式是软件企业的一个重要的特征。矩阵式组织结构就是可以通过纵向和横向两个方向把人员组织起来,所谓纵向就是常见的职能部门,而横向是项目组。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

实例:FM软件公司是一家以对日外包业务为核心的软件公司,公司下设四个开发部门(其他人事、财务等支撑部门不予考虑),第一、二、三部都是对日业务部门、第四开发部是对国内业务部门。第一第二业务部门主要负责公司最传统的业务,第三业务部是由一个对日项目逐步发展壮大而来。第四开发部则是把原有国内项目聚集起来合并而成。这四个开发部构成了FM公司的主体框架。公司是以软件开发项目为主要的业务形式,在实际的业务开展过程中,项目团队的组织是根据项目的具体情况确定的。项目首先落实由哪个开发部承接,指派项目经理,然后现在开发部内部组织开发团队,如果不能满足项目的需要,就需要跨部门招揽项目组成员,这样组织的项目团队就是一个横向的结构。

软件企业在形式上有着纵向的只能部门划分,但在实际的业务活动中,更多的是以横向的项目方式来组织的,具有鲜明的项目特征。部门的特点在于它的长期性、稳定性,而项目的特点来自于它的生命周期,自项目组成立开始,要经过需求分析、设计开发、测试、交付使用等多个阶段,在每一个阶段项目组的成员组成都有变化,人员在项目组中进进出出。所以项目是有生存期的,人员是不稳定的。

项目对人员的不同的需求抽象出来就是项目在不同阶段对不同岗位的需求。那么一个项目都需要什么样的岗位呢?

项目经理:项目负责人

需求分析师:业务需求分析人员,搞清楚做什么?

系统架构师:软件系统的架构设计人员,负责系统做成什么样?

系统开发工程师:负责系统的实现,具体就是变成人员

测试工程师:负责系统的测试工作,保证系统是按照业务需求完成的可以正常运行的系统。

项目在不同的阶段需要不同岗位的人员,项目经理是自始自终都需要的,需求分析师则在项目初期是最重要的,系统架构师在项目早期发挥重要的作用,系统开发工程师构成项目组最主要的部分,在项目前期陆续加入,在项目后期又陆续撤出,测试工程师在项目后期作用最大。

从公司的高度来看,项目一个一个的成立,又一个一个结束,人员在不同项目组中进进出出,不断的流动。这就是软件公司特有的项目特征。