《总体设计30581.pdf》由会员分享,可在线阅读,更多相关《总体设计30581.pdf(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、总体设计说明书 1.引言 编写目的 在手机导航系统项目的前一阶段,也就是需求分析阶段中,已经将系统用户对本系统的需求做了详细的阐述,这些用户需求已经在上一阶段中对手机公司、及市场的实地调研中获得,并在需求规格说明书中得到详尽得叙述及阐明。本阶段已在系统的需求分析的基础上,对手机导航系统做概要设计。主要解决了实现该系统需求的程序模块设计问题。包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。在以下的概要设计报告中将对在本阶段中对系统所做的所有概要设计进行详细的说明。在下一阶段的详细设计中,程序设计员可参考此概要设计报告,在概要设计对手机
2、导航系统所做的模块结构设计的基础上,对系统进行详细设计。在以后的软件测试以及软件维护阶段也可参考此说明书,以便于了解在概要设计过程中所完成的各模块设计结构,或在修改时找出在本阶段设计的不足或错误 项目背景 本项目(手机导航系统)是由兴趣小组自行开发,由杨晓兰、陈瑶、刘李凌负责开发。手机导航系统将由地图、路线、图片存储数据库、三维数据等组成。定义 131 专门术语 Oracle:系统服务器所使用的数据库管理系统(DBMS)。SQL:一种用于访问查询数据库的语言 事务流:数据进入模块后可能有多种路径进行处理。主键:数据库表中的关键域。值互不相同。外部主键:数据库表中与其他表主键关联的域 外部主键:
3、数据库表中与其他表主键关联的域。ROLLBACK:数据库的错误恢复机制。132 缩写 系统:若未特别指出,统指手机导航系统。SQL:Structured Query Language(结构化查询语言)。ATM:Asynchronous Transfer Mode(异步传输模式)。参考资料 以下列出在概要设计过程中所使用到的有关资料:1 基于 Android 手机导航系统的研究与设计论文 百度文库 2013/3 2 手机导航系统项目开发计划 导航软件开发小组 2013/12 3 需求规格说明书 导航软件开发小组 2013/12 4 用户操作手册(初稿)导航软件开发小组 2013/12 5 软件工
4、程及其应用 周苏、王文等 天津科学技术出版社 2013/12 6 软件工程 彭 重庆大学出版社 2013/12 文档所采用的标准是参照软件工程导论沈美明著 的“计算机软件开发文档编写指南”。2 任务概述 21 目标 本系统的主要功能包括手机实时定位,指定地点的寻址,规划导航路径,个人位置跟踪、监视、展示的应用程序。22 运行环境 系统基于安卓系统,采用规范、严谨而且服务到位,且安全性非常高的 Oracle 23 需求概述 为方便身处陌生环境的手机用户,需开发一个手机导航系统。为便于用户外出,负责为用户提供线路,把需要导航的用户的要求,包括目的地址、选择交通工具、周边食物、外出时间、目的地、住宿
5、、输入手机导航系统的客户端程序,系统经过查询地图数据服务器后,为用户查询出路线,并让用户自行寻找采用何种方式到达目的地,如果是选择虚拟导游指路。用户在出发前,先设置虚拟导游人物各个属性,使之实现投影为之带路。要求系统能有效、快速、安全、可靠和无误的完成上述操作。并要求客户机的界面要简单明了,易于操作,服务器程序利于维护。24 条件与限制(1)开发平台和开发工具。(2)GPS 不依赖网络工作。手机只要内置 GPS,就可以实现非联网条件下卫星定位不插手机卡、没有 wifi、关闭GPRS数据情况下照样可以工作。(3)手机屏幕是否够大,屏幕太小了,看不清楚,用起来很不方便。(4)地图要能更新,每年道路
6、都会有变化,比如新修了路,单双行线的调整等等。(5)确定其是 GPS 手机,还是 A-GPS 手机,GPS 手机精度高,A-GPS 手机精度略低。3.总体设计 处理流程 系统流程图 手机导航系统 用户操地图管路径管照相定虚拟导 3.2 总体结构和模块外部设计 模块间的关系 用户模块向地图模块、照片模块、虚拟导游请求服务,地图模块向路径模块请求服务;经过信息确认后地图模块、照片模块、虚拟导游模块向用户模块提供服务,路径模块向地图模块提供准确的服务。如此实现各模块间的相互交互,以达到功能的实现。功能分配 各项功能与程序结构关系 用户的功能是请求服务,地图、照相定位、虚拟导游功能主要是根据用户的需求
7、提供相应的准确服务。4.接口设计 41 外部接口 411 用户界面 在用户界面部分,根据需求分析的结果,用户需要一个用户友善界面。在界面设计上,应做到简单明了,易于操作,并且要注意到界面的布局,应突出的显示重要以及出错信息。外观上也要做到合理化。在设计语言上,已决定使用 JAVA 进行编程,在界面上可使用 JAVA 所提供的可视化组件。其中服务器程序界面要做到操作简单,易于管理。在出错显示上可调用 JAVA 库中的错误提示函数。总的来说,系统的用户界面应作到可靠性、简单性、易学习和使用。412 软件接口 服务器程序可使用 JAVA 提供的对 Oracle 的接口,进行对数据库的所有访问。服务器
8、程序上可使用Oracle 的对数据库的备分命令,以做到对数据的保存。在网络软件接口方面,使用一种无差错的传输协议,采用滑动窗口方式对数据进行网络传输及接收。413 硬件接口 在输入方面,对于键盘、鼠标的输入,可用 JAVA 的标准输入/输出,对输入进行处理。在输出方面,也可用 JAVA 的标准输入/输出对其进行处理。在网络传输部分,在网络硬件部分,为了实现高速传输,将使用高速 ATM。42 内部接口 内部接口方面,各模块之间采用函数调用、参数传递、返回值的方式进行信息传递。具体参数的结构将在下面数据结构设计的内容中说明。接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块
9、间传输。5.数据结构设计 51 数据库数据结构设计 DBMS 的使用上系统将采用 Oracle,系统主要需要维护 3 张数据表:1 实时定位信息表 经度 纬度 距离(当前位置离目的地有多远)定位信息表保存了已定位信息。在用户移动过程中将用到此表,移动后修改本表信息 2 图片信息表 ID 图片名称 图片信息表保存用户拍摄的图片。它的外部主键为ID。主要用于图片定位中的图片匹配操作。3 虚拟人物信息表 编号 外貌 动作 声音 虚拟人物信息表保存虚拟人物的具体信息。它的外部主键为编号。主要用于导航时确定人物信息,并返回。52 物理数据结构设计 物理数据结构设计主要是设计数据在模块中的表示形式。数据在
10、模块中都是以结构的方式表示。1 位置信息 1经度 INT 2纬度 INT 用于定位时接收输入,以及移动时接收输入。2 导航信息 起点用于定位是接收输入,终点用户输入。3 网络包 用于数据在网络上的传输。4 错误信息 用于关于错误操作。5 图片信息 用于存储图片工作。1.起点 String 2.目的地 String 1.网络包 Head INT 1.错误类型 INT 1ID INT 2图片名称 String 6 虚拟人物信息 用于虚拟导航准备工作。53 数据结构与程序的关系 服务器程序在对定位/导航进行操作时需对数据库数据结构,也就是数据表进行查询和修改:在定位/导航过程中都需要对数据库中的所有表,进行联合查询、修改。物理数据结构主要用于各模块之间函数的信息传递。接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间传输。1 编号 INT 2 人物姓名 String 3 外貌 String 4 性格 String