现实中有很多这样的例子,在一个项目开始的时候,花很少的时间甚至不花时间去思考架构.把大量的时间花在一个可能会有的需求,可能会用到的功能.并且很多时候这种功能还会比一般功能做起来麻烦一点.结果呢却经常是从来不会用到,或者很少用到并且不是不可替代的.特别是上面说的事发生在做第一版的时候.这就是舍本逐末.
把功能做小
在做第一版的时候,不要投入太多精力做一些可能会用到且不是必要的功能,把必须要做的东西规划到足够小.快速的做完它然后推出.同时把非必要功能或者是我们不知道是不是必要的功能,进行第二版/第三版的排期.并且根据第一版市场的反应来决定优先做什么和要改善什么.
一定不能一开始就想做一个大而全的东西,不能说你想到了ios10,你就不推出ios5.能想出一个很棒,比较完善的产品很牛逼,但是更牛逼的是明白一个产品比如有100个点,什么是最必须,什么是最重要,什么是次重要.
想清楚100个点中,最必须和不必须但是很重要的20个点是什么,这是快速推进第一版的关键.然后你要想清楚剩下的功能中相对更重要的20个又是什么,去预估第二版的要做的东西,很产品会做成什么样.与此同时接收第一版的市场反馈,调整第二版和后续的任务.
把架构做大
当然我们的系统会接收到源源不断的新需求,或者调整已有的功能.如果一开始没有设计好,这将会是一件很浪费时间的事.甚至要不断的推倒重做.当然这种事情的投入也一定有个限度.但是完全不思考不重视,最后只会自己去还债.
思考一个东西做成什么样子是最基本的要求,特别是有基础的改造提升的前提下.更重要的是当你想到一个小功能的时候,要有判断力,这个是第一版做,还是第二第三版做,或者是根据市场反馈做不做,然后去归纳这些功能.当想到一个复杂功能的时候,要清楚适不适合现在做,不适合就mark一下,等把现在必须要做的功能都思考清楚完了之后再去思考这些.还是那句话,要对做的事情有一个宏观的认识和思考,不能闷着头做一个Vista系统,不做完不抬头.
网友评论