3、ADAS项目初始化:在Jira中创建ADAS项目,配置项目角色与权限
好,咱们进入实战环节。
前面聊了那么多理论,现在该动手了。这一章,我带你走一遍ADAS项目在Jira里的初始化流程。说白了,就是怎么在Jira里把摊子支起来,然后告诉团队里每个人:你该干什么,你能看什么。
我个人习惯,项目初始化这一步做得越细,后面扯皮就越少。你想想看,一个ADAS项目,少说十几号人,多则上百号。算法工程师、嵌入式工程师、测试工程师、项目经理……每个人关心的东西都不一样。权限乱了,要么是机密数据泄露,要么是工程师找不到自己该看的任务。嗯,这两种情况我都遇到过,都不好受。
3.1 第一步:创建项目——选对公司模板
登录Jira之后,点右上角的「创建项目」。这一步很简单,但有个坑。
Jira会问你:用公司管理的模板,还是用团队管理的模板?
我建议你选「公司管理的项目」。为什么?因为ADAS开发涉及硬件、软件、系统、测试多个部门,权限粒度要求很细。公司管理模式下,你可以自定义角色,精确控制谁能创建Epic,谁能修改Sprint。团队管理模式虽然轻量,但权限太粗,后面你一定会后悔。
项目类型选「Scrum开发」。ADAS开发虽然也有硬件部分,但任务管理本质上还是迭代式的。Sprint周期一般设2周,跟算法迭代节奏比较匹配。
项目名称怎么起?我见过有人起「ADAS_Project_V1.0」,结果项目一多就乱了。我建议按产品代号+模块来命名,比如「ADAS_AEB_Platform」或者「ADAS_LKA_Software」。这样一眼就知道是哪个功能域。
3.2 第二步:配置项目角色——谁是谁要分清楚
项目创建好了,接下来是配置角色。这一步很多人会跳过,直接用Jira默认的「管理员」「开发者」「用户」三个角色。但ADAS项目不行,太粗了。
我一般会创建这么几个角色:
| 角色名称 | 对应人员 | 核心权限 |
|---|---|---|
| 项目管理员 | 项目经理、技术负责人 | 全部权限,包括删除项目、修改工作流 |
| 系统架构师 | 系统工程师、功能安全经理 | 创建Epic、修改需求、管理版本 |
| 算法工程师 | 感知、规划、控制算法人员 | 创建子任务、记录工时、更新状态 |
| 嵌入式工程师 | MCU/SOC软件开发人员 | 创建子任务、关联代码仓库、更新状态 |
| 测试工程师 | HIL测试、路测人员 | 创建Bug、查看所有任务、记录测试结果 |
| 只读用户 | 客户、供应商、质量审计 | 只能查看,不能编辑 |
角色创建路径:项目设置 → 用户和角色 → 添加角色。每个角色可以单独配置「项目角色」,然后把人拉进去。
这里有个细节:Jira默认的角色名称是英文的。我建议你改成中文,比如「算法工程师」而不是「Algorithm Engineer」。团队里不是所有人都习惯看英文,尤其是测试和硬件同事。别小看这个,我曾经因为角色名是英文,被测试同事抱怨找不到人审批。
3.3 第三步:配置权限方案——谁可以做什么
角色建好了,接下来是权限。这一步是核心,也是最容易出问题的。
Jira的权限控制是分层级的:项目权限 → 问题权限 → 字段权限。咱们一步步来。
3.3.1 项目权限
项目权限控制的是「能不能看到这个项目」「能不能创建Sprint」这类大动作。
我一般这样配:
- 浏览项目: 所有角色都勾上。包括只读用户。不然人家连项目都看不到,还怎么协作?
- 创建问题: 只给算法工程师、嵌入式工程师、测试工程师。系统架构师和项目管理员当然也有。只读用户不给。
- 管理Sprint: 只给项目管理员和系统架构师。普通开发人员不要给这个权限,不然Sprint乱改,项目经理会疯掉。
- 删除问题: 只给项目管理员。我曾经手滑删过一个Bug,结果那个Bug关联了3个测试用例和1个代码提交……嗯,后来我花了半天恢复数据。
3.3.2 问题权限
问题权限控制的是「对某个具体任务能做什么」。比如能不能编辑、能不能分配、能不能关掉。
这里有个ADAS项目特有的点:安全相关的任务。
比如一个「ASIL D级别的安全机制实现」任务,它的状态变更需要审批。你不能让一个普通开发人员直接把它从「进行中」拖到「已完成」。万一他漏了某个安全验证步骤呢?
我的做法是:
- 编辑问题: 所有开发角色都有。但编辑后需要系统架构师确认。
- 分配问题: 项目管理员和系统架构师可以分配。普通开发人员只能接受分配,不能随意转给别人。避免「踢皮球」。
- 关闭问题: 只有测试工程师和项目管理员可以关闭。开发人员不能自己关自己的任务。这是ADAS开发的基本纪律——你写的代码,不能自己说测完了。
3.3.3 字段权限
字段权限控制的是「某个字段谁能看到、谁能编辑」。这个在ADAS项目里特别有用。
举个例子:
- 「安全等级」字段: 只有系统架构师和功能安全经理可以编辑。普通开发人员只能查看,不能改。避免有人把ASIL B改成QM(质量等级),然后偷偷降级。
- 「目标完成日期」字段: 只有项目管理员可以编辑。开发人员不能自己改Deadline。不然每个Sprint都会有人把任务拖到下个Sprint。
- 「成本估算」字段: 只有项目经理和系统架构师可见。普通开发人员看不到。不是不信任,而是避免不必要的讨论——你想想,一个开发看到自己任务估了20人天,另一个任务估了5人天,他肯定会问为什么。但有些估算涉及商务因素,不适合全员可见。
3.4 第四步:配置问题安全方案——敏感数据要隔离
这一步是Jira的高级功能,但ADAS项目强烈建议用上。
什么叫问题安全方案?就是你可以把某些任务「藏起来」,只有特定角色能看到。
什么场景下会用?
- 预研项目: 有些ADAS功能还在概念阶段,比如「下一代激光雷达融合算法」。这种任务不适合让所有开发人员看到,万一泄露出去呢?
- 供应商相关任务: 比如「与Mobileye的接口联调」。这种任务涉及商务信息,只让核心团队看到就好。
- 安全漏洞修复: 发现了一个严重的感知漏洞,在修复之前,知道的人越少越好。
配置方法:项目设置 → 问题安全方案 → 添加安全等级。我一般设三个等级:公开、内部、机密。公开所有人都能看到;内部只有项目成员能看到;机密只有项目管理员和系统架构师能看到。
3.5 第五步:验证配置——别等出事了才发现
配置完了,别急着让团队入驻。先自己验证一遍。
我一般会做这么几件事:
- 用「只读用户」账号登录,看看能不能看到项目。能不能点开任务。能不能编辑。应该都不能。
- 用「算法工程师」账号登录,创建一个子任务。看看能不能分配给其他人。应该不能。
- 用「测试工程师」账号登录,创建一个Bug。看看能不能直接关闭。应该不能。
- 用「系统架构师」账号登录,创建一个Epic。看看能不能修改安全等级字段。应该可以。
如果发现权限不对,马上调整。别想着「先跑起来再说」。权限问题一旦积累,后面改起来成本极高——因为每个任务都已经关联了人、关联了代码、关联了测试用例。你改一个权限,可能影响几十个任务的可见性。
好了,项目初始化这一步就到这里。下一章,咱们聊聊怎么搭建ADAS专属的工作流——说白了,就是任务从「新建」到「关闭」到底要走哪些步骤。这个在ADAS项目里特别讲究,因为涉及功能安全的审批节点,一步都不能少。