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