昨天一番发布了一个桌面软件小工具,整个产品从无到有,从粗糙到完善,也算是经历了整个从概念到产品的完整周期。虽然有几个环节作得还有欠缺,这里也算是作一个复盘,回顾总结整个流程,但愿在下个迭代流程走得更好。编程
一番发布了两个面向普通用户的软件,都是带有图形交互界面的。编程语言
这两个软件面向的需求的主要来源有两个,一个是一番自身的功能需求,一个是跟你们交流中获得的需求。模块化
对需求的理解深度,会影响产品的功能、交互、体验等等,能够说是一个软件产品的灵魂。工具
一番其实一年前就有这两个产品的需求,也能作出这样轻量级的应用,但过于纠结产品的外观,所以过多的纠结在设计方案选型的过程当中,最终不得成型。学习
其实从产品初期的需求来看,功能需求大于外观需求。并且最后一番作出来的界面交互其实也不是太差。获得这个启发的也是看到WeChatDownload小工具获得的。虽然界面不是那么炫,但只要市面上尚未这样的工具,其实市场对功能的需求、与使用者的交互友好、大于对外观的追求。测试
总结出来就是,功能 > 交互 > 外观。编码
固然,一个优秀的软件产品,这三个点都很重要。设计
有了上面产品需求的理解,那么就须要找实现方案了。大概包括这几点:调试
编程语言选择:这个须要结合功能的技术方案、开发者的技术栈和学习成本综合考虑。开发
功能模块设计:从需求出发,一个大需求须要分解成哪些子需求,须要实现哪些功能。还有一些软件通用需求,好比升级、问题反馈、使用说明、联系方式等等。
界面交互设计:主要从小白用户角度出发,尽可能减小用户的学习成本和使用难度。
编码阶段主要注意几点:
编码开发完以后须要有基本的功能测试,这里须要设计一些测试用例,才能避免由于在开发一个模块而影响到其余功能了殊不知道。
测试用例的设计也是须要结合方案设计、用户需求来作。
整个自测用例跑完一遍后,就会对当前版本的状态有一个大概的认知了。
最后,评估下当前版本状态,若是能够,就能够打包了。
打包后,理论上来说这个就是咱们准备发布的版本了。但打包版本和咱们开发调试版本是有差别的,因此必定要作一次发版测试。
发版测试大概包括这几点:
以上若是测出来严重问题,须要从新作开发,而后从新进行发版测试。
这一步就是最开心的了,终于能够发版本了。也包括怎么告知用户,软件功能展现。须要让用户简单明了的清楚软件功能、使用方式和可能的用户体验。
若是可能,还须要有运营、推广。
以上全部环节完成后,根据用户反馈,就须要考虑是否有下一个产品迭代周期了。若是有,那就进入下一个一样的周期了。
有了上面这些全部的环节,一个软件产品才算是有一个完整的人生,健康的一辈子。根据软件的规模,以上每一个环节的投入均可大可小。