互联网时代对于创新者来说, 既是一个伟大的时代, 又是一个糟糕的时代。 你有很多机会做出影响世界的产品,  但是, 似乎任何想法都被别人想到过了, 做出来了, 上市了, 移植到各种平台上去了…  那么我们后来人除了羡慕别人生得早, 还有什么机会呢?  但是往往不经意间, 在同学们热衷于偷菜, 三国杀的时候,  又一批新的想法, 新的技术蜂拥而至, 别人又想出了新的点子, 新的商业模式.  我们的菜偷了不少, 三国杀玩了好几个通宵,  但是想法还是没有 …

在《现代软件工程》 这门课里, 同学们不能穿新鞋, 走老路 - 学习了很多新技术, 新的开发模式, 新的团队管理方法, 却做一个毫无新意, 没人使用, 演示后就扔掉的东西 (例如: 虚拟的学籍管理系统, 图书馆管理系统…)。  我们要做实用并且创新的项目。

首先“创新”可以分为改良型的创新 incremental innovation - (软件中增加几个功能,  把某个程序变得更快一点,  把程序移植到新的平台), 和颠覆型的创新 (disruptive innovation).   这两种类型各有其重要性, 不宜偏废。

那我们怎么提出新的创意, 怎么说服别人我的创意是靠谱的?  有些同学会通过“二拍”的办法来解决:

- 拍脑袋: 嘿, 咱们做一个图书拍卖网站怎么样?

- 拍胸脯: 没问题的, 市面上Asp.net 的书很多, 我看两个晚上就能写出一个购物网站。

这些事情光靠拍脑袋和拍胸脯是不够的, “二拍" 的后果往往是第三拍 - 拍屁股走人.  有些同学可能还会遭到脑袋被砖头拍, 或者被胸袭的后果。 如果不能拍脑袋, 胸脯, 屁股,  那我们怎么才能想出靠谱的想法,  然后有条理地说服别人?  在宿舍里睡觉, 聚餐, 喝酒, 搞头脑风暴?

下面是一个比较系统的框架 - NABC 模型, 可供大家参考:

1) N (Need 需求)

你的创意解决了用户的什么需求?   这个需求可以是明确的, 公开的 (例如: 希望能上网玩三国杀).  也可能是说不清道不明的, 例如 - 以前没人说: 嗯, 如果我能找到这样一个网站, 我可以去偷菜, 就好了…

我们要充分了解用户的痛苦, 他们对已有软件, 服务不满意的地方。但是用户往往也不知道颠覆型的创新。 例如亨利 · 福特 当年发明汽车之前, 如果他深入用户之中, 了解他们的需求, 用户会告诉他 - 我希望我的马车更快一些!

2) A (Approach 做法)

好, 你找到了N,  下一步怎么办的, 得看看你有什么招数, 特别是独特的招数, 来解决用户的痛苦。  你不能说我会C++, 所以我一定可以写好这个软件.  你得有独特的办法,  例如, 有人脸识别技术, 会做超大规模的数据处理。 那你 (你的团队) 会什么呢?  只会冒泡排序?

这些招数不光是技术上的, 也可以是商业模式上的, 地域的, 人脉的, 行业的.

3) B (Benefit  好处)

这时候你已经有了独特的做法 (Unique Approach),  那你这个产品/服务会给客户/用户带来什么好处呢?  如果用户已经有一个解决方案 (例如用户已经在用 QQ 聊天),  那你的产品具体有哪些好处, 能让用户离开现有产品, 使用你的产品呢?  另外这还有一个 Benefit/Cost (成本) 的问题。  如果你要用户必须有4G 内存, 最好的视频驱动, 4M 宽带连接, 才能使用你的 “更好的”视频聊天工具,  那会有多少用户愿意支付这个成本呢?

4) C (Competitors 竞争)

竞争对手也没有闲着, 这个市场有多大, 目前有多少竞争者在瓜分, 你了解么? 你如果不是最先进入某个市场的产品, 你还能赢么?

大家可以看看有关 First Mover Advantage (FMA),  Second Mover Advantage (SMA) 的描述。

关于更多NABC 以及相关的案例, 论述, 大家可以看这本很厚的书 -

Innovation: The Five Disciplines for Creating What Customers Want

中科大 《现代软件工程》班的同学,  请把你们的每一个靠谱的创意按照 NABC 的框架发表在你们的博客上, 每一个组员至少提出一个创意, ***。

2012/4/15 更新:

在练习了多次的 NABC 之后, 我意识到也许还应该加一个D: Delivery。 怎样把你的创新产品交到用户的手中?

例1, 你想到了一个好主意, 建一个比 hao123 更好的导航页面!  我们姑且认为NABC 都没问题,  那如何把这么好, 这么简单的产品交到 (Deliver) 用户手中呢?

例2, 你想到了一个手机的应用, NABC 都不错,  那如何把产品交到千万个用户手中呢?

转载于:https://blog.51cto.com/softwareeng/1562996

现代软件工程讲义 如何提出靠谱的项目建议相关推荐

  1. 现代软件工程课件 需求分析 如何提出靠谱的项目建议 NABCD

    <构建之法 - 现代软件工程>课件 互联网时代对于创新者来说, 既是一个伟大的时代, 又是一个糟糕的时代. 你有很多机会做出影响世界的产品,  但是, 似乎任何想法都被别人想到过了, 做出 ...

  2. 现代软件工程讲义 目录

    软件工程牵涉的范围很广, 同时也是一般院校的同学反映比较乏味的课程. 但是软件工程的技术对于投身IT 产业的学生来说是非常重要的. 经过几年的探索, 我总结了在16周的时间内让同学们通过 " ...

  3. (转)五年教学实践与思考的结晶——推荐邹欣老师的《现代软件工程讲义》目录

    (转)五年教学实践与思考的结晶--推荐邹欣老师的<现代软件工程讲义>目录 2011-11-28 07:15:21 按:自打2007年结识邹老师,出版他的第一本书<移山之道>,从 ...

  4. 现代软件工程讲义 6 用户调研

    [现代软件工程讲义 的一部分] 软件开发的过程, 就是 "用户最需要的东西" 在下面这一链条中传送,转换,实现,扭曲或丢失的过程. 用户最需要的 > 用户表达出来的 > ...

  5. 现代软件工程讲义 8 软件的血型

    [这是 现代软件工程讲义 的一篇] 一个软件团队经历了计划/设计/开发等阶段, 达成代码完成 (Code Complete) 这一目标,似乎后面的事情就水到渠成了.  其实不然, 软件生命周期的最后阶 ...

  6. 现代软件工程讲义 5 项目经理 Program Manager

    在一个软件团队里, 不同的人有不同的投入, 我们在 猪,鸡和鹦鹉 的故事里已经说明了. 不同的人还要在团队中担负不同的任务, 我们也要讲一下. 开发人员 (大部分内容在: 现代软件工程讲义 2 工程师 ...

  7. 现代软件工程讲义 2 工程师的能力评估和发展

    Advanced Software Engineering  现代软件工程  讲义 软件工程师的能力评估和职业发展 介绍:  个人软件流程,  职业发展, 个人绩效的衡量和提高, 软件开发是科学, 工 ...

  8. 现代软件工程讲义 1 软件工程概论

    现代软件工程讲义 1 软件工程概论 几乎所有程序员都知道 "数据结构+算法 = 程序 " 这句名言.但是在实际的学习和工作中,也有不少人产生了疑问. 例如: 1.       我写 ...

  9. 软件工程讲义 0 微博上的软件工程

    [现代软件工程讲义] 有舌尖上的美味, 也有微博上的软工.舌尖上的美味各有千秋, 而微博上对软工的抱怨都是相似的. 下面是我在新浪微博收集到大学生对软件工程教学的反馈: 师生关系(不限于软件工程) 教 ...

最新文章

  1. 分屏显示_王者做图显示器,戴尔(DELL)U2417全面介绍
  2. python连接access数据库odbc_对Python通过pypyodbc访问Access数据库的方法详解
  3. 【转载】浏览器缓存详解:expires cache-control last-modified
  4. 仅需1秒!搞定100万行数据:超强Python数据分析利器
  5. SWPU信息学院团体程序设计竞赛题解
  6. poj 无向图最小环问题 详解,模板
  7. linux系统查看分区文件系统
  8. 经过了多种方法的尝试,终于找到Quartus破解成功但是没有办法编译的解决方法
  9. android studio 融云,融云 SDK 是否支持 AndroidX
  10. 【Python】所有常用Python库和功能查询表
  11. 第四章 变形-学习笔记+练习题
  12. vue使用vue-video-player实现web视频直播展示m3u8格式
  13. Windows Phone : 三屏一云战略的新里程碑
  14. 天创速盈带您速读:怎么提升拼多多关键词综合排名?方案如下
  15. WinHttp的简单使用用例
  16. AD20原理图设计与PCB封装画板--学习笔记
  17. 如何查看mysql警告信息_查看MySQL的警告信息
  18. 计算机过去现在和未来图片,数据驱动的图形学:过去、现在和未来
  19. ADSafe导致github等很多网站无法打开
  20. kerberos kubernetes读音

热门文章

  1. 马化腾最新演讲谈机遇:让所有企业在云端利用AI处理大数据
  2. 60名英语专八的半年苦战:机器智能背后有一群“数字工人”
  3. spring security oauth2 资源服务器配置
  4. 3.3、苏宁百万级商品爬取 代码讲解 商品爬取
  5. Portainer容器管理软件,安装
  6. 前端那些事之Nuxt.js
  7. leetcode刷题笔记(3)(python)
  8. IBM V3500存储更换控制器一例
  9. Indeterminate ProgressBar
  10. Java网络编程从入门到精通(25):创建ServerSocket对象