资源描述
美食分享App需求分析1. 引言俗话说民以食为天,自古以来人们的生活就与美食紧密相连。我们小组觉得,随着移动互联网时代的到来,手机菜谱类App行业最具潜力成为将来市场上的一匹多金黑马。美食行业在市场的地位都是永摧不倒。并且如今的菜谱行业,不仅仅局限于向消费者传递某些美食制作的措施,在移动互联网时代的菜谱行业也带来了一种新的生活方式和健康理念。因此,美食菜谱类APP占居消费市场与“吃”有关的入口,拥有巨大的想象空间,发展前景也是光明而又乐观的。1.1. 编写目的(1) 本需求分析阐明书是为了开发美食分享App而编写的,重要面向分析员、程序员、测试员和最后顾客,使之能更好地理解系统功能以及实现系统。 (2) 本阐明书不仅是整个软件开发的根据,对后来的维护性工作也起着指引性的作用,同步也是测试筹划和顾客手册的编写根据。 1.2 项目背景 (1)应用软件名称:美食分享APP (2)任务提出者:陈绍文,王朋,徐秀菊 (3)顾客:广大人民群众 (4)实现:信计研发小组 (5)构建平台:android平台,其数据库构建在SQLServer上,并可实现权限限制性兼容,与其她手机应用软件并不冲突。 1.3 定义列出本文献中用到的专门术语的定义和外文首字母组词的原词组。 1.4 参照资料 (1) 软件工程 清华大学出版社 (2) 美食社区网站的设计与实现 电子科技大学出版社(3)android开发案例驱动教程 清华大学出版社(4) 面向美食网站的搜索及点评与图片去重模块的设计与实现 哈尔滨工业大学出版社2. 任务概述 2.1 目的本App旨在针对美食爱好者以及需要有关信息服务的网民建设以满足客户基本需求(菜谱查询,获得饮食健康资讯)为基本,提高顾客体验(增长互动性和趣味性)为目的的新型享型美食菜谱分享。顾客可以通过该App查看菜谱,创立菜谱,浏览资讯,刊登评论,分享经验心得,进行好友分享以及讨论区进行交流讨论。该应用软件管理员可通过以发布信息,管理(修改,删除和增长)菜谱,管理讨论区对该APP的平常运营进行管理和维护。2.2 运营环境(1)解决器型号及内存容量:CY1.7GHZ,内存1g;(2)外存容量、联机或脱机、媒体及其存储格式,设备的型号及数量:80G硬盘即可;(3)输入及输出设备的型号和数量,联机或脱机;(4)数据通信设备的型号和数量;(5)功能键及其她专用硬件;2.3 条件与限制(1) 条件:手机方面具有android4.0以上系统,服务器端在win732位(2) 限制: 操作系统限制: 操作系统android4.0以上软件限制: 应安装杀毒软件,避免病毒干扰3. 数据描述 3.1 数据需求(1)顾客信息(顾客id主键,顾客名,头像,顾客类型,密码,个性签名,性别,出生日期,职业,家乡,现居地,个人简介)(2)美食信息(美食id主键,顾客id,美食名称,美食图片,美食简介,历史由来,备注)(3)美食用料(美食id,用料id主键,菜名,分量)(4)美食做法(美食id,环节id,具体做法,图片)(5)美食种类(美食id,种类id,种类名称)(6)美食地区(美食id,地区id,国籍,省,市)(7)美食推荐(美食id,顾客id,推荐时间)(8)收藏表(美食id,顾客id,收藏时间)(9)美食留言(美食id,顾客id,留言)(10)主题表(顾客id,主题id,内容,刊登时间)(11)主题答复表(顾客id,答复id,主题id,内容,答复时间)3.2软件系统的数据流程和解决流程(1)数据对象的E-R图,如下图1-1(2)数据流图 3.3数据库简介(1)服务器程序在管理员与顾客进行多种操作(创立,收藏,修改,删除,评论菜谱,删除,创立,评论主题,查看,删除顾客)时需要对数据库进行数据提交,即对数据库进行查询与修改:在上面的操作过程中都需要对数据库中的所有表,进行联合查询、修改。(2)物理数据构造重要用于各模块之间函数的信息传递。(3)接口传递的信息是用数据构造封装了的数据,以参数传递或返回值的形式在各模块间进行传播。(4)对于出错信息要返回出错提示给顾客,并提供出错信息的解决措施以保证软件运营的可维护性。3.4数据管理能力规定根据市场对美食的需求以及团队的业务能力,该软件涉及了多种家常美食以及全国各地特色美食菜谱的分享,同步美食好友之间可以互相分享烹饪经验与心得,因此估计顾客量比较大,对数据的解决量也处在中档水平,对于团队来说也是一种考验。3.5故障解决能力 软件的操作重要是对数据库的管理和维护,其中发生的故障也是针对数据库的,基于数据库有日记文献,可以很以便的修复;而此外方面的故障是在android开发重要是服务器解决多线程的问题,当有多种顾客访问服务器时,由于目前开发受限,服务器也许会浮现无响应等行为,因此,对该方面需要做到较好的解决。3.6其她专门规定(1)App设计与布局问题。由于该应用软件需要给顾客提供大量的信息服务,因此在设计的过程中需要极其关注页面分割和模块设计的合理性。此外,界面的色彩搭配以及设计需要满足分享型菜谱类App的规定。(2)数据分类问题。由于该App需要对大量的信息和数据进行分类,如按照食材对菜谱进行分类,按照人群对饮食建议进行分类。因此,对数据库的设计有严格的规定。(3)搜索问题。该App需要给顾客大量的信息服务,涉及菜谱以及健康资讯等,因此应注重搜索功能的完善性,需考虑搜索排序等多方面的问题。(4)操作简便问题。做到可以适合各类美食爱好者使用。4. 功能需求4.1 功能划分重要功能前台功能:(1)一般顾客可以通过该APP查看菜谱(2)一般顾客可以通过该APP搜索菜谱(按菜名,食材等)(3) 一般顾客可以通过该APP浏览她人分享的菜谱,经验(4) 一般顾客可以通过该APP注册成为会员(免费注册)(5) 会员可以创立个人菜谱,进行经验和心得的分享(6) 会员可以对其她会员创立的菜谱进行评论,收藏。(7) 会员可以在专门的讨论区发言,与其她会员进行线上交流与讨论(8) 会员可以对个人信息进行管理(修改昵称,修改头像,修改密码)(9) 会员可以对自己创立的菜谱进行管理(修改菜谱,删除菜谱)后台功能:管理员通过后台对菜谱进行管理(1) 浏览菜谱(2) 推荐菜谱(3) 删除菜谱管理员通过后台对该APP信息进行管理(1) 发布某些健康资讯和每日精选的信息(2) 管理已经发布的信息(有条件的修改和删除)管理员通过后台对会员进行管理(1) 查看会员(基本信息,创立的菜谱,刊登的言论)(2) 删除会员(严重违规会员)管理员通过后台对讨论区进行管理(1) 浏览发言(2) 管理发言(删除违规言论,推荐优质分享)4.2 功能描述 下面将用例图进行功能描述: 5性能需求 5.1 精确性和及时性(1)系统解决的精确性和及时性是系统的必要性能。(2)在系统设计和开发过程中,要充足考虑系统目前和将来也许承受的工作量,使系统的解决能力和响应时间可以满足顾客对信息解决的需求。(3)由于系统的查询功能对于整个系统的功能和性能完毕举足轻重。作为系统的诸多数据来源,而美食的种类又影响顾客的决策活动,其精确性很大限度上决定了系统的成败。在系统开发过程中,必须采用一定的措施保证系统的精确性。 5.2 开放性和可扩大性 (1)系统在开发过程中,应当充足考虑后来的可扩大性。顾客查询的需求也会不断的更新和完善。所有这些,都规定系统提供足够的手段进行功能的调节和扩大。 (2)要实现可扩大性,应通过系统的开放性来完毕,即系统应是一种开放系统,只要符合一定的规范,可以简朴的加入或减少系统的模块。通过软件的修补、替代操作来完毕系统的升级和更新换代。 5.3 易用性和易维护性 (1)系统是直接面对使用人员的,而手机的品牌却是各不相似的。这就规定系统可以提供良好的顾客接口,易用的人机交互界面。 (2)要实现易用性,就规定系统应尽量选择顾客熟悉的术语和语言界面;并针对顾客也许浮现的使用问题,提供相应的在线协助,缩短顾客对系统熟悉的时间。 (3)系统应提供以便的方式供系统维护人员进行数据的备份,平常的安全管理,以及系统意外崩溃时数据的恢复等操作。 5.4 原则性(1) 系统在设计开发使用过程中都要波及到诸多计算机和手机硬件、软件,所有这些都要符合主流国际、国家和行业原则。例如在开发中使用的操作系统、网络系统、开发工具都必须符合通用原则;规范的数据库操纵界面、作为业界原则的TCP/IP网络合同及ISO9002原则所规定的质量规范等。 (2) 在自主开发本系统时,要进行良好的设计工作,制定行之有效的软件工程规范,保证代码的易读性、可操作性和可移植性。 5.5 先进性 (1) 通过系统的开放性和可扩大性,不断改善系统的功能完毕。 (2) 在系统设计和开发的过程中,应在考虑成本的基本上尽量采用目前主流并有良好发展前程的产品。 5.6 响应速度快 (1) 系统在平常解决中的响应速度为秒级,达到实时规定,以及时反馈信息。 (2)进行记录分析时,根据所需数据量的不同而从秒级到分钟级,则是保证工作人员不会由于速度问题而影响工作效率。6. 运营需求 6.1 顾客接口 本系统的顾客一般需要通过终端进行操作,进入主界面后点击相应的窗口,分别进入相相应的界面(如:输入界面、输出界面)。 6.2 外部接口 (1) 顾客界面:在顾客界面部分,根据分析成果,顾客需要一种顾客友善界面。在界面设计上,应做到简朴明了,易于操作,并且要注意界面的布局,应突出的显示重要以及出错信息。外观上也要做到合理化,做到不仅拥有可靠性,同步有易使用性。(2)外设接口:在输入方面,对于手机键盘的输入;在输出方面,网络的传播;实现高速传播。 6.3 故障解决(1) 输出出错信息:程序在运营时重要会浮现输入信息不满足规定期的软故障,以及类似网络传播超时等其她因素产生的硬故障两种故障。对于软故障,须在多种操作(如菜谱的创立,修改,删除等)与否成功进行判断,以及输入数据的验证模块进行数据分析,判断故障类型,再生成相应的错误提示语句,送到输出模块中;对于硬故障,可在故障产生的相应模块中输出简朴的出错语句,并将程序重置,返回输入阶段。(2)解决对策: 为了避免客户端与服务器实现交互过程中导致数据丢失,在网络运送方面采用http合同,实现TCP连接,当一定期间内没有得到响应则进行重发等操作。网络传播方面,可考虑建一条成本较低的后备网络,以保证主网断路时数据的通信;硬件方面,要选择较可靠、稳定的服务器机种,保证系统运营时的可靠性。
展开阅读全文