未来的需求,今天实现

预测未来通常是困难的。一场足球比赛还没进行的时候,一百个人可以预测几十种结果。但是当终场哨子吹响,”正确预测“结果符合比分的人被称为“先知”,而不是“事后诸葛亮”。但是,要是结果就这么些可能性,并且有足够的人做预测,总有那么一个结果事后看来是正确的。还有一类算命预测的秘诀是采用近乎天书充满歧义的语言,比如“推背图”,任凭五百年后的人们随意解释,也貌似准确。

未知的未知事先是未可知的,预测总有可能失败。我们能不能减少失败的机会呢?换句话说,怎样减少未来的不确定性呢?

软件开发领域就有这么一些“锦囊妙计”,总结出来,供大家借鉴,探讨,或者改良。

“算无遗策”

把软件所有可能的功能穷举出来,完全实现。这样,也许现在用不上的功能将来会派上用场。微软的办公套件就是典型。有谁敢说知道Word的所有功能?通常大家能够用上2分之一的“常用”功能和10分之一的“特殊”功能就不错了。从用户角度,把它全部装上,以备不时之需。从开发者角度,只要能够想得到的功能都包括了,就可以“不变应万变了”。

缺点:软件功能和体积膨胀,浪费大家的资源:用户抱怨买了没用的功能,开发者也不知道功能有没有用。

“充分定制”

通用软件的特征是,没有想不到的,只有做不到的。与其穷举所有的功能,不如归纳出规律,总结为规则。然后设计一个程序设计语言(或者领域专属语言),能把使用的配置描述出来。某种意义上说,一个通用程序设计语言就是“万能胶”,可以写出图灵完备的程序来,这样你就能“按需”定制,以不变应万变了。硬件方面借鉴了这一做法的例子也有,比如“三维打印机”和“瑞士军刀”。

缺点:过于通用的语言其实并不易用,等于把软件编程的全部困难转嫁给用户。

“即插即用”

把软件的基本功能做好,然后允许高级用户“锦上添花”,在规定的时间和地点,增加没有规定的功能,就可以好像设计了一个通用的插口,只要未来有需要,就可以追加新的功能,而不影响到已有的基本功能。这方面的例子有

Eclipse开发套件,网页浏览器,Linux内核等等。

缺点:基本功能决定了软件未来的需求大方向,不能推倒重来。

“草船借箭”

再好的团队也有资源山穷穷尽的时候。这方面聪明的公司就设计一个平台,比如苹果的应用商店,微信的小程序,阿里巴巴的电商平台,让别人为生态系统添砖加瓦。这样,不费一兵一卒,就可以借鸡生蛋,借钱还债。当然,前提是你能把开发人员吸引到平台周围,给他们足够的甜头,欲罢不能。开源软件,像Linux系统,某种意义上也是这样的软件平台。

缺点:前期投入巨大,需要有额外的号召力,天时,地利,人和。

“原子化”

既然“大而全”不是对未来的最好准备,“小而精”就有用武之地了。把软件功能拆小,拆细,只做一件事情,并且做到最好,并为其它用户服务,即便今天还没有来,明天用户迟早会来的。现在的集装箱化(Docker),微服务化,API经济,都是在向这个方向努力前行。当然,这个能力要成功需要互联网标准化达到极致,服务充分可互换。

缺点:酒香还怕巷子深,如果你不能让客户找到自己,颇有内涵的功能,在外延上就大打折扣了。

“社交忽悠”

接下来,自然你就想到,怎样让客户找到自己,做广告是最直接的手段。当然,今天的广告已经碎片化,跟用户的需求场景紧密相关的服务才能得到最好的连接。所以,推销自己的最佳方式不仅是靠“说”,不仅是靠“做”,更是要靠“口碑”。让用户把你的好带给别的用户,这样的效果最好。

缺点:广而告之缺乏精准,对客户的影响随着社交距离迅速衰减。

说了这么多,我想该总结一下了。如果你想现在就做到将来会需要的功能(应对各种变化),那么就要维护好“不变性”,真正掌握什么是你的服务,与时俱进,才能开好“百年老店”,常青不衰!这样得到的才是你的核心需求。

参考文献是一些体现这一思想的论文,读完后请回答哪些“锦囊妙计”得到了运用,回答得好有红包。

一句话导读:维护“模型驱动代码生成”开发过程中的模型和代码之间的不变性

Yijun Yu, Yu Lin, Zhenjiang Hu, Soichiro Hidaka, Hiroyuki Kato, and Lionel Montrieux. 2012. Maintaining invariant traceability through bidirectional transformations. InProceedings of the 34th International Conference on Software Engineering(ICSE '12). IEEE Press, Piscataway, NJ, USA, 540-550.

一句话导读:怎样让自适应软件的控制参数与时俱进,控制不确定性因素

Bihuan Chen, Xin Peng, Yijun Yu, Wenyun Zhao, Uncertainty handling in goal-driven self-optimization – Limiting the negative effect on adaptation, Journal of Systems and Software, Volume 90, April 2014, Pages 114-127, ISSN 0164-1212, http://dx.doi.org/10.1016/j.jss.2013.12.033.

一句话导读:怎样用搭积木的方式支持物联网软件的开发

Akiki, Pierre A.; Bandara, Arosha K. and Yu, Yijun (2017). Visual Simple Transformations: Empowering End-Users to Wire Internet of Things Objects. Transactions on Computer-Human Interaction (In Press).

一句话导读:很多非功能需求和功能需求是正交的,把它们提炼出来单独维护可以降低维护的不确定性。

Yijun Yu, J. C. S. P. Leite and J. Mylopoulos, "From goals to aspects: discovering aspects from requirements goal models,"Proceedings. 12th IEEE International Requirements Engineering Conference, 2004., 2004, pp. 38-47.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,036评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,046评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,411评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,622评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,661评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,521评论 1 304
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,288评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,200评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,644评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,837评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,953评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,673评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,281评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,889评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,011评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,119评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,901评论 2 355

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 172,129评论 25 707
  • 社交红利阅读笔记 书名:社交红利(修订升级版) 作者:徐志斌 出版社:中信出版社 正文前笔记: 推荐序1摘要 社交...
    凫水阅读 8,943评论 4 26
  • 特别特别难过,只有难过,哭、发火,每天只有这两件事,想想过去那些,那么多让我悔恨一辈子的事,我改变不了,也走不出来。
    苹果茉莉阅读 137评论 0 0
  • 在我这个年纪,法定上已经属于晚婚。本该结婚生孩的年纪,而我却还是孤身只影,看得父母亲戚朋友都替你着急。现在的...
    Noller阅读 273评论 0 1
  • 突然发现一个现象:很多人习惯于把一些事情的原因归结为外界导致的,而不习惯从自己身上找原因。比如上班迟到这件事,其实...
    就想简单点儿阅读 441评论 0 0