安卓平台软件APP系统概要设计说明书

上传人:z*** 文档编号:62895420 上传时间:2022-03-16 格式:DOC 页数:53 大小:8.18MB
收藏 版权申诉 举报 下载
安卓平台软件APP系统概要设计说明书_第1页
第1页 / 共53页
安卓平台软件APP系统概要设计说明书_第2页
第2页 / 共53页
安卓平台软件APP系统概要设计说明书_第3页
第3页 / 共53页
资源描述:

《安卓平台软件APP系统概要设计说明书》由会员分享,可在线阅读,更多相关《安卓平台软件APP系统概要设计说明书(53页珍藏版)》请在装配图网上搜索。

1、安卓平台软件APP系统概要设计说明书 目 录1 Introduction 简介51.1 Purpose 目的51.2 Scope 范围51.2.1 Name 软件名称51.2.2 Functions 软件功能51.2.3 Applications软件应用61.3 Reference 参考资料62 High Level Design 概要设计72.1 Level 0 Design Description 第0层设计描述72.1.1 软件系统上下文定义72.1.2 Design Considerations设计思路72.2 Level 1 Design Description 第1层设计描述82.

2、2.1 System Architecture系统结构82.2.1.1 Description of the Architecture系统结构描述82.2.1.2 Representation of the Business Flow业务流程说明92.2.2 Decomposition Description分解描述252.2.2.1 模块1名252.2.2.1.1 功能一名252.2.2.1.2 功能二名262.2.2.2 模块2名262.2.3 Interface Description接口描述272.2.3.1 XX接口1272.2.3.2 XX接口2273 Data Structure

3、 数据结构/Database Design 数据库设计283.1 概念模型283.2 数据库表设计283.3 存储过程设计283.4 视图设计283.5 触发器设计283.6 函数设计283.7 基础数据配置294 UI Design 界面设计304.1 界面1304.2 界面1305 Error Design 出错处理设计31 Page 2 of 53 Keywords 关键词:社交、附近搜索、定位、百度地图、活动。Abstract 摘 要:该文档详细描述了本项目的需求分析,为以后的详细设计和编码奠定功能需求基础和方向。List of abbreviations 缩略语清单: Abbrevi

4、ations缩略语Full spelling 英文全名Chinese explanation 中文解释LBSLocation Based Service基于位置服务DBDataBase数据库E-R图Entity Relationship Diagram实体-联系图sqliteSqlite轻量级数据库Tcp/IpTransport Control Protocol/Internet Protocol计算机网络通信的协议族工业标准HttpHyperText Transfer Protocol超文本传输协议JDKJava Development KitJava 语言软件开发工具包SDKSoftwar

5、eDevelopmentKit软件开发工具包1 Introduction 简介1.1 Purpose 目的目的:本文档是为了说明整个项目的整体结构。方便开发人员从整体上把握软件的结构。针对人员:开发人员1.2 Scope 范围1.2.1 Name 软件名称久违了,朋友1.2.2 Functions 软件功能活动模块我发起的活动创建活动在活动列表中创建一个由你发起的活动。活动修改修改你创建的活动的名称与内容。活动删除删除一个你创建的活动。好友的活动参加活动参加一个由你的好友创建的活动。评论活动评论好友创建的活动。退出活动退出一个你已参加的活动。消息模块接收活动信息接收好友的活动邀请、变更、删除信

6、息等。LBS信息定位模块用户地理定位定位当前用户的地理位置。附近搜索根据当前的用户位置搜索附近的餐馆、KTV等。线路导航根据当前位置和终点位置自动规划线路。好友位置搜索搜索好友的位置1.2.3 Applications软件应用如今有许多人和以前的好朋友,好同学的联系和见面机会渐渐少了,友谊就慢慢变淡了。为了使朋友之间在空闲时间能够保持联系并组织各种活动以维持和加深以前的友谊开发了此软件。本软件大多应用于分开时间较长的同学、朋友、同事之间一起参加活动。用于活动的组织,统计,以及相互讨论。1.3 Reference 参考资料1.v9.8470.2775.2_Project Start Report

7、_V1.0v9.8470.2775.2_Software Project Planning_V1.0v9.8470.2775.2_ Software Requirement Specification_V1.02.李华明(2011) Android游戏编程之从零开始 清华大学出版社3.百度地图应用开发 百度地图API android之socket编程实例Page 4 of 53 Copyright Ruankosoft Technologies(Shenzhen) Co., Ltd. 2 High Level Design 概要设计 2.1 Level 0 Design Description

8、 第0层设计描述2.1.1 软件系统上下文定义2.1.2 Design Considerations设计思路(1)、架构设计图(2)、程序结构图2.2 Level 1 Design Description 第1层设计描述2.2.1 System Architecture系统结构2.2.1.1 Description of the Architecture系统结构描述2.2.1.2 Representation of the Business Flow业务流程说明2.2.1.2.1 注册账号2.2.1.2.2 登录和退出2.2.1.2.3 注销账号2.2.1.2.4 查找添加好友2.2.1.2.

9、5 删除好友2.2.1.2.6 参加活动2.2.1.2.7 评论活动2.2.1.2.8 退出活动2.2.1.2.9 创建活动2.2.1.2.10 修改活动2.2.1.2.11 删除活动2.2.1.2.12 地理定位2.2.1.2.13 附近搜索2.2.1.2.14 线路导航2.2.2 Decomposition Description分解描述2.2.2.1 通信模块1、简介该模块负责客户端与服务器端之间的通信,客户端使用java的socket技术、服务器端使用mfc的csocket技术。2、功能列表本模块主要包括打开服务器端通信以及打开客户端通信。2.2.2.1.1 打开服务器端通信1 功能设

10、计描述本功能用于创建服务器端的通信结构,等待和处理客户端发来的信息。(1)类1)C久违服务器Dlg该类存在于服务器端,用于提供给管理员一个服务器界面并与管理员进行交互,管理员可以打开和关闭服务器,以及查看当前登录用户的个数和账号信息和登录时间。2)CServerSocket该类存在于服务器端,用于接受并处理客户端发来的信息。(2)类与类之间关系 (3)文件列表如下表所示。名称类型存放位置说明ServerSocket.hC+久违服务器/头文件/ ServerSocket.hCServerSocket类的成员变量和函数的声明部分ServerSocket.cppC+久违服务器/源文件/ Server

11、Socket.cppCServerSocket类的成员函数顶一部分久违服务器Dlg.hC+久违服务器/头文件/久违服务器Dlg.hC久违服务器Dlg类的成员变量和函数的声明部分久违服务器Dlg.cppC+久违服务器/源文件/久违服务器Dlg.cppC久违服务器Dlg类的成员函数的定义部分2 功能实现说明2.2.2.1.2 打开客户端通信1 功能设计描述本功能用于打开客户端通信,请求与服务器端的连接或者向服务器端发送信息以及接收服务器端发回的信息并进行广播。(1)类1)client该类继承于线程,用于打开收发信息的线程。2)getMsg该类继承于service类用于打开客户端client线程。2

12、)inputThread该类继承于线程,用于接收服务器端发来的信息。2)outputThread该类继承于线程,用于发送信息到服务器端。(2)类与类之间关系 (3)文件列表如下表所示。名称类型存放位置说明client.javajava/LongTimeNoSee/src/com/example/longtimenosee/In_OutThread/client.java客户端线程类,用于启动收发信息线程。getMsg.javajava/LongTimeNoSee/src/com/example/longtimenosee/Service/getMsg.java服务类,用于启动客户端线程以及广播

13、信息inputThread.javajava/LongTimeNoSee/src/com/example/longtimenosee/In_OutThread/inputThread.java接收信息线程类,用于接收服务器端发来的信息。outputThread.javajava/LongTimeNoSee/src/com/example/longtimenosee/In_OutThread/MessageListener.java发送信息线程类,用于发送信息到服务器端。2 功能实现说明2.2.2.2 登录、注册、个人资料设置模块1、简介本模块实现了登录、注册和个人资料的补全和更改功能,数据上传

14、存储到服务器端。2、功能列表本模块主要包括注册新的账号、登录自己账号、个人资料的补全和更改。2.2.2.2.1 登录功能1 功能设计描述本功能将账号和密码信息发送到服务器端、等待服务器端的验证和回复,验证成功则登录成功,否则失败。2 类1)MainActivity该类提供给用户一个UI交互界面,负责将账号密码信息发送到服务器并等待服务器回复,验证成功则跳转到软件主界面,否则进行错误提示。3 类与类之间关系4 文件列表如下表所示。名称类型存放位置说明MainActivity.javajava/LongTimeNoSee/src/com/example/longtimenosee/Activity

15、/MainActivity.java提供给用户界面以及向服务器发送账号和密码等待回复,并进行不同的操作。5 功能实现2.2.2.2.2 注册功能1 功能设计描述本模块提供UI界面并负责把注册信息发送到服务器,等待服务器验证和回复。2 类1)registerActivity该类提供给用户UI界面并负责发送注册信息到服务器,等待服务器的验证和回复。3 类与类之间关系4 文件列表如下表所示。名称类型存放位置说明RegisterActivity.javajava/LongTimeNoSee/src/com/example/longtimenosee/Activity/registerActivity.

16、java提供给用户ui界面并且发送注册信息到服务器端等待服务器端的验证和回复,根据回复进行不同的提示或处理。5 功能实现 2.2.2.2.3 个人信息设置模块1 功能设计描述本模块提供一个个人信息的补全或者更改的功能。2 类1)info_selfActivity该类提供给用户一个UI界面并且把信息发送到服务器端等待服务器端的验证和回复。3 类与类之间关系4 文件列表如下表所示。名称类型存放位置说明Info_selfActivity.javajava/LongTimeNoSee/src/com/example/longtimenosee/Activity/info_selfActivity.ja

17、va该类提供给用户一个UI界面并且把信息发送到服务器端等待服务器端的验证和回复。5 功能实现 2.2.2.3 社交模块1、简介本模块实现了增加、删除、查看好友资料和好友聊天的功能。2、功能列表功能包括增加好友、删除好友、查看好友资料、好友聊天。2.2.2.3.1 增加好友1 功能设计描述本功能提供一个本软件的用户列表,用户可以查看用户信息并进行请求添加。2 类1)addFriendActivity该类提供一个列表UI界面,用户可以查看使用本软件的用户列表。2)user_self_infoActivity该类提供一个用户个人信息界面,用户可以查看该用户的个人信息以及发出添加好友的请求。3 类与类

18、之间关系4 文件列表如下表所示。名称类型存放位置说明addFriendActivity.javajava/LongTimeNoSee/src/com/example/longtimenosee/Activity/addFriendActivity该类提供给用户一个所有用户的列表。user_self_infoActivity.javaJava/LongTimeNoSee/src/com/example/longtimenosee/Activity/user_self_infoActivity该类提供一个用户个人信息界面,用户可以发出添加好友请求。5 功能实现2.2.2.3.2 查看好友个人资料与

19、删除1 功能设计描述本模块提供给用户一个好友列表以及好友个人资料页面,在个人资料页面中可以进行好友删除。2 类1)FriendMainFragment该类提供给用户一个好友列表2)friend_self_info_Activity该类提供给用户一个好友个人资料页面,用户可以在资料页面中进行好友删除。3 类与类之间关系4 文件列表如下表所示。名称类型存放位置说明FriendMainFragment.javajava/LongTimeNoSee/src/com/example/longtimenosee/Fragment/registerActivity.java该类提供给用户一个好友列表。fri

20、end_self_info_Activity.javajava/LongTimeNoSee/src/com/example/longtimenosee/Activity/ friend_self_info_Activity.java该类提供一个好友资料页面,并提供删除功能。5 功能实现 2.2.2.3.3 好友聊天1 功能设计描述本模块提供一个好友聊天功能。2 类1)chatActivity该类提供给用户一个聊天界面并且可以发送信息给好友以及接收好友的信息。3 类与类之间关系4 文件列表如下表所示。名称类型存放位置说明chatActivity.javajava/LongTimeNoSee/sr

21、c/com/example/longtimenosee/Activity/chatActivity y.java该类提供给用户一个UI界面并且把信息发送到服务器端等待服务器端的验证和回复。5 功能实现 2.2.2.4 活动模块1、简介本模块实现了创建、修改、查看、参加、和撤销以及评论活动的功能。2、功能列表功能包括创建活动、修改活动、查看活动信息、对活动进行点赞和评论、以及撤销一项活动。2.2.2.4.1 创建活动和修改活动1 功能设计描述本模块提供给用户一个活动信息设置界面,用户可以填写或者更改活动信息,并上传到服务器中。2 类1)createActivity该类提供给用户一个活动信息设置界

22、面,用户可以创建一个新活动或者更改已有的活动信息。3 类与类之间关系4 文件列表如下表所示。名称类型存放位置说明createActivity.javajava/LongTimeNoSee/src/com/example/longtimenosee/Activity/createActivity.java该类提供给用户一个活动信息设置界面,用户可以创建一个新活动或者更改已有的活动信息。5 功能实现 2.2.2.4.2 查看活动资料、参加、退出、点赞和评论活动1 功能设计描述本模块随着用户角色的状态提供不同的按钮、用户未参加状态提供参加按钮、用户已参加状态提供退出活动按钮。另外用户可以进行活动点赞

23、和评论。2 类1)partyFragment该类提供一个活动分组列表界面,分为我创建的活动和我参加的活动、好友活动三个分组。2)partyInfoActivity该类提供一个活动资料的界面,根据用户的状态提供不同的功能。3 类与类之间关系4 文件列表如下表所示。名称类型存放位置说明partyFragment.javajava/LongTimeNoSee/src/com/example/fragment/partyFragment.java该类提供一个活动分组列表PartyInfoActivity.javajava/LongTimeNoSee/src/com/example/longtimeno

24、see/Activity/PartyInfoActivity.java该类提供一个活动资料的界面,根据用户的状态提供不同的功能5 功能实现2.2.2.5 消息接收与推送模块1、简介本模块实现了消息的接收、推送和提醒的功能。2、功能列表功能包括因为接收离线状态时遗留在服务器端的信息,以及接收实时信息并且进行提示或者消息推送。2.2.2.5.3 动态信息的接收、提示、提供回复1 功能设计描述对于动态信息,本模块实时接收动态信息并且进行提示,用户可以进入动态页面进行查看动态,并且对于请求类的信息可以做出回复。对于聊天信息,本功能主要是当不再聊天界面是负责接收聊天信息并且保存到本地数据库中,进行提示。

25、2 类1)MyApplication该类提供一个消息实时接收并且存储到本地数据库的功能,并且负责当软件不在前台时进行消息推送。2)MsgFragment该类提供一个动态显示页面,并且提供请求类信息的回复功能。3 类与类之间关系4 文件列表如下表所示。名称类型存放位置说明MyApplication.javajava/LongTimeNoSee/src/com/example/longtimenosee/Activity/MyApplication.java该类提供一个消息实时接收并且存储到本地数据库的功能,并且负责当软件不在前台时进行消息推送MsgFragment.javajava/LongTi

26、meNoSee/src/com/example/fragment/partyFragment.java该类提供一个动态显示页面,并且提供请求类信息的回复功能5 功能实现2.2.2.5 地图模块1、简介本模块实现了地图显示,定位和附近搜索以及导航的功能。2、功能列表功能包括地图显示、定位、附近搜索、线路导航。2.2.2.5.1 地图显示和定位1 功能设计描述本模块实现地图显示和定位。2 类1)MyMapActivity该类提供给用户一个地图页面,方便用户查看地图。2)GetLocationActivity该类在地图的基础上实现定位的功能。3 类与类之间关系4 文件列表如下表所示。名称类型存放位置

27、说明MyMapActivity.javajava/LongTimeNoSee/src/com/android/mapelves/org/MyMapActivity.java该类提供给用户一个地图页面,方便用户查看地图GetLocationActivity.javajava/LongTimeNoSee/src/com/android/mapelves/org/getlotion/GetLocationActivity.java该类在地图的基础上实现定位的功能5 功能实现2.2.2.5.2 附近搜索与导航1 功能设计描述本模块随着用户角色的状态提供不同的按钮、用户未参加状态提供参加按钮、用户已参加

28、状态提供退出活动按钮。另外用户可以进行活动点赞和评论。2 类1)MyNearbyInfoMapActivity该类提供附近搜索在地图上显示和线路导航的功能。2)NearbyInfoActivity该类提供提供附近搜索信息的界面。3)SearchActivity该类提供附近搜索的功能。3 类与类之间关系4 文件列表如下表所示。名称类型存放位置说明MyNearbyInfoMapActivity.javajava/LongTimeNoSee/src/com/android/mapelves/org/MyNearbyInfoMapActivity.java该类提供附近搜索在地图上显示和线路导航的功能N

29、earbyInfoActivity.javajava/LongTimeNoSee/src/com/android/mapelves/org/NearbyInfoActivity.java该类提供提供附近搜索信息的界面SearchActivity.javajava/LongTimeNoSee/src/com/android/mapelves/org/SearchActivity.java该类提供附近搜索的功能5 功能实现2.2.2.5 消息接收与推送模块1、简介本模块实现了消息的接收、推送和提醒的功能。2、功能列表功能包括因为接收离线状态时遗留在服务器端的信息,以及接收实时信息并且进行提示或者消

30、息推送。2.2.3 Interface Description接口描述百度地图API是为开发者免费提供的一套基于百度地图服务的应用接口。2.2.3.1 百度地图接口Name名称:百度地图APIDescription说明:百度地图API是为开发者免费提供的一套基于百度地图服务的应用接口。 Definition定义:此百度地图API为Android版,为android设备地图应用开发提供基本地图、本地搜索、路线规划、定位、导航等服务。用户使用该套SDK,需要先申请key。3 Data Structure 数据结构/Database Design 数据库设计3.1 概念模型E-R图如下:关系模式如下

31、:3.2 数据库表设计表userLogin:表friendList:表comment:表msg:表party:表partyList:3.3存储过程设计存储过程是一组为了完成特定功能的SQL语句集,是利用SQLServer所提供的Transact-SQL语言所编写的程序。经编译后存储在数据库中。存储过程是数据库中的一个重要对象,用户通过制定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是由流控制和SQL语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,存储过程可由应用程序通过一个条用来执行,而且允许用户声明变量。同时,存储过程可以接收和输出参数、返回执行存储过程的

32、状态值,也可以嵌套调用。3.4触发器设计触发器是SQLServer人员提供了一种保证数据库中数据完整性的方法的一种特殊存储过程,它为应用程序开发。一个触发器由事件、条件和动作3部分组成。在触发器中,事件是指对数据库的Insert、Update、Delete等操作,触发器在这些事件发生时开始工作,对于一个表可以同时有多个触发器。条件是触发器能否触发执行的依据。 4 UI Design 界面设计4.1 登录界面1 界面原图2 界面说明界面存在账号和密码的编辑框,登录按钮,和可以供选择的记住密码选择框。在登陆页面还可以跳转到注册页面。同时,账号可以保存在本地的数据库中,通过向下拉的箭头可以选择。4.

33、2 好友界面1 界面原图2 界面说明在好友界面可以显示当前所添加的所有好友以及好友的部分信息包括昵称和好友账号。4.3 聊天界面1 界面原图1 界面说明在聊天界面会显示自己发送的内容和好友发过来的内容。4.4 活动界面1 界面原图2 界面说明在活动页面会分组显示我创建的活动和好友的活动以及已经参加的活动,点击每个活动可以静茹详细的活动资料页面,可以报名活动以及进行点赞和评价。4.5 消息动态界面1 界面原图 2 界面说明在动态页面会实时显示有关于用户的动态,例如好友对自己创建的活动进行点赞和评论后,本界面会提示、友别人添加用户为好友的时候会提示好友是否验证通过、有好友发来聊天内容时,本页面会出

34、现提示;4.6 定位/导航界面1 界面原图 2 界面说明定位界面会自动定位到当前位置,导航页面会有起点和终点的输入框,起点会自动提示为“我的位置”。4.7 附近搜索界面1 界面原图 2 界面说明当点击附近后,会弹出附近的各种选项,点击每个选项后会弹出和选项相关的类型供用户选择,选择完毕后点击搜索会出现选好提供的地址4.8 活动资料界面1 界面原图 2 界面说明详细活动界面包括用户自己创建的活动的界面,在此界面上包含活动名称内容以及时间地点、用户自身也可以对活动进行点赞和评论;详细的活动界面还包括好友创建的活动界面,在此界面上用户可以对好友创建的活动进行点赞和评论也可以报名参见好友创建的活动;每

35、个详细页面的右上方都有一个活动简介按钮可以跳转到活动的介绍部分。4.9 个人资料设置界面1 界面原图2 界面说明在个人资料设置界面可以修改和完善个人信息,更换昵称和头像完善个人简介等。4.10 搜索界面1 界面原图2 界面说明在好友和活动页面的上面都存在一个搜索框,可以进行搜索好友和活动,搜索时是按照关键字模式显示与输入内容相关的活动信息或者好友信息。 Page 53 of 53 5 Error Design 出错处理设计在软件系统的开发过程中,需要对软件中存在的漏洞立即进行处理,即使一个很小的漏洞,也会造成整个软件开发系统的垃圾资源无限增多,最终可能会导致系统的瘫痪。因此在系统设计中,对拟开

36、发系统要注意数据的约束性。为了进行数据统一收集和规范数据统一格式方面管理者的处理,针对存在的安全隐患,本项目组进行了统一约束规范。同时,项目组也应该解决服务器端的信息安全问题,这样才能更好的运用管理系统,从而减少系统的维修次数,确保系统的安全使用。对于客户端不符合系统设计预期的错误输入,应该在客户端给以提示,以避免错误的请求数据对后端产生影响。而对于服务端可能产生的异常或错误,系统应该以友好的方式告知用户,不应直接将系统抛出的异常信息等呈现给用户。具体如下表所示:错误层次错误类型解决方案客户端错误用户输入与数据类型不相符的数据客户端以友好的方式提示用户对输入数据进行检查无网络连接提示用户恢复网络连接重复注册或空登陆提示用户用户名不存在或者用户已注册服务端错误数据库连接失败及时恢复数据库连接服务器访问压力过大采取服务器负载均衡技术,同时调整服务器性能程序运行中抛出的异常信息将请求数据和错误异常记录到Log日志,同时告知客户端

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!