软件产品设计的五种境界
2010-01-13 22:03
375 查看
软件产品设计的五种境界 |
十几年软件研发的沧桑岁月,和一度险濒于破产的痛苦经历,让俺对软件产品开发有了更深层的体会。新年到来之际,写出来和大家作个交流。 一、农业境界 刚参加工作,朋友问我,你能用电脑干啥?我口出狂言,只要你想得出来的,我都能做得到。其实,我说这话相当无知。 柏拉图曾经说过,人的知识犹如一个圆,圆内是你已经知道的,圆外是你还不知道的,圆周就是你已经知道的还没解决的问题。你的知识越丰富,这个圆就越大,圆的周长也越长,也就是你知道的没解决的问题也越多。 如果你觉得自己没有啥问题,就说明你很无知。 无数年轻人就是凭自己的热情,初生牛犊不怕虎的冲劲,在完全没有经验和章法的情况下,投入了不会取得胜利的第一场战斗。通俗一点讲,就是试图用垒狗窝的技术建高楼大厦。 企业在这个阶段,充其量就是个手工作坊。有人说,我的研发团队上百号人呢。对不起,您是否出于这个阶段和企业人数没多大关系。 二、工业境界 了解到软件产品设计研发是一个复杂的系统工程,很多人会尝试运用一些必要的技术把复杂系统分解成简单子系统。在这个阶段,一些软件工程理论开始逐步被吸收。这包括: 面向对象的设计思想 UML、RUP、XP编程、设计模式等软件工程理论和工具 组件化系统设计——COM、DCOM、ActiveX、Corba、WebServices等技术开始进入产品设计 简单地讲,已经知道如何把高楼大厦拆解成多个狗窝,化繁为简;已经懂得遵循软件工业标准开发能重用的系统组件。 很多人以为已经到达软件研发的终点,掌握了终极的技术手段。然而,这只是软件产品研发的启蒙阶段,随着发现更多并解决深层次的问题,你需要更有效的理论提升你对软件产品开发的驾驭能力。 三、数学境界 工业化境界提供了化繁为简的技术支撑和思路,但是,好的工具并不能保证出现正确的设计。 我们学习解一元二次方程的时候,什么十字相乘法、配方法等等,开始会学习很多技巧性的解法。这类似工业化境界——让你把复杂问题分解转化成更简单的问题。但是,这些技巧不总是有效,最终的解决方案还是推导出求解公式,彻底解决此类问题。 软件产品设计是否存在从需求到代码的求解公式呢?这是一个已经被研究半个世纪的课题了,可惜国内99%的软件研发人员并不了解这方面的进展。等到洋人的坚船利炮打到你家门口的时候,你才发现人家用这么好的技术武装自己,那就为时太晚了。 在这个阶段,你会用数学方法保障软件系统设计的正确性。你可能会把下面这些理论引入你的设计过程: 在系统设计中自觉运行有限状态机、Petri网等数学模型去设计、分析系统结构。 引进诸如净室技术、B方法、Z语言等形式化软件工程技术,确保系统设计的正确性。 最后你会发现,软件产品设计真正是一件严格科学过程,如果以山野村夫的心态做这件事情,最终必然一塌糊涂。 四、艺术境界 人本质上是非理性的动物,我们为人类设计产品的最终目标不是为了正确,因此,数学境界并未把你带到最终目的地。 人类还没解决温饱问题的时候,就学会了在岩石上涂鸦,在脖子上挂项链,为人类设计产品,得满足他们这些貌似毫无价值的癖好。 因此,在能熟练驾驭正确设计产品的技能之后,软件产品设计将为艺术而战——我们不是在替客户设计干活的工具,相反,我们是在为他们设计一个吸引眼球的超级玩具,一件艺术品。 软件产品设计师——你不仅仅是工程师,更进一步,你应该是一名驾驭高科技技术的艺术家! 五、宗教境界 阿克毛被枪毙了,他不是为科学而来,亦不是为艺术而来,而是为夺取我们的心灵而来! 之所以被枪毙,是因为他采取了文明社会不认可的手段和产品——海洛因。 异曲同工,软件产品设计的最高境界亦是征服客户的心灵,让客户像崇拜上帝一样被您的软件所征服。似乎除了海洛因,能做到这一点的就是宗教了。 看看IBM、看看微软、看看Intel、看看苹果,这些超级商业巨人,为了让你把口袋的钱老老实实地掏出来,是不是一个个俨然一副布道者的模样? 本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/quicmous/archive/2010/01/03/5125373.aspx |
相关文章推荐
- 软件产品设计的五种境界
- 软件产品设计的五种境界
- 从农业到宗教――软件产品设计的五种境界
- 软件产品设计的五种境界
- 从农业到宗教——软件产品设计的五种境界
- 软件产品设计的五种境界
- 《启示录》阅读笔记(三)——产品管理与产品设计+产品管理与软件开发
- 飞越疯人院:软件产品设计的窘境和对策
- 大型应用软件产品设计方法
- 从产品bug看软件产品的设计和开发
- 老子的软件之道 - 道篇 19 设计的最高境界
- 软件产品界面设计-培训PPT发布
- 论软件产品开发设计的需求分析
- 一个软件产品设计的完整流程
- 产品设计体会(0010)我们到底是不是产品经理:给互联网、软件业者
- 软件产品设计规范书(一)
- 《产品原型设计软件》(Balsamiq Mockups)v2.0.19
- 软件产品的可使用性设计 - 塑造概念
- 软件产品设计规范书(一)