无论是向新人介绍项目,又或者是上到一个新的项目,我们都需要事无巨细地列出一个个的关注点。既然如此,那么为什么创建一个检查清单,用来帮助我们一个个的检查一遍呢。
在过去的日子里,经历了几个不同的项目,每个项目都有自己特有的特色。它们往往也包含了一些不同的背景,在成功的交付项目之后,有的还要解决技术难题,有的要的是解决业务难题,有的复杂的部分在于跨团队的协作。正是因为这些情况,也导致了在不同的时候,我们需要着重考虑这些不同的因素,上一个业务复杂的项目,需要重点关注业务问题;来到一个项目团队结构复杂的项目,则重点解决团队复杂问题。
可是呢,对于每个项目来说,它们都存在一些相似的共同点。而这些共同点,即是我们开始一个新项目要做的,也是我们来到一个新的项目时,所需要了解的。于是,当我看到一篇 Tech Lead 的新项目检查清单时,我也想写一个面向开发人员的新项目检查清单。
在那篇《项目初期的最优技术实践》中,我总结了项目的三步曲:技术准备期、业务回补期、成长优化期。而后在那篇《迈向 Tech Lead 之路》里,我将 Tech Lead 要做的事情,结合到了三步曲中,便有了下图:
Tech Lead 在项目的实践
为此,我们将一个 Tech Lead 要做事情分为了三个部分,即:Process、People、Programming。 这一点对于新项目的检查清单来说,也有些类似。稍有不同的是,我们需要在其中加入关于业务的维度。此此,我们可以划分为四个维度:
作为检查清单的第一个版本,它的维度设计可能并非那么完善。但是随着时间的改进,我们可以一起把它变得更好。
0. 技术远景
说明:在技术上,我们有什么追求?
1. 文档
说明:文档即代码——好的文档应该是版本管理的。
2. 架构
3. 代码库
docs/adr
目录中。4. 测试
5. 项目演进
6. 安全
0. Project Process
1. Path to Development
说明:不同的的组织包含自身特别的情况,如 PC 端口、网络权限、代码库权限等的开通都需要一定的流程。
2. Path to Production
说明:代码中的 Path to Production 只是一份说明——针对于开发人员的,而这里的则需要一个更详细的说明。
3. Path to Roll Off
说明:换一个项目时,需要哪些东西?
1. 团队成员
2. 利益相关者
3. 跨团队协作
4. 用户
0. 业务远景
说明:我们在做什么,我们要去哪里?
1. 业务需求
2. 跨功能需求
为了方便我未来在新项目使用它,我创建了一个项目来更新这个清单:https://github.com/phodal/new-project-checklist
与此同时,创建了一个 Web 应用来检测:
网站声明:如果转载,请联系本站管理员。否则一切后果自行承担。
添加我为好友,拉您入交流群!
请使用微信扫一扫!