进行技术可行性分析时,要注意以下一些问题。
1.全面考虑系统开发过程所涉及的所有技术问题
软件开发涉及多方面的技术,包括开发方法、软硬件平台、网络结构、系统布局和结构、输入输出技术、系统相关技术等。应该全面和客观地分析软件开发所涉及的技术,以及这些技术的成熟度和现实性。
2.尽可能采用成熟技术
成熟技术是被多人采用并被反复证明行之有效的技术,因此采用成熟技术一般具有较高的成功率。另外,成熟技术经过长时间、大范围使用、补充和优化,其精细程度、优化程度、可操作性、经济性等方面要比新技术好。鉴于以上原因,软件项目开发过程中,在可以满足系统开发需要、能够适应系统发展、保证开发成本的条件下,应该尽量采用成熟技术。
3.慎重引入先进技术
在软件项目开发过程中,有时为了解决系统的特定问题,为了使所开发系统具有更好的适应性,需要采用某些先进或前沿技术。在选用先进技术时,需要全面分析所选技术的成熟程度。有许多报道的先进技术或科研成果实际上仍处在实验室阶段,其实用性和适应性并没有得到完全解决,也没有经过大量实践验证,在选择这种技术时必须慎重。例如,许多文章中已经报道了指纹识别技术,而且市场上也有实验性产品,但指纹识别技术至今仍有许多重大技术难题没有突破,离具体应用仍有一定距离。因此,在项目开发中要谨慎选用这种技术。如果不加分析,在项目中盲目采用指纹识别技术,应用时肯定会出现许多难以解决的具体问题。
4.着眼于具体的开发环境和开发人员
许多技术总的来说可能是成熟和可行的,但是在开发队伍中如果没有人掌握这种技术,而且在项目组中又没有引进掌握这种技术的人员,那么这种技术对本系统的开发仍然是不可行的。例如,分布对象技术是分布式系统的一种通用技术,但是如果在开发队伍中没有人掌握这种技术,那么从技术可行性来看就是不可行的。
5.技术可行性评价
技术可行性评价是通过原有系统和欲开发系统的系统流程图和数据流图,对系统进行比较,分析新系统具有的优越性,以及对设备、现有软件、用户、系统运行、开发环境、运行环境和经费支出的影响,然后评价新系统的技术可行性。主要包括以下几个方面:
在限制条件下,功能目标是否能达到;
利用现有技术,性能目标是否能够达到;
对开发人员数量和质量的要求,并说明能否满足;
在规定期限内,开发是否能够完成。
产品的可行性,需要从三方面考虑:技术可行性、经济可行性和社会可行性。
技术可行性
在分析产品技术可行性时要逐项分析产品技术指标,技术可行性分析要素如下:
竞争对手功能比较,研究同行业有多少类似产品,有哪些功能、功能异同点。通过竞品分析可以了解对方技术特点、产品特点、发展空间、市场行情、用户喜爱程度及我们的突破点等信息。
技术风险及规避方法,对可能使用到的技术进行全面的分析,技术上是否有解决不了的问题,如果有如何规避
易用性及用户使用门槛,产品的易用性,用户群体分析,产品是否会有使用难度。
产品环境依赖性,产品是否依赖于第三方平台、环境,如有的APP就规定必须满足IOS7.0以上;有的平台规定只适配IE、火狐、360浏览器,其它浏览器不支持;有的产品使用前必须插入U盾,否则无法使用。
经济可行性
分析完技术可行性后再来分析产品的经济可行性,产品在调研、研发等的支出费用和产品将来可能带来的经济、社会效益。
图示如下:
产品支出分析如下:
人力成本,产品从调研、分析、设计、开发、测试、运维等需要多少人力,多少人月,每个人月平均成本是多少。
软件、硬件成本,产品生产及上线后需要购买哪些软件及硬件,如:产品用到的数据库、开发工具、第三方软件、服务器数量、路由器、网络等成本。
市场开拓、广告、运营成本,产品投放市场后的推广、营销方式,需要的推广、营销成本,广告成本等。
后期维护升级成本,产品需要不断升级,从1.0,2.0到3.0的升级,不断升级后需要的人力、资源等成本。
其它支出,公司运营的成本,办公成本、工位成本等。
产品收益分析如下:
一次性销售,产品的销售收益,如OA产品,当用户购买后就会产生一次收益。
服务费收益,有的产品是按平台服务费进行收益的,像许多SAAS平台、教育平台等。
投资回报周期,多长时间能收回收益,每个月的收益率是多少,可能产生的收益波动等。
产品生命周期,任何产品都分起步期、发展期、成熟期、衰退期,我们需要分析产品的整个生命周期,通过生命周期分析出产品的收益时间。
使用人数、用户规模,产品使用人数及规模代表着产品的未来发展潜力,产品的覆盖率。通过现有的竞品和人群来分析将来可能的用户规模。
隐性价值,通过产品的开发,可能带来的其它价值,如口碑、好评、行业地位、政纪等。
社会可行性
最后要谈的是产品的社会可行性,图如下:
广义的社会可行性分道德方面、法律方面、社会方面。
道德方面,产品是否符合道德标准,符合大众审美。如传播一些低级的黄段子、社会负能量的产品。
法律方面,产品不能触犯法律,否则产品不会走远。如一些赌博产品、黄色网站等。
解决社会层面的问题,产品一定是要解决某类社会存在的问题,并能带来社会价值。
社会影响力,通过产品的推广,产品将会给公司带来哪些社会效益,增加多少社会影响力。
自有资源,自己公司规划的产品时会具备哪些优势,通过这些资源在市场环境下能带来多少效益。
产品经理通过以上分析,基本可以从各个方面诠释出产品的可行性。可行性分析是通过对产品市场需求、资源供应、建设规模、环境影响、资金筹措、盈利能力等,从技术、经济、社会等方面进行调查研究和分析比较,从而给出产品的建设性意见,为产品决策提供依据。可行性分析应具有预见性、公正性、可靠性、科学性的特点。