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

下载本文档

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

文档简介

1、1引言31.1 编写目的31.2 背景31.3 定义31.4 参考资料42总体设计41 需求规定41 运行环境51 基本设计概念和处理流程51 结构61 功能器求与程序的关系91 人工处理过程91 尚未问决的问题93接口设计101.1 用户接口101.2 外部接口101.3 内部接口104运行设计104.1 运行模块组合104.2 运行控制104.3 运行时间105系统数据结构设计111 逻辑结构设计要点111 物理结构设计要点111 数据结构与程序的关系116系统出错处理设计12出错信息12补救措施12系统维护设计127天气信息功能模块设计说明12程序描述12功能13性能13输人项13输出项

2、13算法13流程逻辑13接口13存储分配13注释设计13限制条件14测试计划14尚未解决的问题148万年历功能模块设计说明14程序描述14功能14性能14输人项15输出项15算法15流程逻辑15接口15存储分配15注释设计15限制条件15测试计划16尚未解决的问题169日程表功能模块设计说明16程序描述16功能16性能16输人项16输出项16算法17流程逻辑17接口17存储分配17注释设计17限制条件17测试计划17尚未解决的问题17概要设计说明书1引言编写目的目的经过对“出行小贴士”项目进行详细调查研究,初步拟定项目实现报告,明确开发风险及其所带来的经济效益,对软件开发中将要面临的问题及其解

3、决方案进行可行性分析。预期读者程序开发人员,小组成员,指导老师,以及对本“出行小贴士”有兴趣的爱好者。背景项目名称:出行小贴士用户:任何需要即时获取天气和日历信息的android智能手机用户工程组织者:指导教师-张强老师,开发小组-肖立坤及小组各成员说明:现在的android应用市场中有众多的天气预报软件和万年历APP;其中只有少数APP将二者相结合,但是对于这两个方面的实现程度都并不够精细(作为一个信息提供平台但是信息提供不够详细)。也就是说目前的所有APP并不能满足用户对于详细天气信息和万年历信息的随时随地的获取,需要有一个精细,方便,简单的万年历/天气预报获取APP定义安卓APP:基于安

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

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

6、;日程表模块则根据用户事先输入的日程表信息和一部分条件,当天气、时间等信息更新时进行判断,并返回判断结果以及其对应的处理方式。运行环境a.出行小贴士的运行平台是android系统平台,同时最低运行版本为android4.0.3,故需要一台系统版本在android4.0.3以上的手机才可运行外存容量、联机或脱机、媒体及其存储格式,设备的型号及数量。b.由于部分功能依赖于网络数据,故需要良好的网络环境。基本设计概念和处理流程结构出行小贴士日程表功能模块万年历功能模块日程表编辑日程表添加日程表提醒服务器天气预报接口#求/接收并返回数天气信息功能模块包括:天气信息获取,天气信息显示,定位三部分。1)b

7、)天气信息获取:c)天气信息显示:2)万年历功能模块a)定位:通过调用Android的GPS功能获取当前所在位置。通过向服务器发出请求获取对应位置天气信息O向用户显示对应天气信息。万年历功能模块包括获取系统日期时间,计算万年历信息,显示万年历信息三部分。a)获取系统日期时间:通过函数调用获取当前的系统时间和日期。b)计算万年历信息:通过一定的算法获取对应日期的万年历信息。c)显示万年历信息:将处理完毕的万年历信息显示出来。3)日程表功能模块日程表功能模块包括创建日程表,修改日程表,判断日程表条件。a)创建日程表:创建某天的日程表。b)修改日程表:更改日程表的内容。c)判断日程表条件:通过天气信

8、息等条件,对即将发生的日程表事件进行判断,判断是否适合进行该事件。功能器求与程序的关系天气信息获取万年历地址信息获取日程表信息录入大入彳口息提小V万年历信息V日程表V7V7V7人工处理过程本软件系统的工作过程中,唯一需要的人工操作是定期的对服务器和软件进行维护和更新。尚未问决的问题尚未解决的问题主要是:天气信息的获取渠道,目前指定的方案有:从一部分天气信息网上扒取信息;获取一定的接口,从接口中获取数据。3接口设计用户接口用户在使用该软件时,可以直接通过点击界面中的对应按钮进行操作,只有当用户当前网络不可用以及GPS定位服务不可用的情况下会进行错误提示,其他可能的错误操作都会在进行设计时进行避免

9、。外部接口本软件并不调用其他的Android应用,同时在服务器方面只是进行对于天气信息的获取以及更新相应的数据库条目。客户端调用了百度提供的定位SDK。内部接口天气信息模块和万年历模块都会在日程表模块调用时提供所需的数据,同时在天气信息模块进行信息更新时,会访问保存在本地数据库中的日程表中对应的信息进行条件判断。4运行设计运行模块组合不同的模块除了在主界面会显示缩略信息外,其他情况下同一时间用户只能使用一个功能模块。但是各个模块在内部功能实现时具有相互调用的关系。运行控制运行控制方面,在Android端会通过界面引导使用户执行正确的操作,在用户做出可能的错误操作时也能进行对应的响应和提示。运行

10、时间说明每种运行模块组合将占用各种资源的时间。APP运行占用时间最多的是。5系统数据结构设计逻辑结构设计要点服务器天气数据字典:属性名存出代码回备注省ProvinceInt省代码市CityInt市代码小WeatherInt天气代码最低温度L_TempInt最低温度最高温度H_TempInt最高温度风级L_WindInt风的级数湿度W_humidityInt空气湿度客户端日程表字典:属性名存出代码回备注省ProvinceInt省代码市CityInt市代码适宜天气B_WeatherInt对应活动最适宜的天气开始时间S_timeDate活动开始时间结束时间E_timeDate活动结束时间活动名Nam

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

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

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

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

15、明对本程序进行单体测试的计划,包括对测试的技术要求、输入数据、预期结果、进度安排、人员职责、设备条件驱动程序及桩模块等的规定。尚未解决的问题说明在本程序的设计中尚未解决而设计者认为在软件完成之前应解决的问题。万年历功能模块设计说明从本章开始,逐个地给出各个层次中的每个程序的设计考虑。以下给出的提纲是针对一般情况的。对于一个具体的模块,尤其是层次比较低的模块或子程序,其很多条目的内容往往与它所隶属的上一层模块的对应条目的内容相同,在这种情况下,只要简单地说明这一点即可。程序描述给出对该程序的简要描述,主要说明安排设计本程序的目的意义,并且,还要说明本程序的特点(如是常驻内存还是非常驻?是否子程序

16、?是可重人的还是不可重人的?有无覆盖要求?是顺序处理还是并发处理等)。功能说明该程序应具有白功能,可采用ipo图(即输入一处理一输出图)的形式。性能说明对该程序的全部性能要求,包括对精度、灵活性和时间特性的要求。输入项给出对每一个输入项的特性,包括名称、标识、数据的类型和格式、数据值的有效范围、输入的方式。数量和频度、输入媒体、输入数据的来源和安全保密条件等等。输由项给出对每一个输出项的特性,包括名称、标识、数据的类型和格式,数据值的有效范围,输出的形式、数量和频度,输出媒体、对输出图形及符号的说明、安全保密条件等等。算法详细说明本程序所选用的算法,具体的计算公式和计算步骤。流程逻辑用图表(例

17、如流程图、判定表等)辅以必要的说明来表示本程序的逻辑流程。接口用图的形式说明本程序所隶属的上一层模块及隶属于本程序的下一层模块、子程序,说明参数赋值和调用方式,说明与本程序相直接关联的数据结构(数据库、数据文卷)。存储分配根据需要,说明本程序的存储分配。注释设计说明准备在本程序中安排的注释,如:e.加在模块首部的注释;f.加在各分枝点处的注释;g.对各变量的功能、范围、缺省条件等所加的注释;h.对使用的逻辑所加的注释等等。限制条件说明本程序运行中所受到的限制条件。测试计划说明对本程序进行单体测试的计划,包括对测试的技术要求、输入数据、预期结果、进度安排、人员职责、设备条件驱动程序及桩模块等的规

18、定。尚未解决的问题说明在本程序的设计中尚未解决而设计者认为在软件完成之前应解决的问题。功能模块设计说明从本章开始,逐个地给出各个层次中的每个程序的设计考虑。以下给出的提纲是针对一般情况的。对于一个具体的模块,尤其是层次比较低的模块或子程序,其很多条目的内容往往与它所隶属的上一层模块的对应条目的内容相同,在这种情况下,只要简单地说明这一点即可。程序描述给出对该程序的简要描述,主要说明安排设计本程序的目的意义,并且,还要说明本程序的特点(如是常驻内存还是非常驻?是否子程序?是可重人的还是不可重人的?有无覆盖要求?是顺序处理还是并发处理等)。功能说明该程序应具有白功能,可采用ipo图(即输入一处理一输出图)的形式。性能说明对该程序的全部性能要求,包括对精度、灵活性和时间特性的要求。输入项给出对每一个输入项的特性,包括名称、标识、数据的类型和格式、数据值的有效范围、输入的方式。数量和频度、输入媒体、输入数据的来源和安全保密条件等等。输由项给出对每一个输出项的特性,包括名称、标识、数据的类型和格式,数据值的有效范围,输出的形式、数量和频度,输出媒体、对输出图形及符号的说明、安全保密条件等等。算法详细说明本程序所选用的算法,具体的计算公式和计算步骤。流程逻辑用图表(例如流程图、判定表等)辅以必要的说明来表示本程序的逻辑流程。接口用图的形式说明本程序所隶属的上一

温馨提示

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

评论

0/150

提交评论