旅游记忆管理系统软件需求规格说明书.doc
旅游记忆管理系统软 件 需 求 规 格 说 明 书 3G移动互联04组修订表编号生成版本修订人修订内容修订日期11.00ALL商定初步分工12/09/201121.01ALL明确详细分工13/09/201131.02ALL功能性需求分类14/09/201141.03ALL非功能性需求分类14/09/2011审批记录版本审批人审批意见审批日期1.02找回密码14/09/2011目录1.引言51.1 目的、小组成员以及预期读者51.2 适用范围61.3 参考资料61.4 术语定义62.系统概述72.1 产品描述72.2 用户的特点72.3 目标83.功能需求分类83.1 层次功能模块图83.2 各模块具体功能描述93.3登录注册模块93.3.1 启动画面93.3.2登入界面:103.3.3登入界面菜单133.3.4将注册信息存入数据库。153.4 展示景点模块153.4.1首页上方有个搜索景点框,提供搜索所需景点。153.4.2在景点详情页面的TabHost中有游客评价、查看详细地图。163.4.3在首页搜索框下边有个当季景点排行显示,展示当季最火爆的旅游景点。排行显示出来的景点的文字提供链接跳到景点详情页面。163.4.4在首页中间有若干景点推荐。推荐的景点文字也提供链接跳到景点详情页面。163.4.5对于首页页面跳转按钮的设置说明:常用的功能按钮放在页面下方TabHost,不常用的放在menu菜单下。163.4.6在“景点信息”页面上依次显示:景点标志图片、景点名称、景点地址、景点详细说明。163.4.7在“游客评价”页面显示评价列表。163.4.8在“查看详细地图”页面,显示相应景点的地图。163.5好友管理模块183.5.1修改个人信息183.5.2查看好友列表,动态,足迹,推荐203.6记忆管理模块333.6.1个人记忆列表333.6.2添加记忆信息353.6.3修改记忆信息373.6.4删除记忆信息393.6.5查看记忆信息413.6.6足迹记忆列表433.6.7增加足迹信息453.6.8修改足迹信息473.6.9删除足迹信息483.6.10查看足迹信息503.7 个人中心模块523.7.1首先展示的是好友和关注者的公信列表523.7.2收件箱543.7.3发件箱553.7.4草稿箱573.7.5查看个人信信息583.7.6修改保存个人信息583.7.7添加扩张信息,兴趣爱好(选做)583.7.8将注册信息存入数据库。583.7.9界面布局593.8问答中心模块593.8.1问题列表593.8.2查看答案列表613.8.3评分633.8.4回答653.8.5我的个人问题673.8.6提问693.9旅游计划模块713.9.1 新建旅游计划713.9.2 旅游计划列表743.9.3 查看旅游计划763.9.4 修改旅游计划783.9.5 竞选组织者803.9.6 个人计划管理列表824.产品的非功能性需求844.1 性能需求844.2 用户接口844.3 软件接口844.4 运行环境844.4.1 软件环境844.4.2 硬件环境854.4.3 接口854.4.4 控制854.4.5 故障处理要求864.5 属性864.5.1 友好性864.5.2 安全性864.5.3 可靠性864.6 其他需求864.6.1 用户操作需求864.7 输入输出要求874.8 数据管理能力要求881.引言 1.1 目的、小组成员以及预期读者 文档编写目的 旅游者之多,使得旅游者的旅行带来了很大的。我们不便开发了一个基于J2EE+Android技术的旅游管理系统,该系统采用了J2EE+Android技术,增强了系统的可移植性,重用性和伸缩性,简化了系统的结构,易于维护,并且被广泛接受。 小组内成员以及分工 姓名分工胡林仁旅游计划许磊排行榜、景点信息、景点评价、地图展示王佳我的问问、大家问问刘远棋个人中心、搭建框架王斌登录注册、个人信息马玉峰添加、删除、修改、查找好友黄进辉添加、删除、修改、查找记忆注:所有成员均参与文档整体构建和修补 预期读者 项目经理、小组成员、指导老师以及对软件开发过程中文档编写格式 不熟悉的初学者。 1.2 适用范围本项目是基于Android平台上的移动应用,而且本系统的主题是旅游,所以我们项目的应用范围是爱好旅游或有旅游意向的手机用户。 1.3 参考资料 Google Android开发入门与实战 Oracle开发实践 Android客户端开发 1.4 术语定义Myeclipse用于开发J2EE的Eclipse插件集合Oracle一种大型数据库系统AndroidGoole于2007年宣布的基于Linux平台的开源手机操作系统GPS全称Global Postitioning System,中文名为:全球定位系统JDKJava Development Kit,Java开发工具,Android开发必须的工具 2.系统概述 2.1 产品描述 随着旅游规模的扩展,人们的需求也日渐突出。该产品实现一款基于地理位置定位的移动旅游记忆小区。用户之间可以互相沟通,可以看到实时更新的全国旅游景点指南、旅游记忆、照片视频,可以帮助用户定制行程,还可以随时随地用手机上传带有GPS位置定位信息的照片,来记忆用户的旅游经历。 2.2 用户的特点用户特点 本项目的最终产品主要有两种用户人群1.普通用户:是执行本系统大部分功能的所有旅游爱好者,该部分人员的操作水平为初、中级,可以通过手机操作简单的应用软件。2.系统维护人员:是后台系统维护的人员,事先得到过专业的培训,具有较高的专业水平。 2.3 目标本系统是基于Android平台上的移动应用,而且本系统的主题是旅游,所以我们项目的应用范围是爱好旅游或有旅游意向的手机用户。该产品的目标是实现一款基于地理位置定位的移动旅游记忆小区。用户之间可以互相沟通,可以看到实时更新的全国旅游景点指南、旅游记忆、照片视频,可以帮助用户定制行程,还可以随时随地用手机上传带有GPS位置定位信息的照片,来记忆用户的旅游经历。 本软件是基于业务内核Portal引擎的MiniERP移动互联应用,是依附在物联天下的子系统,但是由于本系统是针对手机用户,所以其他子系统没有太大的联系,是一个相对独立的子系统。3.功能需求分类主界面展示景点好友管理个人中心问答中心登录注册旅游计划记忆管理排行榜景点评价景点信息谷歌地图登录注册大家提问我的提问发件箱收件箱个人信息修改备注删除好友查看好友添加好友查看记忆修改记忆删除记忆添加记忆查看计划修改计划取消计划制定计划3.1 层次功能模块图 3.2 各模块具体功能描述模块功能描述展示景点在主界面提供搜查所需景点功能,以及推荐景点。设置“发布游记”、“上传照片”按钮跳转到相应功能。登入注册自动登入 找回密码 记住密码 网络设置 注册好友管理可以好看到好友的一切信息记忆管理对旅游者在景点的记忆进行增删改查操作个人中心设置和修改个人资料问答中心用户可提出,回答问题并对已有答案进行评分 旅游计划制定、发布、响应旅游计划及竞选组织者3.3 登录注册模块 3.3.1 启动画面当进入程序时,显示一张登入图片,显示3秒后,跳转到登入界面LoginActivity。应用启动画面登入界面注册登入自动登入记住密码菜单 用户注册用户登入修改资料找回密码用户删除用户准销用户 3.3.2登入界面:1) 用户名 密码输入框a) 用户名输入框:采用AutoCompleteTextView输入用户名,只限输入英文字符与数字,控件有下拉列表能保存所有登入过的用户名以及头像。b) 密码输入框:只限输入英文字符与数字,输入显示*,不可见。2) 记住密码:点击记住密码复选框后,用户下次登入,输入框内会保留用户信息,直 接点击登入按钮便可登入。3) 自动登入:点击自动登入复选框后,用户下次登入,直接进入应用主界面,无需进 入登入界面点击登入。4) 登入。a) 当用户名为空时 提示用户名不能为空b) 当密码为空时 提示密码不能为空c) 当用户名密码错误时 提示用户名或密码错误d) 当系统没有联网时, 点击登入按钮提示联网对话框,联网对话框有按钮可直接跳转到系统数据流量设置界面。 验证用户信息验证处理登入界面记住密码系统联网设置登入联网设置自动登入NNYy 用户登入流程图 旅游记忆用户名:密码:记住密码自动登入注册登入用户登入原型图5) 注册。a) 第一次登录的用户,进行注册,在此需要输入昵称,用户名,密码,所在城市,联系电话,密码保护等信息。b) 输入用户名时,检测用户名是否已被注册,而且用户名一旦注册,不允许更改。注册个人信息个人资料密保设置提交c) 选择用户头像时,有三种方式:1软件自带,2手机相册(从SD卡选择),3手机相机。 用户注册流程图个人资料头像昵称性别城市用户信息用户名密码确认密码手机号码E-mail密码保护问题一答案一问题二答案二问题三答案三注册取消用户注册原型图模块输入处理输出注册、登录(注册)用户基本信息验证信息,上传至服务器成功提示(登录)用户名、密码验证用户名和密码是否匹配显示主界面3.3.3登入界面菜单此处设置菜单包括:清除帐号,忘记密码,帮助中心,退出程序。1) 清除帐号,有两种方式:a) 清除输入框内信息(不包含存储在数据库中的信息)b) 清除输入框内信息和该用户所有的信息(包括服务器信息,以及应用内保存的所有信息)2) 忘记密码, a) 通过密保找回,在用户注册时,填写密保,根据密保找回,此时找回的密码不变。b) 通过邮箱找回,密码重新设置,此时密码改变。3) 帮助中心此处信息通过一个列表展示,列表包括关于,意见反馈,软件分享等。4) 退出程序点击退出程序,当选择硬件返回按钮时 弹出退出程序对话框。密码找回流程图 密码找回密保找回邮箱找回验证处理验证密保问题发送请求到服务器处理在数据库将密码重置将密码反馈给用户密码找回成功NY密码找回问题一答案一问题二答案二问题三答案三提交取消找回密码原型图3.3.4将注册信息存入数据库。3.4 展示景点模块3.4.1 搜索景点 3.4.1.1功能描述在首页中进行搜索景点功能,输入景点名称。a).当点击搜索按钮,搜索的景点存在时,进入景点信息页面,供用户观看。b).当搜索的景点不存在时,跳回主页面。3.4.1.2 输入字段名数据类型是否为空默认值备注NameVarchar否风景名字3.4.1.3 业务逻辑3.4.1.4 输出字段名数据类型是否为空默认值备注detailschar否景点详情流程图:景点搜索景点显示评价首页DB存在显示景点查看地图旅游评价景点排行景点推荐NY搜索景点搜索景点1.2.3.景点推荐主页面个人中心旅游计划好友管理 .当季景点排行:每个景点的人气值排行页面原型图:3.4.2 景点详情3.4.2.1 功能描述在“景点信息”页面上依次显示:景点标志图片、景点名称、景点地址、景点详细说明。页面原型图:景点信息 游客评价 查看详细地图 景点标志图片景点名称 景点地址景点详细说明 3.4.3 游客评价3.4.3.1 功能描述3.4.3.2 输入字段名数据类型是否为空默认值备注contentVarchar(50)否评价内容3.4.3.3 业务逻辑3.4.3.4 输出字段名数据类型是否为空默认值备注contentVarchar(50)否评价内容显示用户评价列表。景点信息 游客评价 查看详细地图 评价列表 这是一条评价信息 。 。 。 王小利 发表时间3.4.4 查看详细地图3.4.4.1 功能描述显示相应景点的地图。景点信息 游客评价 查看详细地图 用滚动视图放一个Imageview该图片可以拉动 。 。 。 3.4.5 当季景点排行3.4.5.1 功能描述显示当季排行前5名的景点。3.4.6 景点推荐 3.4.6.1 功能描述客户端主页面由管理员自定义推荐若干景点,提供文字链接。流程图:3.5好友管理模块3.5.1修改个人信息3.5.1.1 功能描述1. 登入进入个人中心。2. 可以点击进人修改个人信息。3.5.1.2 输入字段名数据类型是否为空默认值备注_IDint否主键PickNameVarchar否用户昵称UserNameVarchar否用户名PassWord Varchar否用户密码PhoneVarchar是手机号码SexInt否性别CityVarchar是城市E-mailVarchar否安全邮箱HeadImageVarchar是头像pswordProtect_IDint是对应的密码保护3.5.1.3 业务逻辑文字步骤用例名:修改个人信息执行者普通用户前置条件进入个人中心并点击了修改个人信息按钮基本路径 1.进入个人中心界面 2.点击修改按钮,输入数据3.判断数据是否合法。4.数据非法提示数据非法,数据合法,提示修改成功。5. 显示更新后的个人信息字段列表性别、手机号码、城市流程图 3.5.1.4输出1. 修改成功过后,在个人中心显示个人的新的用户信息。2. 未修改成功,提示数据非法3.5.2查看好友列表,动态,足迹,推荐3.5.2.1功能描述1. 显示好友列表,好友动态,好友足迹,好友推荐。样式如好友列表下面不在一一描述3.5.2.2输入无3.5.2.3业务逻辑文字步骤用例名:好友列表执行者普通用户前置条件进入个人中心并点击了好友列表按钮基本路径 1.进入个人中心界面 2.点击好友列表按钮。3.根据用户名查找数据库是否有好友4,有好友显示好友列表,没有提示用户尚未添加过好友字段列表用户名,好友用户名流程图 3.5.2.4输出1. 有好友显示好友列表2. 未有好友提示尚未添加好友3.5.2.5确认好友请求3.5.2.5.1 功能描述1. 确认或拒绝别人的好友请求3.5.2.5.2 输入 无3.5.2.5.3业务逻辑文字步骤用例名:确认好友请求执行者普通用户前置条件进人了好友列表,并点击了请求菜单按钮基本路径 1.进入好友列表2.点击好友列表按钮。3. 判断是否点击了拒绝或同意4.点击拒绝或同意按钮,数据库同步,未点击不做操作。字段列表用户名流程图 3.5.2.5.4输出 显示好友请求列表3.5.2.6添加好友3.5.2.6.1功能描述1. 根据用户查找的Id查找出相应的用户。2. 向用户添加过的好友发送好友请求。3.5.2.6.2输入字段名数据类型是否为空默认值备注_idint否自增主键f1int否好友1(外键)f2int否好友2(外键)typeint是0(好友)|1(专注者)3.5.2.6.3 业务逻辑文字步骤用例名:添加好友 执行者普通用户前置条件进人了好友列表,并点击了添加菜单按钮基本路径 1.进入好友列表2.点击好友添加菜单按钮。3.输入要添加的好友Id.并点击添加按钮。4. 判断好友Id是否存在5.不存在,提示该账户不存在,存在显示该用户。6.添加好友并发送好友请求字段列表用户名,好友用户名流程图3.5.2.6.4输出1.存在Id好友的列表,不存在提示该用户不存在。3.5.2.7查看好友信息3.5.2.7.1功能描述1查看好友的详细信息3.5.2.7.2输入从数据库中调用数据3.5.2.7.3业务逻辑文字步骤用例名:查看好友信息 执行者普通用户前置条件进人了好友列表,点击了查看好友信息.。 基本路径 1.进入好友列表2.点击了查看好友信息。3. 显示好友信息字段列表用户名,好友用户名,好友性别、好友手机号码、好友城市流程图3.5.2.7.4输出 好友信息3.5.2.8 删除好友3.5.2.8.1功能描述 1.删除好友。3.5.2.8.2输入无3.5.2.8.3业务逻辑文字步骤用例名:删除好友 执行者普通用户前置条件进人了好友列表,点击了删除好友。 基本路径 1.进入好友列表2.点击了删除好友。3. 根据选中的好友Id,删除数据库好友表对应的记录字段列表用户名,好友用户名 流程图3.5.2.8.4输出 在数据库添加新的关系数据3.5.2.9关注者列表3.5.2.9.1功能描述1显示关注者列表。3.5.2.9.2 输入无3.5.2.9.3业务逻辑文字步骤用例名:关注者列表执行者普通用户前置条件进入个人中心基本路径 1. 进入个人中心2.点击了关注者列表3. 根据用户名查找数据库是否有关注者4.有,显示关注者列表,没有,提示用户尚未有人关注字段列表用户名,关注者用户名3.5.2.9.4输出1. 存在关注者显示关注者列表。2. 不存在提示用户尚未有人关注。3.5.2.10关注别人3.5.2.10.1功能描述 1.关注别人3.5.2.10.2输入查看陌生人信息就把关系直接插入到关系数据库中3.5.2.10.3业务逻辑文字步骤用例名:关注其他用户执行者普通用户前置条件进入关注者列表基本路径 1.进入关注者列表2.点击了关注其他用户按钮3. 选中一个用户,点击了关注按钮,在数据库中做相应的更新,当时间过了一段时间系统自动的删除字段列表关注者用户名数据流程图3.5.2.10.4输出 关注成功。3.5.2.11查看关注者信息3.5.2.11.1功能描述 1.查看关注着信息。3.5.2.11.2输入无3.5.2.11.3 业务逻辑文字步骤用例名:查看关注者信息执行者普通用户前置条件进入关注者列表基本路径 1.进入关注者列表。2.点击查看关注者信息。3. 显示了关注者的详细信息字段列表用户名,关注者用户名,关注者性别、关注者手机号码、关注者城市。流程图3.5.2.11.4输出 关注者的详细信息3.6记忆管理模块 用例图修改记忆信息查看记忆信息足迹记忆列表增加足迹信息删除足迹信息修改足迹信息查看足迹信息个人记忆列表增加记忆信息删除记忆信息 3.6.1个人记忆列表 3.6.1.1功能描述 显示旅游过的历史记忆信息 3.6.1.2输入 点击旅游记忆按钮 3.6.1.3业务逻辑 当用户点击进入旅游记忆界面时,客户端发送一个获取旅游记忆的请求。请求参数为该用户 的ID;服务器接收用户ID,再通过该用户ID读取数据库对应的记忆表。返回一条或多条数据记录。将数据记录封装返回客户端。客户端获取相应的信息显示到对应的控件上。结束开始记忆管理向服务器发送请求查看数据库是否有历史记忆信息YN显示记忆信息列表提示用户NO MEMORY INFO! 流程图: 页面原型图:增加查看删除菜单退出景点图片景点图片景点图片景点图片标题景点描述标题景点描述标题景点描述标题景点描述删除增加查看菜单退出NO MEMORY INFO! 3.6.1.4输出输出个人记忆列表或无列表 3.6.2添加记忆信息 3.6.2.1功能描述 可以让用户在此景点写下他们的旅游记忆并保存起来!也可以添加多条在该景点的记忆信息。 3.6.2.2输入输出约束是否为空标题小于个字是景点图片不大于512kb是景点描述不大于100个字符是 3.6.2.3业务逻辑 用户进入记忆增加页面,填写基本参数验证成功后提交至服务器处理(参数有用户ID、记忆标题、景点描述、景点图片)。服务器调用相应方法接收参数然后把提交参数插入数据库,插入数据成功后给客户端返回一个结果码,插入失败则返回另外一个结果码,客户端根据服务器返回的结果码提示成功或失败。 流程图:开始结束点击增加填写即将发布的旅游记忆信息发送到服务器查看数据库是否有记忆信息显示记忆信息列表提示用户NO MEMORY INFO!YN标题:景点图片景点描述保存足迹返回 页面原型图: 3.6.2.4输出 输出标题景点图片景点描述 3.6.3修改记忆信息 3.6.3.1功能描述 单击记忆列表中的某条记忆信息时可以进入修改信息界面,对标题、景点图片、景点描述进行修改! 3.6.3.2输入输入约束是否为空标题(改或未改)小于个字是景点图片(改或未改)不大于512kb是景点描述(改或未改)不大于100个字符是 3.6.3.3业务逻辑 当用户选中某条旅游记忆时,客户端把旅游记忆ID存储在一个变量中,当用户点击修改后,跳到修改页面,修改基本参数验证成功后提交至服务器处理(参数有用户ID、记忆标题、景点图片、景点描述)。服务器调用相应方法接收参数然后把提交参数更新数据库,更新数据成功后给客户端返回一个结果码,更新失败则返回另外一个结果码,客户端根据服务器返回的结果码提示成功或失败。 流程图:开始结束点击某条已存在的记忆信息修改即将发布的旅游记忆信息发送到服务器查看数据库信息是否有更新显示已更新的记忆信息显示未更新记忆信息列表YN 页面原型图:标题:景点图片景点描述修改删除返回景点图片景点描述保存修改删除返回标题 3.6.3.4输出输出标题(改或未改)景点图片(改或未改)景点描述(改或未改) 3.6.4删除记忆信息 3.6.4.1功能描述 可以删除已有的旅游记忆信息 3.6.4.2输入输入长按某条记忆,单击删除菜单 3.6.4.3业务逻辑 当用户选中某条旅游记忆,客户端把记忆ID存储在一个变量中,当用户点击删除后,客户端发送一个删除记忆的请求,请求参数为存储在变量里的记忆ID,服务器接收记忆ID,再通过该记忆ID删除记忆表中相对应的数据。删除数据成功后给客户端返回一个结果码,删除失败则返回另外一个结果码,客户端根据服务器返回的结果码提示成功或失败 流程图: YN结束开始记忆信息列表是否有一个图标按钮长按某条旅游记忆信息删除有图标的按钮没有标记任何记录长按一条记录即可标记 页面原型图:删除增加查看菜单退出景点图片景点图片景点图片景点图片标题景点描述标题景点描述标题景点描述标题景点描述图标图标图标 3.6.4.4输出输入该条记忆不在列表中3.6.5查看记忆信息 3.6.5.1功能描述 可以通过标题来显示相对应的旅游记忆信息列表,可以是一条或者是多条。 3.6.5.2输入输入约束是否为空标题小于个字是 3.6.5.3业务逻辑 当用户输入某条记忆标题时,客户端把记忆ID存储在一个变量中客户端发送一个获取个人记忆的请求。请求参数为该记忆的ID;服务器接收记忆ID,再通过该记忆ID读取数据库对应的记忆表和足迹表。返回条数据记录,将数据记录封装返回客户端。客户端获取相应的信息显示到对应的控件上。 流程图:NY显示出相应的记忆信息列表不会显示相应记忆信息列表结束点击查看时,会在查看上方显示一个输入框,输入标题记忆信息列表向服务器发送请求开始查看数据库是否有相应的标题信息 删除增加查看菜单退出显示出与标题相应的旅游记忆列表输入想要查看的旅游记忆标题 页面原型图: 3.6.5.4输出输出相应的标题列表.3.6.6足迹记忆列表 3.6.6.1功能描述 显示出该旅游者所在某个景点所旅行过的地方(足迹)、地理信息及该地方的一些详情。 3.6.6.2输入 单击某条记忆的足迹按钮 3.6.6.3业务逻辑 当用户点击增加记忆并点击足迹按钮时进入该条记忆的足迹列表,客户端发送获取该记忆的足迹列表的请求。请求参数为该记忆的ID,服务器接收记忆ID,再通过该记忆ID读取数据库对应的足迹表。返回一条或多条数据记录。将数据记录封装返回客户端。客户端获取相应的信息显示到对应的控件上。 流程图:开始选中某条记忆,单击足迹按钮向服务器发送查询请求是否有足迹?将数据返回到客户端显示在相应的控件上显示默认设好的界面结束YN 页面原型图:增加删除查看返回菜单足迹标题足迹内容 位置信息足迹列表 3.6.6.4 输出 选中的足迹列表或空表3.6.7增加足迹信息 3.6.7.1功能描述 增加旅游者所在该景点所留下的足迹 3.6.7.2输入输入约束是否为空足迹标题小于个字是位置信息不大于50字符是足迹内容不大于100个字符是 3.6.7.3业务逻辑 当用户点击增加按钮后进入增加页面,填写基本参数验证成功后提交至服务器处理(参数有记忆ID、足迹标题、足迹描述、位置信息)。服务器调用相应方法接收参数然后把提交参数插入数据库,插入数据成功后给客户端返回一个结果码,插入失败则返回另外一个结果码,客户端根据服务器返回的结果码提示成功或失败。 流程图: YN结束开始填写足迹基本信息数据验证成功后向服务器发送插入请求查看数据库是否有足迹信息显示足迹信息列表提示用户NO SCAPE!记忆标题:位置信息:足迹内容保存返回页面原型图: 3.6.7.4输出输入足迹标题位置信息足迹内容 3.6.8修改足迹信息 3.6.8.1功能描述