产品开发和项目开发有部分的类似之处,毕竟都是软件开发过程,^_^,不过产品开发较之项目开发来说更加的不易,下面就从产品的整个开发过程来讲讲产品开发的不易。
一个公司在经过N多的项目并对项目进行总结或对市场的情况进行N多的分析后发现了做成产品的潜在可能性,往往这时需要成立一个产品规划小组来进行产品的规划,包括对于产品的定位,产品的市场切入点,产品的功能的策划,产品理念的编写,产品优势的规划,市场现有类似产品的研究,竞争对手的优势,竞争对手的走向,产品的卖点,产品允许的开发周期,产品的成本以及利润的估计,这可以列为产品的第一个阶段,产品可行性分析阶段。这个阶段的不易之处显而易见,首先需要有明确的产品的定位,这个就有一定的难度了,然后产品的卖点,最难的地方在此了,毕竟还得估计在你进行产品开发周期的同时也会有其他竞争公司在进行,而且往往一个产品会是比较的庞大,需要划分为几个周期来进行,所以这个时候又得同时估算好产品允许的开发周期以及每个版本的延续性、产品的成本以及利润的估计,毕竟商业化的公司,总不能一直投入而没有利润,还得考虑好产品开发完毕后市场切入点在哪,总不能等到产品开发完毕后才去想该怎么去卖这个优秀的东西呢,这个阶段至关重要,很大程度上决定了产品的将来。
经历过产品可行性分析之后,觉得这个产品可行,值得投入那么就进入了下一个阶段,技术可行性阶段,这个阶段主要就是组建一个产品设计团队,根据之初产品的第一周期的规划对其技术可行性进行评估,在这个阶段设计团队成员更多的应该是考虑怎么样去设计一个稳定而又快速的架构,并需要对可能出现的技术风险进行评估,作为企业级的产品的话,这时在架构上更需要考虑到企业级的需求,高并发、稳定性、高响应等等,架构上的掌握也是同样的关键,这时应该更多的是采用成熟的技术体系,并尽可能采取产品设计团队成员都熟悉的体系结构,如确实需要采用不熟悉的体系结构,则需要进行一定时间的对于此体系结构的了解,以预计将来的技术风险,并尽量多的采取已有的较好的东西,不重复发明轮子是关键,当然,不是说去买N多贵的产品来组装自己的产品。这个阶段同样的至关重要,技术架构的把握对后期整个产品的研发都有至关重要的影响,设计团队需要确实的做到对于整个架构体系的把握和掌控(包括在将来体系结构不够完整时的调整的进行)以及技术风险的评估、避免和响应策略,记住产品的技术先进性不是关键的,何况一般的公司根本就没法去做什么先进的东西,而且客户也不会关心你的技术有多么的先进,重点在于产品的稳定、高效。
在经历过技术可行性分析后,如果技术上评估可行的话,那么就正式进入团队的研发阶段,此时需要组建产品的设计团队、研发团队、测试团队、规划团队、管理团队、策划团队(用户团队),各团队的协同工作至关重要,并要制定一系列的产品研发阶段制度,产品的质量保证体系,产品开发过程采用何种软件工程,产品团队的激励制度,各团队的协作制度。研发阶段中最为重要的是保证产品的研发始终处于突出产品卖点的中心问题上,不可偏离此方向,并首先保证产品卖点部分的完成,而研发阶段的不易就更不用说了,做过开发的都知道,技术难度,软件过程的管理,质量的保证,各团队之间的协作,由于软件开发难以量化,但同时又得保证开发周期的有限,更是增加了这整个过程的难度。
终于,经过了这些漫长的阶段,产品的第一周期完毕,此时需要同时加入进来的就是产品宣传团队和销售团队了,只有通过这个阶段才能使得产品的开发变得有意义,产品的效益才得以产生,而同时产品的策划团队则需要继续考虑产品的后期发展方向的细节规划等等,又重新轮循的进入整个产品开发周期。
上面其实也只是较为简单的描述了产品的周期,在实际的产品周期过程中,所碰到的难度只会超过上述的,毕竟产品的整个过程有很多难以把握的因素,诸如产品的未来走势(这个需要良好的市场分析的眼光)、技术走势(需要良好的技术掌控能力)、产品的市场切入(这个可是产品变得有实际意义的关键)、产品整个过程的团队的协作、人员的协作、人员的稳定、公司整体的坚定(在产品的过程中保持坚定的方向)。任何一个环节都对产品产生重大的影响,在任何一个环节上都不能松懈。感觉在做行业标准化的软件会稍微好一些。
产品化的过程是一个风险较高的过程,但同时也是一个利润高的过程,产品化能使得一个公司得到质的提升,得到发展上的一个飞跃。