讨论问题:团队绩效考核如何制定?如何设置奖惩?

从企业、组织角度来看,团队绩效是以团队的项目绩效作为基础。而确定项目绩效,要在项目开始之前先确定项目绩效目标,待项目结束时来评估是否达成了既定的绩效目标。首先,企业应该建立完备的组织级绩效考核体系,从项目立项开始如何预评估,在面对项目过程中各种情况是否需要奖惩,以及在结项时的最终评价,都是需要针对不同行业、不同企业文化进行客制化分析。举个例子,某甲方企业的项目绩效管理方式是这样的:在立项阶段会按照项目需求的战略意义、技术实现难度、工作量等条件因素,由专家组进行匿名评价,确定项目积分;在项目进行过程中,根据项目是否按规定按时交付产品、代码质量、测试缺陷率、上线运行质量等多种因素进行考评,在项目结项时依据项目的CPI、客户满意度等进行最终评估,得到项目最终绩效积分。到年底的时候团队绩效就是把当年所有项目的积分累加,按照排名转化为绩效奖金。这样的绩效考核机制能够激励团队既能保证多劳多得,又有对过程质量的要求,是一种正向的引导方式。 Continue reading “讨论问题:团队绩效考核如何制定?如何设置奖惩?”

软件开发中的注意事项(常见问题整理)

一、函数定义原则

1、一个函数/方法只做一件事情,不能将多个事情放在一个函数中处理(单一职责原则 SRP)

函数/方法的最小粒度是功能,函数在设计/定义的时候,不能将多个功能柔进一个函数里面,这样函数会变得得膨胀,增加了函数的耦合性,不便于函数管理维护。

例如,有这么一个业务逻辑:用户每天来网站阅读文章,当阅读完毕不同的10篇文章之后,就给他增加10个用户积分。

这个业务逻辑可以拆分为4个功能,也就需要定义为4个函数/方法来实现。

Continue reading “软件开发中的注意事项(常见问题整理)”

Mecurial(hg)学习要点(团队管理)

Mecurial的基本介绍可以查看百度百科,以下知识是个人对Mecurial经验的简要说明。
Mecurial(hg)是一款分布式版本控制软件,可以称之为轻量级的git,比git和svn都要简单易学,但是在版本控制的理念上与svn有所区别。

分布式版本控制的核心理念是“分支”和“合并”,每个开发者在本地拥有很多开发分支,最常见的一个分支可以是一个功能的开发或者一个BUG的修改,每个分支有一个独立的名称,相互之间相互独立、互不影响。当分支代码开发完成之后,需要将该分支的代码“合并”到主分支,该主分支即是软件最终的分支。需要发布的功能都需要合并到该主分支,不发布的功能或修改不用合并。

Mecurial在Linux开发环境下一般使用命令行完成版本控制操作,在Windows环境下可以使用命令行或者图形界面,图形界面的话会隐藏所有的命令细节。

Continue reading “Mecurial(hg)学习要点(团队管理)”

Git学习要点(团队管理)

一、Git介绍

Git的基本介绍可以查看百度百科,以下知识是个人对Git经验的简要说明,以方便帮助大家快速学习。

分布式版本控制的核心理念是“分支”和“合并”,每个开发者在本地拥有很多开发分支,最常见的一个分支可以是一个功能的开发或者一个BUG的修改,每个分支有一个独立的名称,相互之间相互独立、互不影响。当分支代码开发完成之后,需要将该分支的代码“合并”到主分支,该主分支即是软件最终的分支。需要发布的功能都需要合并到该主分支,不发布的功能或修改不用合并。

Git在Linux开发环境下一般使用命令行完成版本控制操作,在Windows环境下可以使用命令行或者图形界面(TotoiseGit)。
图形界面的话会隐藏所有的命令细节,所以建议大家学习的时候以命令为主,这样知其然并知其所以然。

二、Git配置

• (Linux) /etc/gitconfig文件:系统中对所有用户都普遍适用的配置。若使用 git config 时用 –system 选项,读写的就是这个文件
• (Linux) ~/.gitconfig文件:用户目录下的配置文件只适用于该用户。若使用 git config 时用 –global 选项,读写的就是这个文件
• 当前项目的 git 目录中的配置文件(也就是工作目录中的 .git/config 文件): 这里的配置仅仅针对当前项目有效,每一个级别的配置都会覆盖上层的相同配置,所以.git/config 里的配置会覆盖 /etc/gitconfig 中的同名变量

用户信息设置(必须)
git config –global user.name “自己的账号名字”
git config –global user.email 自己的账号邮箱

文本编辑器(可选,默认是vim)
git config –global core.editor gedit

差异分析工具(可选,默认是vim)
git config –global merge.tool meld

输入一次后保存用户名和密码
git config –global credential.helper store

查看已有的配置信息
git config –list

Continue reading “Git学习要点(团队管理)”