专家观点:从“绑好鞋带”谈嵌入式系统开发

开发

我曾收到别人寄来的一则网路连结,是连结到TED (Technology, Entertainment & Design)网站上一则2005TED大会中的演讲影片【注一】,影片内容是告诉我们该如何把鞋带「确实」绑好。

这则影片很值得一看,从脸书( Facebook )上围绕着这则影片所作的诸多讨论看来,似乎大多数人习以为常的绑鞋带方法都错了。老实说,我曾经试着用影片中介绍的那套「正确方法」来绑鞋带,结果证明真的有非常显著的改善。试着改用这套「正确方法」来绑鞋带,的确可以让绑好的鞋带看起来比较美观,也更牢固。不过,若要改用这套新的方法,则需要多花点时间努力练习来改变以往绑鞋带的习惯。

您一定觉得奇怪,绑鞋带跟嵌入式系统开发到底有何关系?没错,这两者表面上是有点八竿子打不着,但是箇中隐含的道理却是共通的。要用更好、更有效的方法来做事情,需要具备三个条件:首先必须了解,大家通常是如何做这些事情的(其中的错误症结在哪)?再来是必须拥有足够的知识,知道这些事情应该要如何处理才会比较好(正确的解决方案为何)?***则是必须投入一定的时间和精力,才能改变原先的做事习惯(如何付诸实行)

在我们所处的嵌入式系统世界里,常常可以很容易看到到一些很有问题的做事或问题处理方式,无论是太慢、太贵、太多错误(Bugs),或是其他想得或到想不到的问题等等,反正要找出有问题的事情永远都不是件因难的事,反倒是要找出更好或更有效率的方法来做事却是难上加难;此外,该如何找出最恰当的时机和动机作出改变,才是真正最困难的部分。

去年我参加过一场益华电脑( Cadence )举办的活动。活动中有一位讲师指出,硬体工程师的日子可说越来越难过了,因为他们除了要做好手边的硬体设计工作外,还被寄望必须开始去思考如何支援软体开发方面的工作。

请想想,如果你是硬体工程师,怎会有时间去思考那些软体的东西呢?原本你应该就非常忙碌了,忙到就快没办法搞定指派给你的那些硬体设计工作,此时又要你设法去兼顾整个产品设计流程,这种要求无疑是天方夜谭。实际情况应该是,如果真的想作出改变,你就得先有停下脚步喘息的空档,稍稍退一步想想,然后好好思索接下来你应该做什么?又该怎么做?

当我们向新用户介绍Wind River的虚拟化平台「Simics」时,就常常碰到这个问题。理论上,Simics当然可以提供许多非常有用的功能,这些极富潜力的功能有助于改善原先的开发流程,使开发流程变得更好、更有效率(请参考其他文章进一步了解Simics可以做些什么【注二】 )

但是,若要把Simics所提供的强大功能转化为可实际改善开发流程的助力,那么不仅还需要真正了解其运作原理,同时也需要时间实际导入部署,并改变工作团队原本的思维模式及作业习惯。

说到***,这一切仍是牵涉到领导以及管理。我们需要给每位工程师足够的时间并提出有效的激励方案,好让他们愿意尝试新的工具,或是找出新的方法来使用旧的工具。对某些案例来说,导入新的作法就像你试着用更好的方法绑鞋带一样简单易行;不过对其他案例来说,导入新作法却困难多了。

就好比得先召集一千个人,然后说服他们为什么要改穿有鞋带的鞋子而不再穿用魔鬼毡固定的凉鞋,接着还得教导他们用特定的方法来绑好这些新奇玩意儿的带子。当然,一定也会有些人根本就还没意会到鞋子是有鞋带的,而这些人也会不断绊倒自己并让自己受伤,因为他们的鞋带一直都是松垮垮的,并没真正绑好。

从上述案例来看,无论是透过哪种途径开始绑鞋带,至少都已经开始尝试绑鞋带了,也就是说你已经开始有所改变并作出改善了,不管如何总是好事一桩。顺带一提,因为某些未知的原因,大部分跟我一起跳摇摆舞(Swing Dancing)的朋友早就都已知道绑鞋带的正确方法了。我猜,或许是正确绑好鞋带这件事,对某些特定的人事物来说格外重要吧?

总之,如果你想要做事快捷有效率,那你一定得先花点时间找​​出对的方法来做事情!

备注

【注一】TED网站(Terry Moore: How to tie your shoes):http://www.ted.com/talks/terry_moore_how_to_tie_your_shoes.html

【注二】Simics特点介绍:http://blogs.windriver.com/wind_river_blog/simics/

(本文转自电子工程世界:http://www.eeworld.com.cn/qrs/2012/0724/article_11198.html)

 

责任编辑:杨鹏飞 来源: EEWORLD
相关推荐

2011-01-06 15:11:09

嵌入式linux

2010-06-09 18:04:26

2011-04-14 15:35:53

嵌入式系统嵌入式

2011-01-14 13:13:23

嵌入式Linux开发

2010-06-09 19:58:32

嵌入式开发Windows 7微软

2010-06-09 11:33:50

嵌入式开发微软Windows 7

2009-07-17 16:06:59

ARM嵌入式开发

2016-12-27 09:24:13

Python系统开发

2010-12-28 19:23:47

2011-07-05 15:42:02

QT 嵌入式 Embedded

2021-10-26 21:50:10

Rust嵌入式开发

2011-04-12 16:00:42

银行系统周伟然

2010-02-07 10:00:46

嵌入式设计专家

2010-01-13 09:15:35

嵌入式

2021-12-19 22:34:45

Linux容器系统

2022-01-03 23:33:40

Linux组件系统

2017-08-03 23:40:49

无操作系统嵌入式开发

2022-04-13 09:34:52

软件开发嵌入式软件

2020-03-23 10:15:10

Google 开源技术

2010-01-06 09:53:08

嵌入式
点赞
收藏

51CTO技术栈公众号