组建和运行技术开发团队的初期工作
每一个技术开发团队都是从无到有,在组建和运行的过程中需要做一些约定性的初期工作,在包容团队成员各自的个性下仍需要在制度、规范、流程、文档和工具等方面做一些约定,否则在成员越来越多后会变得沟通不畅成本剧增,也会造成协助效率的降低。当然每个团队需要根据实际情况因地制宜因人而异,每一方面的约定可以借鉴已有成果。
制度
在团队初期我们需要制定一些基础性的制度,随着时间推移团队成长逐步完善和改进。这些基础制度包括:①管理制度,约定团队的人员组成、组织结构和职责分配等;②考勤制度,约定工作时间的方式(固定或弹性)和起止、迟到早退请假旷工等的处理办法;③考核制度,约定每月工作成果的鉴定、评判和奖惩方式等。如下为参考考核制度图:
规范
团队每个成员有各自的习惯,一些基础性的方面需要遵守规范才能便于成员之间提高沟通效率便于协作:①编码规范,如命名规范、HTML/CSS/JS等规范、数据库规范、架构规范等;②编号和版本号规范:约定各种文档文件如何编号、文档版本号程序版本号如何编码;③文档规范,约定各阶段需要编写哪些文档、每个文档需要描述哪些内容、以及各种文档模板等。
流程
在软件工程层面有诸多流程,包括:①采用何种软件工程模型、何种开发方式和流程;②需求如何收集、处理和评审;③BUG处理的流程;④系统发布和部署的流程。如下为参考例图:
文档
在系统开发和维护过程中需要编写哪些文档,如可行性分析文档、需求分析文档、架构设计文档、数据库设计文档等等。
工具
在系统开发和维护过程中需要哪些辅助工具,如:①文档管理系统(如MinDoc、MidiaWiki等),存储、管理和查阅所有文档;②项目管理系统(如禅道、BugTracer等),收集需求和BUG、记录开发和维护过程;③其它工具如原型设计工具、数据建模工具、UML工具等等。
其它
其它细节如:是否开例会讲什么内容等等。