作者:xiaojin | 来源:互联网 | 2023-05-18 13:01
38 定期安排会面时间
立会(站着开的会议)是将团队召集在一起,并让每个人了解当下进展状况的好办法。顾名思义,参与者们不允许在立会就坐,这可以保证会议快速进行。
要保证会议议题不会发散,每个人都应该只回答下述三个问题。
1 昨天有什么收获。
2 今天计划要做哪些工作作?
3 面临着哪些障碍?
只能给予每个参与者很少的发言(大约两分钟)。如果要讨论某些问题,可以在立会结束之后,再召集相关人员进行。
平衡的艺术
1 会议占用开发时间,所以要尽量保证投入的时间有较大的产出。立会时间最长不能超过30分钟。10到15分钟比较理想。
2 如果要使用需提前预定的会议室,就把预定的时间设定为一个小时吧。这样就有机会在15分钟的立会结束后,马上召开更小规模的会议。
3 虽然大多数团队需要每天都碰头,但对于小团队来说,这样做可能有点头了,不妨两天举行一次,或者一周两次,这对小团队来说足够了。
4 要注意报告的细节。在会议中要给出具体的进度。但不要陷入细节之中。
5 迅速地开始可以保证会议短小,不要浪费时间等着会议开始。
6 如果觉得立会是在浪费时间,那可能是大家还没有形成真正的意识,这不是坏事,有利于问题进行改进。
39 架构师必须写代码
优秀的设计从积极的程序员那里开始演化。积极的编程可以带来深入的理解,不要使用不愿意编程的架构师。
平衡的艺术
1 如果有一位首席架构师,他可能没有足够的时间来参与编码工作。还是要让他参与,但是别让他开发在荐关键上的,工作量最大的代码 。
2 不在允许任何人单独进行设计,特别是你自己。
40 实行代码集体所有制
项目中绝大部分的代码都可以轻松应对.
平衡的艺术
1 不要无意间丧失了团队的专家技能。如果某个开发人员在某个领域中极其精通,不妨让他为这方面的驻留南家。而且系统的其它部分代码也对他开放,这样对团队和项目都很有帮助。
2 在大型项目中,如果每个人都可以随意改变任何代码,一定会把项目弄得一团糟,代码集体所有制并不意味着可以随心所欲,到处破坏。
3 开发人员不必了解项目每一部分的每个细节,但是也不能因为要处理某个模块的代码而感到惊恐。
4 有些场合是不能采用代码集体所有制的。也许代码需要某些特定的知识,对特定问题域的了解。比如一个高难度的实时控制系统。这些时候,人多了反而容易误事。
4 任何人都可能有一些灾难事故,或者有可能被竞争对手雇佣。如果不向整个团队分享知识,反而增加了丧失知识的风险。
41 成为指导者
成为指导者。分享自己的知识很有趣,付出的同时便有收获,还可能激励别人获得更好的成果,而且提升整个团队的实力。
平衡的艺术
1 如果一直在就同一个主题向不同的人反复阐述,不妨记录笔记。此后就此主题写一篇文章,甚至一本书。
2 成为指导者是向团队进行投资的一种极佳的方式。
3 结对编程是一种进行高效指导的,很自然的环境。
4 如果总是被一些以懒于自己答案的人打扰。
5为团队成员在寻求帮助之前陷入某个问题的时间设定一个时限,一个小时应该是不错的选择。
42允许大家自己想办法
给别人解决问题的机会。指给他们正确的方向,而不是直接提供方案。每个人都能从中学到不少东西。
平衡的艺术
1 用问题来回答问题,可以引导提问的人生走上正确的道路。
2如果有人真的陷入胶着状态,就不要他们了。告诉他们答案,再解释为什么是这样的。
43 准备后好再共享代码
准备好后再共享代码,绝不要提交尚示完成的代码,故意签入编译未通过或者没有通过单元测试的代码,对于项目 来说,应被视作玩忽职守的犯罪行为。
平衡的艺术
1 有些源代码控制系统会区分“提交”和“可公开访问”两种代码权限。此时可以进行临时的提交操作,不会因为完全提交未完成的代码,而团队的其他成员感到郁闷。
2 有些人希望代码在提交之前可以进行复查操作。只要不会过久拖延提交代码的时间就没有问题。如果流程的某个部分产生拖延,那就修正流程吧。
3 仍然应该频繁提交代码。不能用“代码尚未完成”作为避免提交 代码的借口。
44 做代码复查
那该如何进行代码复查呢?可以从下面这些不同基本方式中进行选择。
1 通宵复查。可以将整个团队召集在一起,预定好美食,每个月进行一次“恐怖的代码复查之夜”。但是这可能不是进行代码复查最有效的方式,大规模团队的复查会议会很容易陷入无休止的讨论中。大范围的复查不公没有必要,而且有可能对整个流程造成损害。我们不建议这种方式。
2 捡拾游戏。当某些代码编写完成,通过编译,完成测试。并已经准备签入时,其他开发人员就可“检搭”起这些代码开始复查。类似的“提交复查”是一种快速而非正式的方式,保证代码在提交之前是可以被接受的。为了消除行为上的惯性,要在开发人员之间进行轮换。这是一种很有效的技术。
3 结对编程。在极限编程国,不存在一个人独立进行编码的情况。
在代码复查中要看什么呢?你可能会制订出要检测的一些特定的问题列表,这示这里是一个可供启动的最基本的检查列表。
1 代码能否被读懂和理解?
2 是否有任何明显的错误?
3 代码是否会对应用的其他部分产生不良影响?
4 是否存在重复的代码?
是否存在可以改进或重构的部分?
复查所有的代码。对于提升代码质量和降低错误率来六,代码复查是无价之定。如果以正确的方式进行,复查可能产生非常实用而高效的成果。要让不同的开发人员在每个任务完成后复查代码。
平衡的艺术
1 不进行思考,类似于橡皮图章一样的代码复查没有任何价值。
2 代码复查需要积极评估代码的设计和清晰程序,而不只是考量变量名和代码格式是否组织的标准。
3 同样的功能,不同开发人员的代码实现可能不同。差异并不意味着不好。除非你可以让某段代码明确变得更好,否则不要随意批评别人的代码。
4 如果不及时跟进讨论中给出的建议,代码复查是没有价值的。可以安排跟进会议。或者使用代码标记系统,来标识需要完成的工作。跟踪已经处理完的部分。
5 要确保代码复查参与人员得到每次复查活动的反馈。作为结果,要让每个人知道复查完成后所采取 行动。
45 及时通报进展与问题
及时通报进展与问题。发布进展状况,新的想法和目前正在关注的话题,不要等着别人来问项目 状态如何。
平衡的艺术
1 每日立会可以让每个人都能明确了解最新的进展和形势。
2 在展开进度状况时,要照顾到受众关注的细节程序。举例来说,CEO和企业主是不会关心抽象基类设计的具体细节的。
3 别花费太多时间在进展与问题通报上面,还是应该保证开发任务的顺利完成。
4 经常抬头看看四周中,而不是只埋头于自己的工作。