|
EDA365欢迎您!
您需要 登录 才可以下载或查看,没有帐号?注册
x
原创系列市场上有一款挺成熟的产品,我朋友也想设计一款,原因是他很多客户都在使用,而且计划换供货商。预计会有很大收益,朋友行动效率非常高,他们公司的技术人员很快设计出了硬件,要求我负责设计软件程序。但是他没有给我提供样品,只提供一本产品说明书。4 V+ w3 {2 Z4 w% T v) k
" u9 E! ^: l, T/ @3 C R
4 G7 _( _# v! J* \% {7 i& _4 n2 }8 T& @* ~
这款产品用在电力保护上,功能不复杂。整体上分为数码管、LED显示,键盘操作,以及PT100的温度采集。我花了一个下午,仔细研究了说明书,朋友对电力保护以及该产品的应用非常熟悉,我们又在一起讨论了一下,敲定了产品的功能。产品从功能来看确实不复杂,但是有一点我非常疑惑,那就是他们直接模仿了别人的硬件,单片机竟然是32K容量的,这个容量不符合节省成本的定律。
$ ~! E( o" p* j6 \6 T! i3 {7 v8 S- h1 R& a: i$ _
, {- f# E0 l6 |% q; t
5 t! p$ x1 s6 l! g: u7 T. M5 P; B8 ~- e: i; [
5 s7 a# b" P& I+ X4 o6 \
我按照朋友提供的说明书,结合讨论的结果整理了产品功能需求说明,并且大体划分了模块,以及模块实现方法。然后开始编程,整个程序过程非常顺利,一气呵成。我使用了不到四天时间完成了程序的编写。我按照朋友提供说明书仔细对照一遍,当我认为已经实现了说明书中所有功能后,最后程序编译完。
8 i1 @& ~5 x, f: i
. h& t1 A) x% I3 W9 X4 R! [& ]9 A
在一个星期六的下午,我把程序和样品提交给了朋友。对照说明书,朋友认为一切OK。朋友将10个样品提交了他熟悉客户,希望对方试用一下。几天以后,我们见到了那位客户,因为是老关系了,客户直接给出了结论但是很客气:从硬件外观来看产品一模一样,但是使用体验总是感觉不好,主要在一些细节上考虑的不充分。我们是按照同样的说明书做的产品,为什么客户体验那么差?我和朋友非常疑惑?
" o4 X$ w5 @( z8 `. [
2 O0 \, f `- i# h$ u2 F- S1 U 7 _5 ]4 }' X ] o6 X" `
最后客户给了我们两个正在使用的样品--他们已经用了很多年的产品,希望我们能够作出一模一样的东西,最好不要让他们销售人员感到有什么差别。因为他们对该款产品十分满意,主要是因为价格原因才考虑换供货商。
- I6 [: g; R. ~& Q
% A( M4 a; z7 ]! W4 c# M. j( t8 K* A" Q) X% y3 d3 E, m9 F
接下来我和朋友开始研究这个硬件基本一样的产品。主要是软件设计上差别比较大,说明只有四页,使用的还是四号字,产品的很多功能在说明书没有体现。从使用角度来说这些细节也确实不用体现在说明书上。也是这些细节确实导致用户体验的巨大差别,认真设计一款产品和模仿别人的一件产品确实不一样,心态导致结果。
2 d0 v# K4 A, @) x3 C2 k
$ k* u1 y4 U3 N; i: h
) f5 b6 ~) s: R8 s; i9 h第一,开机自检功能我们是不具备的。在上电后所有的数码管、LED全部亮3秒左右。这是一个很容易实现的功能,用户可以很快发现数码管、LED是否有损坏。如果数码管某一段损坏会导致显示错误,而这些错误不容易被发现;
/ |+ B. B$ p0 }: P) H D3 Q( ~4 `- p/ E p9 j* k) }
! m. X o7 Q- d! W7 h8 q! ^ t8 a! w3 X3 T第二,在参数编辑状态,数码管会每秒闪烁一次。提示用户当前所处状态不在运行状态,防止用户在这种状态启动机器;
/ F; l. v- b0 S+ a3 M6 @, S5 K' M
& \- b/ O; g$ D) {
3 K7 O- P1 U, n. j3 l& a; F" e: B
; o9 j; E3 ]5 m
3 C3 y) R5 |5 F0 U, }# R* z/ l* c3 A, f3 A+ F/ {+ @8 G8 C
第三,在参数编辑状态,如果不做任何键盘操作,10秒以后返回运行状态。防止用户在参数编辑时,假如用户离开现场,系统无法返回运行状态,引起系统故障;3 k3 e/ Y2 e- c
9 w+ L3 V* X0 ^4 i7 W2 N5 W
' W& K( y, E" R; U1 e. E
第四,断电重启,断电后系统继续保持断电前状态,不需要人工干预;
+ p. J8 L* N# n* y) M% H7 t5 ^* B, ~$ E& {& l5 y E) _
G0 z N4 ^: k6 C, w
第五,电流负荷非大于常规10倍以上,自动保护;) W* U/ ^. |) c$ o! |% c
4 Z" R# h9 U! j3 ?
这些功能具有非常好的用户体验,但是说明书中均没有体现,产品设计者应该非常了解用户的使用方法和现场的具体情况,这些细节没有出现说明书中,可能是设计者为了让说明书更加精简,并且降低印刷成本。
1 J7 h; K9 u" ?+ e, c5 Z/ w
* m/ O2 Q" B; D, n( ?! G( |0 T- L2 @# C: R1 c1 D. d# O' l
事情明白以后,一切也就变得非常简单。我对照对方的样品一步一步做了修改,三天以后修改完成。产品功能终于与样品一模一样。前面讲到单片机容量32K,经过这次修改我也终于知道了为什么样品选择32K容量了。我原来按照说明书编写的代码只需要12K,经过这次修改以后代码需要18K容量,使用32K容量单片机基本上不算浪费,这个容量肯定是经过多次修改测试以后定下来的。, ~; Q2 a6 H& r) b8 e: Q
# }; T5 F7 D8 u) O朋友将产品再次提交给用户后,用户非常满意,很快有了订单。在剩下半年时间里,产品经过几次小的修改,已经非常成熟了,我的任务算是完成了。
, z; i0 r% q# [$ {9 {6 H9 J6 W! M3 H4 @- F) A" G, T) H* L7 u4 Z
/ a3 E ?3 f" x: z
: E# W1 I" l, ^6 g8 n
/ K% X3 f j2 I" h2 }
# y9 u i( p. i由此看来设计一款可以使用的产品和一款精致的产品区别确实很大。区别不是在主要功能上,而是在细节上,这些细节影响了用户的体验。我们不能轻易说某款产品简单或者复杂,因为任何一款产品都凝聚了设计人员的心血。某一个小的功能实现也许很容易,但是第一个作出这个功能的人一定费了很多心思才提出该功能。% U2 ?- |0 p5 E* Y2 q9 _/ W9 d
2 ], _. g, Z4 U, T) A. C P! P1 p
把一个简单产品的设计非常精致,这是具有成熟行业经验设计人员与一般普通设计人员水平的差别。也是认真做事和投机的区别。每个精致产品需要在行业中积累丰富的经验才能设计出,其中包括了很多心血。3 Q5 j1 |, Q) Z. V
6 F) h# x* w1 D$ O* y
+ W8 R$ n) n% U! E6 C, A6 T
小编语本文来自与非网原创系列《程序员“趣”事一箩筐》,本系列目前已经推出15期,由骆驼主笔,咖啡不解困主持,如果你想参与进来欢迎投稿:yunyun@eefocus.com6 d; d" i( W* f2 }# b& F# G" P
点击“阅读原文”查看其它内容。 |
|