想象你是一位自驾游车队队长,带着十几辆满载 AI 模型和数据的车,从研发基地开往上线交付站。你要在下午 6 点前抵达,可每辆车性能不同、司机节奏各异,前方还有山路和收费站。你会怎么做?先在出发地把路线图、里程数和停留点定下来;行驶中每隔一段路查看每辆车的位置;遇到掉队的车,要么叫它加速,要么重新规划路线——这件事,就是项目管理里的“进度跟踪”。 AI 项目的推进方式与此惊人相似:需求文档是地图,团队成员是车手,迭代是每天的行程,里程碑是路上的服务区,上线日期是终点。进度跟踪不是靠直觉“猜大概”,而是靠清晰的进度基线、可靠的里程碑和定期的跟踪节奏,让项目经理随时回答三个问题:我们现在在哪?应该在哪?偏差有多大?本文全程使用这套车队管理比喻,带你掌握 AI 项目管理中最实用的进度跟踪方法论。

岗位关联

掌握进度跟踪,是 AI 项目管理者从“凭感觉管项目”走向“用机制管项目”的关键一步。它能帮你提前发现延期风险、合理调配资源,让团队按时、高质量地把 AI 模型送到用户手中。

目录
  1. 可视化演示
  2. 跟踪基础:先有仪表盘,才能谈跟踪
  3. 里程碑规划:把长路切成路牌
  4. 敏捷跟踪:开着 GPS 动态导航
  5. 瀑布跟踪:照着铁路时刻表发车
  6. 风险管控:备好备胎再上路
  7. 质量保障:货物完好才算到达
  8. AI 应用场景
  9. Python 演示
  10. 常见误区
  11. 面试题

可视化演示

展示燃尽图追踪实际进度与理想进度的偏差,甘特图呈现各阶段任务完成百分比,支持进度偏差分析。

本节配有交互动效(进入视口后自动加载,约 3KB)。

燃尽图 虚线为理想进度线,实线为实际进度,偏差-8%需关注 进度偏差 = 实际 - 计划 每日站会同步进度,及时识别偏差并调整

跟踪基础:先有仪表盘,才能谈跟踪

车队出发前,队长会做两件事:把出发前里程表读数记在本子上,再把今天要途经的几个服务站写进打印地图。这份“出发记录 + 路线图”就是车队版本的进度基线。有了它,之后每一次核对“我们到哪了”才有参照点,否则一切都只是模糊的感觉。

AI 项目同理。进度基线是立项时经过团队评审、被各方认可的正式计划,记录了每个关键任务的开始时间、结束时间和可验证交付物。它是一切进度对比的零点。与之对应的“实际进度”,则是团队真正完成并通过验收的工作量。两者之差,就是项目当前是提前还是落后的依据。至于多久跟踪一次,则要看风险大小:高风险阶段最好每日看一次仪表盘,平稳阶段可以每周检查。

量化这种偏差,项目管理中常用挣值分析:已获价值(EV)是“已完成工作按计划折算出的价值”,计划价值(PV)是“到了今天原计划应完成工作的价值”。两者相减就得到进度偏差。

回到车队的比喻:队长每到一个服务区就记录实际里程,与出发时排定的“计划里程”对比,判断今天是否晚点。这个记录、对比、决策的循环,就是 AI 项目管理中最核心的进度跟踪。

SV=EV−PV\displaystyle SV = EV - PV
SV 大于 0 说明进度提前,小于 0 说明进度落后。它像车队队长看到“实际里程领先计划里程 30 公里”一样直观。
  1. 统计已获价值 EV把已经完成并通过验收的任务,按原计划单价折算成价值。
    EV=∑i∈已完成vi\displaystyle EV = \sum_{i \in \text{已完成}} v_i
  2. 统计计划价值 PV把当前时间点应完成任务的价值相加,得到基线期望值。
    PV=∑i∈计划vi\displaystyle PV = \sum_{i \in \text{计划}} v_i
  3. 计算偏差 SV用已获价值减去计划价值,差值量化提前或落后程度。
    SV=EV−PV\displaystyle SV = EV - PV

里程碑规划:把长路切成路牌

车队长把 500 公里分成五个路牌:京新高速入口、加油站、环山公路中段、风景区收费站、酒店停车场。每个路牌都有清晰的可见特征,远远看到就知道“到了”。这些路牌,就是项目的里程碑。

AI 项目的里程碑,例如“数据标注完成”“基线模型提交评测”“内测通过”“上线发布”,都必须是可验证的成果,而不是“尽量推进”的过程描述。设定里程碑时要同时理清依赖关系:数据标注不完成,模型训练就无法开始;模型评测不通过,内测就无从谈起。依赖关系决定了里程碑之间的先后顺序,也决定了哪条链路最容易被卡住。里程碑审查则是在每个节点做正式验收,确认交付物合格后才放行。为了让意外不影响终点,经验丰富的团队还会在关键里程碑后预留 1-2 天缓冲,就像车队在车队中预留一辆车的故障处理时间。

衡量里程碑整体进展,最直接的指标是达成率:

车队每经过一个路牌就鸣笛清点,这既给团队“确实在前进”的确定感,也把巨大的项目目标切成一个又一个可确认的小胜利。里程碑不是墙上装饰,而是让进度变可见的路牌。

里程碑达成率=已达成里程碑数计划里程碑总数×100%\displaystyle \text{里程碑达成率} = \frac{\text{已达成里程碑数}}{\text{计划里程碑总数}} \times 100\%
达成率告诉你旅程走完了多少“关键路段”。到达 100% 时,项目主体已基本成型,剩下的只是收尾。
  1. 清点已达成里程碑将当前已通过正式验收的关键节点逐一计数,用 xₖ 表示第 k 个节点是否达成。
    已达成=∑k=1nxk\displaystyle \text{已达成} = \sum_{k=1}^{n} x_k
  2. 确定计划总数统计项目计划中全部里程碑数量,记为 n。
    计划总数=n\displaystyle \text{计划总数} = n
  3. 计算达成率已达成数与计划总数相除后乘以 100%。
    达成率=已达成n×100%\displaystyle \text{达成率} = \frac{\text{已达成}}{n} \times 100\%

敏捷跟踪:开着 GPS 动态导航

敏捷项目不像传统车队死守一张纸质地图,而像开着实时 GPS 导航——每天根据路况重新规划一小段路。队长每天早上用 15 分钟在加油站同步一次:昨天开了多少?今天计划到哪?路上有没有麻烦?这就是每日站会。

敏捷跟踪最经典的工具是燃尽图:横轴是迭代日期,纵轴是剩余工作量,理想情况下是一条从左上到右下均匀下降的直线。实际曲线画出来后,如果趴在理想线上方,说明剩余工作比计划多,进度存在风险。团队速度(Velocity)则是完成的故事点与迭代周期之比,用于预测下一个迭代能接多少需求。每个迭代结束时,团队做迭代评审,向干系人演示真正跑起来的功能,而不是只读 PPT。

燃尽图的理想线可以用一个简单公式描述:

GPS 导航每天都会微调路线,但目的地始终不变。敏捷跟踪正是如此:团队每天检查剩余工作量,动态调整任务分配,却始终盯着版本发布目标不放。燃尽图、站会、迭代评审组合起来,就是 AI 团队自己的车载导航。

理想剩余(t)=W0(1−tT)\displaystyle \text{理想剩余}(t) = W_0 \left(1 - \frac{t}{T}\right)
其中 W₀ 是迭代开始时的工作总量,T 是迭代总天数,t 是当前时间。它告诉你“如果匀速推进,此刻应该还剩多少工作”。
  1. 明确总工作量一个迭代开始时,将所有故事点相加得到 W₀。
    W0=∑story points\displaystyle W_0 = \sum \text{story points}
  2. 计算时间比例当前迭代时刻 t 除以迭代总天数 T。
    tT\displaystyle \frac{t}{T}
  3. 计算理想剩余总工作量乘以剩余时间比例,得到理想燃尽线的位置。
    理想剩余(t)=W0(1−tT)\displaystyle \text{理想剩余}(t) = W_0\left(1-\frac{t}{T}\right)

瀑布跟踪:照着铁路时刻表发车

有些项目必须走瀑布模式:需求范围明确、外部依赖固定、监管部门要求阶段审批。这就像车队必须拿着提前盖章的通行证,按照铁路时刻表一样的时间窗发车,中途不能随意变道。

瀑布跟踪的核心工具是甘特图,用条形图直观展示每个任务的起止时间与负责人。在甘特图之上,项目经理要找出关键路径——那条没有浮动时间、一旦延误就会拖垮整个项目的任务链。控制节点则是设在阶段交界处的审批关卡,例如“需求冻结评审”“设计 Review”“验收测试门禁”。任何计划的调整,都必须走变更管理流程:提交变更申请、评估影响、审批通过后才能更新基线。

关键路径总工期就是项目理论上的最短工期:

在这条固定铁轨上,最不能掉队的就是那辆载着关键设备的车厢。瀑布跟踪的每个控制节点,都是一次“到站检票”:通过,继续前进;不通过,立即返工或调整计划。

D关键=∑i∈CPdi\displaystyle D_{\text{关键}} = \sum_{i \in \text{CP}} d_i
其中 dᵢ 是关键路径上每个任务的工期。这条路线上任何一辆车晚点,整列火车都要晚点。
  1. 列出所有任务及工期在网络图中给每个任务标上工期 dᵢ。
    di(i=1,2,…,n)\displaystyle d_i \quad (i=1,2,\dots,n)
  2. 识别关键路径找到从项目开始到结束、没有浮动时间的任务链。
    CP={i∣浮动时间=0}\displaystyle \text{CP} = \{i \mid \text{浮动时间}=0\}
  3. 求和得最短工期将关键路径上所有 dᵢ 相加。
    D关键=∑i∈CPdi\displaystyle D_{\text{关键}} = \sum_{i \in \text{CP}} d_i

风险管控:备好备胎再上路

老练的车队队长在出发前会看天气预报、检查备用轮胎、把“山路暴雨封路”写进应急预案。项目中的风险管控也一样,不是等出问题再救火,而是提前问:什么情况会让我们迟到?

AI 项目中常见的进度风险包括:数据标注质量低导致训练返工、GPU 资源排队抢占、法务审批延迟、第三方 API 突然停服。识别风险后,需要用统一标尺评估优先级,再设置预警机制——例如进度偏差超过 10% 时自动触发复盘。应对策略通常有四类:规避(改变计划绕开风险)、缓解(降低概率或影响)、转移(外包或购买保险)、接受(小风险留预算兜底)。

风险优先级可以用暴露度数值来排序:

提前准备的备用路线不会增加多少里程,却能让车队在封路时依然准点。风险管控的价值不在于消灭所有意外,而在于让意外发生时,团队仍有预案可走,不至于停在原地。

风险暴露度=P×I\displaystyle \text{风险暴露度} = P \times I
P 是风险发生概率,I 是发生后的影响(可用延误天数或损失金额衡量)。乘积越大,越值得优先处理。
  1. 评估发生概率根据历史数据和专家经验,估计风险发生的概率 P(0~1)。
    P∈[0,1]\displaystyle P \in [0, 1]
  2. 评估影响程度估算风险发生时造成的延误天数或成本,记为 I。
    I=延误天数或成本\displaystyle I = \text{延误天数或成本}
  3. 计算暴露度两者相乘,得到风险优先级排序的参考值。
    暴露度=P×I\displaystyle \text{暴露度} = P \times I

质量保障:货物完好才算到达

车队到达终点并不等于交付胜利——如果后备箱里的设备在颠簸中碎了,一切白忙。所以队长每到一个服务区都会检查车况和货物:刹车是否正常,货物是否固定牢固。这就是质量保障。

AI 项目里,质量保障的核心是“完成定义”(DoD):一个任务必须满足哪些标准才算真正完成,例如代码通过 Review、测试用例通过、模型评测指标达标、文档已更新。在关键节点设置质量关卡(Quality Gate),比如合并主干前必须通过 CI 构建,模型发布前必须通过离线评测和人工抽检。测试覆盖则用来衡量用例对需求的覆盖程度,避免“测了但没测到点子上”。每个迭代或里程碑结束后,还要做复盘改进,把过程中的问题沉淀为下一次的改进项。

衡量质量关卡的效果,可以用一个朴素指标:

进度和质量是同一辆车的前后轮:只猛踩油门却不检查货物,最终会在验收门口被迫返工,反而比稳扎稳打的车队更晚到达。真正的进度,是带着合格交付物一起抵达的进度。

质量合格率=通过用例数用例总数×100%\displaystyle \text{质量合格率} = \frac{\text{通过用例数}}{\text{用例总数}} \times 100\%
合格率过低时,即使进度表面领先,也要停下来修地基——否则返工会吞噬已经赚到的进度。
  1. 统计通过用例数记录测试中通过且无阻塞缺陷的用例数。
    Npass\displaystyle N_{\text{pass}}
  2. 统计用例总数汇总测试计划中计划执行的全部用例数。
    Ntotal\displaystyle N_{\text{total}}
  3. 计算合格率通过数除以总数并乘以 100%。
    合格率=NpassNtotal×100%\displaystyle \text{合格率} = \frac{N_{\text{pass}}}{N_{\text{total}}} \times 100\%

AI 应用场景

场景一:模型训练迭代的燃尽图管理

阶段:模型训练与迭代交付阶段

解决的问题:传统方式用手工表格记录训练实验和排期,进度全凭负责人口头汇报,遇到训练失败重跑时很容易“隐形延期”。用 Sprint 燃尽图加上进度基线,能实时发现训练卡点(如数据预处理超时、GPU 排队),提前预警并重排任务。

具体案例:某算法团队在“推荐模型 v3 迭代”中使用燃尽图跟踪。团队把训练任务拆成每天 8 个故事点,第二天实际剩余曲线明显高于理想线,排查后发现是数据管道重跑导致。及时修复后,迭代按期交付。

场景二:数据标注与模型开发的依赖协同

阶段:数据工程与模型开发协作阶段

解决的问题:数据标注和模型训练是典型的上下游依赖,传统做法靠开会互相催促,责任不清。用里程碑加依赖关系表,把“标注完成并通过抽检”设为前置里程碑,双方按同一张依赖图对齐,避免互相等待。

具体案例:某 NLP 项目启动周就设定了“标注完成 10 万条”和“基线模型评测指标达标”两个里程碑。因标注进度延迟触发预警,项目经理临时将部分简单样本切换到自动标注,一周后恢复计划。

场景三:多模型并行迭代的风险矩阵

阶段:多个算法方向并行探索与上线阶段

解决的问题:多个模型并行开发时,传统周报汇总节奏太慢,等到发现某个方向失败时已经浪费两周。用风险暴露度(概率 × 影响)对技术路线排序,重点盯住影响上线且概率高的方向。

具体案例:某 AIGC 初创团队并行迭代 3 个生成模型,用风险矩阵每两天复核一次。团队发现“可控生成”路线影响大且概率高,立即增加一版简化方案作为备选,最终保障主版本按时上线。

Python 演示

python33 行
class SprintTracker:    def __init__(self, total_points, days):        self.total_points = total_points        self.days = days        self.remaining = total_points        self.velocity = total_points / days        self.history = []     def complete(self, points):        self.remaining = max(0, self.remaining - points)        self.history.append(self.remaining)     def ideal(self, day):        return self.total_points * (1 - day / self.days)     def deviation(self):        day = len(self.history) - 1        return self.ideal(day) - self.remaining     def report(self):        day = len(self.history)        expected = self.ideal(day)        dev = self.deviation()        flag = "领先" if dev > 0 else ("落后" if dev < 0 else "准时")        print("Day %d: actual_remaining=%d, expected=%.1f, %s %.1fpt"              % (day, self.remaining, expected, flag, abs(dev)))        print("  velocity=%.1f pt/day" % self.velocity) if __name__ == "__main__":    tracker = SprintTracker(60, 10)    for i, done in enumerate([6, 5, 7, 4, 8, 6, 5, 7]):        tracker.complete(done)        tracker.report()
目的:模拟一个 10 天迭代中每日完成故事点后的剩余工作量,计算与理想燃尽线的偏差,并生成类似每日站会的进度播报。
  1. self.remaining = max(0, self.remaining - points)每天完成故事点后,剩余工作量只减不增,对应燃尽图的下沿。
  2. def ideal(self, day)理想剩余工作量公式:总工作量按时间比例均匀下降。
  3. dev = self.ideal(day) - self.remaining实际剩余比理想剩余少,说明进度领先;多则落后。
  4. self.history.append(self.remaining)记录每日剩余值,方便后续绘制整张燃尽图。
  5. tracker.report()生成一次“站会式”的进度播报,让团队快速对齐状态。

常见误区

误区团队成员天天加班,GPU 也跑满了,项目经理就认为项目没有延期。大家“看起来很忙”让所有人都安心了。

正解进度只与完成并验收的交付物有关,与投入工时没有必然关系。就像车队跑了很远不代表到达了目的地,方向错了,绕一圈只会白白消耗燃油。EVM 中真正要比较的是 EV 与 PV,而不是工时与预算。

为何常见:传统工业管理中工时与产出高度相关,而 AI 研发是知识密集型工作,“忙”可能与有价值产出无关,甚至是在错误方向上做的大量返工。

误区把每个小任务都设为里程碑,每天都能打钩检查,项目经理觉得这样最稳。

正解里程碑是重要阶段的“可验证验收点”,不是普通打卡点。分得太细,团队会把大量时间花在填表和汇报上,反而拖慢真实进度。里程碑的颗粒度应该与风险级别匹配,通常 1-2 周一个较合理。

为何常见:新手希望通过更多检查获得控制感,但过度检查会制造汇报负担。车队如果遇到每个岔路口都停下来清点人数,反而会错过服务区的集合时间。

误区团队用了敏捷开发,项目经理觉得迭代自己走就行,不用再设里程碑。

正解敏捷迭代本身就需要版本发布里程碑和业务验收节点,迭代评审就是一次里程碑审查。没有里程碑的敏捷,会变成无限试错、无人负责交付的失控循环。

为何常见:人们误以为敏捷只拥抱变化、反感计划。其实敏捷提倡的是把大里程碑拆小、加密,用“频繁交付小胜利”来替代“最后一次大爆炸”,它并没有放弃里程碑。

误区看到燃尽图曲线快速下坠,项目经理觉得进度非常健康,准备提前庆祝。

正解曲线下坠得快,可能是任务没有真实拆分、需求被悄悄砍掉,或者验收标准放水。必须结合迭代评审和完成定义(DoD)确认“完成”是真正的完成,否则只是把风险往后推,最后在验收窗口集中爆雷。

为何常见:因为数字趋势最容易抓人眼球,而团队为了“图上好看”可能会做假拆分或降低交付标准,这些行为藏在图景之后,不容易被看到。

误区项目经理认为做进度跟踪,就是每天盯员工有没有摸鱼,查谁的活没做完。

正解跟踪的目的是获取信息、协调资源、预测风险。透明展示真实进度,反而能促使团队自我调整。如果跟踪变成追责工具,团队会报喜不报忧,等到风险暴露时已经难以挽回。

为何常见:它源自“控制式管理”的惯性——管理者潜意识里把成员当成需要鞭策的司机。但知识型 AI 团队更适合导航式引导:给清晰目标、实时反馈、共同决策,而不是在后座不停地按喇叭。

面试题

Q1. 关于进度基线,下列说法正确的是?

单选题 · easy

  • A.基线一旦确定便不可以修改
  • B.基线是立项时批准的进度参照物← 正确答案
  • C.基线只在项目收尾阶段才生成
  • D.基线用来考核团队成员的出勤

答案:B。进度基线是项目启动时经评审批准的交付节奏参照物,后续所有实际进度都与之对比。A 错在基线可以通过正式变更流程更新;C 错在基线在立项时就建立;D 错在基线衡量工作产出,不是考勤工具。就像车队出发时定好的路线和时刻表,不是用来记考勤的。

Q2. 燃尽图中实际曲线明显高于理想曲线,说明什么?

单选题 · easy

  • A.团队正在以超计划的速度推进
  • B.团队实际进度落后于计划预期← 正确答案
  • C.团队进度与计划保持完全一致
  • D.团队已经把需求全部删减完毕

答案:B。燃尽图纵轴是剩余工作量,曲线越高代表剩余越多。实际曲线在理想线上方,说明此刻剩余工作量大于理想值,团队进度落后。A 和 C 描述的是领先或持平状态,D 是需求被砍掉的异常情况,都不符合曲线含义。

Q3. 关于关键路径,以下描述正确的是?

单选题 · mid

  • A.项目中不允许延误的任务链路← 正确答案
  • B.包含加班最多人员的任务链路
  • C.只属于测试阶段的专有任务链
  • D.项目经理最熟悉的工作路径

答案:A。关键路径是一组没有浮动时间的任务链,任何一个任务延误都会直接拉长整个项目工期。B 用加班人数判断没有依据;C 错误地限定在测试阶段;D 用熟悉程度代替客观计算。它相当于车队里那辆必须准时过桥的车,任何耽搁都会让全队迟到。

Q4. 完成定义(DoD)在 AI 项目中的作用是?

单选题 · mid

  • A.规定任务真正完成的验收标准← 正确答案
  • B.确定团队每日所需的休息时间
  • C.替代测试人员执行线上回归
  • D.限定项目临时增加需求的次数

答案:A。DoD 明确一个任务在“代码完成、测试通过、文档更新、指标达标”等多维度上的验收标准,避免“看起来完成”。B、C、D 分别与休息安排、测试执行、需求控制无关。就像车队规定“到达”不只是开到终点,还要确认货物无损、油量合规。

Q5. 项目进度严重落后时,项目经理首先应该做什么?

单选题 · hard

  • A.立即要求团队全员加班冲刺
  • B.删减需求来保证硬性上线日
  • C.先分析偏差原因再制定对策← 正确答案
  • D.更换成员并重新编写全部文档

答案:C。进度严重落后时,第一动作是诊断原因:是估算错误、依赖阻塞、还是范围蔓延?只有找到根因才能选择加班、砍需求或调整策略。A 和 B 跳过诊断直接行动可能适得其反;D 更换成员会让团队失去上下文,加剧延期。这就像车队晚点后先看地图查堵点,而不是盲目踩油门。

Q6. 风险暴露度的计算方式是?

单选题 · easy

  • A.发生概率与影响程度之和
  • B.发生概率与影响程度之差
  • C.发生概率与影响程度之积← 正确答案
  • D.发生概率与影响程度之比

答案:C。风险暴露度 = 发生概率 × 影响程度,用乘积量化风险优先级。例如概率 30%、影响 10 天,暴露度为 3 天。加、减、除都无法同时体现“既可能发生、又影响大”的双重维度,因此不是正确的风险评估方式。

Q7. 关于进度跟踪频率,以下做法最合理的是?

单选题 · hard

  • A.跟踪越频繁,项目效果一定越好
  • B.频率应匹配风险级别与团队节奏← 正确答案
  • C.只在里程碑节点被迫检查一次
  • D.频率由团队成员自行随意设定

答案:B。跟踪频率应因项目而异:高风险阶段每日站会同步,平稳阶段每周评审即可。A 过度跟踪会消耗团队精力;C 只在里程碑检查会错过中间偏差;D 完全放任会让项目经理失去掌控。就像车队在崎岖山路要频繁看导航,在高速直路上则可以安心巡航。

Q8. 以下哪些是敏捷开发中常用的进度跟踪手段?

多选题 · mid

  • A.每日站会同步进度← 正确答案
  • B.燃尽图观察剩余量← 正确答案
  • C.速度预测交付能力← 正确答案
  • D.强制写日报和周报

答案:ABC。敏捷常用手段包括每日站会、燃尽图和团队速度,它们共同构成“短周期反馈闭环”。D 的日报周报属于传统汇报机制,不一定与敏捷的面对面、可视化原则匹配。敏捷更像车载导航的实时刷新,而不是事后补交的行驶日志。

Q9. 以下哪些属于进度风险的应对策略?

多选题 · mid

  • A.规避风险绕开危险路线← 正确答案
  • B.缓解风险降低发生概率← 正确答案
  • C.转移风险交给第三方保← 正确答案
  • D.忽视风险赌一次运气

答案:ABC。经典风险应对策略是规避、缓解、转移、接受。A 是规避,B 是缓解,C 是转移;D 的忽视不是“接受”——接受是知情后预留资源兜底,而忽视是完全不准备,属于典型的风险失控行为。车队准备备用路线和备胎,才是真正的风险应对。

Q10. 一个合格的项目里程碑应该具备哪些特征?

多选题 · mid

  • A.可验证的交付成果判定← 正确答案
  • B.清晰明确的计划时间点← 正确答案
  • C.项目重要阶段的衔接点← 正确答案
  • D.必须与财务预算强绑定

答案:ABC。里程碑应可验证、有时间点、代表重要阶段,它是团队确认“我们已经到了这里”的信号。D 错误,里程碑不一定与财务绑定,很多技术验收节点与预算无关。就像路牌要有醒目的文字、明确的位置和里程碑意义,而不是每一棵行道树都算路牌。