工程软件开发之团队开发规范FB

工程软件开发之团队开发规范FB
工程软件开发之团队开发规范FB

水利水电工程XXXXX辅助决策支持系统团队开发规范

XXXXX设计有限公司

二XXX年十二月

文档信息:

文档变更历史:

文档名称:

审核结果:

目录

2.1达成共识................................................

4.3变量和常数..............................................

1团队组成

我们的整个软件开发团队由4种角色组成,分别为:

?产品管理(Product Management)

?项目管理(Program Management)

?开发人员(Development)

?测试人员(Test)

各角色在团队的地位相当,各司其职。各个角色的具体目标、职能以及责任在以下的小节中进行详述。

1.1产品管理

(1)目标

满足客户需求。

产品管理的目标就是满足客户需求。一个成功的项目必须要能够满足客户和用户的要求。即使项目达到了预算和时间的目标,只要未能满足客户需求,那这就是一个失败的项目。首先必须认清和理解客户。有时,使用方和投资方的目标需求并不完全相同,因此就需要清晰地区别和分析所有的需求。

(2)职能

?市场

?推动市场和公关,以对目标客户发生效用

?突出产品与其他竞争对手的区别性,以利于竞争

?分发解决方案,以便用户能够容易地获得

?为用户提供支持,以使其无论在购买还是使用过程中都留下正面的印象

?业务价值

?定义并维护项目的业务正确性

?定义并衡量业务价值的实现和评价

?发展客户

?推动项目和解决方案的远景目标

?负责客户期望值和沟通

?产品计划

?收集、分析客户和业务需求,并区分其优先级

?执行市场调查、市场开拓和竞争对手分析

?确定业务和成功的标准

?识别多目标的发布计划

1.2项目管理

(1)目标

在项目的约束条件下完成解决方案。

整个团队的一个主要目标就是在项目的约束条件下完成项目。项目的约束条件包括预算和进度等。大部分项目会根据时间和资金的使用来衡量项目的结果。为了实现这个目标,项目管理负责并推动进度表、功能集和预算资金。他必须保证能够在正确的时间发布正确的项目或产品,保证正确理解了项目投资方的期望,并自始至终贯穿于项目执行过程中。

(2)职能

?项目管理

?跟踪和管理预算资金

?管理控制进度表

?推动风险管理流程

?加强团队沟通和协调

?跟踪进度和报告项目状态

?管理资源分配

?解决方案构建

?推动整体项目设计

?负责功能规范

?负责解决方案范围和重要决定

?流程控制

?推动流程质量控制

?定义并推荐可改进处

?管理服务

?实现项目的管理流程并提供支持

?提供管理服务以保证高效的团队运作

1.3开发

(1)目标

按照功能规范说明、《软件开发需求分析报告》和《总体结构设计》的要求进行开发。

功能规范说明详细描述了整个团队将要提供给客户的交付物。对整个团队来说,应该尽可能精确地按照功能规范说明来实现整个项目,因为功能规范说明可以看成是整个团队和客户之间所达成的共识。开发人员必须按照客户需求和功能规范说明来构建整个解决方案。同时,开发人员还需要为整个团队提供技术方面的咨询,这样在设计和技术选择时可以尽量减少开发风险。开发人员提供较低层次的功能设计,并预估完成设计所需的时间。

(2)职能

?技术咨询

?为团队提供技术咨询服务

?评估并验证所用技术

?积极参与功能规范说明的创建和审核

?定义开发标准

?实现架构和设计

?提供针对解决方案的应用程序、数据和技术细节,以便将企业架构映射到解决方案架构的实现上

?负责并实现解决方案的逻辑和物理设计

?应用程序开发

?根据设计规范编写代码以实现功能

?在开发过程中进行代码审核,并共享知识和经验

?在测试人员的帮助下,根据测试计划执行单元测试

?架构开发

?为自动安装开发脚本

?开发安装文档

1.4测试

(1)目标

在确认所有的产品质量问题都得到妥善处理后,批准产品发布。

所有的软件产品在发布时都存在着缺陷。最重要的是,在发布前,必须清楚地认识和鉴别出这些问题,可以以问题的形式给出解决方法,或者是给出如何绕开该问题的文档记录。宁愿对于已知的问题,提供了文档或解决方法,也不要存在一些未知的问题。因为这些未知的问题,可能会带来不可预知的后果。(2)职能

?计划测试

?开发测试方法和计划

?参与设置质量标准

?开发测试说明

?测试

?开发并维护自动测试案例、工具和脚本

?执行测试,以确定产品开发过程的状态

?负责定义构造流程

?测试报告

?为团队提供与产品质量相关的数据

?跟踪所有缺陷,并保证在发布前得到妥善处理

1.5角色共享

尽管团队组成包含了4种角色,但并不意味着一个团队至少需要4个成员,也不意味着一个人只能承担一种角色,重要的是这4种角色必须在一个团队中体现。一般情况下,团队成员常常共享角色。在一些较小的团队中,不同的角色只能进行兼任。角色共享有两条重要原则:

一是开发组成员不能共享角色。开发人员是项目的构建者,他们不应该从他们的主任务中分身。如果对开发组成员要求额外的角色,往往会使得他们无法按时完成进度要求。

二是不要试图组合具有一定利益冲突的角色。比如,产品管理和项目管理的利益具有冲突点,所以他们的角色不能组合。产品管理注重满足客户需求,而项目管理主要关心在时间和预算的限度内完成项目。如果这两个角色组合在一起,那么在需求发生变更时,可能会发生一些情况,诸如没有足够地考虑客户满意度而忽略该变更,或者是没考虑对项目的冲击盲目地接受变更。让不同的团队成员担任这样的角色有助于确保每个方面得到相当的考虑和重视程度。同样,这也适用于组合开发人员和测试人员。

1.6开发小组

1.7专家小组

专家小组负责系统开发过程中重要阶段的评审、导截流技术问题的解答和指导等。主要目标是保证系统的理论先进性、更好的满足客户需求和保障开发质量。

2开发流程

在开发过程中,采用多里程碑式的过程模型,如所示。而其中每一个循环均包含四个里程碑。

图 1 多里程碑模型

这四个里程碑组成的循环放大后如所示,称为“过程模型”。

图 2 过程模型

2.1达成共识

?基本完成需求调研和分析(产品管理负责)

?确定大方向和长中短期目标

?所有角色都参与讨论并真正认同结论

?产生的文档

?常见用户情景:覆盖80%以上功能

?前景:言简意赅地说明大方向,并有激励团队的作用2.2完成项目计划

?编写详细的功能规范(项目管理)

?在编程前想清楚所有功能流程,并引导用户明确需求

?所有角色都参与审阅功能规范

?制订开发计划和进度表(开发团队)

?制订测试计划和进度表(测试团队)

?分配资源(人力和预算)

?形成项目综合计划和综合进度表

2.3完成功能

?开发人员分别完成自己的功能

?进行版本合理的控制

?对每一项可测试的功能进行测试,无需等待

?通过测试用例,对功能进行完整和重复的检验

?记录所有程序问题

?实现解决缺陷的自动流程

?按照综合进度表不断检查进度

2.4稳定与发布

?测试组全面地测试功能,包括性能和稳定性

?开发组全力配合解决缺陷

?监测质量情况

?预测发布日期

?专家会诊机制

?决定缺陷的优先度

?决定哪些缺陷可以在下个里程碑或版本中解决

?决定由谁解决某个缺陷

3代码管理

3.1编码规范

请参看附录,系统开发编码规范。

3.2版本管理

3.2.1概述

版本控制有如下好处:

?可以获得连续的受版本控制的项目,并保存不同版本的区别以作比较

?能获得版本控制工具中保存的任何版本

?能够把出错或误操作的最新版的项目恢复到正确的历史版本

?获得历史版本的详细信息

在开发过程中,核心程序员对版本进行控制、对系统源代码进行集中管理,并做好程序的备份和保密工作。

3.2.2代码管理

核心程序员根据系统结构设计和详细设计,对系统实现的功能进行分解,将实现各功能的小模块分配给项目组的开发人员,并事先设计好各模块的接口。开发人员根据接口要求进行编码。编码完成后进行单元测试。单元测试由开发人员完成。单元测试后开发人员将本部分模块代码上交给核心程序员,核心程序员负责加入模块后的系统测试。

系统的全部代码由核心程序员管理,其它开发人员负责配合进行各模块的开发。

4附录:系统开发编码规范

在开发中保持良好的编码规范是十分重要的。程序开发人员应该严格遵循系统开发编码规范进行编码。

4.1类型级单位的命名

4.1.1类

在为类(class)命名前首先要知道它是什么,如果通过类名的提供的线索,你还是想不起这个类是什么的话,那么你的设计就还做的不够好。超过三个词组成的混合名是容易造成系统各个实体间的混淆。对于派生类的命名应该避免带其父类名,一个类的名字只与它自身有关,和它的父类叫什么无关。

1 类命名

以Class声明的类,都必须以名词或名词短语命名,使用大写字母作为词的分隔,其他的字母均使用小写,名字的首字母使用大写不要使用下划线( _ )。如:

Class Indicator

当类是一个特性(Attribute)时,以Attribute结尾,当类是一个异常(Exception)时,以Exception结尾,如:

Class ColorSetException

Class CauseExceptionAttribute

当类只需有一个对象实例(全局对象,比如Application等),必须以Class 结尾,如:

Class ScreenClass

Class SystemClass

当类只用于作为其他类的基类,根据情况,以Base结尾:

MustInherit Class IndicatorBase

如果定义的类是一个窗体,那么名字的前面或后面必须加Frm。在本系统编码中,对于前处理和处理器模块使用的窗体,在名字的后面加后缀Frm,在后处理模块中使用的窗体在名字的前面加前缀Frm。如果是Web窗体,必须加后缀Page:

Class PrintFrm : Inherits Form ‘* Windows窗体

Class StartPage : Inherits Page ‘* Web窗体

2 类库命名

目前命名空间正在越来越广泛的被采用,以避免不同厂商和团体类库间的类名冲突。当未采用命名空间的时候,为了避免类名冲突,一般的做法是在类名前加上独特的前缀,两个字符就可以了,当然多用一些会更好。

例如:

John Johnson的数据结构类库可以用Jj做为前缀,如下:

class JjLinkList

4.1.2枚举和结构

同样必须以名词或名词短语命名。最好体现枚举或结构的特点,如:

Enum ColorButtons ''以复数结尾,表明这是一个枚举

Structure CustomerInfoRecord ''以Record结尾,表明这是一个结构体4.1.3委派类型

普通的委派类型以描述动作的名词命名,以体现委派类型实例的功能:

Delegate Sub DataSeeker (ByVal SeekString As String)

用于事件处理的委派类型,必须以EventHandler结尾,如:

DelegateSub DataChangedEventHandler(ByVal Sender As Object, ByVal e As DataChangedEventArgs)

4.1.4接口

与其他类型不同,接口必须要由I作为前缀,并用形容词命名,突出表现实现接口的类将具有什么能力:

Interface ISortable

4.1.5模块

模块不是类型,他的名称除了必须以名词命名外,必须加以后缀Module: Module SharedFunctionsModule

上述所有规则的共同特点是,每个组成名称的词语都必须是大写开头,禁止完全大写或小写的名称。

4.2方法和属性的命名

4.2.1方法

最好采用与类命名一致的规则,无论是函数还是子程序,方法都必须以动词或动词短语命名。无需区分函数和子程序,也无需指明返回类型。

Sub Open (ByVal CommandString As String)

Function SetCopyNumber (ByVal CopyNumber As Integer)

参数需要指明ByVal还是ByRef,这一点写起来会让程序变长,但非常必要。如果没有特别情况,都使用ByVal。参数的命名方法,参考后面“变量的命名方法”。需要重载的方法,一般不写Overloads,根据需要编写重载方法。

4.2.2属性

原则上字段(Field)是不能公开的,要访问字段的值,一般使用属性。属

性以简洁清晰的名词命名:

Property Concentration As Single

Property Customer As CustomerTypes

4.2.3事件

事件是特殊的属性,只能在事件处理上下文中使用。命名的原则一般是动词或动词的分词,通过时态表明事件发生的时间:

Event Click As ClickEventHandler

Event ColorChanged As ColorChangedEventHangler

4.3变量和常数

常数以表明常数意义的名词命名,一般不区分常数的类型:

Const DefaultConcentration As Single=0.01

在严格要求的代码中,常数以c_开头,如c_DefaultConcentration,但最好不要用它,它会带来输入困难。普通类型的变量,只要用有意义的名字命名即可,不可使用简称和无意义的名称诸如A,x1等,下面给出了良好的例子:Dim Index As Integer

Dim NextMonthExpenditure As Decimal

Dim CustomerName As String

不能起太长的名字,应该尽量简洁,如下面的例子:

Dim VariableUsedToStoreSystemInformation As String ''* 太复杂了Dim SystemInformation As String ''* 正确,简单明了

Dim sysInfo As String ''* 错误,过于简单

特殊情况可以考虑一个字母的变量:

Dim g As Graphic

对于控件,应该指明控件的类型,方法是直接在变量后面加以类名:

Friend WithEvents NextPageButton As Button ''* 按钮

Friend WithEvents ColorChoicerPanel As Panel ''* 面版

Friend WithEvents CardFileOpenDialog As FileOpenDialog ''* 文件

打开对话框等等,无需规定某种类型的变量的前缀,只需把类型写在后面就行了,试对比下列代码:

btnCancel.Text = &Cancel

CancelButton.Text = &Cancel

显然后者更能使阅读者明白变量的类型是一个按钮。

4.4前缀

4.4.1对象

1 标准对象

名称前缀例子说明

System.Array arr arrUsers 用户集合

System.Boolean bln blnDoesUserExist 用户是否存在

System.Byte byt bytStreamContent 字节流内容

System.Char chr chrKeyPress 按键

System.DateTime dte dteCreatedDateTime 创建日期

System.Decimal dec decYearlySaleQuota 年度销售额

System.Double dbl dblTotalPrice 总金额

System.Interger int intMessages 消息数

System.Object obj objExternalFunction 外部功能

System.Single sng sngFinishRate 完成率

System.String str strLoginName 登陆名称

System.Exception exc excRet 错误

System.Enum enm enmUserStates 用户状态

Structure stu stuEmployees 员工类型

2 自定义对象

我们规定应该根据自定义对象的名称来确定该对象类型的前缀,例子如下: 对象:SysSet

前缀:ss

例子:ssSafety

4.4.2变量/常量的范围

根据变量与常量的生存周期,我们应该定义不同的生存周期前缀以示区别,以便我们清楚该变量/常量的范围。

1 类、模块、组件、控件

我们规定在类、模块、组件、控件范围内,变量的生存周期前缀应该添加“m_”(Module-模块)。例子如下:

名称前缀例子说明

System.Array m_arr m_arrUsers 用户集合

System.Boolean m_bln m_blnDoesUserExist 用户是否存在

System.Byte m_byt m_bytStreamContent 字节流内容

System.Char m_chr m_chrKeyPress 按键

System.DateTime m_dte m_dteCreatedDateTime 创建日期

System.Decimal m_dec m_decYearlySaleQuota 年度销售额

System.Double m_dbl m_dblTotalPrice 总金额

System.Interger m_int m_intMessages 消息数

System.Object m_obj m_objExternalFunction 外部功能

System.Single m_sng m_sngFinishRate 完成率

System.String m_str m_strLoginName 登陆名称

2 过程、函数、属性、事件

我们规定在过程、函数、属性、事件范围内,变量的生存周期前缀应该添加“o_”(Owner-私有)。例子如下:

名称前缀例子说明

System.Array o_arr o_arrUsers 用户集合

System.Boolean o_bln o_blnDoesUserExist 用户是否存在

System.Byte o_byt o_bytStreamContent 字节流内容

System.Char o_chr o_chrKeyPress 按键

System.DateTime o_dte o_dteCreatedDateTime 创建日期

System.Decimal o_dec o_decYearlySaleQuota 年度销售额

System.Double o_dbl o_dblTotalPrice 总金额

4.5标签

标签就是用于Goto跳转的代码标识,由于Goto并不推荐使用,所以标签的使用也比较苛刻。标签必须全部大写,中间的空格用下划线_代替,而且应该以_开头,比如:

_A_LABEL_EXAMPLE:

如此定义标签是为了与其他代码元素充分区别。

4.6名字空间

通常,一个工程使用一个名字空间,通常不需要用Namespace语句,而是在工程选项的“Root Namespace”中指定,使用根名字空间可以使代码更加整齐,容易修改,这一点是VB十足的优点。名字空间的语法是:

公司名.产品名[.组件名的复数]

如: Namespace https://www.360docs.net/doc/688735187.html,

随便起一个名字空间的名字绝对不是一个好主意,一定要遵守上述规定。

4.7格式化

良好的格式化代码对我们的浏览与维护有相当的好处。

4.7.1块

.NET提供了#Region...#End Region块控制。我们应该根据代码所实现的功能分类并以块组织起来。

4.7.2缩进

每个层次直接都应该以Tab进行缩进,而不是Space(空格键)。

4.7.3流

每个方法、函数、属性、事件应该有且只有一个入口和一个出口。如果遇见多层嵌套而需要直接跳出的时候,请使用局部Boolean或者Integer变量来标示用以多层跳出。如:

Private Function TestForReturn() As Boolean

Dim o_blnRetAs Boolean=False

Dim i As Integer, j As Integer

For i=1 To 100

For j=1 To 10

If (x) Then

o_blnRet=True

Exit For

Else

End If

Next

If o_blnRet Then

Exit For

Else

End If

Next

Return o_blnRet ' '这里是唯一出口

End Function

4.8注释

4.8.1注释规范

1)注释中,应标明对象的完整的名称及其用途,但避免对代码过于详细描述

2)每行注释的最大长度为100个字符

高效研发团队建设的六个步骤

高效研发团队建设的六个步骤 对美国软件工程实施现状的调查结果表明,软件研发的情况仍然很难预测,大约只有10%的项目能够在预定的费用和进度下交付。软件开发团队的建设和管理依然是软件项目管理中一个十分主要的问题。 软件项目管理的主体是软件开发团队。一个软件项目管理的好坏,很大程度就体现在软件开发团队的建设和管理上。软件开发团队是软件项目实施的基础,它直接影响和制约着软件项目管理的最终效果。 一个高效的软件开发团队是高质量软件项目或产品的保证。建设高效的软件开发团队,是实现软件项目管理目标的前提和保证。具体的建设措施有以下六点: 1、选拔或培养适合角色职责的人才 软件项目是由不同角色的人共同协作完成的,每种角色都必须有明确的职责定义,因此选拔和培养适合角色职责的人才是首要的因素。 软件项目开发经理要熟悉各种设计方法,愿意听取其他人的意见,并且要很客观地把自己的思想与其他人的意见相比。此外,还要掌握激发团队成员积极性的方法。 系统分析员要熟悉需要的设计方法,掌握系统分析和设计的原则,要拥有完成职责所需的技能和丰富经验。 选拔或培养适合角色职责的人才,特别是合适的软件开发经理是建设高效软件开发团队的最重要的因素。 2 、增强软件开发经理的领导才能 软件开发经理是项目的负责人,负责整个软件项目的组织、计划及实施的全过程,在项目管理过程中起着关键作用。 增强和发挥指导作用 软件开发经理必须以身作则,严格要求自己,起到榜样和示范作用;要明确具体的软件项目质量、范围、工期、成本等目标约束;明确各软件开发团队成员的角色和责任分工,充分发挥团队成员各自的作用。 充分发挥激励作用 在软件开发过程中,由于严格的目标约束及多变的外部环境,软件开发经理必须运用各种激励理论对软件开发团队的成员进行适时的激励,鼓励和激发团队成员的积极性、主动性,充分发挥团队成员的创造力。 灵活授权,及时决策

软件开发项目团队建设

软件开发项目团队建设 近20 年来,许多新一代的软件技术、过程和方法的发展异常迅速,但软件工业仍然是一个人力密集的过程,离工业化生产方式的差距相当遥远,软件开发人员的素质、技术、能力以及软件开发团队建设的好坏,对软件项目的成败有者举足轻重的作用。为了提高软件开发的效率,提高软件开发的质量,减少软件开发的成本,降低软件开发的风险,就必须加强软件开发人员的管理,建立高效的开发团队。 1 软件开发团队在软件开发中的重要性 软件企业与传统工业企业不同,与现代企业的其他行业也不同。其最主要特征就是,企业最主要的“资产”是一批掌握技术、熟悉业务、懂得管理的“人”。软件企业主要的成本是人的成本,软件企业主要的财富积累是知识和经验的积累。因此,软件企业的人力资源管理,是企业最主要的管理内容。软件项目组的管理过程,几乎全部是围绕“人”来进行的管理。而作为被管理对象的“人”本身管理的讨论,则越来越成为软件领域所要讨论的核心问题。软件项目队伍是项目的基本工作单元,队伍的作用非常重要,是顺利实施项目的基础平台,值得花时间研究,探讨与项目成败的关系,以便更好地组建队伍,最大限度地提高工作效率。软件项目管理的主体是软件开发团队。一个软件项目管理的好坏,很大程度就体现在软件开发团队的建设和管理上。软件开发团队是软件项目实施的基础,它直接影响和制约着软件项目管理的最终效果。软件开团队在软件开发中的作用越来越突出。团队管理非常重要,它是项目顺利进行的基础,对于一个球队来说,要大力培养他们的团队精神,要求队员深刻认识自己球队的特点,团队精神能使球队更具有竞争力,可以打败实力相同而没有团队精神的球队。同理,对于软件项目团队也一样,在开发复杂软件的时候,通常每个人开发不同的部分,运行这些软件的设备又可能

工程项目管理的高效团队建设与管理

题目:工程项目管理的高效团队建设与管理 学号: :

工程项目管理的高效团队建设与管理 摘要组织是目标实现决定性因素,而目标的实现要通过好的管理得以实现,这就说 明好的管理必须建立高效团队。高效的团队在企业经营活动中显示了强大的生命力,团队部成员通过协作共同解决问题,使管理目标得以实现。项目团队是以项目组织的规建立为基础,并形成于项目组织框架之中。项目运作实践表明:项目管理组织的规 建立是高效项目团队建设的基础。表现在:首先,项目管理组织建立的原则决定影响高效团队建设。优秀项目团队更能产生在按这样几个原则建立的项目组织里:一是有明确目的性——使企业生产要素的配置按项目的需求处于动态组合状态。二是保证决策指挥的统一——有利于企业部多项目之间的协调和企业对各项目的有效控制。三是要使施工企业管理体制与机制和工程项目管理体制与机制要求一致。四是创造人尽其才的环境,减少管理层次,精干人员,强化自有资源,组装社会资源。五是有利于强化合同管理与履约责任。因此如何塑造高效项目团队问题,不仅是一个人才战略问题,而且是推行项目管理中一个必须重视与解决的现实问题。 关键词:工程项目团队建设高效性 一.团队建设的意义 众所周知, 一个项目管理的成败好坏是和项目建设中的项目经理和项目成员密不可分的, 项目团队成员对项目的成功是极其重要的。项目经理要依靠项目团队, 因为他通常并不具有项目需要做的所有工作的专业知识。对于任何项目团队, 必须有一个指挥所有工作的领导, 保证使项目团队明确项目所要求的结果, 保证项目团队成员知道对他们的期望以及分享信息的重要性。项目经理必须保证他的项目团队了解并把重点放在项目所要求的结果上。项目经理还要在沟通冲突解决办法和项目绩效方面起到一个促进者的作用。对于一个成功的项目, 项目经理必须建立和领导一个有效的项目团队。团队建设是一个对不同的个人组成的群体施加影响的过程, 群体里的每个个人都有自己的目标、需要和观点, 他们为了搞好项目而有效地在一起工作, 团队实现的成就应当多于个人成就之和。每个团队都需要激励, 团队激励是一种过程, 项目经理借助它影响队员完成该做的工作。那么如何在团队部形成统一、有序、高效的工作气氛, 怎样才能使项目成员有效地组织起来, 创造出一种开放、自信、团结、协作的团队氛围, 使项目成员强烈希望为实现项目目标做出贡献。为此, 我认为应该项目管理组织的组织形式也决定与影响高效项目团队建设。对承包人来说,施工项目组织形式在实际工作中具体形式一般有以下四种:1、部门控制式施工项目组织。其特点是:它是按照职能原则建立的施工项目组织;不打乱企业现行建制;项目终止后建制归原。2、混合工作队式施工项目组织。这一组织形式的特点是:它是按照对象原则建立的施工项目组织;企业职能部门处于服从地位;项目实施中自主权比较大。3、矩阵式施工项目组织。这一组织形式的特点是:它是现代大型项目中新型的组织形式;它把职能原则与对象原则结合起来,既发挥职能部门的纵向优势,又发挥项目组织的横向优势。4、事业部式施工项目组织。其特点是:它是比较流行的项目组织,特别是适宜母—子公司模式,特别适用于远离公司本部的工程承包;享有相对独立经营权,可以是一个独立单位。在以上四种组织形式中,从组织实践看,矩阵式项目管理组织与事业部式项目管理组织比较有利于优秀项目团队的产生。前

软件项目团队模型

摘要: 俗话说“三个臭皮匠胜过诸葛亮”,但实际工作情况往往是“三个诸葛亮不如一个臭皮匠”! 软件开发是智力型团队,如何发挥每个人的作用,并将所有人的力量扭成一股强大的项目团队战斗力,这是项目团队模型要重点解决的问题。 大纲: 1.传统项目团队模型 2.实际项目团队模型 3.MSF的项目团队模型 4.实用团队模型 5.什么才是合适的项目团队模型? 正文: 传统项目团队模型 什么是项目团队模型?简单地说就是项目以怎样的方式组建团队,软件开发项目团队的传统团队模型如下: 项目组在项目经理的带领下,各角色协调工作,为项目成功而努力! 各角色的具体职责如下:

项目经理:整体协调项目,编制计划及保证计划执行,推动项目成功。 系统分析员:分析系统需求,保证系统需求既满足客户要求,同时保证技术可行性;指导项目技术方案及系统架构设计。 软件设计师:细化系统设计。 程序员:编码实现设计。 测试工程师:测试系统,保证系统满足需求。 实施工程师:部署、调试系统,培训客户,协助客户推动系统上线运行。 配置管理员:对整个项目周期中的工作产品实施配置管理。 QA:质量保证工程师,保证开发过程按照既定的要求进行,保证工作产品符合既定的规范。 这个传统团队模型有两大特点: 1.一个团队总有一个头(这也是我们的惯性思维),这个头就是项目经理。 2.假设各种专业的角色能协调工作,并能各自发挥所长。 我们希望项目团队能有一个强大的头领,加上一班专业人才,共同为项目成功而努力。 但实际情况有这么理想吗? 项目经理会埋怨手下能力不够、不主动报告工作、不主动承担责任...... 而项目组成员会埋怨项目经理不够强,只会叫他干活,不授权,更加不会传授知识...... 实际项目团队模型 我们实际项目的团队结构,往往是这样的:

软件开发团队建设

如何建设优秀的软件开发团队 1.引言 软件开发人员的素质、技术、能力以及软件开发团队建设的好坏,对软件项目的成败有者举足轻重的作用。为了提高软件开发的效率,提高软件开发的质量,减少软件开发的成本,降低软件开发的风险,就必须加强软件开发人员的管理,建立高效的开发团队。 2.团队建设的重要性 软件项目管理的主体是软件开发团队,一个软件项目管理的好坏,很大程度就体现在软件开发团队的建设和管理上。软件开发团队是软件项目实施的基础,它直接影响和制约着软件项目管理的最终效果。建设高效的软件开发团队,是实现软件项目管理目标的前提和保证。 当需要开发复杂软件时,通常要求团队每个人开发不同的部分,运行这些软件的设备又可能来自不同的供应商,而事后将软件的不同模块集成在一起,带来的问题会更多。一个软件模块本身没有问题,但是合在一起却可能不能工作。所有这些都需要一个高效合作的团队来共同完成的,所以建立一支工作效率高的队伍非常重要。 3.优秀开发团队的建设 高效的软件开发团队是建立在合理的开发流程及团队成员密切的合作基础之上的,成员共同迎接挑战,有效地计划、协调和管理各自的工作以至完成明确的目标,高效的开发团队具有如下特征: a)人才选拔与职责分配 软件项目是由不同角色的人共同协作完成的,每种角色都必须有明确的职责定义,因此选拔优秀的人才和分配其合适的职位是首要的因素。团队的能力受限于个人的能力,所以首先要保证优秀的人才资源,具有突出能力的个人往往能带动整个团队的快速发展和成长;然后就是职责的划分,俗话说“好钢是在刀刃上”,为团队成员分配合适的职位往往能起到事半功倍的作用,大大提高团队的开发效率。 b)清晰责任与共同目标 清晰明确的目标会激励团队成员把个人目标升华到群体目标,团队的成员愿意为团队目标做出承诺,共同努力实现目标。明确个人的责任之后,团队的每个成员都十分清楚团队要取得什么样的成就以及由此给团队、给个人带来的益处,他们能将个人目标与项目目标有效地结合起来,会积极地完成工作从而为团队带来高效率的开发,为设计出高质量的软件提供了重要的保证。 c)团队凝聚力 团队凝聚力是无形的精神力量,是将一个团队的成员紧密地联系在一起的看不见的纽带。一般情况下,高团队凝聚力会带来高团队绩效。团队凝聚力在外部表现为成员的团队荣誉感,而团队荣誉感主要来源于项目目标。因此,应当设立较高的项目目标,并使团队成员对项目目标形成统一和强烈的共识,激发成员的团队荣誉感。同时,引导团队成员个人目标与项目目标的统一,增大团队成员对项目团队的向心力,使项目团队走向高效。 d)融洽的关系和良好的沟通 团队成员之间高度信任、相互尊重,既关注工作本身,更珍惜彼此之间的友谊,能够共同营造和谐、宽松、友爱的工作环境,使成员在团队中有一种归属感与自豪感。团队要进行开放性的信息交流与沟通,承认彼此存在差异,鼓励不同的意见,并允许自由地表达出来面对冲突和问题。当遇到问题时能及时交流共同商讨解决问题的方案,并

项目管理中的如何管理团队建设

项目管理的方法相对是现代的,它是以一套独特而相互联系的任务为前提,通过项目经理和项目团队的努力,运用系统理论和方法对项目及其资源进行计划、组织、协调、控制,旨在实现项目特定目标的管理方法体系。 纵观项目管理的发展史,项目经理在管理项目时一贯参照三条标准:成本、进度和质量。认为其他的考虑都是次要的。实践证明:无论用上述三条标准中的哪条标准去衡量,这种项目管理方法都不是很成功。 用上述三条标准来衡量,为什么结果并不令人满意?问题的答案就在于:只有进度、成本和质量三条标准是不够的,另外一条很重要的标准被忽略了,那就是人力因素。人力因素在保证低成本、快速度和高质量地完成项目的过程中发挥着重要的整合作用。 因此,把握项目管理中人力资源的特点,有针对性地对项目团队形成期的人力资源整合、项目团队震荡期的人力资源协调、项目团队正规、表现期及以后的人力资源激励和安抚进行统筹管理,才会项目管理的成功。 一、项目中的人力资源 对于项目而言,人力资源就是所有同项目有关的人的能力。项目团队成员属于内部人力资源,而其他则为外部人力资源。项目人力资源管理与一般企业和事业单位的人力资源管理不同之处在于项目寿命周期各阶段任务变化大,人员变化也大,相同之处在于都要对人力资源进行外在和内在因素的管理。 对人力资源外在因素进行量的管理主要是根据项目的进展情况进行人员调配,使人力资源及时地满足项目的实际需要,在数量上做到不多也不少。要做到这种程度,项目人力资源管理就要同项目管理的其他方面例如项目进度管理紧密结合起来。

对人力资源内在因素进行管理主要指对人力资源进行心理和行动的管理。这就需要运用科学的方法了解项目团队成员和其他利害关系者的心理和思想,进行必要的教育和引导,对其行为进行矫正、控制和协调,充分调动他们的主观能动性、积极性和创造性,进而保证项目目标的实现。这也就是我们平常所说的激励。 二、项目人力资源管理的主要内容项目管理论坛 项目人力资源管理包括三个前后联系的方面:组织规划、建立项目管理团队和进行项目管理团队建设。 1.组织规划。组织规划就是确定项目管理需要的角色,各角色应负的责任以及诸角色之间的从属关系。一是项目同其他组织的联系。项目总是处于一定环境之中,项目团队必然要同环境发生各种联系。二是对项目管理人员的要求。 这些要求包括性别、年龄、品德、性格、经历、学历、专业技术水平、工作能力、责任心、何时需要、需用多长时间等等。三是限制和约束组织规划的各方面情况。组织规划工作会受到各种客观条件的限制。 2.建立项目管理团队。从各种渠道物色团队成员,同有关负责人谈判,将合乎要求的人编人项目团队,将组织规划阶段确定的角色连同责任分配给各个成员并明确他们之间的配合、汇报和从属关系,这就是建立项目团队的工作内容。 这项工作要以人员配备计划为依据。项目团队成员可从组织内部和外部招收。考虑内部来源时,项目团队成员人选除了满足人员配备计划的要求以外,至少还要考虑以下几点:以前的经验、个人性格和爱好。从外部招收项目团队成员有多种方式:兼职、借调、咨询、承包等。人员配备计划要求的项目团队成员全部到位之后,项目团队才算组建完毕。项目管理者联盟文章

团队的软件项目管理和开发流程

团队的软件项目管理和开发流程 1目的 ●用于指导公司的技术中心软件开发工作 ●定义了各部门与技术部的协作接口和流程 ●定义了项目开发流程和管理办法 ●定义了任务开发流程和管理办法 2说明 2.1 范围 本文档只适用于技术中心针对网站及其相关的一般性开发工作。包括: ●网站维护性开发 ●项目开发 本文档不适用于网站运维护性的系统维护工作。不涉及: ●网站的网络安全、权限等 ●数据库的安全、备份等 ●系统环境等 凡网站运维性的系统维护工作请另参见《运维管理规范》文档。 2.2技术中心组织架构 技术中心组织架构图 技术中心组织架构说明 目前技术中心从处理的工作性质分为三大部分:运维、开发和测试。根据需求工作量的大和小,其中开发的工作又细分为两类: ●网站维护开发 ●网站项目开发 根据网站具体的开发工作内容不同,又可将维护开发组和项目开发组的人员细分前台开发人员和后台开发人员。 各小组的职责范围 ●运维组:处理系统维护性的工作,包括系统安装维护、网络安全、数据库调 优备份等。关于运维的工作本文档不再详细说明,请参见《运维管理规范》文档 ●维护开发组:处理网站的日常小问题的修改、新需求的增加(但工作量不大) 等维护性的开发。 ●项目开发组:处理新项目的开发。 ●测试组:负责对维护开发和项目开发进行测试。

●网站前台开发人员:负责对网站前台的功能进行开发。 ●网站后台开发人员:负责对网站后台的用户管理、权限管理、开发、出票等 后台的功能进行开发。 由于人力资源的限制,目前没有专职的网站维护开发和项目开发,在没有新项目时,所有人员都可安排参与网站维护开发的工作。当有新项目时再组建项目组。但有高优先级的维护工作要处理而又人手不够的情况下,项目组的人员必须优先处理网站维护紧急事件。 2.3项目与任务的定义 什么是开发类项目(项目) 满足以下任意一条件进行开发的项目均为开发类项目: ●以前从未开发过的系统; ●不存在或基本不存在可复用的技术、模块,或业务逻辑、体系结构等或者在原产品上 进行大的结构性调整。 ●在公司已有的成熟产品或可复用模块或技术基础上,根据业务需要和客户需求,新增 独立业务模块,且开发工作量超过1人月,如果是2至3人开发工作但超过2星期根据情况也可划为开发类项目。新彩种、新玩法、新产品的开发等都可以划为开发类项目。(此要求没有硬性要求,可以视情况而定。) 例如:网站二期项目、增加福彩七乐彩、增加快乐十分游戏、足彩单场项目、无线项目、安微客服项目等。 什么是维护类开发(任务) ●在现已运行的网站基础上,根据运营的需要或者市场规划的需要,提供补 丁、实现新的需求 ●工作量通过技术部经理评估小于1人月但超过1个小时的。 例如:页面的调整、促销专题页面,日常运营中发现网站的问题等。 3.需求管理 3.1需求来源 需求来源类型: ●技术部提出 ●运营部(包括客服组)提出 ●市场策划部提出 技术部需求

项目管理的团队建设

项目管理的团队建设 [摘要] 项目管理是运用各种知识、技能方法和工具,为满足或超越项目有关各方对项目的要求与期望所开展的各种管理活动。在项目管理中,高效的项目团队具有极大的价值。项目管理团队建设是项目管理中人力资源管理的一项重要环节,它需项目经理和项目团队成员共同努力来完成。 [关键词] 项目管理项目团队建设 一、项目团队建设的重要性 项目团队,又叫项目组,是由一个个体成员为实现一个具体项目的目标而组建的协同工作的正式群体。项目团队的根本使命是在项目经理的直接领导下,为实现具体项目的目标,完成具体项目所确定的各项任务而共同努力,并协调一致和有效的工作。 对于一个企业而言,团队建设是非常重要的。首先,企业若想在这激烈竞争的环境下求得生存,以团队的形式进行工作是目前比较流行的工作方式。采用这种工作形式使企业能够更好的应对外部环境的竞争以及适应企业内部的重组。其次,团队建设为员工提供了更大的活动空间和更好的工作环境,很大程度上激励了团队成员的工作积极性和创造性。由于团队的最终产出是相同的结果,因此,团队成员有很强的集体荣誉感,从而会更加努力的工作。再次,团队的建设有利于增强企业的凝聚力。企业凝聚力是企业发展的基石。以团队的形式工作,要求团队成员之间要进行很好的沟通、理解以及相互帮助,克服工作中的各种难题。最后,团队形成有利于员工的本能发挥。团队工作形式在不断地对员工的技术能力、人际处理能力、决策能力以及管理能力进行培养,从而使员工发挥其最大的价值。 二、项目团队的特征 1、很强的的目的性 项目团队是因需要完成特定的项目而设立的专门组织,项目团队的使命是完成特定的项目任务,实现特定项目的既定目标。在同一目标的感召下,才能提高项目团队成员的凝聚力,它能使团队成员积极热情地位项目成功付出必要的时间和努力,进而提高项目团队的绩效。 2、一次性的临时组织 项目的用一次性决定了项目团队的一次性。同理,项目的一次性决定了项目团队是临时的。项目团队因项目开展而设立的,因项目的结束而解散,亦即项目的生命周期同样也是项目团队的寿命周期 3、合理的系统结构 项目团队由拥有各项技能的团队成员构成,如项目经理、项目团队一般成员等;而且,团队成员均有明确的权力和责任范围。角色和职责不清楚往往会造成项目团队的混乱,绩效不高。通常情况下,项目经理是项目团队的领导、主要负责人、项目

关于软件团队建设

关于技术团队建设 通过最近几年的实践,对于软件开发的最小团队模式,有一些新的理解,和大家共享: ?很多团队,公司在成本压力下,总是希望寻求一个最经济有效的团队组合,这个是可以理解的,也是开发的初衷。 ?最小团队不是指单纯的减少人员,不是把一个需要5个人做的工作压缩为1个人做。 ?软件开发本身存在一个众所周知的弊病,就是只要存在一个能够编码的技术人员,那么软件就总是能够“做”的出来,这也给人一个假象,软件开发的最小团队就是一定数量的“码农”;这个在其他领域比如建筑和制造几乎是不可想象的,究其根源,是因为软件的质量标准过于的飘渺:我的意思是,最小团队绝不是几个“码农”。 ?人员可以合并,但角色不能合并;职能可以合并,但能力不能合并: 换言之,担什么角色就必须能做什么事情,就必须具备相应的能力. 总之,我对最小团队的看法,最小团队就是最少的角色,而这些角色不能再削减,但人员还是可以以兼任的 方式来合并角色,不过在兼任过程中要注意不能有名无实,同时需要具备胜任该角色的能力. 三要素 软件时开发的三个基本要素是:管理,业务和技术。 管理:除完全以单人方式进行的开发不在本文讨论的范围,2人以上就存在一定的团队管理,人员的协调,工作的安排,流程的部署,进度的监督等等,加上必然存在的客户管理,“鸟无头不飞”,说的就是管理者的必要性。 业务:很简单,软件做了半天是为什么而做,产生什么效益和结果,这个都需要业务来完成,业务来自于需求,深化为设计,由测试加以验证, 最后接受者是客户。 技术:更容易理解,没技术能叫软件开发?软件开发首先是技术活,但广义上来说,需求分析,系统设计和开发管理这些也都属于技术的范畴,只要需要方法论的地方就需要技术。 所以做软件先考虑其三大要素,是管理是否成熟,业务是否明确,技术是否过硬,就能知道软件是否能够顺利完成。 角色 下面我们从3个基本要素的基础上讨论下,探讨下我心目中的最少角色。 ?管理体系 n 项目经理:兼顾客户管理和团队管理2大职责,在小团队中,这两种管理几乎不可能再拆分。 ?业务体系

项目团队建设实施方案word精品

. 物业管理系统 项目团队建设方案 学生 指导教师 年级 专业 系别 学院

. . 一、项目团队人员组织及职能 物业管理系统团队人员组织有:项目经理、系统分析员、系统设计员、数据库管理员、程序员、 测试人员。 图一组织结构图 1)项目经理 职能: 开发计划:项目经理要在对所有合同、需求等熟知、掌握的基础上,明确此项目目标,并就该目标与项目客户达成一致,同时告知项目成员,然后为实现项目目标制定基本的实施计划(成本、进度、产品质量),在项目的实施过程中,还要根据项目的实际进展情况,在必要的时候,调整各项计划方案。 组织实施:1. 设计项目团队的组织结构图(图一),对各职位的工作内容进行描述,并安排合适的人选,以及对项目所需的人力资源进行规划、开发; 2. 对于项目,项目经理应该决定哪些任务由项目团队完成,哪些任务由承包商完成。 控制项目:项目实施过程中,项目经理要时时监控项目的运行,积极预防,防止意外的发生,及时解决出现的问题,同时要预测可能的风险和问题,保证项目在预定的时间、资金、资源下顺利完成。 2)系统分析员 职能: 针对《物业管理系统》做出系统功能需求分析、系统组织结构图(图二)、数据流程图、数据字

典、整体项目评估和团队组织管理。 . . 小区物业管理系 查询改改询改询询询改询改询改码录改系统组织结构图图二 系统设计员3)职能:负责设计与开发应用软件系统.其中包括对系统总体构架设计、系统模块设计(图三)、输入设计、输出设计、代码设计、数据库设计。使其正确的反应出有效的信息,协助企业经营者管理、营运公司的运作者。 . . 物业管理系后台功能模前台功能模系统数据访问数据库系统模块设计图三数据库管理员)3 职能:一般监视对数据库的备份监控和管理规范数据库用户的管理 SQL语句的书写规范的要求对深层次要求DBA 程序员4) 职能:熟练掌握各种语言技巧,知道技巧适用性还要对资源做出最恰当安排。测试人员)5 职能:性利用测试工具按照测试方案和流程对此系统进行功能和性能测试,检查系统是否有缺陷,

ERP项目实施中的团队建设

ERP工程实施中的团队建设 有很多关心ERP或正准备实施ERP的朋友都会问这么一个问题:“到底怎样才能成功地实施ERP工程呢?其中有哪些关键要素呢?”这的确是一个很大的话题,可能三天三夜都细说不完。其中包括诸如工程“一把手”工程、高效先进的实施方法、明确的实施目标与范围、有效的计划控制与时间管理、不断进行阶段性工作总结、必要的风险控制与应急措施等等大家比较熟知的内容。但其实还有一点尤为重要,却也非常容易被忽视的一个因素就是人——工程的团队建设。我们知道,在一个企业中,参与到ERP工程实施的成员都是由各个相关部门的关键人员共同组成,而这样一支由不同业务部门、不同业务背景、不同素质的人共同搭建的临时队伍怎样才能在共同认同一个工程目标、一个工程的工作方式的前提下,按照紧迫的工程实施计划共同完成好艰巨的ERP建设任务呢?这也正是ERP工程的团队建设的重要性,它也将从很大程度决定工程实施在多大程度上的成功。 企业ERP系统是通过信息技术这一手段把优秀的、规范的管理固化下来,同时也通过信息技术的革新带动管理的进一步优化。在这其中,信息技术与企业管理是有机结合的,并相辅相成,进而达到合理配置企业资源、降低成本、提高生产效率,最终加强企业的核心竞争力,以实现利润最大化。那么ERP工程的实施必然会涉及到企业管理的方方面面,譬如:销售管理、财务核算管理、采购管理、存货管理、生产管理、人事管理、成本管理等等。而这些管理又是通过企业的各个组织单元或各个部门互相协同来完成的。即,企业实施ERP工程绝不是企业信息技术部门可以独立完成的,它必须是由企业实行各项管理职能的相关部门与企业IT部门共同来完成的。这也是为什么人们总是说“ERP工程是一把手工程,ERP工程需要企业各相关部门的共同参与”的缘由了。其实,说到底这就是一个围绕着人的话题。一切以人为本! 考核与激励并存 一般而言,ERP工程实施的参与者,除了IT人员外,其他人员一定是自身的岗位工作与工程工作齐头并进的。于是关键问题就在于,如何保证这些人能对工程工作非常投入而且保证工程工作的顺利开展。这就必须要将其所担负的工程工作纳入到其绩效考核中去,让他意识到工程工作并不是可有可无的,是与其本职工作同等重要的。工程工作完成的好坏也是直接与其个人收益挂钩。但光有考核也是不行的,这样只会对实施者产生被动无奈甚至抱怨的感觉,如果工作量超负荷实施者很容易造成破罐破摔的心理。因此,还需要有激励的手段,如:高层领导直接关注、单独设立工程奖励基金、升职、延长带薪休假、给予培训深造的机会等等,这些手段的运用会很好地激发实施者的工作热情与上进心。这样,实施者就会从被动无奈中转变成主动投入,而且将会对工作发挥创造性作用,如果这方面进展得较为顺利,那么这支队伍已具备了一个良好的基础环境。 增强团队凝聚力与个人成就感 ERP工程组毕竟是一个临时搭建的组织,它只为工程目标而存在,因而不可能成为一个长期的部门,因此,参加ERP工程实施的人员对工程组明显缺乏归属感。又由于ERP工程的实施存在着许许多多“知与行”的矛盾,甚至有的工作将会反复,每个参与实施的人都可能随时遇到挫折,如果这样的情绪不及时进行调整,在队伍中弥漫,工程实施可以说是“风中之烛”,有随时熄灭的危险。如果发现这支队伍中有这样的问题,需要及时进行调整,沟通思想、组织活动,拉近人与人之间的距离。譬如说利用业余时间开个沟通会或者组织去户外进行集体游玩,

强势的软件研发团队组建

强势团队人员需求及描述 团队中包含:研发部经理(即技术总监)、leader、项目经理、项目助理、系统分析、框架设计、产品经理、高级软件工程师(主程)、初级软件工程师(辅程)、UI设计、美工、DBA测试工程师、实施工程师等,他们的大致职责描述如下。 1. 研发部经理(技术总监) 对系统方向和团队中一些决策性的事进行管理,包括日常事务,虽然他不需要编码,但能担 任技术总监,他经历了设计开发,产品的实施,并对系统的战略性发展都有相当的见解,对整个系统的所有流程都面面具道,不单单局限于技术层面,因为他需要主导整个团队运作。 可以跟客户交流需求、根据需求分派任务。 2. Leader 管理项目组成员、技术难点分析,编写详细设计文档,技能特色很突出,有创新能力,不是什么都是从网上拿下来一改就用的,其它方面都可以讲出一二,对行业内的动态都很关注,有一定的交际能力。可以跟客户交流需求。 3. 项目经理 项目经理负责分配资源,确定优先级,协调与客户和用户之间的交往。总而言之,就是尽量 使项目团队一直集中于正确的目标。项目经理还要建立一套工作方法,以确保项目工件的完 整性和质量。懂开发,知识面广,针对项目,对系统进度的控制,风险评估进有把控,根据反馈的客户需求,分派具体工作内容,项目中日常事务调配,人员配置,具有一定的的沟通 能力。可以跟客户交流需求。 1

3.1 项目助理 对会议、文档、日常事务的跟踪进行管理,这不只是助理一职,这个职务在整个项目中,启着至关重要的位置,她贯穿于团队中每个职务之中,其它职务是针,她就是一根线,她可以对项目中每个人的工作进度监控、总结和传达任务。 4. 系统分析、框架设计 对系统进行构架设计、技术评估、开发环境,编写概要设计文档与设计规范文档,对各类技术点进行分析,要求技术全面,并掌握熟练,有丰富的项目经验,在各种环境下,给出最佳的解决方案。①业务分析员通过概括和界定作为建模对象的组织来领导和协调业务用例建模。例如,确定存在哪些业务主角和业务用例,他们之间如何交互。通过描述一个或几个用例的需求状况以及其他支持软件的需求来获取系统功能某一部分的规约。还要负责用例包并维护该用例包的完整性。②构架设计师负责在整个项目中对技术活动和工件进行领导和协调。构架设计师要为各构架视图确立整体结构:视图的详细组织结构、元素的分组以及这些主要元素组之间的接口。因此,与其它角色相比,构架设计师的见解重在广度,而不是深度。 5. 产品经理 对系统功能需求分析、用户体验设计,编写需求文档,如果我们接到任务,我们的产品需要做哪些功能,产品经理必须给出需求,将功能项目实际的列举出来,不但要知道自己做什么样的东西,还要了解我们做出来怎么用,分析产品在实际运营中的一些需求,制定项目的功能开发阶段,现在一般的开发团队中还没有这个职位,其实这个职位对一个产品的好坏影响很大,我们在产品开发完成后,常常遇到一个问题,就是产品刚出来就感觉已经落后了。 6. 高级软件工程师(主程) 软件工程师负责完成设计师的设计意图,根据设计文档编写代码;根据设计文档编写单元测试代码,根据测试报告BUG己录修订BUG完成包或子系统的开发。熟练相关开发技术例如:JAVA, C#(.net) ,C++,C,汇编,3D方面等,负责项目的核心模块开发,编写模块设计文档,不需要培训就可以直接进入开发状态,是团队模块开发引领者和衔接者,一般经历过几个项目的人都可以担当。 7. 初级软件工程师(辅程) 懂java, C#(.net) ,C++,C能开发一些简单的模块,在技术上需要提高,现在大部程序员都喜欢写后台代码,逻辑思维强,写服务、API 代码比较好,做小型项目外包都没问题。 8. UI 设计、美工 界面设计人员通过以下方法来领导和协调Web 界面的原型设计和正式设计:获取对Web 界面的需求(包

软件研发部岗位职责

技术部门岗位职责2 软件研发部 2.1 部门职责 1.应用软件开发方向规划; 2.应用软件开发工具选购; 3.软件系统整体方案规划; 4.应用软件系统开发设计; 5.软件系统测试规划实施; 6.应用软件系统项目评审; 7.应用软件项目疑难问题处理; 8.应用软件疑难故障分析处理; 9.软件人力资源组织/考评; 10.应用软件开发团队组织; 11.应用软件工程师集训学习; 12.应用软件体系框架设计与定制; 13.应用软件技术积累与探索; 14.应用软件开发技术规范编制; 15.应用软件的技术资料管理; 16.应用软件知识产权等相关文档编制; 17.应用软件的鉴定、认证; 18.应用软件的质量体系认证。

2.2 部门经理职责 1.全面负责软件研发部日常管理工作; 2.规范软件体系设计,监督相应的设计开发过程; 3.负责建立软件系统资源库,实现资源重用; 4.负责软件研发团队建设和技术人员的招聘、培养与考评; 5.制定和落实部门项目研发开发计划,总体掌握研发进度。 6.确定软件部技术研究方向,组织人员对关键技术进行攻关和积累; 7.指导/评审/公司项目软件部分的开发活动; 8.解决公司产品线中相关的技术难题,提供技术支持; 9.统筹协调软件研发部与其它部门的关系; 10.负责相关技术资料的整理; 11.负责相关知识产权等技术文档编制; 12.完成公司交办的其它工作。 2.3 部门副经理职责 1.协助经理完成日常管理工作; 2.完成分管的方面技术工作; 3.经理不在时,代经理处理部门事务; 4.按计划推进自己负责项目的实施; 5.参与指导/评审/公司项目应用软件部分的开发活动; 6.协助经理进行团队建设、人员培养和考评; 7.负责相关技术领域的技术积累和整理;

浅谈项目管理中的团队建设_李莹

[摘要]项目管理,分七个方面介绍团队建设。中国古人把成功必备的三个条件归纳为“天时,地利,人和”,而在现代的管理理念中 “人和”主要就是指有一个优秀的团队。这个团队大可以到一个国家,小可以到一个企业、一个部门上。特别是在IT 的这个新兴行业中,人的创造力成为企业核心的发展力,谁拥有最多最强的人才,谁就是市场的胜者。而使这些充分发挥他们在项目中的作用,团结协作,则是团队建设的主要任务,所以项目的团队建设对于项目的成败也是起着至关重要的作用。[关键词]项目;管理;团队;建设浅谈项目管理中的团队建设 李莹 (石家庄供水集团,河北石家庄 050021) 中国古人把成功必备的三个条件归纳为“天时,地利,人和”,而在现代的管理理念中“人和”主要就是指有一个优秀的团队。这个团队大可以到一个国家,小可以到一个企业、一个部门上。特别是在IT 的这个新兴行业中,人的创造力成为企业核心的发展力,谁拥有最多最强的人才,谁就是市场的胜者。而使这些充分发挥他们在项目中的作用,团结协作,则是团队建设的主要任务,所以项目的团队建设对于项目的成败也是起着至关重要的作用。以下是对做好团队建设的几个建议: 一、明确工作目标 我们知道团队的一个主要特点就是要有一个共同的工作目标,团队目标是一个有意识地选择并能表达出来的方向,它能促进组织的发展,使团队成员有一种成就感,能够为团队运行过程中的决策提供参照物,同时能成为判断团队进步的可行标准,而且为团队成员提供一个合作和共担责任的焦点。有了这个目标大家才有了共同努力的方向,在项目管理中,这个目标就是项目的任务和职责,而一个好的团队,每一个队员都应该明确知道工作目标和自己在项目中职责。 二、团结协作 有了共同的目标,而队员不向这个目标共同努力,还是不行的,因此在团队中需要一种协作的精神,这是团队建设的关键所在。就像是我们的双手,要想完成日常工作,单靠一根手指是做不到的,只有五根手指协作起来,才能完成我们想做的事情。团队精神的核心在于协同合作,强调团队合力,注重整体优势,这样才能充分利用和发挥团队所有成员的个体优势去更好的完成这项工作。 三、岗位分工明确,职责清晰 在项目中每个人的工作能力是不同的,因此合理进行人员分配在团队建议中是非常必要的。通过对工作岗位进行划分,明确岗位职责,不仅让员工明确知道自己的任务,有了个人的工作目标,而且对管理者可以更好的界定个人工作能力,进行绩效考评。 我们公司曾经做过一个水厂生产自控系统项目。由于这个项目的时间紧,任务重,公司特地从三个部门,一个是自控部门,一个是网络部门,一个是软件开发部门抽了几名骨干组成了项目组。为了加快进度,项目经理只对工程进行了大致划分,没有把任务明确分给到个人,只是让队员进行个人协调。因为前期的用户需求没有调查详细,工作任务也没有分解细化,在工程实施中问题暴露出来,一是工作过程中有人一直很忙碌,有人却做完仅有的一点工作后无所事事,造成了人员的极大浪费;二是工作分工不明确导致工作交叉较多,出现问题确认不了具体的责任人,而不得不靠各职能部门领导来进行协调,并且到最后绩效考核时引起了队员的很大争议 四、相互信任、相互尊重 人与人之间的交往的前提是互相尊重,不懂得尊重人,一切都无从谈起。这个尊重是有形的,是可以看得出来、感觉得到的,比如说:你对人的守时、守信、虚心听取意见等等。最大、最可贵、最有效地的尊重是信任,这个信任在项目管理中体现为对团队成员的合理、有效的授权和委任。 授权与予责应该是同时的、并列的,授予权力必然要承担相应的责任,承担责任必须授予相应的权力以支持。有权无责是浪费权力职能,会影响主管者的威信,引起员工的不满或怠工;有责无权必然会导 致职责落实不到位,影响工作目标的实现。项目经理在授权时,应把任务、目标、效果等向被授权者交代清楚,至于如何去实现,应由被授权者自主解决,充分发挥其主观能动性,而不应多加掣肘。 被授权者在实施过程中所形成的错误或失误,项目经理应勇于承担责任,并帮助其寻找原因和解决措施,为授权者创造一个良好的环境,以充分调动其积极性。授权以后,不要因被授权者稍有差错就将权力收回。否则,一是容易使被授权者觉得自己不被信任,产生被欺骗的感觉,影响其工作情绪;二是如果授权他人或自己亲自处理的结果仍然很差,则会产生更大的副作用,直接影响授权者的威信。因此,要允许被授权者犯错误,并指导其改正错误,将功补过,而不是一棍子打死。 五、做好沟通工作 沟通是人们分享信息、思想和情感的过程。项目经理最重要的工作之一就是沟通,通常花在这方面的时间应该占到全部工作的75%~90%。良好的交流才能获取足够的信息、发现潜在的问题、控制好项目的各个方面,可以说没有沟通就没有项目。在项目中,很多人也知道去沟通,可效果却不明显,似乎总是不到位,由此引起的问题也层出不穷。其实要达到有效的沟通有很多要点和原则需要掌握,尽早沟通、主动沟通就是其中的两个原则,实践证明它们非常关键。 现在的很多科技公司是在原来的国企基础上进行改制后成立的,在过去国有企业中的组织结构是一种金字塔型结构的层级组织,它层次过多、传递信息的渠道单一而且过长,反应迟缓。新的公司虽然已经打破了的“等级森严”的管理制度,但是原来固有的沟通模式还存在着很大的影响,这对团队建设是很不利的,对项目管理也是有很大负面影响。在我们就近开发的水厂调度系统改造项目中,由于沟通不善,工作中就出现了一个纰漏。该项目的项目负责人是我们网络工程部的主管,由于项目经理一直在计算机系统集成方面工作经验丰富,工作的测重点也就放在了这方面,而在水厂自动控制方面,没有进行系统的调查,没有与自控工程师进行详细的方案沟通,最后出现了新旧系统不能兼容,总体设计方案不得不进行更新补充的结果。从这个例子可以看出如果团队沟通处理好的话,这个问题是完全可以避免发生的。 六、要有良好的激励机制 在项目团队的建设过程中,要想真正激励每一个团队成员就要做好以下几方面工作: (一)制定精确、公平的激励机制 激励制度首先体现公平的原则,在激励中严格按制度执行并长期坚持;其次要和考核制度结合起来,这样能激发员工的竞争意识,使这种外部的推动力量转化成一种自我努力工作的动力,充分发挥人的潜能;最后是在制定制度是要体现科学性,也就是做到工作细化,全面了解员工的需求和工作质量的好坏,不断地根据情况的改变制定出相应的政策。 (二)物质激励要和精神激励相结合 物质激励是指通过物质刺激的手段,鼓励员工工作。物质需要是人类的第一需要,是人们从事一切社会活动的基本动因,所以,物质激励是激励的主要模式,也是目前我国企业内部使用得非常普遍的一种激励模式。但在实践中,不少单位在使用物质激励的过程中,耗费不少,而预期的目的并未达到,职工的积极性不高,反倒贻误(下转第43页)

软件开发团队建设的思路探讨

龙源期刊网 https://www.360docs.net/doc/688735187.html, 软件开发团队建设的思路探讨 作者:黄龙洋 来源:《硅谷》2015年第01期 摘要随着信息时代的到来,软件被广泛应用在各种生产、管理领域,极大的提高了工作效率以及我国各个行业的信息化水平,因此,我国非常重视软件开发工作,并投入了大量的人力、物力与财力,一定程度上推动了我国软件产业的快速发展。在软件开发过程中,加强团队建设可提高软件开发效率,缩短软件开发周期,因此,本文对软件开发团队建设思路进行探讨,以期为提高软件开发水平,规范软件开发流程提供有效的参考。 关键词软件开发;团队建设;思路 中图分类号:F4 文献标识码:A 文章编号:1671-7597(2015)01-0181-02 调查发现,部分企业开发软件过程中不重视团队建设,导致软件开发效率低下,无形之中增加了软件开发成本,不利于企业的长远发展。因此,企业开发软件之前应将团队建设当做重要工作去抓,为软件开发工作的高效进行奠定坚实的基础。笔者结合多年软件开发实践经验,探讨软件开发中团队建设的思路。 1 软件开发中团队建设的重要性分析 软件开发涉及很多专业内容,部分内容比较繁琐而且工作量比较大,靠个人完成功能强大软件的开发几乎是不可能的,因此,需要团队成员间的相互协作,共同完成软件的开发。 团队建设在软件开发工作中的重要性不言而喻,原因在于:团队成员协作可显著提高软件开发效率,尤其在明确各成员开发任务后,各成员各自完成代码编写任务,避免彼此间的干扰,确保软件各模块编写有条不紊的进行。同时,团队协作有助于攻坚克难。软件开发过程中难免会遇到一些困难,团队成员共同探讨、积极寻找积极措施,依靠大家的力量,使解决问题的效率大大提高。另外,团队开发软件时,可形成互帮互助的良好氛围,而且,团队成员在和谐、轻松的环境中完成软件的开发,错误出现的机率会大大减少,提高软件开发效率与质量。 2 软件开发中团队建设思路 为确保软件开发工作的高效进行,软件开发工作正式实施前应建立一支高效率、高素质的团队,并确保团队与客户以及团队成员间能够进行良好的沟通,确保设计人员能够充分理解客户需求,编码人员能够准确体会设计人员的意图,最终确保软件开发工作的顺利进行。那么软件实际开发过程中团队建设究竟应注意哪些问题呢?接下来逐一进行详细的探讨。 1)组建团队,明确规范。

软件开发管理团队

软件开发管理团队 分析国内外主要软件开发管理团队的现状。 很多国内搞计算机的专家都认为:国内的软件研发过程,个人色彩比较浓。过分地依靠个人无法形成产业规模,而没有规模就谈不上产业化了。我国软件产业的市场规模在世界软件市场中只占0.3%左右的份额;即使在国内市场上.中国公司开发的软件产品的占有率也只有大约30%,大部分市场仍然被国外公司所占据。中国的软件产业在世界市场上仍处于赶超阶段,我国大部分软件企业还大都面临着软件开发超期、超预算、软件产品的质量不能使最终用户满意等问题,如何缩小中国软件产业与其他国家的差距,实现跨越式发展已非常迫切地摆在学术界和产业界面前。软件产业属于完全基于知识的产业,因此,其产业内的人力资源(尤其是软件开发团队)状况成为该产业发展的关键要素。 国内团队的现状 但整体来看,目前我国软件产业总体规模仍然太小。2005年,我国软件产业占全球市场的份额仅为5.9%。而同年,美国、西欧、日本占全球市场的份额分别为39%、29.5%和10.4%。我国软件企业以中小企业为主,软件收入前100家企业销售收入平均仅为1亿多美元。软件企业多以从事定制项目和一般应用软件为主。对于大多数软件企业来说,没有一个良好的切入点,走独立发展的道路难度比较大。企业竞争力不强,无法形成产业的竞争性优势,导致我国软件产业在全球软件产业分工中定位不清 国外团队的现状: 20世纪90年代以来,世界软件产业获得了飞速发展。据IDC统计,全球软件业的年均增长率一直保持在15%~20%之间。目前,全球软件业已经开始进入成熟期。产业分工较为明确,产业成熟度较高,成本已成为企业竞争的首要因素。发达国家的软件企业从降低成本考虑,逐步集中力量发展核心业务;利用全球的人力资源,将大量非核心业务向发展中国家转移 软件行业团队管理(人力资源)管理的评价体系有哪些。 人力资源管理评价指标体系设计原则 共有以下三方面:第一,系统性原则。企业人力资源管理评价指标应从系统的角度出发,全面地、系统地反映企业人力资源管理系统中的各个子系统及其相互协调以及整体运作。第二,科学性原则。纳入企业人力资源管理评价的每一个指标都要有明确的内涵和科学的解释,要考虑指标选择、指标权重确定、数据选取时的可比性和计算方法的科学性。第三,目标一致性原则。目标一致性原则指的是在评价系统中,应在系统目标、评价指标和评价目的之间取得一致。第四,可操作性原则。指标的设计既要考虑有数据的支持、数据获取的难易程度和可靠性,又要考虑计算方法的简易性等。第五,可比性原则。评价指标要具有

相关文档
最新文档