找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

巢课
电巢直播8月计划
查看: 4|回复: 0
打印 上一主题 下一主题

[硬件] 程序员“趣”事一箩筐 | 一款产品的成败在与细节

[复制链接]

551

主题

1470

帖子

3万

积分

EDA365管理团队

Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9

积分
39487
跳转到指定楼层
1#
发表于 2019-9-27 15:08 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

EDA365欢迎您!

您需要 登录 才可以下载或查看,没有帐号?注册

x
原创系列市场上有一款挺成熟的产品,我朋友也想设计一款,原因是他很多客户都在使用,而且计划换供货商。预计会有很大收益,朋友行动效率非常高,他们公司的技术人员很快设计出了硬件,要求我负责设计软件程序。但是他没有给我提供样品,只提供一本产品说明书。- L8 @; K6 O, g' x* O/ i' w

; _- y5 ~+ T5 _7 Q4 }$ a- @  ~1 v& D; b/ Z  A# O; O
/ A" y. V+ p3 v5 B% s2 u2 P% P
这款产品用在电力保护上,功能不复杂。整体上分为数码管、LED显示,键盘操作,以及PT100的温度采集。我花了一个下午,仔细研究了说明书,朋友对电力保护以及该产品的应用非常熟悉,我们又在一起讨论了一下,敲定了产品的功能。产品从功能来看确实不复杂,但是有一点我非常疑惑,那就是他们直接模仿了别人的硬件,单片机竟然是32K容量的,这个容量不符合节省成本的定律。# B+ z% _; L, u! n
4 O, |& X; m  H! J; D$ C

6 c  d: L; N4 v
* M4 \! m& L! c' v% p- e( \3 t3 D
$ b5 H4 X5 `1 M# K2 J( N

7 ?3 Z6 \- f  x( W我按照朋友提供的说明书,结合讨论的结果整理了产品功能需求说明,并且大体划分了模块,以及模块实现方法。然后开始编程,整个程序过程非常顺利,一气呵成。我使用了不到四天时间完成了程序的编写。我按照朋友提供说明书仔细对照一遍,当我认为已经实现了说明书中所有功能后,最后程序编译完。
+ M0 l- ]" u9 J% R* ^* V: l. m
" b* }8 K. ^6 W1 A+ C' w- x8 Z7 P& V& _1 q3 K# m0 z
在一个星期六的下午,我把程序和样品提交给了朋友。对照说明书,朋友认为一切OK。朋友将10个样品提交了他熟悉客户,希望对方试用一下。几天以后,我们见到了那位客户,因为是老关系了,客户直接给出了结论但是很客气:从硬件外观来看产品一模一样,但是使用体验总是感觉不好,主要在一些细节上考虑的不充分。我们是按照同样的说明书做的产品,为什么客户体验那么差?我和朋友非常疑惑?/ c$ V" R0 Q: B; ?: F5 a4 J' \

! B. ^& g; G; R ' ~5 w* b& \) X. H/ r$ ^+ O
最后客户给了我们两个正在使用的样品--他们已经用了很多年的产品,希望我们能够作出一模一样的东西,最好不要让他们销售人员感到有什么差别。因为他们对该款产品十分满意,主要是因为价格原因才考虑换供货商。

0 B' N# _" X/ {' b! v
/ ~, e; d- H6 L+ G/ U& ?, d4 U+ |$ J+ b1 L  m* k: p
接下来我和朋友开始研究这个硬件基本一样的产品。主要是软件设计上差别比较大,说明只有四页,使用的还是四号字,产品的很多功能在说明书没有体现。从使用角度来说这些细节也确实不用体现在说明书上。也是这些细节确实导致用户体验的巨大差别,认真设计一款产品和模仿别人的一件产品确实不一样,心态导致结果。. c, g7 a$ x" J5 y5 T
; r" P8 y. u) M/ M( d6 B/ d
# k/ ~& A8 K" [5 h
第一,开机自检功能我们是不具备的。在上电后所有的数码管、LED全部亮3秒左右。这是一个很容易实现的功能,用户可以很快发现数码管、LED是否有损坏。如果数码管某一段损坏会导致显示错误,而这些错误不容易被发现;
1 f  k) e( V% I8 Z. }( C) ^5 A/ B, \$ a

4 y; S, }& R) O' A+ z! w3 t第二,在参数编辑状态,数码管会每秒闪烁一次。提示用户当前所处状态不在运行状态,防止用户在这种状态启动机器;+ k3 K8 ~+ t/ N9 [9 P" m2 `

/ i6 N3 e/ d; k- O3 K
4 l. x6 _# A( w/ P8 O% v8 O
; @9 L3 l" l+ O$ f/ y
: n! l( R4 ~' b

' x, Z! _# X# ~+ G. k, W$ {第三,在参数编辑状态,如果不做任何键盘操作,10秒以后返回运行状态。防止用户在参数编辑时,假如用户离开现场,系统无法返回运行状态,引起系统故障;
1 }7 W* Y) ^4 Z( v( |
/ `# L# J) Z7 b# `& C+ D/ N7 E8 D, y
第四,断电重启,断电后系统继续保持断电前状态,不需要人工干预;7 {' x4 D' `) N% q5 }4 e9 o
7 |+ a5 U9 j  j2 z" }! a/ l+ _+ {
5 o/ g0 M" ?! _, E% N
第五,电流负荷非大于常规10倍以上,自动保护;; l* J5 w) \/ w6 c2 u9 V7 t+ }

7 \1 z% H5 i" _这些功能具有非常好的用户体验,但是说明书中均没有体现,产品设计者应该非常了解用户的使用方法和现场的具体情况,这些细节没有出现说明书中,可能是设计者为了让说明书更加精简,并且降低印刷成本。" o' y' T0 x$ z4 G) `5 H& m

% K. S5 u- z- a* _2 Y0 v5 ?& g$ m& U9 t* @) P8 i, ?
事情明白以后,一切也就变得非常简单。我对照对方的样品一步一步做了修改,三天以后修改完成。产品功能终于与样品一模一样。前面讲到单片机容量32K,经过这次修改我也终于知道了为什么样品选择32K容量了。我原来按照说明书编写的代码只需要12K,经过这次修改以后代码需要18K容量,使用32K容量单片机基本上不算浪费,这个容量肯定是经过多次修改测试以后定下来的。& t( B  Q+ q6 |* C5 ], p$ v9 m

( T6 v- v. o' T, P( g7 D* d朋友将产品再次提交给用户后,用户非常满意,很快有了订单。在剩下半年时间里,产品经过几次小的修改,已经非常成熟了,我的任务算是完成了。
- S' Q  W1 X1 P
. F* `4 w3 {4 G8 {& l+ T* E3 O8 J
- n4 G$ V0 I. n, D; F

: w& x+ ^! K  ]7 Y* \, L: s- G! U( z, b. C) A- e6 u
% K& @& w, j" L$ w
由此看来设计一款可以使用的产品和一款精致的产品区别确实很大。区别不是在主要功能上,而是在细节上,这些细节影响了用户的体验。我们不能轻易说某款产品简单或者复杂,因为任何一款产品都凝聚了设计人员的心血。某一个小的功能实现也许很容易,但是第一个作出这个功能的人一定费了很多心思才提出该功能。
! b' x( `$ G( Q0 a4 y7 a* h
/ w( v; A3 M* M0 \6 F. j
- g' r; x* n* z9 B把一个简单产品的设计非常精致,这是具有成熟行业经验设计人员与一般普通设计人员水平的差别。也是认真做事和投机的区别。每个精致产品需要在行业中积累丰富的经验才能设计出,其中包括了很多心血。7 W* y0 v% {8 R6 |7 E8 |1 a4 X
' m- f; s  ]5 Y) G: x

! F& K) A2 `- U3 K! i; z9 |小编语本文来自与非网原创系列《程序员“趣”事一箩筐》,本系列目前已经推出15期,由骆驼主笔,咖啡不解困主持,如果你想参与进来欢迎投稿:yunyun@eefocus.com
* M! Y$ ~6 D6 n$ a2 T' w8 D2 D$ U' K点击“阅读原文”查看其它内容。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 支持!支持! 反对!反对!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

巢课

技术风云榜

关于我们|手机版|EDA365 ( 粤ICP备18020198号 )

GMT+8, 2025-4-7 00:19 , Processed in 0.059892 second(s), 33 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表