软件开发的组织和角色分工

转载 2007年10月11日 18:34:00

  软件开发的组织和角色分工

 

随着软件规模的不断膨胀和软件开发技术的发展,软件开发的分工和组织也变得越来越复杂,如何合理的组织和分工越来越成为能否成功开发的一个决定性因素。

对一个软件产品或者一项软件工程来说,参与角色通常包括如下几种:

l         高级经理

l         产品经理或项目经理

l         开发经理

l         设计师

l         测试经理

l         开发人员

l         测试人员

l         项目实施人员

 

高级经理具体参与项目或产品的时间并不多,但对项目的成败却起到了至关重要的作用。通常高级经理参与项目过程中各个关键环节的活动,关注产品开发的进度,对风险控制、资源提供做出决策。

产品经理(项目经理)作为客户方和公司内部交流的纽带,对项目过程进行监控,对项目的进度、质量负责。产品经理应该是软件工程领域内的专家,但不一定是业务领域内的专家。产品经理的基本活动包括:制定计划、协调资源、关注和控制计划进度、控制客户期望值。其中控制客户期望值这一项在工程性质的项目中尤其重要。

开发经理是具体开发过程的领导者,必需由熟悉业务和开发技术的专家担任。开发经理的职责是界定需求,确定适当的技术构架和体系,保证软件产品按照设计的标准开发。

设计师是软件蓝图的设计者。通常设计师可以分需求分析师、构架设计师、业务设计师三种,在小规模的开发团队中,这三个角色通常由一个人承担。设计师一定是业务领域和技术领域内公认的专家,具有丰富的项目经验,能够准确把握客户需求并提供可行的实现思路。设计师的基本活动包括:进行需求分析、进行构架设计和功能设计,按照规范编写相应的文档,将设计思路传播给开发人员、测试人员。

测试经理是测试活动的领导者,是公司内部认定的产品质量责任人(项目经理是对外的软件质量责任人)。测试经理的责任是计划和组织测试人员对目标产品进行测试,发现bug、跟踪bug直到解决bug;计划和组织用户培训工作。

产品经理、开发经理、设计师、测试经理作为一个项目的高层,对项目的成败起关键作用。

 

开发人员根据设计师的设计成果进行具体编码工作,对自己的代码进行基本的单元测试。通常34个开发人员组成一个开发小组,由一个team leader带领进行开发活动。开发小组team leader由小组内技术和业务比较好的成员担任。team leader通常还负有进行详细设计和走查小组成员代码的职责。考虑到team leader需要进行详细设计、编写文档,和小组成员进行沟通,因此一个team leader的开发任务不能超过开发人员的平均任务量。对开发人员而言,必需具备产品开发所需要基本技术、技能,比如编程语音、数据库应用开发经验等。如果发现开发人员不完全具备这些技能,开发经理和项目经理应该提供必要的内部或外部、培训,以使开发人员具备这些必要的技能。

测试人员根据测试经理的计划和测试总体方案对目标产品进行测试,编写测试case和测试代码,发现和跟踪bug;编写用户手册;进行用户培训和教育。测试人员介入项目的时机从理论上讲越早越好,但考虑到测试人力资源,通常在需求分析确定后介入比较合适。对测试人员而言,除了要求和开发人员相同的技术技能外,还应该熟悉测试理论和测试方法,尽可能做到总是站在使用者的角度观察和思考问题。

项目实施人员是针对工程性质的项目必需的人员配置。项目实施人员负责软件系统安装配置、系统割接、运行期间的维护工作。

 

项目开始前,项目成员必需明确自己所在的岗位和需要承担的责任。

 

项目组织的过程中,必需遵循的一个原则是项目组尽量小型化、灵敏化,保证沟通顺畅和高效,通常一个小型项目组的成员不超过20人。对大型项目,应该进行更详细、精确的拆分,保证一个项目经理管辖的成员不超过20人。

 

软件开发的组织和角色分工

随着软件规模的不断膨胀和软件开发技术的发展,软件开发的分工和组织也变得越来越复杂,如何合理的组织和分工越来越成为能否成功开发的一个决定性因素。 对一个软件产品或者一项软件工程来说,参与角色通常包括...
  • ningzhisheng
  • ningzhisheng
  • 2014年08月01日 17:02
  • 2758

软件开发团队常见角色职责

正在成长,转载文章方便学习,如有侵权,请与本人联系。
  • qq_26811681
  • qq_26811681
  • 2016年04月27日 21:35
  • 1399

软件开发项目中的人员角色与职责划分

角色 职责 项目经理 项目经理负责分配资源,确定优先级,协调与客户和用户之间的交往。总而言之,就是尽量使项目团队一直集中于正确的目标。项目经理还要建立一套工作...
  • nishiwodeangel
  • nishiwodeangel
  • 2013年09月08日 09:59
  • 5416

软件开发中的分工协作思考与VO、PO…

由此想起了本科时代学习软件工程时的一个小组大作业。9人做一个论文管理系统,安排了一个同学写界面,然后我把他界面传来的数据做处理。然后问题的关键来了:我们怎么合作?   显然我们要规定好什么数据是在界...
  • u010770993
  • u010770993
  • 2017年04月21日 10:53
  • 646

软件项目管理中团队成员组成结构及比例

1. 国外的公司在软件项目管理中,一般测试人员和开发人员比例为2:1或者1:1,测试团队非常的规范: 微软            测试人员和开发人员比例为2:1 阿里巴巴     测试人员和开发人...
  • qq_34754363
  • qq_34754363
  • 2016年06月19日 01:37
  • 6801

技术人员如何创业《三》- 合伙人的分工

技术人员如何创业《三》- 合伙人的分工 Posted on 7 六月, 2013 by lanceyan | 7 Replies “中国梦”我们习主席上台后就大大倡导。国家领导人有他们的中...
  • u012377333
  • u012377333
  • 2015年02月03日 09:48
  • 1307

软件开发人员角色定位和分工

模块设计师:对与系统分析师和架构师所划分的模块进一步细化,保障各模块按既定的标准和要求的完成。 需求分析师:通俗一点讲需求分析师就是跟客户交流,准确获取客户需要。需求分析师是项目前期与客户方打交道最...
  • sdvch
  • sdvch
  • 2015年05月26日 16:18
  • 512

自动化测试角色分工

前言:随着软件测试的发展,自动化测试的职能也划分得越来越细,分工越来越明晰,对于在自动化测试过程中的分工不同,做出如下角色定位:   1.1. 自动化测试框架架构师 1) 根据测试业...
  • xiezechang
  • xiezechang
  • 2013年02月20日 15:06
  • 564

测试 QA 的角色和分工

测试的角色(Test)要独立出来么 ?   独立出来的测试角色怎么才能发挥作用?   有些成功人士和成功的公司号称没必要有独立的测试角色(Test),你怎么看?   最近又看到一些关于开发人员要...
  • fen0707
  • fen0707
  • 2013年05月23日 09:09
  • 554

测试 QA 的角色和分工

测试 QA 的角色和分工   测试的角色(Test)要独立出来么 ?   独立出来的测试角色怎么才能发挥作用?   有些成功人士和成功的公司号称没必要有独立的测试角色(Test),你怎么看?...
  • liangdeniu
  • liangdeniu
  • 2015年01月21日 10:40
  • 414
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:软件开发的组织和角色分工
举报原因:
原因补充:

(最多只允许输入30个字)