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、查看所有任务、记录测试结果
只读用户 客户、供应商、质量审计 只能查看,不能编辑
一个小技巧: 我习惯把「功能安全经理」单独设一个角色。因为功能安全相关的任务(比如ASIL分解、安全机制验证)需要特殊的审批流程。给一个独立角色,方便后面配置审批权限。

角色创建路径:项目设置 → 用户和角色 → 添加角色。每个角色可以单独配置「项目角色」,然后把人拉进去。

这里有个细节:Jira默认的角色名称是英文的。我建议你改成中文,比如「算法工程师」而不是「Algorithm Engineer」。团队里不是所有人都习惯看英文,尤其是测试和硬件同事。别小看这个,我曾经因为角色名是英文,被测试同事抱怨找不到人审批。

3.3 第三步:配置权限方案——谁可以做什么

角色建好了,接下来是权限。这一步是核心,也是最容易出问题的。

Jira的权限控制是分层级的:项目权限 → 问题权限 → 字段权限。咱们一步步来。

3.3.1 项目权限

项目权限控制的是「能不能看到这个项目」「能不能创建Sprint」这类大动作。

我一般这样配:

  • 浏览项目: 所有角色都勾上。包括只读用户。不然人家连项目都看不到,还怎么协作?
  • 创建问题: 只给算法工程师、嵌入式工程师、测试工程师。系统架构师和项目管理员当然也有。只读用户不给。
  • 管理Sprint: 只给项目管理员和系统架构师。普通开发人员不要给这个权限,不然Sprint乱改,项目经理会疯掉。
  • 删除问题: 只给项目管理员。我曾经手滑删过一个Bug,结果那个Bug关联了3个测试用例和1个代码提交……嗯,后来我花了半天恢复数据。

3.3.2 问题权限

问题权限控制的是「对某个具体任务能做什么」。比如能不能编辑、能不能分配、能不能关掉。

这里有个ADAS项目特有的点:安全相关的任务

比如一个「ASIL D级别的安全机制实现」任务,它的状态变更需要审批。你不能让一个普通开发人员直接把它从「进行中」拖到「已完成」。万一他漏了某个安全验证步骤呢?

我的做法是:

  • 编辑问题: 所有开发角色都有。但编辑后需要系统架构师确认。
  • 分配问题: 项目管理员和系统架构师可以分配。普通开发人员只能接受分配,不能随意转给别人。避免「踢皮球」。
  • 关闭问题: 只有测试工程师和项目管理员可以关闭。开发人员不能自己关自己的任务。这是ADAS开发的基本纪律——你写的代码,不能自己说测完了。
注意: 权限配置不是越严越好。太严了,开发人员改个描述都要找管理员,效率极低。我见过一个项目,权限配了30多个角色,结果没人敢动任何设置。最后项目经理自己手动改状态……那还不如不配。

3.3.3 字段权限

字段权限控制的是「某个字段谁能看到、谁能编辑」。这个在ADAS项目里特别有用。

举个例子:

  • 「安全等级」字段: 只有系统架构师和功能安全经理可以编辑。普通开发人员只能查看,不能改。避免有人把ASIL B改成QM(质量等级),然后偷偷降级。
  • 「目标完成日期」字段: 只有项目管理员可以编辑。开发人员不能自己改Deadline。不然每个Sprint都会有人把任务拖到下个Sprint。
  • 「成本估算」字段: 只有项目经理和系统架构师可见。普通开发人员看不到。不是不信任,而是避免不必要的讨论——你想想,一个开发看到自己任务估了20人天,另一个任务估了5人天,他肯定会问为什么。但有些估算涉及商务因素,不适合全员可见。

3.4 第四步:配置问题安全方案——敏感数据要隔离

这一步是Jira的高级功能,但ADAS项目强烈建议用上。

什么叫问题安全方案?就是你可以把某些任务「藏起来」,只有特定角色能看到。

什么场景下会用?

  • 预研项目: 有些ADAS功能还在概念阶段,比如「下一代激光雷达融合算法」。这种任务不适合让所有开发人员看到,万一泄露出去呢?
  • 供应商相关任务: 比如「与Mobileye的接口联调」。这种任务涉及商务信息,只让核心团队看到就好。
  • 安全漏洞修复: 发现了一个严重的感知漏洞,在修复之前,知道的人越少越好。

配置方法:项目设置 → 问题安全方案 → 添加安全等级。我一般设三个等级:公开、内部、机密。公开所有人都能看到;内部只有项目成员能看到;机密只有项目管理员和系统架构师能看到。

避坑指南: 我曾经把一个问题设成了「机密」,结果忘了把测试工程师加进去。测试工程师看不到这个任务,自然也不知道要去测。等发现的时候,已经过了两个Sprint。所以,设了安全等级之后,一定要检查一下哪些人看不到,然后手动加一下「查看者」。

3.5 第五步:验证配置——别等出事了才发现

配置完了,别急着让团队入驻。先自己验证一遍。

我一般会做这么几件事:

  1. 用「只读用户」账号登录,看看能不能看到项目。能不能点开任务。能不能编辑。应该都不能。
  2. 用「算法工程师」账号登录,创建一个子任务。看看能不能分配给其他人。应该不能。
  3. 用「测试工程师」账号登录,创建一个Bug。看看能不能直接关闭。应该不能。
  4. 用「系统架构师」账号登录,创建一个Epic。看看能不能修改安全等级字段。应该可以。

如果发现权限不对,马上调整。别想着「先跑起来再说」。权限问题一旦积累,后面改起来成本极高——因为每个任务都已经关联了人、关联了代码、关联了测试用例。你改一个权限,可能影响几十个任务的可见性。

好了,项目初始化这一步就到这里。下一章,咱们聊聊怎么搭建ADAS专属的工作流——说白了,就是任务从「新建」到「关闭」到底要走哪些步骤。这个在ADAS项目里特别讲究,因为涉及功能安全的审批节点,一步都不能少。