假设需要开发一款具有个性化推荐功能的购物网站,主要功能包括:
用户的商品浏览,购物车管理,订单管理,在线支付等功能;管理员的后台管理功能,且系统具有两种推荐功能,其一是根据用户浏览记录进行商品推荐(推荐算法),其二是根据用户已购买商品的关联商品进行推荐。(关联分析算法)
试从技术可行性,经济可行性和社会可行性等方面对项目进行分析。
可行性研究的目的是为了对问题进行研究,以最小的代价在最短的时间内确定问题是否可解。经过对此项目进行详细的调查研究,初步拟定系统的可行性报告,对软件开发中将要面临的问题及其解决方案进行初步设计以及合理安排,明确开发风险及其所带来的经济效益。
开发软件名称:具有个性化推荐功能的购物网站
项目任务提出者:软件学院
项目开发者:Pdsu_Richard
吕云翔.软件工程实用教程 [M]. 北京:清华大学出版社,2015.
购物网站主要是对前台操作和后台管理。前台操作是用户登录到本网站,可以进行用户注册,通过网站的精品推荐或商品搜索功能,找到自己想要买的商品,装入购物车,提交订单进行购买,实现商品浏览,购物车管理,订单管理,在线支付等功能。后台管理是管理员对本网站的维护,通过商品资料、会员管理、网站信息管理、以及常规设置等功能达到对网站的管理。且系统具有两种推荐功能,其一是根据用户浏览记录进行商品推荐(推荐算法),其二是根据用户已购买商品的关联商品进行推荐。(关联分析算法)
开发一个网站需要有自己的设计理念,该网站与现有网站的主要优越性有:
简单性:在实现网站的各种功能的同时,尽量让网站里的前台后台操作简单易懂,这对于一个网站来说是非常重要的。
实用性:该网站能完成商品展示和管理员管理的基本信息,具有良好的实用性。
个性化推荐:该网站可以通过网站用户的浏览记录使用推荐算法来对用户进行商品推荐;同时也可根据用户已经购买的商品使用关联分析算法进行已购买商品的关联商品推荐。个性化推荐有助于卖家更好地预测市场,更好地开发自己手中的客户资源以及时调整营销策略,在目前这个互联网的时代把握机会。
安全性、可靠性:该网站获取用户的一切信息将只用于本网站内的一切操作,仅用于对用户的个性化商品推荐以及已购买商品的关联商品推荐,绝不会用于其他用途,保证了网站用户个人的隐私权。对于用户信息的保护,会提示用户是否愿意分享相关的信息,保证用户在知情的情况下进行所有的操作,并且维护用户的信息安全。
(1)前端框架技术基础
截止目前,Web前端的框架有Angular、React、Vue、Foundation、Bootstrap、Curl等。目前常用的前端框架,也称为Web前端的三大主流框架为Angular、React、Vue。
Vue作为最后推出的框架(2014年),借鉴了前辈angular和react的特点(如VirtualDOM、双向数据绑定、diff算法、响应式属性、组件化开发等)并做了相关优化,使其使用起来更加方便,更容易上手。
因此,可以基于Vue框架进行前端主页面的设计。
(2)网站后端技术栈
对于本购物网站的开发,选择使用前后端分离的开发方式,前后端分离之后,后端就不需要在考虑前段的页面变化,只需要提供一个前端页面需要的JSON的数据即可。前端工程师只需要独立编写客户端代码,通过Ajax请求来访问后端的数据接口,将数据展示到页面即可。
Spring Boot 是所有基于 Spring 开发的项目的起点。Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置文件。简单来说就是SpringBoot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,spring boot整合了所有的框架
因此,可以基于SpringBoot进行后端技术开发。
(3)缓存技术基础
缓存通常被用来解决热点数据的访问问题,是提高数据查询性能的强大武器。在高并发的后端应用中,将数据持久层的数据加载到缓存中,能够隔离高并发请求与后端数据库,避免数据库被大量请求击垮。目前常用的除了在内存中的本地缓存,比较普遍的集中缓存软件有Memcached和Redis。其中Redis已经成为最主流的缓存软件。
Redis是一种非关系型数据库,通常用来做缓存中间件,是key_value型数据库,由于是将所有的数据加载在内存中进行操作,因此速度非常快。同时也有持久化的功能,保证其断电之后可以恢复之前的内容。
因此,预期的网站可以利用现有的技术进行开发。
基于内容的推荐是在推荐引擎出现之初应用最为广泛的推荐机制,它的核心思想是根据推荐物品或内容的元数据,发现物品或者内容的相关性,然后基于用户以往的喜好记录,推荐给用户相似的物品。比如你看了哈利波特I,基于内容的推荐算法发现哈利波特II-VI,与你以前观看的在内容上面(共有很多关键词)有很大关联性,就把后者推荐给你。
1.特征(内容)提取 ,提取每个待推荐物品的特征(内容属性)。
这些特征往往分为两种:结构化的特征和非结构化的特征。
所谓结构化特征就是特征的取值限定在某个区间范围内,并且可以按照定长的格式来表示。
非结构化的特征往往无法按固定的格式表示,最常见的非结构化数据就是文章。例如对推荐文章,我们往往会把文本上的非结构特征转化为结构化特征,然后加入到模型使用。
2. 用户偏好计算,利用一个用户过去的显式评分或者隐式操作记录,计算用户不同特征(内容属性)上的偏好分数;
有以下几种常见的计算方法:
(1) 基础统计法。(2) 词频统计法。
3. 内容召回 :将待推荐物品的特与用户偏好得分匹配,取出用户最有可能的物品池。
4. 物品排序,按用户偏好召回物品池,可能一次性挑选出很多内容。这时候我们可以进一步根据这些电影的平均分进行排序。
通过以上四步,就可以快速构建一个推荐系统。并且基于内容的推荐方法用户易于理解,简单有效。常常和其他推荐方法共同应用于推荐系统中。
关联分析又称关联挖掘:发现存在于大量数据集中的关联性或相关性,进行智能推荐。
基于关联规则的推荐更常见于电子商务系统中,并且也被证明行之有效。其实际的意义为购买了一些物品的用户更倾向于购买另一些物品。基于关联规则的推荐系统的首要目标是挖掘出关联规则,也就是那些同时被很多用户购买的物品集合,这些集合内的物品可以相互进行推荐。目前关联规则挖掘算法主要从Apriori和FP-Growth两个算法发展演变而来。 基于关联规则的推荐系统一般转化率较高,因为当用户已经购买了频繁集合中的若干项目后,购买该频繁集合中其他项目的可能性更高。
如果某个项集是频繁的,那么它的所有子集也是频繁的。但是如果反过来看就有用了,也就是说如果一个项集是非频繁集,那么它的所有超集也是非频繁的。 用Apriori这种方法来减少项集的数。
Apriori算法的一般过程
收集数据:使用任意方法。
准备数据:任何数据类型都可以,因为我们只保存集合。
分析数据:使用任意方法。
训练算法:使用Apriori算法来找到频繁项集。
测试算法:不需要测试过程。
使用算法:用于发现频繁项集以及物品之间的关联规则。
因此预期的网站个性化推荐功能可以用现有的算法进行开发。
参与此项目的研发人员均需具备多年Web项目研发经验,对开发的相关标准,项目技术条件和开发环境等相当熟悉,具备研发此项目的技术能力。
综上所述,技术可行。
开发本网站所引起的费用开支有人力、设备、空间、支持性服务、材料等项开支及开支总额。
1.建立本网站所需的工作室以及周边设施。
2.建立本网站所需的网络设备的使用费用
3.保障本网站运行与信息安全设备的使用费用
4.建立本网站所需的数据库管理软件、服务器等软件的使用费。
1.本网站建立时所需研究者的经费。
2.网站日常维护的开销
3.开发网站时计算机等一系列相关设备的购买或租赁费用。
1.本网站开发人员的工资和奖金。
2.本网站开发时所需工作室的租赁费用。
这里所说的收益,表现为开支费用的减少或避免,差错的减少、灵活性的增加、动作速度的提高和管理计划方面的改进等。
假设开发此购物网站,投资成本30万元,5年内每年可产生直接经济效益15万元,设年利率为10 %
投入产出比是指项目全部投资与运行寿命期内产出的工业增加值总和之比。它适用于科技项目、技术改造项目和设备更新项目的经济效果评价指标。
“投入产出比”中的“投入”是指项目全部静态投资额;“产出” 是指项目全部运行寿命期内各年增加值的总和。用公式表示就是:R = K/IN = 1/N
上式中,K为投资总额,IN为项目寿命期内各年增加值的总和,N = IN/K,N值越大,项目经济性越好。
则本网站项目的投入产出比为:
(56.86/30)100%=1.895100%=189.5%
累计的经济效益正好等于投资额(成本)时所需的时间
根据上述材料可得:
两年后收入25.99万元,尚欠4.01万元没有收回成本
在第三年还需要 4.01/11.28=0.355(年)
故投资回收期为2.355年。
纯利润=累计经济效益-投资额
根据上面的计算结果,5年纯收入为
56.86-30=26.86 万元
对于本网站开发所使用的软件、开发文档均来自于正版和开源代码网站,因此不会涉及侵权与违反法律的相关内容。同时该项目也没有申请过专利。
对于用户信息的保护,会提示用户是否愿意分享相关的信息,保证用户在知情的情况下进行所有的操作,并且维护用户的信息安全。
因此该项目在法律方面可行。
目前无国家政策限制,也无地方政府(或其他机构)的限制。
因此该项目在政策方面可行。
作为一个专业的网站开发团队,应拥有足够的技术人员,技术力量和开发能力已经在之前的技术层面有所提及,所以开发的技术能力是毋庸置疑的。对于管理层面,现有的管理技术足够此网站项目的开发需求。就硬件条件而言,各种计算机硬件、软件等一系列设备的性能足以满足网站的开发,并充分发挥其效应。
因此,团队具备开发具有个性化推荐功能的购物网站所需的必要条件。
经过对该网站项目的用户注册,通过网站的精品推荐或商品搜索功能,找到自己想要买的商品,装入购物车,提交订单进行购买,实现商品浏览,购物车管理,订单管理,在线支付等功能进行分析、测试,得出以下结论:
1.网站页面简洁大方,功能明显可见。
2.无论是移动端还是PC端,网站打开加载速度都是网站建设的基础问题,该网站项目建设较为简洁,用户加载网站的同时会尽快打开,一般不会出现加载速度过慢的情况,这样的网站开启速度有了保障,也会更好的留住用户在网站中进行浏览访问。
3.目前团队网络设施比较完善,网络资源充分,数据库与服务器,可以很方便的运行该购物网站项目。
4.对于功能、性能、安全性、可靠性以及接口测试都可以理想化实现。
因此,经测试得出该网站项目运行可行。
1)以正常的运作方式,开发软件项目并投入市场的可行性;
以年利率为10%为例
此可知投资回收期在2.355年. 应在这期间找盈利方式
投入市场时应打出自己的电商特色,确定主要针对的商品,并且充分利用算法来打造出自己的个性化推荐的特色招牌。
2)需要人力资源、财力资源的预算情况
一般来说,营业利润、营业外利润、投资收益共同构成企业的利润总额。企业获取利润能力高低直接反应了企业的盈利能力。大数据时代,业务数据的加工分析和风险管控能力才是决定财务管理水平高低的关键。
3)组织保障及时间进度保障分析
财务风险主要为经营风险,在数据分析过程中各个环节不确定性因素的影响所导致公司资金运动的迟滞。其中包括项目风险、分析风险。项目风险是指由于项目数量不足导致公司资金收入不足影响公司运行、可以通过加强公司宣解决此问题,项目存在风险和困难,应对措施为提前与项目源谈好合同。
经过进一步比较运作方式、投入市场可行性、人力财力资源预算和操作便捷度,确定此方案为最佳方案。
通过对此网站项目进行的各方面的可行性分析,可以得出以下结论。
1)针对目前互联网时代,全民上网的条件下,购物网站是拥有用户群体的。
2)由于目前网购几乎普及,对于网购的用户来说,通过个性化推荐功能来向用户提供用户可能需要购买的商品,可以提高用户的回购率以及网站的知名度。
3)含个性化推荐功能的购物网站所能获取的效益是可观的。
4)此网站开发具有较强的可行性。
综上所述,此款含有个性化推荐功能的购物网站是一款能够提高用户网购体验的网站,可以立即进行此网站项目的开发。