颠三倒四之五

颠三倒四之五

瑞士军刀综合症

昨天读到的一篇有感触的文章,软件开发过程中的瑞士军刀综合症:http://blog.jobbole.com/68694/ swiss knife

回头想想这几年,很多时候我都在犯这种错误,追求功能齐全,而且对性能的要求也不低,最后做出来的东西都是一个烂摊子,看上去什么功能都有,但用户体验非常的差,以至于有一段时间,一些诚恳的用户直接对我说,你这个东西有点复杂,能减少一些功能不?还有一些用户对我们辛辛苦苦设计的功能直接说:我觉得这个功能一定用处都没有。

从那时开始,我对功能齐全这个事多了一些思考,后来在readfree上见到两个相对极端的情况,马健先生的软件很多,他喜欢把不同的功能设计成独立的小软件,想用什么功能的时候就启动不同的软件,极少把多个功能集成到同一个软件里,那个著名的pdg2pic软件,早期坚决不加入散页pdf合并成一本pdf的功能,因为他对自己合并pdf的性能不满意,过了好几年以后,忍受不了广大reader的骚扰,才加上这个功能,同时表示,使用这个功能的人多半不是给自己合并pdf。马健先生的这种理念取得了很好的效果,他的软件都属于精品,非常好用,缺点嘛,就是当他在某个方面取得新的突破的时候,他会同时去升级一批软件。另外一个典型属于coolman,他追求的是大而全,mjpd是其代表作,在下载方面功能强大。比较而言,我更喜欢马健先生的风格。

前段时间编写一个材料的时候,查到一个软件工程领域里的"高内聚、低耦合"思想,现在想想,这种思想正好是批判"瑞士军刀综合症"的。对于很多人来说,表面上的感觉是更多的功能就等于更多的价值,因此非常容易在信息系统开发过程中,需求蔓延,无节制的扩张,导致最后找不到重点,不仅性能低下,多数功能还华而不实。在很长一段时间里,我一直以为这是国内从业人员、编程人员的技术实力问题,并且总结成为国内软件和国外软件的本质差异:国内产品很多时候是半成品作为产品在使用,国外产品是真正的产品。现在回头来思考,过去我负责的项目里,需求变动过于频繁,功能扩增太多,造成遍地烂尾楼的局面,我个人也需要承担很大的责任的。

同时,我又想起了最近的一体机项目,领导执意要求将摄像头嵌入到一体机内,我对此明确表示过反对意见,研发团队实际是赞同我的意见的,但最后还是采用了嵌入方案。在研发过程中,技术难题让研发团队头痛不已,尤其是设备的稳定性大幅度下降,最后不得不改成假嵌入的集成方式。

明确目标,专心做好,应该才是宗旨。

 

无可救药的脓包

坐了几天火车回来,一团乱麻,得知团队里的同事在帮忙补录日报数据时,有点难受有点伤感。 很多时候,人们知道长了一个脓包,大家都希望脓包长好,但是大家都不愿意自己去挤出脓,因为既脏又累,对个人还没太多好处,反正现在不是我在疼。所以,大家都不用学什么是保守疗法,自然而然的去掩盖。这个补录数据就属于典型的保守疗法,明知道这是个脓包,但是还花那么多精力去掩饰他,试图让人感觉不存在脓包,这种结果实际是让脓包不断的增长扩大,直到无法掩饰的那一天。到时又怎么办呢?

 

 

5 thoughts on “颠三倒四之五

土木坛子进行回复 取消回复

电子邮件地址不会被公开。 必填项已用*标注