电子产业一站式赋能平台

PCB联盟网

帖子
查看: 24|回复: 0
收起左侧

汽车零部件软件质量评审流程

[复制链接]

886

主题

886

帖子

9157

积分

高级会员

Rank: 5Rank: 5

积分
9157
发表于 2024-12-11 08:01:00 | 显示全部楼层 |阅读模式

rltgmtlxzgl64025460739.gif

rltgmtlxzgl64025460739.gif
8 W, l# I/ r# B, Q
点击上方蓝色字体,关注我们
3 N! c5 e" S3 `* h: E! k$ o6 L我们的一生会经历许多重要的节点:18岁成年、参加高考、步入大学、开始工作、结婚成家、生儿育女、退休养老……每一个节点都标志着人生进入新的阶段,也象征着个人的逐步成熟。
  F8 d6 p2 ~3 S- @  e$ p  N" q$ y+ z, F9 m
类似于人生的节点,软件在生命周期的六大环节或ABCD样件中,同样包含许多大小不一的关键节点。
" {# g0 D9 c6 s5 i/ f6 [0 _/ R- c! u8 m+ S1 J" C9 C8 \8 ]2 v" G
即便某些个体经历特殊,例如某人被保送大学未参加高考,或某人选择独身主义“裁剪”了部分人生阶段,但依然会经历某些不可避免的重要节点。
+ C3 d* H/ k* s/ Y. r
1 a% ~5 Y8 Z# G4 ~1 m- e在项目管理中,我们将这些关键节点称为“里程碑”,而那些需要正式评审的节点则被称为“质量门”(也称“质量阀”“阶段门”或“卡点”等)。
. E7 z9 U$ _( P$ Q9 e6 m- X
) c- H) X/ Y. B2 E; U9 H质量门通常设置在交付节点之前,通过正式的评审会议进行质量控制。/ a6 e' o: Q: U  I

6 u4 I6 Q* c4 B# J+ @& {! G) z此外,还有一些非正式但具有一定强制性的关卡,例如领导签字、代码评审或客户演示等。
3 V0 q' i+ Q/ b4 Q9 V4 B0 F# `) v& V- ?( [2 U% `, P
从概念上讲,“里程碑”涵盖更广泛的意义,它既可以是一个方向性的指引,也可能直接影响项目的进展。
: R3 Y% i# J7 H8 f' R+ q
" w$ ^" z9 ~( ^7 o7 }. I然而,只有那些需要审核的里程碑才会对项目产生明确影响;而无需审核的里程碑更像公路上的路标或未设置检查的卡口,车辆可以直接通过,不会被阻拦。
; H9 A0 B3 D8 K0 Z. I( |
+ n+ ~# u4 \. Q9 |1 [" N9 Y, j因此,我们重点讨论的是需要审核、正式且全面的里程碑——即“质量门”。& A9 a- A/ ~0 Z6 u/ W
8 a" K& Y. K6 `& C; d
里程碑与质量门的关系如下图所示。( K2 X& Q' B( L
/ i) r' f3 e+ D: s4 G# E

hndtvxwvlge64025460840.png

hndtvxwvlge64025460840.png

9 E9 p7 j/ e5 I$ q6 Z9 x
) w' Q& y0 S7 g" [) y+ `, B众所周知,汽车项目对时间的敏感性极高。
/ K" x/ x* {  m7 F  \4 [0 T, n6 R2 L1 ]) b  s( @
这种敏感性不仅体现在快速推向市场的需求上,还体现在冗长而复杂的供应链中各节点的协调与配合上。; R3 f3 F# f# ~
9 |8 r9 f, c9 e! u% O+ A
可以说,按时交付是多数项目经理的核心关注点,而这一目标在层层传递中,往往成为项目团队面临的主要压力来源。
9 C5 A1 x' \' S3 F& E, h* w
: R. ]1 }& G2 J, a; {. _8 B( V7 R那么,具体要遵循什么时间节点呢?/ [6 h8 N$ y% U! S5 l2 E
% X( K" n& ~( |
核心是软件或样件的交付时间。
/ g4 V5 ]! c- e- Z3 t, P& k
9 X9 }5 [/ O0 R' h$ `0 s更规范地说,是按照需要通过审核的里程碑时间来执行。8 y" V; y5 A4 x* o

& x- y8 j  P  \/ ^- w0 V在这些关键时间点之后,项目要么直接提交软件交付物,要么将样件的交付工作转交给生产和物流团队,继续推进后续流程。8 v+ q% W% l0 a$ s
17 R/ W5 c# ]8 P! ^3 m
如何开展质量门评审9 A, i3 R5 D7 D9 T( W# h
评审是一个广义而通用的概念,涵盖多种形式,例如同行评审、内外部审计、IATF 16949 审计、功能安全认证、ASPICE 评级、领导检查、签字审批、会议汇报、团队回顾,以及本节讨论的质量门评审等,均属于评审的范畴。
- p8 @7 m) V' w3 E  D
2 p& Z/ C" e' E% c% v从模式上看,评审通常可以归纳为以下三种现实形式:依赖经验走过场依托检查清单(checklist),如下图所示:
7 K2 c! U4 c! G+ W
5 A. {9 `+ O2 r" a$ V& V" h7 W

f0qs1ik0gma64025460940.png

f0qs1ik0gma64025460940.png
; ^/ b2 @  H2 U8 ]

3 ^3 k9 X, Y1 O- Z6 J' C
  • 依赖经验:效果高度依赖于评审者的个人能力和责任心,因人而异,难以标准化。
  • 走过场:在许多情况下,评审可能流于形式,主要由于团队对评审的重视程度不够。要改善这一现状,需要通过优化流程设计,逐步形成重视评审的良好文化。
  • 依托检查清单:这是相对平衡且高效的评审方式,也是主要的评审工具。通过系统化的检查清单,不仅能够规范评审流程,还可以积累和传承知识与经验,是推动评审工作落地的实际路径。
    # Z1 D+ Y; O& p  c- w
    , `' N' @+ j/ A
    总之,无论是作为评审者还是被评审者,无论是管理者还是执行者,理解评审背后的意义,有助于我们在汽车行业这一层级分明、阶段清晰、评审频繁的环境中更有效地推动工作。4 `5 d! @' \6 k/ u, ~, E
    % L9 x* \% m. g7 M9 }$ M- j0 ?
    接下来,我们将从不同角度进一步探讨评审的实践与方法。
    - E# i2 A8 @, w$ g2
    7 q9 I$ }) w) N- b检查清单的设置
    + q  c- c3 ~, Q: _4 u' N' m作为一种实用的工具,检查清单的定义会根据评审对象的不同而体现出不同的专业性。  x/ ^9 N8 n3 @$ U' h2 @: d

    3 h# K3 W, @7 `) K不过,本节将重点讨论普适性较强的设置方法,而不涉及过于专业的内容。
    + l* z; H8 m5 k
    3 U3 [6 p4 t6 y% [面对日新月异且复杂的技术,细节常常难以一一掌握,我们更多的是需要根据产品或项目的特点,将方法论内化为实践。
    ; z9 b+ z" \/ ?" K! S; [  p9 E+ Z- ^; h6 z9 Z
    以下列举了与软件评审相关的15类实用检查项,供参考:
    * L" x9 H" G! e) A
  • 交付物是否有专属ID? ID及版本设置是否正确?是否使用了正确版本的软件?
  • 文档是否已存档并放置于正确位置? 模板是否正确或最新?文件结构是否合理?
  • 必填项目是否已填写? Excel筛选中是否有未设置的内容?变更原因是否已记录?文档历史是否有日期、修改记录和作者标注?
  • 被评审项是否已验证、基线化并获得授权人评审和认可? 是否已正式发布?
  • 计划内容是否完成? 上一阶段或版本的开口项是否已在当前阶段或版本中关闭?
  • 易错项设置是否正确? 被删除的部分是否确实不再需要?
  • 是否建立追溯链接,如需求和测试用例? 所有测试用例是否至少有一个与相应需求的外部链接?前后更新是否一致?在系统和Excel、FMEA与功能安全档案之间的相关更新是否同步?需求是否与系统概念和设计规则一致?
  • 描述是否详细、合理且易于理解? 是否使用一致的专业术语?
  • 前提条件是否明确? 是否已经满足?
  • 粒度是否合适? 是否有定性描述,如“小的”、“大的”?组件划分是否合理(模块化、高内聚、低耦合)?
  • 硬件是否对软件产生影响? 这些依赖项是否已识别清楚?每个组件的输入输出是否完整?系统与软件的匹配关系是否已检查?
  • 执行需求时是否存在风险?
  • 每个测试步骤是否有序列号? 是否标明测试顺序,并记录预期与实际结果?
  • 是否对比更改前后的输出? 判断更改是否合理?% C4 e& K$ q  }; C& X2 M% X

    + k; G5 Z+ w# C& p这些条目主要针对基本的完整性和逻辑性进行检查。# D; I2 b( R5 O6 V
    6 c4 x- C* ]* n* Y% l
    然而,对于优秀的评审者或管理者来说,这些检查项虽然必要,却还远远不够。# ?8 x! N& a$ g; C& i" {  q
    ) x' u/ X) C( f2 J
    它们可能零散且缺乏逻辑性。深入理解业务运作并掌握产品细节,仍然是高效评审的关键。
    4 T! w) c0 O3 w; e% j- B: f2 E$ w# j
    如果评审者无法准确把握评审对象的细节和现实适用性,评审工作就可能停留在表面,缺乏实际效果。
    $ H! C7 `9 A$ a! A3
    1 V8 ~+ g+ g0 i* K* W层次、对象与思维9 x$ s6 ~9 f! A% w( @
    为了更系统地提炼评审方法论,如下图所示。
    * n+ l1 J6 g) }/ F" K  q6 P
    1 ~% U3 l+ r1 R: J* ~

    y31yptq14nj64025461040.png

    y31yptq14nj64025461040.png
    4 }0 z6 s8 Z% _3 V1 p7 K

    , N9 u9 J  ^) V$ n我们还需关注当前评审实践中的一些不足之处:7 l3 z& W: q% I; {$ J' G% n

    3 k3 A3 |' [2 L9 f/ R; i(1) 评审的层次
    2 x5 k; `2 p6 g9 n, d3 ]. R
  • 有没有
  • 对不对
  • 好不好
    " ^3 o& \6 R+ N8 }: q' I/ N$ H# b
    * g6 H- `4 E8 G- Z3 V
    在实际操作中,评审往往只能做到“有没有做”或者仅仅根据纸面标准判断“对不对”,很难深入到实际业务中,全面评估“好不好”。
    3 w+ c% R& ?( t% `6 m0 F4 P- j
    - _2 I: ?4 k2 A, m) \) _这种局限性往往影响了评审效果的深度与准确性。
    ; f" Q9 @' w" T; M2 Y4 b' B+ `- C5 |- N8 `5 I
    (2) 评审的对象0 I" W2 M7 T9 t% w. E5 K% o3 u
  • 产品
  • 过程
      s$ Z/ d, R+ e1 l6 g8 l' Q
    $ U; X; \6 z  C7 q
    现实中,评审通常只能判断过程是否遵循标准,以及产品表现的度量指标是否有问题。
    $ J: ~0 {, w' z0 t0 G9 D
    1 K: f9 b% z7 `1 s# ]8 P3 T较为先进的评审者能够分析数据的未来趋势,但很难对产品、软件、测试设计的优劣与合理性做出准确判断。
    7 H- K& t" m3 v4 F" r! P" P1 V% _- Z1 g& M
    (3) 评审的基础思维. F" }' W' w) U; s1 Z2 H6 b1 [
  • 凡事预则立(计划思维)
  • 事事有着落(闭环思维)
  • 完整不遗漏(系统思维)
  • 自己说了不算(评审与批准思维)
  • 拿着要求说问题(标准思维)
  • 决定不能拍脑袋(分析思维)
  • 历史要清白(基线思维)5 p# s5 z9 U" w

      k% c+ _' A1 \. t$ k% h5 q理解并清晰表达这些思维逻辑,是评审者能够立足和成功的关键所在。0 L4 b2 n  g9 n" \! p& S. g

    ' Z% F4 a% }/ A  m8 S) l+ T8 h掌握这些理论,将有助于在实践中进行更加深入和有效的评审。
    & m  d9 X2 f" W  v+ k
    $ L' M4 K: F" \4 j) Y$ L+ p! e虽然在实际工作中,我们可能很难时刻保持完美,但偶尔回顾这些原则,能够在关键时刻为实践提供重要的指导。
    . x* |5 f! p  v6 Y; R! {# J7 p0 |) ]1 k
    7 \* C+ s( n3 l$ Q8 \接下来,我们将深入探讨一些实践经验。
    3 z4 Q. U' h/ _: f/ D4 ]46 Q$ D7 n: {- Y! _3 N8 v  P% r
    评审实用“找坑”指南! G8 i& d. q: I2 P
    在项目中,团队成员常常面临“挖坑”和“填坑”的问题。
    . k( W7 Q7 G& u8 B4 i( h" k: h- H' F+ O1 l, n; r9 P! K' J7 l: D) r, L
    作为评审员,我们的职责就是发现那些尚未填好的坑,或者被有意忽视的坑。" ]' T" I8 y4 g% X

    % Y. O3 h0 r' r; p$ b5 |/ g0 X找坑不仅能展现评审员的能力,也直接关系到质量门的效果。
    ! F5 m( l6 s& o5 V' M# \- \$ s! w. b. z- D- i
    以下列举了一些在评审过程中常见的“坑”问题如下图所示:
    % `8 I9 @& \# P; W- O2 y0 f) i; g2 O9 C% f1 s

    of2h2ombwmb64025461140.png

    of2h2ombwmb64025461140.png
  • 没有规划或规划不充分:对于项目缺乏整体规划,或团队成员不清楚项目规划,通常会暴露出如下问题:
    - p9 @2 A; J7 k/ R- H% x1 |; e[/ol]
  • 立项背景不清晰:项目是基于旧产品优化,还是应对新法规,或是解决上一代产品的局限?
  • 项目运行模式不明确:是全栈自研,模块分包,还是多供应商共同交付?
  • 项目定义不明确:是否清晰项目架构?变更范围是否明晰?是否要求完成ASPICE L2认证?
    6 t8 Z* Q+ l* `, {- q3 a. h

    & t, N( F2 }, o$ X: V这些问题通常表明项目启动会议或沟通会缺乏规划,项目章程或启动文档也可能未编制或发布。+ l/ r  K2 P0 W1 `) A
    5 X' N+ x* f$ U* u/ A: Q3 B
    相比总体规划,计划更为细化,若计划存在以下问题,可能导致项目进展受阻:
    ; M& i( [) L0 v
  • 时间计划未及时更新,或其他具体活动未完成。
  • 里程碑不完整,目标无法达成。
  • 工作包之间依赖关系不清晰,或未在部门间落实到可执行层级。
  • 任务未分配给负责人,且计划未得到监控。
  • 关键路径无法识别,资源设备不充足。) R$ k# I  }8 n* O! K; t

    " z" _! G$ I& P这些问题表明计划未得到充分细化和执行,且缺乏有效的跟踪机制。$ s2 @2 d6 V' y
    # u: _$ B4 K$ [: J  u
    开口项跟踪是项目管理的核心,若存在以下问题,往往会影响项目推进:
    / @+ A8 N8 e, X4 r( l$ Y8 O% t# ^
  • 没有责任人或截止日期,描述不清晰。
  • 长期无人处理的开口项,或者开口项超期无应对措施。
  • 开口项未进行交付影响分析。
    % m2 K' O4 W% B, @) {7 a  c$ |

    8 _6 R* f! C* ?随着软件迭代速度加快,bug管理越来越复杂。以下问题常见于Bug管理中:# B0 p. D4 a  I6 {
  • 不按照流程推进,缺乏对应的角色分配。
  • Bug描述不清晰,等级划分不合理。
  • 测试失败项未与Bug关联,修复版本混乱。
  • Bug修复未按计划完成,且存在严重Bug被交付。/ j& }' u$ |# G3 S1 D/ {

    : h! ^) l, M0 ]( G2 ?变更管理常常是项目中最具挑战的环节,以下问题可能导致变更管理混乱:
    $ c8 B) a- @4 [3 ]5 Z
  • 未进行变更影响分析,未经变更控制委员会(CCB)批准的变更。
  • 变更范围不清晰,缺乏与需求、测试、开发的追溯关系。
  • 基于未冻结内容进行变更,变更未与功能计划对齐。
    ) [) [, K# ?- Y% _# B

    # H7 s6 E, z; b2 o6 Y配置项不完整,未经过评审或批准,未打基线等问题依然较为常见,虽然这一部分问题较弱化,但仍需关注。5 m! K) g7 }, x
    需求管理中的问题包括:, {9 Y- Y5 W) G- ~- i' a  ^
  • 法规需求未考虑,需求未存档或未控制版本。
  • 需求缺乏拆分或标记,未明确需求的状态。
  • 功能需求未按计划实现,缺少性能或接口需求。0 a6 A( D0 D! i7 B+ Z
    8 e: I9 s( K1 k$ g+ z2 f
    设计实现的缺陷通常是开发人员专属领域的内容,评审员在这方面较难直接评价,但仍可能发现以下问题:' B9 [& {: t4 N" P, [
  • 缺少架构框图、功能分配、状态机图等重要设计文档。
  • 代码复用分析未完成,资源消耗超标。" ~2 V  y/ P7 b+ m$ m; d6 s/ m! `2 I
    / O& B: O$ X; I
    测试验证中的问题通常包括:
    0 Y/ {% ~9 x; v0 B) l4 p
  • 错误的报告,覆盖率、执行率偏低。
  • 静态验证违反项未修复,测试失败项未触发Bug或无风险分析。
    * N6 z2 h+ i8 ]: ]( h

    - ~$ G0 Q+ k4 x3 R质量门的开展实际上是评审者与被评审者之间的“较量”。
    3 ]( |' u1 O$ a* Y% \2 |
    8 x; g6 ^; T, |2 E: R根据不同的流程成熟度、人员经验及能力,评审员能够识别出项目中的不同问题。1 N' K/ I; k' ?% i
    " Z. G6 A+ h* U: l3 O9 W
    一个有经验且负责任的评审员,结合项目释放权限和质量门的有效实施,能够确保软件交付质量。* K+ s& \' u# t

    + N! A# s- c9 N# |1 P' J" n! k然而,事情往往不会尽如人意,评审员仍需具备高度的敏锐性和全面的能力,才能有效识别和填补项目中的“坑”。  x! U  x  @$ D0 N
    5& W7 R0 T6 Y! s# ~: t
    略显尴尬的评审- {9 C2 B9 ?7 k" {4 F5 n
    在汽车软件行业,质量门评审常常流于形式,未能真正发挥应有的作用。2 w$ A' }% t" A
    : S/ y5 b5 h, V! t* o
    个人而言,我较为排斥将工作变成纸面工作,空谈理论。+ D; u1 M+ d1 Q) Q8 U4 d( Z2 @' e7 E

    & b* m0 ?( b2 I3 N: P然而,当前汽车软件行业的评审往往是典型的“纸面工作”,这一现象反映出汽车行业对软件开发过程和规则的忽视。7 `5 @1 R+ o, t. l- T! M

    5 z/ Q, l  i: g* a8 M# ^% x# |* Q其原因可能有两个方面:
  • 汽车行业对软件开发重视不够,在精于机械制造的汽车行业,软件开发过程往往不被重视(下一节将进一步讨论)。
  • 缺乏深入业务的评审员,国内汽车行业中,能够真正深入了解软件业务的评审员仍然较少。
    ' L1 r. Z# J. M) }' s" Y[/ol]3 `1 U4 o+ t! [( q% w
    那么,面对这一理论上有价值但在实践中难以落实的工作,我们该如何看待呢?+ B7 A& p/ A* I

    5 l+ Y- z7 Q* W* P/ _1 e1. 法治还是人治
    ; Y6 J% D- t( A0 B+ @评审的价值首先取决于所处的环境是法治还是人治。
    ( G1 N0 G, M/ u% ^
    2 M5 L8 ^+ Y, Q2 K) e) A显而易见,法治环境更重视流程或标准评审,不容易在决策时被忽视。
    # S7 c- T( W+ P1 m
    ) Z4 N- T* }, q. \! u# o这个道理本身并不复杂,但需要强调的是,法治与人治之间并没有明确的界限。: J/ a7 q! Q' @. b6 w1 u
    ' [0 I  V7 T+ r" w* h& s# g
    总体而言,以下环境更接近于法治:
    7 E6 V% Q3 E: [. ?! x# b3 i
  • 外企相较于民企
  • 工厂相较于研发部门
  • 劳动密集型行业相较于智力密集型行业
  • 成熟产业相较于新兴产业
  • 财务相较于销售
  • 底盘开发相较于座舱开发
  • 代码编写相较于项目管理
  • 外审相较于内审
  • IATF 16949相较于ASPICE1 @; j9 t0 B9 P0 ?

    6 F( i0 F$ ^4 B; c0 ?然而,我们所处的企业是一个复合系统,各个部门之间的文化观念、工程需求、外部环境等因素都可能影响到法治和人治的划分。% @' G+ t# W! V. t

    + j) j) ]  \1 `2 c8 ?例如,外企中也可能有注重人际关系的本土销售,民企中可能有精细的财务流程;工厂内有各类背景的工人,研发中也有严格的测试标准。
      Z" \( k" Q! a5 z1 V3 s8 _* y0 _) G; A" h- w
    这表明组织环境是否偏向法治或人治,有多方面的影响因素:6 N+ T; \  ]0 W. Q9 l1 y
  • 文化观念的差异
  • 内在工程逻辑的需求
  • 外部政治或业务权衡的诉求
  • 行业技术成熟度0 Y: ?& c6 I9 A
    因此,在复杂的环境中,如何推动法治流程,需要我们深思熟虑。
    : T! W7 d! ^3 |: G5 @% G
    1 M6 [, D; \' U7 _2. 流程悖论
    4 D' a7 ^( q* t% ?1 C如果希望评审能够真正发挥价值,就必须让各环节重视流程,制定更合适的流程并严格执行。
    5 k/ j$ C+ x- s0 }
    / W1 o! v3 P; Q* M  _2 K只有这样,流程才能逐步完善,评审的价值才能逐渐提升。% K- Z, y! z1 J2 h* r! r
    . J8 c( V; D. {8 S
    然而,在当前国内市场和企业的阶段,这一目标仍然难以实现,形成了一个明显的悖论:
      X8 W& L$ n' U$ f2 J
  • 在理想的情况下,评审可以通过完善流程推动业务的优化;
  • 然而,在实践中,流程常常未被深入执行,导致评审失去应有的深度和效果。
    ' e/ k0 ?: C1 m" o6 m
    / {4 y3 M/ C* s
    这一悖论提示我们,汽车行业向软件化转型过程中,如何平衡流程的规范化与实际操作的灵活性,是一个亟待解决的问题。, u8 `: @/ ]& W2 p& Z& Y3 G

    0 R  K8 M+ }% a: N2 W) I最近阅读了一本关于智能汽车的专业书籍《智能汽车电子与软件:开发方法、系统集成、流程体系与项目管理》2 X& K5 E! ]" j6 U

    : H" [; C' ^+ B' N: O3 Q5 t) X作者在全球百强汽车企业的一级供应商和整车厂(OEM)中拥有10余年技术与管理实战经验,书中从技术和管理视角全面剖析智能汽车电子与软件领域。& P" H- Y" K1 [& y  c, A2 g
    # n2 }) w& J' ?2 |
    内容涵盖行业背景、组织架构、项目管理、开发方法、系统集成、流程体系、团队构建、核心标准、工具链、行业痛点及未来展望,推荐给从事智能汽车开发和管理的专业人士学习和参考。
    ( F  Z) X& U/ w( U本篇文章来源于这本书中的一些重要知识,希望对大家有所帮助。# R/ M+ E$ r  Q* r9 E

    0a3aldkhrvp64025461240.jpg

    0a3aldkhrvp64025461240.jpg
    / E- T, U, ~* G" ^9 j

    4b2epysd3ls64025461340.gif

    4b2epysd3ls64025461340.gif
    1 Z0 }8 }$ {: k& x
    点击阅读原文,更精彩~
  • 回复

    使用道具 举报

    发表回复

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    关闭

    站长推荐


    联系客服 关注微信 下载APP 返回顶部 返回列表