程序设计策略(设计一款APP的步骤)
2015-08-02 22:34
218 查看
伟大的程序起源于一个伟大的想法,但这并不意味着讲想法孕育成成功的程序是一件轻松的事。本文介绍的是一些能用于精炼想法、回顾设计选择(design options)的策略,帮助我们设计出人见人爱的程序。
[b]1.列举所有你觉得用户会喜欢的功能点[/b]
可以使用头脑风暴。此时你应该找出所有与产品创意相关的任务,不用担心单子列的太长,待会儿还要再做精简。
例如,想象你最初的想法是做一个帮用户采购食物的程序。想象以下,脑袋里就会出现一系列用户感兴趣的任务。例如:
创建购物清单
获取食谱
比较价格
寻找商店位置
标注食谱
获得和使用优惠券
浏览烹饪教程
探索不同的烹饪方法
查找可替代的食材
[b]2.确定你的目标用户[/b]
以食材采购为例,你可以判断下列描述是否符合你的用户:
经常在家做饭 or 偏爱准备好的餐饮
喜欢使用优惠券 or 认为不值得花精力去弄优惠券
喜欢搜索奇特的食物 or 只眷恋基本的食物
采购少量多次 or 一次买很多
笃信品牌 or 方便就好,牌子无所谓
考虑完这些问题,挑选3条最符合你目标用户的特性:喜欢实验新菜谱、采购很仓促、尽量节约
[b]3.通过对目标用户的定义筛选功能点[/b]
如果在确定了目标用户的特性之后,功能点只剩下寥寥几条,你就得到了它:
伟大的程序应该像激光一样准确聚焦在用户想完成的任务上。
心里装着用户目标用户,再来检视功能点清单,最后能将程序聚焦在三个功能点上:创建列表、获得和使用优惠券、获得菜谱。
现在可以定义你的程序了,精确地概括程序的功能以及目标用户。好的定义应该是这样的:
一个帮助喜欢烹饪、主张节俭的用户创建购物清单的工具
[b]4.不要停[/b]
在开发过程中持续始终根据程序定义去判断功能点、控件和术语是否妥当。例如:
当考虑是否要添加一个功能点时,问问自己它对你的程序以及目标用户来说是否足够核心。如果不是的话,把它放在一边,它可能是另一个程序的核心组成。例如,你已经确定你的用户喜欢发掘新菜谱,所以打包好的蛋糕和菜肴就有失妥当。
明确程序定义
在开发早期就完成程序的定义,能够帮你讲一堆想法和属性凝聚成一个用户梦寐以求的产品。在开发过程中,可以以该定义为标准判断潜在的功能点和行为是否靠谱。创建程序定义可以通过以下步骤来完成:[b]1.列举所有你觉得用户会喜欢的功能点[/b]
可以使用头脑风暴。此时你应该找出所有与产品创意相关的任务,不用担心单子列的太长,待会儿还要再做精简。
例如,想象你最初的想法是做一个帮用户采购食物的程序。想象以下,脑袋里就会出现一系列用户感兴趣的任务。例如:
创建购物清单
获取食谱
比较价格
寻找商店位置
标注食谱
获得和使用优惠券
浏览烹饪教程
探索不同的烹饪方法
查找可替代的食材
[b]2.确定你的目标用户[/b]
以食材采购为例,你可以判断下列描述是否符合你的用户:
经常在家做饭 or 偏爱准备好的餐饮
喜欢使用优惠券 or 认为不值得花精力去弄优惠券
喜欢搜索奇特的食物 or 只眷恋基本的食物
采购少量多次 or 一次买很多
笃信品牌 or 方便就好,牌子无所谓
考虑完这些问题,挑选3条最符合你目标用户的特性:喜欢实验新菜谱、采购很仓促、尽量节约
[b]3.通过对目标用户的定义筛选功能点[/b]
如果在确定了目标用户的特性之后,功能点只剩下寥寥几条,你就得到了它:
伟大的程序应该像激光一样准确聚焦在用户想完成的任务上。
心里装着用户目标用户,再来检视功能点清单,最后能将程序聚焦在三个功能点上:创建列表、获得和使用优惠券、获得菜谱。
现在可以定义你的程序了,精确地概括程序的功能以及目标用户。好的定义应该是这样的:
一个帮助喜欢烹饪、主张节俭的用户创建购物清单的工具
[b]4.不要停[/b]
在开发过程中持续始终根据程序定义去判断功能点、控件和术语是否妥当。例如:
当考虑是否要添加一个功能点时,问问自己它对你的程序以及目标用户来说是否足够核心。如果不是的话,把它放在一边,它可能是另一个程序的核心组成。例如,你已经确定你的用户喜欢发掘新菜谱,所以打包好的蛋糕和菜肴就有失妥当。
相关文章推荐
- IOS使用navigationController跳转到下一页面黑屏问题。
- 关于android软键盘隐藏总结
- 像素、分辨率、屏幕大小(屏幕适配必看)
- Android 评分组件RatingBar、ImageView图片、 ImageButton图片按钮的综合运用
- android上传图片到PHP后台全过程
- ObjectARX下载ObjectARX Wizards
- android夜间模式实现方式
- Android创建数据库的时候出现Not Table错误解析
- 基于 Unity 的一种透明通道压缩处理
- iOS多线程编程之Grand Central Dispatch(GCD)介绍和使用
- Android初级第三次小结
- IOS开发初学--XCODE篇
- Android初级第二次小结
- App在发布后监测崩溃情况
- iOS多线程编程之NSThread的使用
- Android初级第一次小结
- Android输入法的关闭打开
- 【LeetCode】202 - Happy Number
- IOS之pageControl
- Android基础知识之四大组件Activity(四)保存Activity的状态