出行小贴士APP概要设计说明书_第1页
出行小贴士APP概要设计说明书_第2页
出行小贴士APP概要设计说明书_第3页
出行小贴士APP概要设计说明书_第4页
出行小贴士APP概要设计说明书_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1引言3 1.1编写目的3 1.2背景3 1.3定义3 1.4参考资料4 2总体设计4 2.1需求规定4 2.2运行环境5 2.3基本设计概念和处理流程 5 2.4结构6 2.5功能器求与程序的关系 9 2.6人工处理过程9 2.7尚未问决的问题9 3接口设计10 3.1用户接口 10 3.2外部接口 10 3.3内部接口 10 4运行设计10 4.1运行模块组合 10 4.2运行控制10 4.3运行时间10 5系统数据结构设计 11 5.1逻辑结构设计要点11 5.2物理结构设计要点 11 5.3数据结构与程序的关系 11 6系统出错处理设计 12 6.1出错信息12 6.2补救措施12 6

2、.3系统维护设计12 7天气信息功能模块设计说明 12 7.1程序描述12 7.2功能13 7.3性能13 7.4输人项13 7.5输出项13 7.6算法13 7.7流程逻辑13 7.8 接口 13 7.9存储分配13 7.10注释设计13 7.11限制条件14 7.12测试计划14 7.13尚未解决的问题 14 8万年历功能模块设计说明 14 8.1程序描述14 8.2功能14 8.3性能14 8.4输人项15 8.5输出项15 8.6算法15 8.7流程逻辑15 8.8 接口 15 8.9存储分配15 8.10注释设计15 8.11限制条件15 8.12测试计划16 8.13尚未解决的问题

3、 16 9日程表功能模块设计说明 16 9.1程序描述16 9.2功能16 9.3性能16 9.4输人项16 9.5输出项16 9.6算法17 9.7流程逻辑17 9.8 接口 17 9.9存储分配17 9.10注释设计17 9.11限制条件17 9.12测试计划17 9.13尚未解决的问题 17 概要设计说明书 1引言 1.1编写目的 1.1.1目的 经过对“出行小贴士”项目进行详细调查研究,初步拟定项目实现报告,明 确开发风险及其所带来的经济效益,对软件开发中将要面临的问题及其解决方案 进行可行性分析。 1.1.2预期读者 程序开发人员,小组成员,指导老师,以及对本“出行小贴士”有兴趣的爱

4、 好者。 1.2背景 1.2.1项目名称:出行小贴士 1.2.2用户:任何需要即时获取天气和日历信息的an droid智能手机用户 1.2.3工程组织者:指导教师-张强老师,开发小组-肖立坤及小组各成员 1.2.4说明:现在的an droid应用市场中有众多的天气预报软件和万年历APR 其中只有少数APP将二者相结合,但是对于这两个方面的实现程度都并不够精细 (作为一个信息提供平台但是信息提供不够详细)。也就是说目前的所有APP并 不能满足用户对于详细天气信息和万年历信息的随时随地的获取,需要有一个精 细,方便,简单的万年历/天气预报获取APP 1.3定义 安卓APP:基于安卓系统的移动开发应

5、用程序 1.4参考资料 软件工程导论(第6版) 张海潘 牟永敏 编著清华大学出版社 2总体设计 2.1需求规定 出行小贴士分为三大功能模块:天气信息功能模块、万年历功能模块、日程表功能模块。 天气信息功能模块主要用于实现天气信息的及时提供,以及之后为日程表模块提供一部 分数据。它的输入为用户的地理信息, 输出为天气信息。为日程表模块中天气判断功能提供 数据。 万年历功能模块主要用于实现基本的日历提醒(包括公历和农历),以及日程表中时间 的提供。它基于一部分 an droid的系统函数,输入为当前的日期,输出为农历日期以及部分 节气、传统节日距现在天数。 日程表功能模块用于实现在用户事先设定日程

6、表的前提下,对用户进行时间的提醒, 事 件天气的提醒(若设定事件进行需要晴天,当天气预报为阴或者雨雪天时会进行提醒)。该 模块的实现依赖于前两个功能模块提供的数据。 INPUT输入 PROCESS 处理 OUTPUT输出 LOAD负载量 用户地理信息(通过 GPS定位获取) 提交到服务器,在数 据库查询 对应地区的天气信息 根据服务器性能而定 日程信息 存储在本地数据库, 在天气等信息更新时 进行判断处理 在对应条件成立时使 用toast进行提醒 在本地进行数据处理, 在数据更新时会对所有 条件进行判断 出行小贴士需要输入的模块有天气信息模块和日程表模块。天气信息模块在用户需求或 者服务器提示

7、信息更新时会发送用户地理信息到服务器,经过服务器处理后,返回当地的气 象信息。 日程表模块则根据用户事先输入的日程表信息和一部分条件,当天气、时间等信息更新 时进行判断,并返回判断结果以及其对应的处理方式。 2.2运行环境 a. 出行小贴士的运行平台是an droid系统平台,同时最低运行版本为an droid 4.0.3,故 需要一台系统版本在an droid 4.0.3以上的手机才可运行外存容量、联机或脱机、媒 体及其存储格式,设备的型号及数量。 b. 由于部分功能依赖于网络数据,故需要良好的网络环境。 2.3基本设计概念和处理流程 2.4结构 *日程表提醒 天气信息功能模块 极端天气通知

8、 天气信息获取 并显示 服务器发送请求获取天气信1天气预报接口 发送请求/接收并返回数 据 天气信息功能模块包括: 天气信息获取,天气信息显示,定位三部分。 a) 定位:通过调用 An droid的GPS功能获取当前所在位置。 b) 天气信息获取:通过向服务器发出请求获取对应位置天气信息。 c) 天气信息显示:向用户显示对应天气信息。 2)万年历功能模块 万年历功能模块包括获取系统日期时间,计算万年历信息,显示万年历信息三部分。 a)获取系统日期时间:通过函数调用获取当前的系统时间和日期。 b)计算万年历信息:通过一定的算法获取对应日期的万年历信息。 c)显示万年历信息:将处理完毕的万年历信息

9、显示出来。 3)日程表功能模块 日程表功能模块包括创建日程表,修改日程表,判断日程表条件。 a)创建日程表:创建某天的日程表。 b)修改日程表:更改日程表的内容。 c)判断日程表条件:通过天气信息等条件, 对即将发生的日程表事件进行判断,判断 是否适合进行该事件。 2.5功能器求与程序的关系 天气信息获取 万年历 地址信息获取 日程表信息录入 天气信息提示 V 万年历信息 V 日程表 V V V V 2.6人工处理过程 本软件系统的工作过程中,唯一需要的人工操作是定期的对服务器和软件进行维护和更 新。 2.7尚未问决的问题 尚未解决的问题主要是:天气信息的获取渠道,目前指定的方案有: 从一部分

10、天气信息 网上扒取信息;获取一定的接口,从接口中获取数据。 3接口设计 3.1用户接口 用户在使用该软件时, 可以直接通过点击界面中的对应按钮进行操作,只有当用户当前 网络不可用以及 GPS定位服务不可用的情况下会进行错误提示,其他可能的错误操作都会 在进行设计时进行避免。 3.2外部接口 本软件并不调用其他的 An droid应用,同时在服务器方面只是进行对于天气信息的获取 以及更新相应的数据库条目。客户端调用了百度提供的定位SDK。 3.3内部接口 天气信息模块和万年历模块都会在日程表模块调用时提供所需的数据,同时在天气信息 模块进行信息更新时,会访问保存在本地数据库中的日程表中对应的信息

11、进行条件判断。 4运行设计 4.1运行模块组合 不同的模块除了在主界面会显示缩略信息外,其他情况下同一时间用户只能使用一个功 能模块。但是各个模块在内部功能实现时具有相互调用的关系。 4.2运行控制 运行控制方面,在An droid端会通过界面引导使用户执行正确的操作,在用户做出可能 的错误操作时也能进行对应的响应和提示。 4.3运行时间 说明每种运行模块组合将占用各种资源的时间。 APP运行占用时间最多的是。 5系统数据结构设计 5.1逻辑结构设计要点 服务器天气数据字典: 属性名 存出代码 类型 备注 省 Provi nee Int 省代码 市 City Int 市代码 天气 Weathe

12、r Int 天气代码 最低温度 L_Temp Int 最低温度 最高温度 H_Temp Int 最高温度 风级 L_Wind Int 风的级数 湿度 W_humidity Int 空气湿度 客户端日程表字典: 属性名 存出代码 类型 备注 省 Provi nee Int 省代码 市 City Int 市代码 适宜天气 B_Weather Int 对应活动最适宜的天 气 开始时间 S_time Date 活动开始时间 结束时间 E_time Date 活动结束时间 活动名 Name Varehar 活动名称 活动地点 E Loeatio n varehar 活动发生地点 5.2物理结构设计要点

13、服务器天气数据保存在服务器端的数据库中,每过一定周期进行更新。在用户需求数据 时,数据进行加密传输。 客户日程表字典保存在用户本地数据库,根据用户需求进行变更。 5.3数据结构与程序的关系 用户通过天气信息功能模块获取天气信息(从服务器获取数据),用户在日程表功能模 块更改日程表信息。同时在客户端在判断条件成立时会进行事件是否合适的提示(天气、时 间等因素的不合适时会进行提示)。 6系统出错处理设计 6.1出错信息 错误类型 原因 解决方法 网络连接失败 用户端网络连接出现问题 P提示用户检查网络连接 定位失败 用户GPS功能未开启 提示用户打开GPS功能 6.2补救措施 我们对于本程序可能发

14、生的错误进行了分析,分别进行了不同的处理。 主要的错误可能有: a. 网络连接失败:除了连接失败外,还有可能出现连接超时,有可能是用户关闭了网 络连接功能或者处在信号差的环境中,提示用户打开网络连接功能或者提示用户重 试。 b. 定位失败:有可能是用户处于不可定位的位置或者未打开GPS功能,提示用户打开 GPS功能或者重试。 6.3系统维护设计 服务器端数据库每过一定的周期进行更新,并且在一定时间后进行备份。这样有利于服 务器维护的自动化和简单化。 客户端本地数据库管理依赖于用户的使用习惯。当客户端卸载时,数据库会删除,防止 数据被泄露。 7天气信息功能模块设计说明 7.1程序描述 该模块主要

15、用于获取用户所在位置的天气信息 (包括温度,湿度,天气,风级等信息), 一方面向用户提供完整及时的信息, 另一方面为之后的功能模块提供部分重要信息。 在获取 信息方面,是在后台进行信息的发送和获取。 7.2功能 说明该程序应具有的功能,可采用ipo图(即输入一处理一输出图)的形式。 7.3性能 说明对该程序的全部性能要求,包括对精度、灵活性和时间特性的要求。 7.4输人项 给出对每一个输入项的特性, 包括名称、标识、数据的类型和格式、数据值的有效范围、 输入的方式。数量和频度、输入媒体、输入数据的来源和安全保密条件等等。 7.5输出项 给出对每一个输出项的特性,包括名称、标识、数据的类型和格式

16、,数据值的有效范围, 输出的形式、数量和频度,输出媒体、对输出图形及符号的说明、安全保密条件等等。 7.6算法 详细说明本程序所选用的算法,具体的计算公式和计算步骤。 7.7流程逻辑 用图表(例如流程图、判定表等)辅以必要的说明来表示本程序的逻辑流程。 7.8 接口 用图的形式说明本程序所隶属的上一层模块及隶属于本程序的下一层模块、子程序,说 明参数赋值和调用方式,说明与本程序相直接关联的数据结构(数据库、数据文卷)。 7.9存储分配 根据需要,说明本程序的存储分配。 7.10注释设计 说明准备在本程序中安排的注释,如: a. 加在模块首部的注释; b. 加在各分枝点处的注释; c. 对各变量

17、的功能、范围、缺省条件等所加的注释; d. 对使用的逻辑所加的注释等等。 7.11限制条件 说明本程序运行中所受到的限制条件。 7.12测试计划 说明对本程序进行单体测试的计划,包括对测试的技术要求、 输入数据、预期结果、进 度安排、人员职责、设备条件驱动程序及桩模块等的规定。 7.13尚未解决的问题 说明在本程序的设计中尚未解决而设计者认为在软件完成之前应解决的问题。 8万年历功能模块设计说明 从本章开始,逐个地给出各个层次中的每个程序的设计考虑。以下给出的提纲是针对一 般情况的。对于一个具体的模块,尤其是层次比较低的模块或子程序,其很多条目的内容往 往与它所隶属的上一层模块的对应条目的内容

18、相同,在这种情况下,只要简单地说明这一 点即可。 8.1程序描述 给出对该程序的简要描述, 主要说明安排设计本程序的目的意义,并且,还要说明本程 序的特点(如 是常驻内存还是非常驻?是否子程序?是可重人的还是不可重人的?有无覆 盖要求?是顺序处理还是并发处理等)。 8.2功能 说明该程序应具有的功能,可采用ipo图(即输入一处理一输出图)的形式。 8.3性能 说明对该程序的全部性能要求,包括对精度、灵活性和时间特性的要求。 8.4输人项 给出对每一个输入项的特性, 包括名称、标识、数据的类型和格式、数据值的有效范围、 输入的方式。数量和频度、输入媒体、输入数据的来源和安全保密条件等等。 8.5

19、输出项 给出对每一个输出项的特性,包括名称、标识、数据的类型和格式,数据值的有效范围, 输出的形式、数量和频度,输出媒体、对输出图形及符号的说明、安全保密条件等等。 8.6算法 详细说明本程序所选用的算法,具体的计算公式和计算步骤。 8.7流程逻辑 用图表(例如流程图、判定表等)辅以必要的说明来表示本程序的逻辑流程。 8.8 接口 用图的形式说明本程序所隶属的上一层模块及隶属于本程序的下一层模块、子程序,说 明参数赋值和调用方式,说明与本程序相直接关联的数据结构(数据库、数据文卷)。 8.9存储分配 根据需要,说明本程序的存储分配。 8.10注释设计 说明准备在本程序中安排的注释,如: e.

20、加在模块首部的注释; f. 加在各分枝点处的注释; g. 对各变量的功能、范围、缺省条件等所加的注释; h. 对使用的逻辑所加的注释等等。 8.11限制条件 说明本程序运行中所受到的限制条件。 8.12测试计划 说明对本程序进行单体测试的计划,包括对测试的技术要求、 输入数据、预期结果、进 度安排、人员职责、设备条件驱动程序及桩模块等的规定。 8.13尚未解决的问题 说明在本程序的设计中尚未解决而设计者认为在软件完成之前应解决的问题。 9日程表功能模块设计说明 从本章开始,逐个地给出各个层次中的每个程序的设计考虑。以下给出的提纲是针对一 般情况的。对于一个具体的模块,尤其是层次比较低的模块或子程序,其很多条目的内容往 往与它所隶属的上一层 模块的对应条目的内容相同,在这种情况下,只要简单地说明这一 点即可。 9.1程序描述 给出对该程序的简要描述,主要说明安排设计本程序的目的意义,并且,还要说明本程 序的特点(如 是常驻内存还是非常驻?是否子程序?是可重人的还是不可重人的?有无覆 盖要求?是顺序处理还是并发处理等)。 9

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论