怎么把这个产品做出来

我陪你从头到尾过一遍。这一版是按"人能读下去"重写的 —— 上一版是分类目录,这一版是把它讲成一件有前后因果的事。

先说清楚我们现在的处境,不然看什么都会飘。

这个产品你已经想了一年多:让认真做产品的团队能发币拿钱,让买家不用再赌空气币。想法很清楚了,界面也画了五个版本,流程图画了一套,元素登记了 501 条。

但我上次问你"功能做完没有",你说不知道。这个"不知道"不是你的问题,是我们东西的放法有问题。 我们把所有信息按"文件"堆着:需求在一份、界面在一份、数据在一份、流程图在另一份。谁也没法从这堆文件里看出"整件事做完没有"。

接下来我按真正做产品的顺序,一步步过一遍。每一步我都会告诉你三件事:这一步实际在干什么、我们在这件事上做到哪了、以及现在缺的是哪一块。你不用记,看完你就知道该拍哪几个板。

一、先想清楚给谁做,比画界面重要一百倍

做软件最常见的死法,不是技术做不到,是做了一堆没人要的东西。而"没人要"这个事,在做的过程里是看不出来的 —— 每一块单看都挺合理。

怎么才能看出来?只有一个办法:回到"我们本来想让谁得到什么"。

举个我们自己的例子。你之前问过:为什么线框图里有"项目状态总览""时间线""关于和 FAQ""相似项目"这些东西,后来又没了?

这件事是这么发生的

v4 那一版,画的时候觉得"一个项目页,这些都该有"——别的平台有,看着也完整。到了 v5,整理的人一看,说不清这几块到底是给谁用的、解决什么问题的,就删了。

删了以后也没人正式宣布"这几块不做了"。结果就是:现在文档里这几块还留着,谁翻到都会以为"这是已经定好的"。

反过来你再看"连接状态清单"(就是显示哪个数据源连了、哪个没连的那块)。这个东西从 v2 一直活到 v5,五个版本没人想砍它。为什么?因为它一句话就能说清:让买家一眼看出这个项目的数据是真的。

这就是区别。说不清给谁用的,做的时候靠感觉、砍的时候也靠感觉;说得清的,从来到走都很稳。

所以我们第一步做的事,是把"目标"写下来。一条目标必须能念成:谁,在什么情况下,得到什么结果。三个缺一个都不算。

我按你的产品归纳了九条。你逐条看,不同意的直接说。

编号目标它管着产品里的哪些地方
G-01任何人打开网站,不用连钱包就能看懂这是个什么项目,并且能找到他想看的首页、项目页、落地页、顶部导航
G-02买家看项目时,能一眼看出这项目的数据是真的,不用只信项目方自己说连接状态、验证徽章、验证页、季度报告
G-03买家投钱之后能确信,钱不是一次性给项目方的,是按里程碑一段段放,没做到就拿不到发币向导第⑤步、项目页里程碑区、持仓页放款
G-04项目方愿意把项目页当自己的官网发出去项目头、主视觉图、团队与社交链接
G-05买家能用最少的步骤把钱换成币,并且随时知道现在什么价买入面板、价格、K 线、成交表
G-06买家能发现值得看的项目,而不是被塞一屏垃圾首页热门条、验证榜、筛选、落地页精选
G-07项目方从"想发币"到"发出去"不会中途放弃发币向导七步、右侧的"还差什么"清单
G-08买家和项目方随时能查自己的钱和身份持仓页、验证页、钱包连接
G-09第一次来的人能立刻明白我们和别的发币平台不一样在哪落地页

这里面我要单独提一下 G-09。这条是我最没把握的:它现在只落在"落地页"上,而落地页你到底做不做,还没定。如果落地页不做,这条目标就没地方落了 —— 那要么换个地方承载它,要么承认这条不重要。这个得你来定,我替不了。

另外还有两件事,我一直当成"事实"在用,但其实只是我的猜测,也一并交给你判断:

二、别按页面想,按"东西"想

你说"串不起来",根子在这里。

你脑子里装的是页面:首页、项目页、发币页、持仓页、验证页。但页面不是产品本身,页面只是东西露面的地方。

打个比方。一个超市的"页面"是入口、货架、收银台、仓库。可超市真正在管的东西是:商品、库存、订单、会员、优惠券。一件商品会在货架、收银台、仓库三个地方出现。如果你只按页面管,早晚会出现"货架上的数跟仓库里的数对不上"。

我们这儿一模一样:页面只有六个,但真正的东西只有十样,它们会在页面之间来回跑。

看一个已经出事的例子:押金

押金这东西同时出现在两个地方 —— 发币向导第⑦步(项目方交押金)和持仓页(项目方看押金退到哪了)。

如果按页面想,你会先在向导里做一个押金输入框,再在持仓页做一个押金进度条,两处各想各的。然后两边的规则、数字、文案就会不一样。这不是假设,我们真的已经出现了:押金比例在一处写 5%,另一处写 10%,没人知道哪个对。

如果按"东西"想,押金只有一份定义:金额等于募资额乘比例,状态就四个(待缴、已缴、分批退还、罚没)。两个页面只是展示它的不同侧面。那就根本不会有两个版本。

十样东西,重点看两样

把十样东西都列出来是这样:项目、代币、验证凭证、发售、里程碑、季度报告、押金、持仓、经营指标、放款批次。

完整的十样东西是这样(左边是它有哪些信息,中间是一生经历哪些状态,右边是谁把它创建出来的):

东西它身上有哪些信息一生经历哪些状态谁创建的
项目名称、代币代号、封面图、logo、一句话简介、社交链接、画廊、品类标签草稿 → 验证中 → 发售中 → 已毕业或失败 → 进入财报季项目方,在发币向导第①步填
代币固定 10 亿枚、18 位小数、发售量百分比、建池预留百分比、合约地址未发 → 已发 → 建池 → 流动性销毁项目方,用他自己的钱包发
验证凭证层级、数据源、证明时间、证明哈希、覆盖月数待接入 → 已验证 → 复核中 → 降级 → 过期项目方发起,系统出证
发售模式、时长、清算价下限、毕业线、单人限额、已募金额创建 → 进行中 → 达标或未达标 → 毕业或失败项目方设定,系统计算
里程碑名称、衡量什么指标、数据从哪来、目标值、解锁比例、时间窗口未达成 → 进行中 → 已达成并放款 → 窗口过期 → 锁死项目方填,系统判定
季度报告季度、营收、走势、报告期、复验结果未开始 → 已出证 → 已复验 → 断连项目方提交,系统核验
押金金额、构成、已退比例、达标条件、罚没去向待缴 → 已缴 → 分批退还 → 罚没系统计算
持仓数量、成本、现值、能否领取拍卖中 → 已毕业 → 可领取 → 已领取系统从链上读
经营指标月活、日活、留存、下载量、代码提交数、收入未验证 → 已验证 → 复核中zkTLS 出证
放款批次比例、前置条件、时间窗、提现费冻结 → 可提 → 已提系统

其中"验证凭证"和"里程碑"这两样,是我们跟别家最不一样的地方,值得说细一点。

验证凭证:它有层级(L1/L2/L3)、数据源(Stripe?GitHub?App Store?)、证明时间、证明哈希、覆盖的月数。它会经历"待接入 → 已验证 → 复核中 → 降级 → 过期"。

注意最后两个状态:它会降级,也会过期。这一点直接决定了界面长什么样 —— 因为数据是会变老的,所以徽章不能只有"有/没有"两种,必须有第三种"以前验证过但现在不算数了"。这就是为什么我们的徽章是三个(◆已验证、◇流量已验证、○未验证),而不是两个。

里程碑:属性是名称、衡量什么指标、数据从哪来、目标值多少、达成后能放多少比例的钱、时间窗口多长。

它的状态是"未达成 → 进行中 → 已达成(放款)→ 窗口过期 → 锁死"。这里有个大坑:"窗口过期"之后该怎么办,我们问了四个版本都没定。是钱不给了(锁死)?还是再给一个窗口(顺延)?还是退给买家?

这个问题不定,下面这些东西全都动不了:项目页里程碑那块怎么显示、合约里的放款逻辑怎么写、押金退不退。如果你只从这份东西里拍一个板,我建议先拍这个。

三、把话说成"能验收"的样子

想清楚东西之后,就该写"系统要提供哪些能力"了。写这个只有一条要求:这句话得能被验收。

什么叫能被验收?做完之后,我能指着屏幕说"对,做到了"或者"没做到"。

对比一下你就明白:

"要做一个验证功能。" —— 做到什么程度算做到?连没连?显示什么?谁去点?全不知道。这种话给开发,他只能猜。
"项目方能把 X、GitHub、App Store、Stripe 这些账号连上并把数据出证;买家在项目页能看到每个数据源是已连接还是没连;没连的那一行给项目方一个『连接』按钮。" —— 这句话一写出来,做完了没有、谁看得见、看得见什么,全清楚了。

写的时候有个窍门:从"东西"的状态变化倒推。每样东西从一个状态变到下一个状态,中间必然需要有人操作或者系统判断,那个操作就是一条需求。押金从"待缴"到"已缴",就需要一条"交押金"的需求;从"已缴"到"分批退还",就需要一条"按季度达标情况退还"的需求。

我们最后写出来 47 条,每条都编了号(R-01 到 R-47),并且挂在前面九条目标下面。编号不是形式主义 —— 有了编号,以后讨论就是"R-03 怎么改",而不是"那个红框里的东西",一屋子人各说各的。

三条写完整的,你看看是什么颗粒度

R-03,数据源连接与可信度信号(挂在 G-02 下面)

给项目方用,也给买家看。项目方能连上 X、GitHub、App Store、Stripe 这些数据源并出证;买家在项目页能看到每个数据源是已连接、待接入还是未连接;没连的那一行给项目方一个"连接"按钮。

做完的标准是:三种状态都显示;每一行都写明"这个数据源供什么指标",不能只写个名字;买家看不到"连接"按钮;一个都没连的时候整块变灰并给引导;连接成功后项目页顶部的徽章跟着点亮。

还没定的地方:数据源到底几个。现在字典里写 8 个、项目页线稿画 6 行、发币向导画 5 行,三处对不上。我的建议是首期就做 5 个(GitHub、App Store、X、GA4、Stripe),其余标"即将支持"。理由是每多一个数据源,接入和出证的成本都要加一份,首期没必要摊这么大。

R-06,里程碑与放款(挂在 G-03 下面)

项目方在发币向导第⑤步能设置最多五条里程碑,每条写清衡量什么指标、数据从哪来、目标值多少、达成后放多少比例的钱、时间窗口多长。买家在项目页能看到每条里程碑的实时进度。

做完的标准是:每条里程碑都写明"衡量什么加数据从哪来",而不是只给一个百分比(这是 Michael 的意见里明确点出来的);有实时进度数值,不只是一根进度条;有时间窗口;比例加起来必须等于 100% 才能进下一步。

还没定的:就是上面说的"没达标怎么办",卡了四个版本那个。

R-11,买入和卖出(挂在 G-05 下面)

买家连上钱包之后,能在项目页右侧那个常驻面板里买入或卖出,看到折算后的数量和手续费;没连钱包的时候,主按钮显示"连接钱包"而不是"买入"。

做完的标准是:三种情况下面板形态不同(拍卖中是出价面板、曲线阶段有单人限额提示、已上线才是普通的买卖);展示 0.3% 交易费怎么拆的(平台、项目方、回购);金额为零或者超过余额的时候按钮变灰,并且说明为什么。

还没定的:滑点默认值是多少,以及"未验证项目每人限 500 美元"这个数到底算不算数 —— 字典里是这么写的,但没人正式拍过。

四、把人怎么走写下来

界面是一块一块的,但人是按顺序用的。这一步就是把顺序写下来:他先看到什么,点一下之后看到什么,出错的时候看到什么。

写的时候用一个固定句式,出自 About Face 那本书(你下载的第 1 章就是讲这个的):某某人,在什么情况下,想干什么,希望怎么完成。 用这个句式,你会自然地把"情况"和"期望"都写出来,而不是只写"点了按钮"。

这里最容易犯的错,是只写顺利的那条路。用户来了、填完、成功 —— 完美的剧本。真实的用户会:填一半跑了、余额不够、超时了、项目没达标要退款。这些岔路不写出来,界面上就会出现"卡住没反应"的死角。

我们吃过这个亏

拍卖没达到毕业线怎么办 —— 这件事流程图里只写了"达标 → 毕业",没写"没达标"。结果三件事全乱了:买家不知道自己的钱退不退(这是最影响他敢不敢出价的事);界面上没对应的文案;开发不知道要不要写退款这段逻辑。

其实文档里写了处理方式(全额退款、代币销毁、不开池)。但它没被放进"人怎么走"这条线里,所以界面上就没人为它负责。岔路没画,等于功能漏做。

项目方发币这条路

他一开始只是好奇"我这产品能不能发币",所以首页那个 Launch 按钮不该一上来就逼他连钱包,先让他看。点进去以后是七步向导,右边一直挂着一张"还差什么"的清单,他随时知道自己在哪。

第①步填资料(名称、代号、logo、封面、简介、社交链接)。第②步连数据源,可以整步跳过 —— 这一步一定要能跳,不能逼人当场做完验证。第③步选怎么卖(拍卖还是绑定曲线)和参数。第④步填版税的收款人,最多八个。第⑤步设置里程碑,最多五条,也可以直接选"毕业全额释放"。第⑥步验证,也能跳。第⑦步把所有信息核一遍、交押金、签名发币。

这条路上有三个岔口必须处理:

买家买币这条路

他先是不带钱包地翻项目页:连接状态、业务指标、里程碑、团队,这些都不需要连钱包就能看。看完觉得行,去右侧价格卡下面输金额,系统给他折算数量、滑点、手续费。确认,签名,成交,提示,去持仓页看。

这条路里最要命的一句文案,是拍卖没达标时候的说明:"未达标将全额退款,代币销毁,不开池"。这句话写不写,直接决定他敢不敢出价。现在这句话不在界面上,只在文档里。

还有一个容易漏的:他买的是未验证的项目。界面要提前告诉他"此项目未验证,单人限额 500 美元"。等买完了才发现有限额,人会觉得自己被坑了。

现在这条线有个麻烦:五个数字在打架

哪里打架两个数字我建议怎么定,为什么
拍卖毕业线产品定稿里是 20 万美元,但老线稿里还写着 10 万按 20 万。定稿是最后拍过的,老线稿只是没来得及改
押金比例一处 5%,一处 10%按 5%。募资额本来就小,抽 10% 会把项目方吓走
里程碑放款比例30/30/40 和 10/30/60 两个版本按 30/30/40。前两笔等额,项目方的进度压力比较均匀;10/30/60 会让最后一笔太重,反而拖
曲线单人限额字典里写 500 美元,但没人拍过建议按募资规模的 2% 动态算,而不是一个固定数字。固定数字在大小项目上都不合适
平台币三种说法(VFY / 0928 方案 / 双角色)这个得你先定"到底有没有平台币",别的都是它的下游

五、一块界面怎么才算说清楚了

前面四步都是"想",从这一步开始才是"画"。但画之前有个问题要先解决:你怎么知道自己把一块界面说清楚了?

我们踩过这个坑,所以你抱怨"对按钮很模糊"我完全理解。后来我总结出:一块界面要回答十二件事才算说清楚。少答一件,开发就会自己编一件。

这十二件事是:这块叫什么、给谁看、替他解决什么、服务哪条需求、要显示哪些数据、什么条件下看得见、空的时候什么样、主按钮点了发生什么、成功失败给什么提示、数字的单位和精度、怎么埋点、怎么算做完。

光看这个清单你可能会觉得"这不是废话吗"。所以我直接拿一块给你看,你就知道答全和答不全的区别在哪。

拿"连接状态清单"这块来说

它长在项目页左边,一直是常驻的。

给谁看:买家看,只读;项目方也能看,但那上面有"连接"按钮,只有他自己看得到。

它解决什么:让买家判断这家项目的数据是不是真的。就这一句,再没有别的目的。

要显示的数据(这是你最想要的那张表,我一项一项列):

编号显示什么数据从哪来谁来写没有数据的时候显示什么
P153数据源名字(GitHub、App Store…)平台设计设计不需要,是固定文案
P154/155/156已连接 / 未连接 / 待接入三个状态zkTLS 出的证明系统不需要,它本身就是状态
P157"连接"按钮平台设计设计不需要;只有项目方本人能看到这个按钮
P158这个数据源供什么指标平台设计设计不需要,固定文案
P159证明时间(比如"证于 10-01")zkTLS 出的证明系统没连的时候显示一个短横

什么条件下看得见:项目页永远显示。一个数据源都没连的时候整块变灰,并给一个"去验证"的引导。

四种不正常的情况:一个都没连 → 整块灰掉加引导;正在加载 → 每行一条骨架;出错 → 那一行标红并给重试;访客进来 → 看不到连接按钮。

按钮点了会怎样:点"连接"跳去验证流程,出证之后回来,那一行变成"已连接"并显示时间。

成功和失败提示:成功就是那行变已连接、显示时间、项目页头部徽章跟着亮;失败就在那一行里报错,写清原因,给重试。

边界和精度:数据源统一成五个;TLS 1.2 不兼容的时候走代理模式;证明时间的格式统一成"证于 月-日"。

怎么算做完:三种状态都齐;每行写明供什么指标;访客看不到连接按钮;未连接的行有引导;连上以后徽章同步点亮。

你对比一下:如果当初只写"做个连接状态显示",上面这些一条都不会有。开发会自己猜几种状态、自己定文案、自己决定没连的时候显示什么 —— 然后你看到成品再说"不是这样",返工。

我们做到哪了

项目页那十九块是完整的,可以直接开工。另外五个页面(首页、发币向导、持仓页、验证页、落地页)一共三十四块,只答了八件事,少了"给谁看""什么时候看得见""埋点"这三条。这三十四块现在还不能直接交给开发。要补齐我随时能做,大概两三天。

六、每个数字都得摸清脾气

界面说清楚了,还得把上面每个数字的脾气摸清楚。只写"价格"三个字是不够的,得写四件事:长什么样、谁来填、能不能空着、空着显示什么。

前三件大家一般会写,第四件最容易出事。举个真的:价格没有数据的时候,如果显示"0",买家会以为这币归零了;正确做法是显示一个短横并说明"还没建池"。同样一件事,两种显示方式,用户的理解完全相反。

看两个例子你就懂我在说什么。

价格。长什么样:美元,千分位,两位小数。谁来填:系统从链上读,没人填。能不能空:不能,没建池的时候走空态。空着显示什么:一个短横,加一句"还没建池"。最后一个选择是故意的 —— 绝不能显示 0。

里程碑的实时进度。长什么样:一根进度条加一个分数,比如"8,400 / 10,000 月活"。为什么要有数字:只有进度条的话,买家看不出还差多少。谁来填:系统在数据源出证之后自动算,不能让项目方自己填,否则这东西就没意义了。空着显示什么:如果数据源断了,显示"最后已知的数值加更新时间",不要显示 0 —— 断连的时候显示 0,看的人会以为进度归零了。

我们 501 条界面元素全都登记了,"长什么样、谁填、能不能空"已经定了。"空着显示什么"这一列里还有一批是按规则推断出来的,需要你和开发过一遍。这份表在《元素台账 v2》那个 Excel 里。

顺便说一个我们已经在犯的错:表格的列名(比如"币种""持有数量")曾经被当成"项目方要填的输入项"。它们其实是表头,不需要任何人填。这种错如果流到开发那里,他会去做一堆没人填的表单。

七、做完前面六步,回头看一遍

前面六步都是往前做,这一步是回头对账。对两件事:登记了的东西,界面上有没有地方放?界面上画了的东西,有没有数据定义?

这个动作看着笨,但它是唯一能机械地发现"漏了什么"的办法 —— 靠脑子想是想不出来的。

我们两头对完,查出 59 处问题。挑两个说。

第一处:六边形成就徽章。这个东西在我们的设计规范里写着"已定稿",我们还专门为它写了三条动效规则,讨论了很久。但是翻遍五个版本的线框图 —— 一个都没画过。也就是说,我们花了不少功夫设计它,但它在界面上从来没有位置。

为什么会这样?因为它是在"讨论设计规范"的时候定下来的(当时在参考别的产品怎么做徽章),定完之后没人把它安排到具体页面上。补法就是把它安排到该在的地方:项目页头部的成就区、卡片角上。这个我已经做了,你在演示站上能看到。

第二处更严重:拍卖出价面板。v1 版本里明明画过它,四个输入框加一个计算器(最多花多少钱、最高接受单价、能买到多少)。但登记表里搜"出价",只搜到一句"出价面板替换买入面板"。

这意味着什么?拍卖是我们两种卖币方式之一,买家实际掏钱就是在这个面板上操作的。画了但没定义,等于主力功能没有规格,开发根本下不了手。

怎么补:把 v1 画的那几个输入框一个个登记成元素,再给每个写清楚四件事。但这之前得先回答一个问题 —— 拍卖这块到底做不做?如果做,我就补;如果不做,这些就都能删掉。

八、先做哪一段

很多人以为开发就是"按模块一个个做",从第一个做到最后一个。专业做法不是这样,是按"一条完整的路"做:先把一条最细、但能从头走到尾的路做通,再做下一条。

为什么?因为"能走通"才叫完成。你把首页做得再漂亮,用户点了买入发现没反应,这个产品还是不能用。反过来,你把"项目方能发币、买家能看到、买家能买到"这条最细的路做通了,产品就已经能用了,剩下的都是加厚。

这个做法出自 User Story Mapping(那本书的作者原文你下载了)。说白了就是:把所有功能排成一张地图,横着切一刀,那一刀就是你的第一个版本。

如果让我切,我会这么切:

这一段要做什么做到什么程度
顶部导航能连钱包,能进发币流程
发币向导七步能填完、能签名、能把币发出去。验证和里程碑这两步可以先跳过
首页和项目卡片刚发出来的项目能出现在列表里
项目页(精简版)能看到项目头、价格、买入面板
买入面板能真的买成功,成交出现在活动表里
持仓页(精简版)买完能在这里看到自己的持仓

这一段故意不做的东西:验证和出证、里程碑和放款、押金、拍卖模式、季度报告、行情模式、大户榜、落地页。

为什么先不做?它们都是"加厚",不是"能不能用"。而且验证和里程碑恰好正是还没拍板的部分 —— 先做能做的,把不能做的留到决定之后再动手。

什么算这一段做通了?找一个没用过这产品的人,给他网址,十分钟内他能自己完成:连上钱包、发一个测试币、在首页看到它、换另一个账号把它买下来、在持仓页看到持仓。全程你不在旁边说话。

九、做完之后,改需求怎么改才不乱

最后说一件我们已经在吃亏的事:改东西的时候没有固定顺序。

我们现在文档里有五处数字打架,根子都在这里 —— 有人改了产品定稿,有人改了线稿,有人改了流程图,三份各改各的,最后谁也不知道哪个是准的。比如毕业线,定稿已经改成 20 万了,但老线稿还写着 10 万。

正确顺序应该是这样,一步都不能跳:先改需求编号那条,再改对应界面的说明,再改数据定义,最后改验收标准。改完跑一次对账(第七章那个),看有没有产生新的漏项。而且所有文档必须同一时间一起改,不许"先改线稿、文档下次再说"。

拿一个真实例子走一遍。假设你现在决定"拍卖毕业线改成 20 万美元":

  1. 需求台账里,R-12 那条的验收标准里写着的毕业线改成 20 万。
  2. 界面上,项目页"毕业进度"那块的数据表里,毕业线那个数的值改掉;同时把"这条还没裁决"的标注去掉。
  3. 元素台账里,毕业线这一条的示例值从 10 万改成 20 万,状态从"有冲突"改成"已定稿"。
  4. 把老线稿上写着 10 万的地方都改掉(一共四处),改完在文档里注明以 20 万为准。
  5. 再跑一次对账,确认没有别的地方还引用着 10 万 —— 我们查出过一处藏在参数总表里。

这就是"改一次、全对齐"的动作。如果只改一处,就一定留下打架的数字。这正是我们现在那五处冲突的由来。

十、把别人的做法拿来对了一遍,我们又找出十三件没做的事

你这次放进来的资料我一份份读完了:官方的免费章节、还有二十一篇网友的读书笔记。读完以后我拿它们对着我们的东西逐条比,找出十三件我们压根没想到或者想到了没做的事。这一节就是这十三件。

我按"这事有多要紧"排的序,不是按书排的。

第一件:我们从来没找人试过

《点石成金》整本书有一章讲这个,NN/g 那篇《可用性测试 101》(你下载了)也是讲这个。它的说法很朴素:想知道一个东西好不好用,就找几个人来用,你在旁边看,记下他们在哪卡住。

关键在"几个人"—— 书里说三到五个人就够,不用多。因为同一个问题,第三个人就会再犯一次。而且这事儿要早做、反复做,一周一次都行,比攒三个月做一次大测试有用得多。

我们在这件事上是零。五次线稿评审、四轮文档审计,全是我们自己在看自己。这不是一回事 —— 我们看的是"画得对不对",用户看的是"我能不能用"。

书里还有一句我必须抄给你:不要用焦点小组代替可用性测试。 焦点小组是问人"你觉得这个怎么样",人会客气、会猜、会替你想;可用性测试是给人一个任务、看他做,做不出来就是做不出来。

书原话:「如果你想知道某个东西是否容易使用,那么在一些人试图使用的时候观察他们,记下他们在哪里遇到问题。」
我们该做的:找 5 个人(3 个圈内的、2 个完全不懂的),给他们演示站地址,只说一句"你想办法发一个币出来",然后闭上嘴看。谁在哪一步停下来问你,哪一步就是界面没说清。

第二件:我们只有"角色",没有"人"

我们分了四种角色:访客、买家、项目方、平台运营。这是"身份",不是"人"。

About Face 那本书里,这一步叫"人物模型"(persona)—— 它要求你把角色写成一个个具体的人:他叫什么、干这行几年、用什么设备、最怕什么、他会怎么读我们这页。为什么非要具体到人?因为抽象的"买家"没法让你做取舍,具体的"老王"可以。

举个例子。如果我们的买家画像是"做了三年合约的老手,只看数据和链接",那界面上所有解释性文案都可以删掉,徽章就只留图标。如果画像是"被空气币坑过两次的普通人,看不懂 zkTLS",那每个徽章都必须配一句人话,验证页要写得像说明书。这两种设计完全不一样,而我们现在的界面是两者混着做的。

About Face 还列了一张十三条的问题清单,我看了下,正好可以当我们项目页的体检表。挑几条你感受一下:用户是谁?他想达成什么目标?产品该如何处理用户遇到的问题?产品如何为老手提供足够的深度?

第三件:有一套现成的五层模型可以当体检表

《用户体验要素》整本书就是一个模型:做产品分五层,从下往上,下面那层没定下来,就别急着做上面那层。书里那句话挺狠:"大多数产品失败的原因,就是在错误的层面争论问题 —— 比如还没定战略就开始争按钮颜色。"

我拿它的五层,把我们现有的东西对了一遍。这张表你留着,以后每隔一阵拿出来看一次:

层这一层该有的产出我们有吗
战略层产品目标 + 用户需求(含人物画像)目标有九条(还等你确认);人物画像没有
范围层功能清单 + 内容需求,并标出哪些做、哪些不做四十七条需求有;但没分"必须有"和"有了更好",所以不知道先做谁
结构层用户怎么走(流程图)+ 信息怎么摆(分类、命名、导航、搜索)流程图有;信息架构从来没系统做过 —— 用户看到的词是不是他自己的话、手机上导航怎么变,都没定
框架层线框图:每个页面有什么、放在哪五个版本的线稿有;但五十三块界面里三十四块只有简化说明
表现层视觉:配色、排版、栅格、一致性设计 token 有;视觉打磨没做过,而且没有写下来的设计原则

这张表挺好用的地方在于:它把"我们到底缺什么"变成了五个格子,每个格子要么有产出、要么没有。你下次觉得"哪里不对但说不上来"的时候,就从上往下看一遍。

第四件:界面是用"零件"拼的,我们没有分层

Atomic Design(这本你下载了全书,免费)把界面拆成五级:原子(按钮、输入框这种不能再拆的)、分子(几个原子组成的一小撮)、有机体(一块完整的功能区)、模板(骨架,还没有真实内容)、页面(模板加上真实内容)。

这里面有一句特别值得记住:页面 = 模板 + 真实内容。 我们现在那个演示站,严格说只是"模板"—— 因为里面全是假数据(假的项目名、假的 MAU、假的成交)。模板做得再像,也不等于页面做完了。这句话能解释你之前的一个疑问:"我看了演示站,为什么还是不知道做完没有。"因为你看的是模板。

网友那篇笔记里还讲了一个实操方法,叫界面清单:把团队所有人叫到一个房间,把现有界面上每一种样式截图、摊在墙上、分类、找出"同一个东西有五种长相"的地方、合并、然后给每个样式起名。我们做过元素登记(501 条),但那数是出来查定义的,不是出来看"我们的按钮到底有几种长法"。这两件事不一样。

第五件:只有组件库不够,还得说清"为什么这么设计"

《设计体系》这本书(官方免费第 2 章你下载了)里有一句话点得很准:组件库和设计语言说了产品"是什么样、怎么做",但没说"为什么是这样"。 而没有"为什么",下一个人改的时候就会按自己的理解改,三个月后体系就散了。

我们的 tokens 文档(颜色、字号、间距、组件规格)就是"是什么样"。我们缺的是写在最前面的那几句话:我们为什么选暗色、为什么只用五条渐变、为什么发光只给一个按钮、为什么不能给容器上渐变。

别小看这几句话。你以后招人、外包、或者找我改东西,全靠它 —— 没有它,每个人都会按自己的喜好来。

第六件:用户不读,只扫

《点石成金》里最出名的一条:人们不是阅读,而是扫描;不做最佳选择,而是满意即可;不追根究底,而是勉强应付。

这个我拿我们的界面自查了一下,有直接可改的地方。比如"连接状态清单"那块,我给每一行都写了"这个数据源供什么指标"(为了满足 Michael 的意见)。但如果是给用户看的,那一行小字他根本不会读 —— 更可能是三个大图标加一句"GitHub 已连上"就够了,详细的放悬停。

书里还有一条标准,叫"广告牌设计 101 法则":一个页面要能让人在五秒内看懂"这是什么、我该点哪"。我们自己试一下:把项目页缩到手机大小、只看五秒,你能说出这页是干什么的吗?如果说不出来,就是字太多、重点太多。

第七件:信息怎么摆,是有方法的,我们没做过

《信息架构》那本书(网友笔记里那篇讲导航的)把这件事拆成四套系统:怎么分类、怎么命名、导航怎么做、搜索怎么做。

我们现在有两处明显没想过:

一是命名。 我们界面上的词是不是用户自己的话?"持仓"是不是应该叫"我的币"?"连接状态"是不是应该叫"这个项目没有在吹牛的证据"?"里程碑放款"是不是应该叫"钱什么时候给"?这些词一旦定了,用户就只用记一遍;没定,同一个东西在不同页面就会有好几个叫法。

二是手机上的导航。 网友笔记里列了六种移动端的信息架构模式(分层、轴辐式、套娃、标签视图、便当盒、筛选视图)。我们那个"左侧锚点导航"在手机上该怎么变,现在完全没定 —— 而线稿里只写了一句"窄屏收起为顶部下拉"。这一句话背后其实是一个没做的决定。

第八件:发币向导是个巨型表单,别人有现成规则

Web Form Design 那本书(作者资源页你下载了)里有一条被反复引用的研究:标签放顶部,视线移动只要 50 毫秒;放右边要 240 毫秒;放左边要 500 毫秒。 差了十倍。

还有几条同样实用:必填项多的时候,只标"选填"就够(反过来也一样);校验要在填的时候做,不要等提交;错误消息要写"怎么改"而不是"错了"。

我们的发币向导是七步、几十个输入框,是这个平台上用户投入最多的地方。这几条规则可以一条条对着改。而且第⑦步那个"押金金额"的显示问题(是预估还是锁定),书里也正好有对应的做法。

第九件:做过的东西要盘一遍,不是登记一遍

《设计体系》和 Atomic Design 都讲了同一件事:把现有界面盘一遍(interface inventory),看到底有多少种样式。它的目的不是数数,是发现"同一个东西被做成了好几种样子"—— 然后合并、命名、写进规范。

我们做过元素登记,但没做过这个。我可以预判会查出东西来:四十七块界面分布在五个版本里,按钮、标签、卡片的样子肯定不止一套。

第十件:产品是一堆"待验证的假设",不是一堆功能

Lean UX(官方画布你下载了)整本书就一个立场:产品是由一组有待验证的假设组成的。 不要假装我们知道用户要什么,先写下假设,再想办法验证,每次验证都让产品更准一点。

我之前给你列了两条猜测(用户看不看得懂 zkTLS、愿不愿意等两三天)。按这个书的要求,猜测不能只写下来,还要配一句"怎么验证":谁、什么时候、用什么办法、看到什么算验证通过。 现在这两条只有前半句,没有后半句。

这本书还教了一件事:把功能分成"必须有的"和"有了更好的"。我们的四十七条需求现在是平铺的,没分这两类 —— 所以真要砍的时候,砍谁都是拍脑袋。

第十一件:需求该按"人走的路"排,不是按模块排

《用户故事地图》那句精髓,网友笔记写得很清楚:卡片用动词短语,从左到右讲一个故事,从上到下拆细节;先整体后细节。

我们的四十七条需求,现在是按模块排的(R-01 到 R-47 基本对应 M1、C1、C2 这个顺序)。按这个顺序开发,就会出现"前面十几个模块做完了,产品还是不能发币也不能买"。

应该改成横着排:第一行是用户走的路(进来 → 看项目 → 发币 → 买 → 拿走),每一列下面再挂细节。这样"先做哪一段"就一眼看得出来,而不是每次都要我帮你算。

第十二件:东西之间的"关系"我们没画

OOUX 那套方法(官方说明你下载了)是四个字母:对象、关系、动作、属性。 我们做了对象(十样东西)和属性,动作也写了(四十七条需求里),但"关系"没做。

关系就是:里程碑属于哪个项目?放款批次属于哪个里程碑?押金挂在项目上还是挂在发售上?验证凭证是项目的还是季度报告的?

这件事看着抽象,其实很实:它能告诉你"删掉一个东西时,还有哪些东西会受影响",也能告诉你"换一个项目时,哪些数据要跟着变"。我们现在有几处模糊(比如押金到底挂哪),就是关系没画造成的。

第十三件:视觉打磨是有套路的,不是靠天赋

Refactoring UI(官方免费两章)的立场是:不用天生的审美,用规则也能把界面做干净。 网友那份笔记(Nolebase 的,很详细)里记了几条,我看完觉得正对我们的问题:

你之前说徽章"丑",我把上面这几条对着看了一遍:徽章本身其实还行,问题是它周围的界面没有层级 —— 到处是框、到处是线、间距都一样,所以再好的徽章也显不出来。

这十三件我没有停在"列出来"。其中四件最要紧的,我已经用别人的方法真的动手做了:照《设计体系》四步法写出了我们的五条设计原则、照 Lean UX 官方画布把我们在赌什么填成八格和三条假设句、照《用户故事地图》把 47 条需求按"人走的路"重排、照《点石成金》把"找人试"写成明天就能做的动作。

结果都在这份里:01-看得懂的效果/用别人的方法补我们的窟窿.html(同一文件夹,双击就能开)

这十三件里,如果只做一件:找五个人来试那个演示站。因为前面所有的事(目标、人物、五层、表单规则、视觉打磨)最终都是为了"他能用"。而"他能不能用"这件事,我们到现在一次都没测过。

这九件事里,你各要干什么

说了这么多,落到你身上其实只有几件。我怕你看着累,直接列出来。

这件事谁做你现在要做的动作
想清楚给谁做你看那九条目标,不同意的改掉;对那两条"我的猜测"表个态
列出产品里的东西已完成定两件事:实体类型标签做不做、平台币到底有没有
写成能验收的需求已完成把 22 条还带着待定的拍掉
画人怎么走做了但有冲突拍那五个数字
界面拆块写清楚我做你审说一句"把剩下三十四块补齐",我就做
把每个数字定死我列你定过一遍 Excel 里"空着显示什么"那一列
回头对账我查你定对那 59 处逐条说"补"还是"砍"
动手做开发先回答:拍卖这块到底做不做
验收和维护一起暂时不用你管

如果只让你回我几句话,我最想要这五句:

  1. 九条目标对不对?特别是最后一条(差异化表达)—— 落地页你到底做不做?
  2. 我那两条猜测,你认不认?用户看不看得懂 zkTLS;愿不愿意为了验证多等两三天。这两个答案会直接改界面的写法。
  3. 四个数字定一下:毕业线、押金比例、放款比例、里程碑没达标怎么办。最后这个卡住的东西最多,定完之后一大半"待定"会一起消失。
  4. 拍卖这块到底做不做?不做的话,出价面板那堆东西我直接删掉,不用补。
  5. 要不要我把剩下三十四块界面的说明补齐?

这份东西里关于我们项目的每一条,都出自这些文件:需求台账、模块说明书、模块台账、元素台账 v2、产品需求定稿、流程图。关于"该怎么做"的方法,来自你下载的那几份官方免费资料:About Face 4 第 1 章、Atomic Design 全书、Design Systems 第 2 章、Lean UX 画布、User Story Mapping 作者原文、OOUX 官方说明。

哪一节我写得还是绕,你就说"第几节没看懂",我重写那一节。