2019独角兽企业重金招聘Python工程师标准>>>

各类大大小小的软件项目数不胜数,而运作这些项目的团队更是参差不齐,对于很多中小团队而言人员流动是家常便饭,对此很难控制,所以如何在动荡的团队中保持项目的可持续性就成了项目负责人必须思考的命题。

我一直在小公司工作,当然也遇到过这样的问题,以下结合实际谈谈自己的看法:

先说错误的做法,很多负责人会自然而然地想到“文档”,这种说法无可厚非,文档的重要性更是不言而喻的,只是有两个问题:
1.文档维护代价很大,对于中小型团队来说按时交付是排它性的第一要素,很少团队有文档工程师,文档的撰写及更新都由设计、开发人员自行维护,而需求的变更、尤其是细节的变更会很频繁(请别相信前期充分的需求调研、优秀的架构可以保证整个生命周期内需求不变更,这是很天真的),相关人员很少有精力去确保文档与实现100%对应;
2.文档说明不了一切,开发人员接手未曾了解过的模块他需要知道三点:模块的需求、目标,模块的架构设计、模块的代码实现,只有充分了解以上三点才能做开发或维护,而文档无法清晰地阐述这些,因为文档是死的;
基于以上原因,我觉得文档只能部分解决持续性运作。

我认为解决的方案是多种手段地组合

1. 三个会议,分别对应三个要点,要求团队所有成员参与:
 需求分析会议,项目负责人把当前版本要完成的功能需求一一告知各个成员,这点与Scrum中的Sprint计划会议有部分类似,目的是为使所有成员都了解需求;
 高层设计评审会议,模块负责人在完成设计后向全体成员阐述设计思想,一方面是项目负责人可以评审设计是否合理,另一方面所有成员也知晓了模块地设计;
 回顾会议:模块负责人在交付代码后向全体成员说明编码概要及重点,让所有成员都对其代码所有了解;
只要不是项目成员整体离职,那么这三个会议几乎就可以解决可持续性问题,另外它对代码质量管控、成员表达能力、设计编码能力都可以做到有效地考评;
2. 文档,文档自然还是要的,并且也是很重要的,当然一定要注意同步;
3. 编码风格,统一编码风格,尽量使用大家都看得懂的结构及算法,不要刻意标新立异;
4. 注释,对接口代码及重要逻辑片段加上注释,同时要保证注释与代码的同步,对注释同步的代价远低于文档地同步;

我之所以这么认为并非是我藐视文档,相反地对于文档我相当重视,只是我们不是微软,实在是没有这么多的财力、精力可以花费在文档上,在中小团队中总是要有所取舍。另外再重申一点:文档是死的,人是活的。

补充敏捷宣言:
个体和互动 高于 流程和工具
工作的软件 高于 详尽的文档
客户合作 高于 合同谈判
响应变化 高于 遵循计划
也就是说,尽管右项有其价值,我们更重视左项的价值。

转载于:https://my.oschina.net/gudaoxuri/blog/340934

软件项目可持续性运作地思考相关推荐

  1. 对软件项目开发的一点思考

    今天看到同事写的一些思考,感觉还不错,真的是通过这个项目让他成长起来了. 目录 I 1 引言 1 2 概念 1 3 国内软件项目角色分析 1 4 国内项目的一般性问题 2 5 客户与项目组对需求的认知 ...

  2. 常见软件项目开发模式思考

    一.软件项目 在2000左右 程序员还是一种比较罕见的工作,那是的个人台式机还是当时富裕家庭的高级娱乐用品,一开始网络程序员部分前后端,PHP.JSP.ASP这些技术形成了最早的网络程序.BS 系统 ...

  3. 软件项目质量管理经验谈

    原作者:杨志奇  由网友:转载     摘要:本文详细阐述了作者对软件项目质量管理的认识,是作者实际经验的总结.主要内容包括对软件项目质量管理理论的认识.软件项目质量管理在实践中的具体做法.文章详细介 ...

  4. 关于软件产品化的几点思考【转】

    关于软件产品化的几点思考 转自: 汉捷咨询 国内很多软件企业尤其是行业软件企业是从开发一.二个软件项目起家的,而且项目规模和复杂度也不大,依赖其中一两个高手,他们能够在客户适度满意的状态下成功完成项目 ...

  5. 做一个成功的软件项目经理

    做一个成功的软件项目经理 概述 要想做一个成功的软件项目经理需要有丰富的管理知识,同时要有全面的技术知识. 同时在知识的结合下在实际中应用管理学的计划,组织,控制,激励,领导等职能,发挥个人管理的长处 ...

  6. 开源软件项目的定性和定量分析指标 ———— CHAOSS 指标解析

    点击蓝字关注我们 "科学管理在实质上要求任何一个具体机构或机构中的工人及管理人员进行一场全面的心理革命,没有这样的心理革命,科学管理就不存在."  ---- 泰勒 <科学管理 ...

  7. 如何制定软件项目测试计划

    如何制定软件项目测试计划 摘要 随着测试走向规范化管理,测试计划成为测试经理必须完成的重要任务之一,本文根据实践经验结合理论,探讨如何制定软件项目测试计划. 关键字 测试计划 变更 正文 软件测试计划 ...

  8. 如何做软件项目的需求分析....

    需求分析 在具体的研究需求分析之前,我们先了解一下软件工程这个概念.软件工程分为三个层次,过程层.方法层.工具层.在最基础的过程层,最重要的就是一组被称为关键过程区域(KPAs)的框架(KPA的概念在 ...

  9. 一些“不正规”的软件项目招标前小技巧

    受某位网友之托,要求回复一些招投标写标书的技巧.由于最近这几天一直在外出差,所以写的稍微简单点.往见谅,同时也希望能帮到大家. 本文标的假设的前提是:公司最近想接一个软件项目,需要写招标文件(带方案) ...

最新文章

  1. Linux命令缩写来由
  2. 十个简单好用的设计技巧[SM]
  3. Webstorm+cordova打包vue成Android项目
  4. 原来医生的处方不是随便乱写的...
  5. 【Matplotlib】【Python】如何使用matplotlib绘制绘制随机生成的点--随机漫步详解
  6. CentOS新增硬盘系统不能自动进行识别。
  7. [转载] python numpy矩阵运算加速器 NumExpr
  8. 常用邮箱的POP3、IMAP地址
  9. python抽学号程序_Python 9行代码来随机抽学生回答指定问题
  10. Windows系统口令扫描之——使用Tscrack扫描3389口令
  11. FleaPHP 1.0.70 开发进度汇报专贴
  12. 【数据集】PASCAL VOC2012数据集百度网盘链接
  13. 我爱你——再高级一点
  14. 求助,WIN10系统,我的推特用不了,提示网络没连接,其实我网络是好的,求大神指点,万分感谢!
  15. 多锐运动下载 V1.2.4 官方版
  16. 怎么把ppt文字大小设置一致_51页PPT告诉你,大神都在用的这些神级插件,到底有多赞?...
  17. 基于单片机的太阳能热水器辅助控制系统
  18. ansys workbench17.0 lsdyna模块设置时间步长
  19. Windows.h 常用API函数【转】
  20. input搜索框 php,html搜索框怎么设置?html搜索框input标签的使用方法实例

热门文章

  1. Android学习笔记--文件下载和SD卡的使用
  2. java snmp全面开发解决方案(web service snmp网关、代理snmp网关、网络拓扑发现、SNMP数据采集等)...
  3. 《Core Java 2》读书笔记(二)
  4. 美国政府召开网络安全峰会,与私营行业巨头合力提振软件供应链和开源等安全...
  5. 猎洞20年老兵的经验之谈
  6. 全球约30%的智能手机受高通新漏洞影响,打补丁状况不明
  7. NVIDIA 修复 GPU 驱动中的多个代码执行缺陷
  8. 对于防止按钮重复点击的尝试
  9. SQL Server 2008:示例数据库安装
  10. 【WPF】添加自定义字体