当前位置:文档之家› APRS客户端软件系统设计与开发

APRS客户端软件系统设计与开发

APRS客户端软件系统设计与开发
APRS客户端软件系统设计与开发

目录

摘要 (1)

Abstract (1)

前言 (2)

第一章APRS基础 (3)

1.1APRS的历史与发展 (3)

1.2APRS基本系统组成与设备 (3)

1.2.1 APRS基本系统组成 (3)

1.2.2 APRS的设备 (4)

1.3 APRS工作原理与运用 (5)

1.4 APRS的协议 (6)

1.4.1 APRS-IS (6)

1.4.2 APRS数据格式 (7)

1.5 本章小结 (9)

第二章APRS客户端软件系统总体设计 (10)

2.1 编程语言与程序类型选择 (10)

2.2 地图类型选择 (12)

2.3 功能介绍 (14)

2.4 模块划分 (15)

2.5 本章小结 (17)

第三章APRS客户端软件系统详细开发 (18)

3.1 网页编程模块详细开发 (18)

3.2 Swing编程模块详细开发 (21)

3.2.1 类开发 (21)

3.2.2 技术难点及解决之法 (25)

3.3 Socket编程模块详细开发 (29)

3.3.1 类开发 (29)

3.3.2 技术难点及解决之法 (31)

3.4 本章小结 (33)

第四章总结 (34)

参考文献 (35)

APRS客户端软件系统设计与开发

摘要

APRS是自动位置报告系统(Automatic Position Reporting System)的简称,它是业余无线电操作者能迅速的将实时事件的相关数据发布出去,并在接收端的计算机上图形化的表示这些数据的软硬件系统。自从1992年诞生以来,APRS 得到了很大的发展,在很多领域都有了广泛的应用。而一个以包含Java Applet 的网页形式进行发布的APRS客户端软件系统,一定会因为它的使用方便,以至于能让没有任何无线电知识和计算机知识的人都可以顺利使用而大受欢迎,这也将有助于APRS的继续发展和普及。

关键词

APRS,自动位置报告系统,客户端,Java,Applet,Swing,Socket,Servlet

Abstract

APRS is short for Automatic Position Reporting System.It is a software and hardware system that can be used by amateur radio operators to send the data about real-time events rapidly and show the data on the receiver’s computers graphically.Since it was born in 1992,APRS has gained a great progress and has been used in a lot of areas.An APRS client software system released in the form of web pages which contain Java Applet must be popular for its convenience.People without any knowledge about radio and computer also can use the system successfully,which is helpful to APRS’s continuing development and popularization.

Key Words

APRS, Automatic Position Reporting System, client, Java, Applet, Swing, Socket, Servlet

前言

APRS客户端软件系统是APRS的重要组成部分,它是直接与用户进行交互的部件,它的好坏直接影响用户对整个APRS系统的评价。我们的目标是设计开发一个使用极其简便,只要会上网的人都可以使用的APRS客户端软件系统。本文分四个章节对本系统的设计开发进行的介绍,第一章介绍了APRS的基本知识,使大家可以认识APRS;第二章对系统进行了总体设计,把系统划分为三个模块;第三章分模块对系统进行了详细的开发,介绍了每个模块中重要的类以及开发过程中遇到的技术难题的解决;第四章对整个毕业设计进行了总结。

第一章APRS基础

要设计和开发APRS客户端软件,就必须先要了解什么是APRS。APRS是自动位置报告系统(Automatic Position Reportig System)的简称,它是一项新兴

的业余无线电活动内容,业余无线电操作者能迅速的将实时事件的相关数据发布出去,并在接收端的计算机上图形化的表示这些数据的软硬件系统。

它将无线电数据通信、全球卫星定位系统(GPS)、计算机和因特网有机结合,引起了众多业余无线电爱好者的兴趣。它不仅提供了诸如位置跟踪、气象信息等有用的服务,而且在业余无线电应急通信(ARES)以及紧急遇险救援时发挥重要作用,同时APRS还为技术爱好者提供了一个广阔的平台,许多其它应用都等待着我们的进一步开发。

1.1APRS的历史与发展

1992年,被称为“APRS之父”的美国爱好者Bob Bruninga,WB4APR在APRL和TAPR数字通信会议第一次引入了APRS的名称。初期的APRS是完全建立在传统业余无线电分组通信的基础上的。1999年美国爱好者Steve Dimse,K4HG引入了APRS第一个因特网的接口,APRS的传输媒介出现了无线分组通信和因特网共存的局面。APRS软件和硬件的迅速增加印证了APRS的飞速发展。从1992年到1999年,只出现了6个应用软件,而现在,应用软件的数量已然超过20个。新版的TNC一般都增加了对GPS和APRS的支持。另外,一些新的专门为APRS设计的硬件也日益增多,比如兼容TAPR TNC2的UIDIGI,它烧入ROM后可将旧的TAPR TNC2改造成专门用于APRS的数字中继,又如Tinytrak,它将GPS数据转换成无线分组通信的发射音调,专门用于设置APRS 发射台。

1.2APRS基本系统组成与设备

1.2.1 APRS基本系统组成

APRS基本系统包含:全球定位系统(GPS)接收器、分组终端节点控制器(TNC)、业余无线电(电台、天线)、计算机和APRS软件。

图1.1 APRS基本系统组成

GPS接收器只要含有NMEA-0183格式的数据输出都能用于APRS。APRS 不需要任何特殊的电台设备。任何能通过无线电管理部门检测,频率稳定,话音失真比较小的电台设备都可使用。用于APRS的计算机的规格需求也因不同的APRS软件版本而异,市场上近几年的计算机一般都可应用于APRS。在计算机上连接设置TNC或GPS,目前还常常通过计算机的串口来完成。现在很多笔记本电脑上不配备串口,则只能通过USB转串口线来解决。USB端口的TNC和GPS现也已出现。如果你希望将APRS电台同时作为IGate,则性能稳定的因特网宽带接入是必须的。TNC可使用硬件解决,也可通过计算机声卡和软件来虚拟TNC。

APRS的软件很多,可在Mac、PC、笔记本和PDA上工作,运行于LINUX、MAC、WINDOWS、DOS等操作系统。以下是三个基于Windows系统的软件。

UI-View 32bit V2.03是由已故英国爱好者G4IDE开发。支持Windows 98/2000/XP,功能强大,风靡欧洲,正席卷全球。也是国内爱好者使用最多的软件。

WinAPRS是美国最为流行的APRS软件,支持精确地图。

AGWPE声卡TNC是SV2AGW的作品,界面完全图形化,非常美观,操作简便。但占用大量CPU资源,运行慢。

其它软件还有MacAPRS、APRS/CE、XASTIR等等。

1.2.2 APRS的设备

APRS的设备大抵分为APRS电台、无线数字中继、APRS网关、APRS服务器等。

在整个APRS中,各电台地位是均等的,既可以把自己的位置数据发给所有的电台,也可以接收来自所有电台的位置数据。我们把能接收和发送APRS数据包的电台称为APRS电台。APRS电台可以细分成几类。第一类是仅作发送的电台,比如,一个装在汽车上的不断发送经纬度数据的电台,一个不断发送气象信息的电台等。这种电台的构成包括数据源(GPS接收器、气象传感器等)、数据变换和处理器(即终端电台控制器TNC)和数据发送器(无线电发射机),TNC 的作用是将数据源的数据变换成APRS的格式,调制后送给发射机发送。第二种是仅作接收的电台,一个连接因特网并运行APRS软件的计算机就是最简单的接

收电台,在没有因特网接入的环境下,无线电接收机、TNC和单片机为核心的LCD 显示器或者笔记本电脑也可构成接收电台。这种电台的构成包括数据接收器(因特网或无线电接收机)、数据变换和处理器(TNC或者声卡加软件)、数据显示设备(运行软件的计算机或者单片机为核心的LCD显示器)。第三种就是接收和发送电台的合一,一个连接GPS接收机、连接因特网并运行APRS软件的计算机,一个终端加TNC加收发信机(即典型的分包通信设备)都可以成为收发合一的APRS电台。

由于电台的发射范围有限,所以人们在分组通信系统中采用了无线数字中继。无线数字中继实际上就是一个分组通信电台,只不过它只负责转发分组数据,不产生或者最终处理数据。

APRS中,业余无线分组网络与英特网的互联由IGate完成。它承担无线分组网络的AX.25分组与英特网上的TCP/IP分组的转换与转发。

APRS服务器提供APRS的英特网直接接入。也就是说,如果只是为了了解APRS,无需购买昂贵的终端节点控制器和电台,也就不必拥有电台执照,可以通过因特网接入APRS服务器,就可以向全球的APRS宣告你的存在,并查看全球APRS的所有信息。比如UI-View软件,支持无线分组-无线分组、无线分组-因特网、因特网-因特网三种方式的APRS通信。其最主要的功能是将接收到的APRS数据中的经纬度数据转换成电子地图上的物体并显示出来。当然,你可以通过周期性的向APRS服务器发送自己的APRS数据包告诉世界你的位置。

1.3APRS工作原理与应用

APRS系统使用无线分组通信(Packet Radio)将数据进行发布。在传统的无线分组通信操作中,通信是使用有连接分组基于一对一产生的,即,两个电台是虚拟的互相连接的。在APRS中,电台使用无连接分组基于一对多进行数据传播,类似于广播电台和听众的关系,所以,将“听众”的范围扩展到所有可以接收到该分组的电台。

APRS使用传统无线分组通信的“信标”(Beacon)功能完成这种模式的通信。一个APRS分组以某种特定格式包含电台位置(经度和纬度)和电台类型(家中的、便携的、移动的、数字中继、气象站等)信息,使处于接收APRS电台端的计算机上运行的软件可以处理包含的信息,并在地图上显示相对应的图标,显

示发信标电台的位置。如果APRS电台是那种处于移动之中的便携或者移动电台,当收到位置更新的新位置分组后,APRS在地图上改变图标的位置。

移动APRS电台包含一个普通电台、TNC和GPS(全球定位系统)接收器。GPS接收器接收地球轨道卫星信号自动计算其位置并传送给TNC,通过TNC的处理将位置数据转换成音频信号,此音频信号通过电台发送出去更新APRS接收端地图上移动APRS电台的位置。

在家庭固定APRS电台中,由于位置是固定的,一般不需要GPS接收器,只需要事先将家庭的经纬度数据设置到APRS应用软件中,当需要的时候,软件发送已事先设置的位置信息给TNC,TNC再转发给电台以便发射。

除了跟踪移动电台,APRS也可以向系统输入对象位置的方式跟踪任何对象。比如,你可以输入一个飓风的经纬度,则飓风的位置就可以出现在任何该信道的APRS电台的地图上。在气象应用中,你可以将气象监测设备的接口连接到APRS 电台以便向其它电台发布实时气象信息。APRS可使用数字中继(Digipeater)进行转信,扩大APRS使用区域。

为了将APRS传播到整个世界,有的APRS电台作为IGate(因特网网关)将接收到的APRS分组转发到因特网上的服务器。这些服务器将世界上实时的APRS数据搜集并转发,有的还提供Web页面的格式,以便让用户通过支持Java 的网络浏览器查看APRS活动。

1.4APRS的协议

1.4.1APRS-IS

图1-3 APRS-IS核心体系结构

APRS-IS(Automatic Position Reporting System-Internet Service)是一种基于Internet的网络的通称,这种网络相互连接了遍及全世界的各种APRS无线电网络。其中的APRS网关负责射频(RF)网络的AX.25分组和Internet网络的TCP/IP 分组的转换和转发。

1.4.2APRS数据格式

在链路层,APRS使用AX.25协议,专有的利用未编号信息(UI-Unnumbered Information)帧。这意味着APRS以无连接模式运行,AX.25帧被传送出去并不期望任何相应,另一端的接收也没有保证。

AX.25 UI帧的格式如图1-4所示。

图1-4 AX.25 UI帧格式

●Flag ——位于帧的两端,是个位串,值为0x7e,用来分隔每一个帧。

●Destination Address ——这个域可以包含一个APRS的目的地呼号或者

APRS数据。APRS数据被编码以保证这个域符合标准的AX.25呼号的格式(比如,6个数字或文字字符加上一个SSID)。如果SSID非零,它指定了一个普通的APRS数字中继路径。

●Source Address ——这个域包含发送电台的呼号和SSID。在某些情况下,

如果SSID非零,它指定了一个APRS显示的符号码。

●Digipeater Address ——包含0到8个数字中继的呼号。

●Control Field ——这个域被设为0x03(UI帧)。

●Protocal ID ——这个域被设为0xf0。

●Information Field ——这个域包含更多的APRS数据。第一个字符是APRS

数据类型标识符。

●Frame Check Sequence ——这个域用来校验收到的帧的完整性。

Source Address的SSID如图1-5所示。

图1-5

Destination Address的SSID如图1-6所示。

图1-6

Information Field如图1-7所示。

图1-7

1.5本章小结

APRS作为一种新兴的业余无线电活动,正被中国的业余无线电爱好者所关注。无论台湾、香港还是大陆的HAM们都已开始进行实践。在本章中,从APRS 的历史与发展开始,我们初步了解了APRS的硬件,软件,设备,工作原理,协议等方面,对APRS既有了整体的概念,也有了细节的理解,为设计开发良好的APRS客户端软件系统打下了基础。

第二章APRS客户端软件

系统总体设计

APRS客户端软件是APRS基本系统的重要组成部分,它主要负责电子地图的绘制和APRS电台的显示,完成自动位置报告的功能。如果没有APRS客户端软件的配合,硬件和其它软件的功能再强大也是无济于事的,因为用户无从得知APRS电台的位置,也就不存在自动位置报告了。为了避免APRS成为具有丰富无线电知识和计算机知识的专业人士的专利,为了让APRS普及到一般用户,一个简单易用、直观明了的APRS客户端软件就成了关键。我们的目标就是设计开发一个“傻瓜”型的APRS客户端软件系统,用户不必具有任何的无线电知识和

丰富的计算机知识,只要会上网,就可以顺利地使用。下面我们就从编程语言和程序类型的选择、地图类型的选择、功能介绍、模块划分几个方面对系统作一个总体设计。

2.1编程语言与程序类型选择

Java语言自从1996年2月SUN公司正式发布以来,因其广泛的用途及在Web上的独特功能,越来越来受到计算机程序员的喜爱,正在成为全世界成千上万的程序员广泛使用的现代技术。正如比尔·盖茨所说:“Java是有史以来最卓越的编程语言”。

Java语言可以创建三类程序:Application Program(应用程序)、Applet(小应用程序)、Handler(处理程序)。通常的应用程序(Application Program)是运行在本地计算机上的,即通过敲入命令或用鼠标双击来运行。Java的Applet不同于通常的应用程序,甚至不同于Java的应用程序。Applet是专门设计成在Web 页面中运行,它只能运行在浏览器环境内。

当一个Java Applet设计好后,必须嵌入到Web页面中。其方法是通过HTML 命令描述Applet,用HTML文件的标记来调用并且当Web浏览器载入Web页面时同时载入Applet。当用户访问这个页面时,它就被下载到用户的计算机中开始运行。因为Applet每次运行都必须从Web上下载到用户的计算机中,所以比Applet比大多数应用程序小,这样可以减少Applet的下载时间,故有人称Applet为小应用程序。

Java Applet的这一独特特点使得Java成为最适合于Web网络的编程语言。当然,测试小应用程序是可以在浏览器之外使用Applet Viewer工具运行,而不需要浏览器的辅助。这是为了有助于方便地开发程序,从而减少启动浏览器所需要的时间和内存。

安全性对于网络访问来说是至关重要的。病毒和黑客地频频出现使得上网的人们时常为安全而担忧。Java被认为是一种安全的语言。安全性是Java语言,特别是Java Applet的重要特性,是Java环境的最根本的部分。Java使我们能够创建没有病毒和黑客的系统。

Java具有对内存的保护。Java是比C/C++简单的编程语言。与C/C++相比,Java完全抛弃了指针,不需要使用指针就可以通过引用来传递所有的数组和对

象。这样做的结果是不可能进入内存地址,使程序不可能在内存的某个地址处偶然或人为地重写数据。这使得Java具有更高的安全性。

Java具有安全性检查。JVM在执行Applet字节码之前先检查它们。如果代码不是合法的Java代码,那么它就不执行。在异常的代码出现问题之前先阻塞它。比如,不允许进行对内存的非法访问、非法类访问和非法数据访问。因此,潜在的病毒就没有办法访问数据结构、对象和内存地址。

Applet访问资源有所限制。对于Applet来说,它的安全性还在于:所有的Java Applet程序都被当作是在受托的环境中执行未受托的代码。这就意味着从Web上下载的所有Applet程序都受限于它们到达用户机器中时他们可以做的事情。即使在通过字节码检查过程后,Applet程序也不可能访问用户计算机上的文件。它们不能在它们所在的Web服务器之外进行网络连接,这就防止了Applet 程序访问除了下载它们的站点以外的Web资源。作为附加的安全手段,Applet 程序被禁止执行任何代码(如外部代码库和应用程序)。

由于Applet只能在Web页面运行,导致Applet在组织结构上有某些独特的特点。Applet不在运行的线程的控制之下,它仅仅对浏览者或观察者的要求作出反应。这就是说,Applet具有响应事件的能力。对于特定事件(如:当包含Applet 的Web页被用户观察或离开时),Applet是通过调用一系列标准方法(methods)来处理的。

综上所述,虽然Applet的执行极受限制,通常被称为是“在沙盒里头做事情”,因为有个无形的家伙(Java执行期安全系统)时刻在进行监督。但是Applet 具有足够的优点来吸引我们的目光,还有就是Applet不再有安装的问题,它拥有真正与平台无关的能力,所以不需要为不同平台修改代码,也不会让你的用户因为安装而苦恼。Applet的这些优点正是我们设计开发“傻瓜”型的APRS客户端软件系统所需要的,所以我们选择用Java语言开发一个Applet类型的APRS 客户端软件系统,让用户以浏览网页的方式来使用。

2.2地图类型选择

地图是APRS客户端软件系统中最为基本的组成部分,它是自动位置报告的基础。没有地图的绘制,APRS电台的显示就没有任何意义。因为只有在地图上才能根据APRS电台的经纬度在对应的位置上画出电台的图标,完成自动位置报

告的功能。

APRS地图有两种类型:向量地图和光栅地图。向量地图是一个包含计算机用来根据要求绘制地图的原始数据的文件。线条和其它对象都被定义成坐标对的形式。向量地图的特征能够被动态编辑。向量地图的线条定义如下所示。光栅地图

B E G I N L I N E

32.744033,

-96.894967

-96.894833

32.744033,

-96.894767

32.743967,

-96.894767

32.743933,

-96.894767

32.743883,

-96.894767

32.743817,

32.743700,

-96.894700

-96.894617

32.743567,

-96.894567

32.743417,

-96.894517

32.743250,

-96.894483

32.743100,

-96.894417

32.743000,

32.742983,

-96.894300

E N D

主要是一幅地图图像和一个包含相关地理信息的文件。地图特征已经确定,很难再进行修改。地图图像文件的格式有.GIF,.JPG,GeoTiff等。光栅地图是UI-View 使用的地图类型,Xastir,WinAPRS等其它APRS客户端软件也能使用。

由于在中国UI-View是使用最为广泛的APRS客户端软件,它的地图已广为“Ham”们所熟悉,而且UI-View地图的屏幕坐标和经纬度之间的换算也比较容易,所以我们选择UI-View地图作为我们系统所使用的地图。UI-View地图有一个特征:地图的顶部是正北方向,经度随着X轴线性变化,纬度随着Y轴线性变化。如果不符合这个特征,在进行屏幕坐标和经纬度之间的换算时就会发生错误。UI-View地图和所有的光栅地图一样,包含一个地图图像文件和一个包含相关地理信息的文本文件。这个文本文件主要包含地图左上角和右下角的经纬度。例如图2-1所示的世界地图,它的对应文本文件内容为:

180.00.00W,90.00.00N

180.00.00E,90.00.00S

Base Map of The World

第一行表示左上角的经纬度,第二行表示右下角的经纬度,经度和纬度之间都用逗号隔开,W表示西半球,E表示东半球,N表示北半球,S表示南半球。经纬度采用DD.MM.mm的格式来表示,其中DD表示度,MM表示分的整数部分,mm表示分的小数部分。第三行是对地图的简单描述。

图2—1

2.3功能介绍

Internet的迅速崛起和在全球范围内的飞速发展,使万维网(World Wide Web 简称WWW或Web)成为高效的全球性的信息发布渠道。这一技术正在以很快的速度进入每家每户,它将地球变成一个小小的村落。这给了APRS普及的机会。要让缺乏无线电知识和计算机知识的人也能使用APRS,除了Internet上众多APRS服务器的强力支持外,一个使用简单、功能完善的APRS客户端也是必不可少的。根据需求,APRS客户端必须具备以下的基本功能:

●地图显示

在客户端上要能直观的定位被跟踪的物体的位置,实现自动位置报告的功能,那么地图的显示是必不可少的。没有地图,就没有经纬度的概念,任何的定位之说也就成了无稽之谈。

●地图选择

要能准确的定位所有APRS电台的位置,一张世界地图是不可能完成的。由于世界地图的图片大小有限,经纬度就非常的密集,很多的APRS电台图标

就会发生重叠,不能清晰的显示出来。所以客户端必须具备能让用户根据自己的需求选择不同地图的功能,通过一个下拉列表框就可以顺利解决。

●地图移动

客户端的窗口具有一定的大小,而地图通常会比较大,不可能全部显示出来。

为了能让用户看到地图因客户端的窗口太小而被遮盖的部分,就必须具有地图移动的功能。通过鼠标的托拽,地图可以自由的移动,这是一个用户早已习惯的设计。

●地图定位

地图上的每一点都有其确定的位置坐标(经纬度)。用户在观察地图的时候经常会想知道某一些点的经纬度,尽管那些位置并没有APRS电台的出现。

让鼠标在地图上移动时自动报告各点的经纬度,就可以很容易的实现地图定位地功能。用户想知道哪一点的经纬度,只需要把鼠标移到那一点就可以了。

●APRS电台显示

APRS电台的显示是客户端最为关键的部分,只有在地图上显示出APRS电台的图标才能让用户得知被跟踪物体的位置。我们要根据从服务器端接收的数据包中APRS电台的经纬度在地图上的相应位置进行APRS电台图标的绘制。

●APRS电台信息查询

一个APRS电台除了经纬度之外还有很多其它的信息,比如源电台的呼号和SSID、目标电台的呼号和SSID、时间戳、评论等。通过鼠标双击地图上APRS 电台图标,显示出相应APRS电台的所有信息是一个很重要也很有价值的功能。

2.4模块划分

我们正在忙碌地建设我们生活的这个世界,而且我们正在电脑空间建立我们物理空间的复制品,网络上甚至有了可以存款的银行。互联网已经渗透到各行各业,信息高速公路上奔驰着越来越多的信息。随着Internet技术的不断发展和人们对APRS的需求,利用Internet在Web上发布APRS数据,为用户提供APRS 的各种服务,已经成为众望所归的选择。

根据如图2-2所示的APRS系统结构图,可以把APRS客户端系统划分为

以下几个模块:

1.包含Applet的网页编程模块

用户通过HTTP协议请求包含Applet的HTML页面,当浏览器遇到这一对标记时,就下载相应的Applet代码并在本地计算机上执行。虽然这一模块非常简单,但是它是必不可少的。在这一模块中,可以对网页进行美工方面的设计与编程,使网页更加美观,更加吸引用户。

2.Applet中的Swing编程模块

当浏览器下载相应的Applet并在本地计算机上开始运行的时候,Swing 编程模块便开始工作了。在Applet进行初始化的时候,Swing编程模块先绘制默认情况下的地图,并且在一个下拉列表框中列出所有可以选择的地图名称,它还制造出一个新的线程用来进行Socket连接。接下来,Swing编程模块就要进行各种相应,如鼠标滑动时要显示滑过各点的经纬度,鼠标左键双击时要显示APRS电台的详细信息,鼠标拖拽时要进行地图的移动,从服务器端接收到包含APRS电台信息的数据包时要在相应的位置绘制APRS电台图标,从下拉列表框中选择地图时要绘制被选中的地图等。

图2-2 APRS系统结构图

3.Applet中的Socket编程模块

Socket是面向客户/服务器模型设计的,网络上的两个程序通过一个双向的通讯连接实现数据的交换,这个双向链路的一端称为一个Socket。Socket 通常用来实现客户方和服务方的连接。客户程序可以向Socket写请求,服务器将处理此请求,然后通过Socket将结果返回给用户。Socket通信机制提供了两种通信方式:有连接(TCP)和无连接(UDP)方式,分别面向不同的应用需求。使用有连接方式时,通信链路提供了可靠的,全双工的字节流服务。在该方式下,通信双方必须创建一个连接过程并建立一条通信链路,以后的网络通信操作完全在这一对进程之间进行,通信完毕关闭此连接过程。使用无连接方式时其系统开销比有连接方式小,但通信链路提供不可靠的数据报服务,不能保证信源所传输的数据一定能够到达信宿。在该方式下,通信双方不必创建一个连接过程和建立一条通信链路,网络通信操作在不同

的主机和进程之间转发进行。由于APRS对数据包正确性,完整性,可靠性的要求,采用TCP方式来进行通信。客户端和服务器端发送的数据包都由两部分组成:Packet head和Packet data。Packet head指定数据包的类型,分为REG(客户端发送到服务器端的注册包)、URR(客户端发送到服务器端的反注册包)、DTA(服务器端发送到客户端的数据包)、ACK (Acknowlegement)四种。具体的通信过程如下:

●服务器在1401端口监听,客户端以TCP方式连接服务器。

●客户端成功连接至服务器后,须发送一个REG注册包到服务器。

●服务器认为注册包信息完整正确后会回复一个ACK给客户端,告诉

客户端连接成功。

●服务器会在之后的离散时间里随机地给客户端发送数据包,直到收

到客户端的反注册包或客户端的TCP连接断开为止。

●这些数据包是基本上参照APRS标准协议的,含有站点的经纬度,

时间戳,自定义文本等信息,客户端需要将这些信息解析出来,并

显示在地图的相应坐标上。

●客户端最后发送反注册包URR并断开连接。

2.5本章小结

在本章中,我们根据简单易用、直观明了、便于APRS普及的原则完成了系统的总体设计。我们选定Java Applet作为系统的程序类型,采用UI-View地图作为系统的地图。接下来,我们介绍了系统所要具备的功能,并对系统进行了模块划分。

第三章APRS客户端软件

系统详细开发

在开发软件系统的时候,我们通常会把系统划分为若干个功能相对分离的模块,然后逐个模块的进行详细开发。对于Java来说,一个模块就是相互关联,相互使用的一些类的集合。在进行总体设计的时候,我们已经把APRS客户端软件系统划分为三个模块:包含Applet的网页编程模块,Applet中的Swing编程模块,Applet中的Socket编程模块。除了网页编程模块之外,另外的两个模块我们都采用Java来开发,也就是我们要开发一些类来实现这两个模块要实现的功能。接下来,我们就逐个模块的进行详细开发,并对其中遇到的技术难点和解决之法进行详细说明。在这之前让我们来看一下系统的文件结构图,如图3-1所示。

3.1网页编程模块详细开发

Applet小应用程序必须嵌入到HTML页面中,才能得到解释执行;同时Applet可以从Web页面中获得参数,并和Web页面进行交互。含有Applet的网页的HTML文件代码中必须带有这样一对标记,当支持Java 的网络浏览器遇到这对标记时,就将下载相应的小应用程序代码并在本地计算机上执行该Applet。这个HTML文件中关于Applet的信息至少应包含以下三点:

●字节码文件名(编译后的Java文件,以.class为后缀)

●字节码文件的地址

●在网页上显示Applet的方式

一个HTML文件增加Applet有关的内容只是使网页更富有生气,它并不会改变HTML文件中与Applet无关的元素。

在我们的系统中,本模块就是一个APRSClient.html文件,其中最为重要的代码就是,它是整个HTML文件代码的关键所在。下面我们就对与Applet应用有关的参数作一个简单说明。

●CODE标记

CODE标记指定Applet的类名,WIDTH和HEIGHT标记指定Applet窗口的象素尺寸。在Applet语句里还可使用其它一些标记。

数据库管理系统的设计与实现

数据库管理系统的设计与实现 1.DBMS的目标 (1)用户界面友好对一个实用DBMS来说,用户界面的质量直接影响其生命力。DBMS的用户接口应面向应用,采用适合最终用户的交互式、表格式、菜单式、窗口式等界面形式,以方便使用和保持灵活性。一般地说,用户界面应具有可靠性、简单性、灵活性和立即反馈等特性。 (2)功能完备DBMS功能随系统的规模的大小而异。大型DBMS功能齐全,小型DBMS功能弱一些。DBMS主要功能包括数据定义、数据库数据存取、事务控制、数据库组织和存储管理、数据库安全保护等等。我们在下面讨论这些功能的内容。 (3)效率高系统效率包括三个方面:一是计算机系统内部资源的使用效率。能充分利用资源(包括存储空间、设备、CPU等),并注意使各种资源负载均衡以提高整个系统的效率,二是DBMS本身的运行效率。三是用户的生产率。这是指用户学习、使用DBMS和在DBMS基础上开发的应用系统的效率。 2.DBMS的基本功能 (1)数据库定义对数据库的结构进行描述,包括外模式、模式、内模式的定义;数据库完整性的定义;安全保密定义(如用户口令、级别、存取权限);存取路径(如索引)的定义。这些定义存储在数据

字典(亦称为系统目录)中,是DBMS运行的基本依据。为此,提供数据定义语言DDL。 (2)数据存取提供用户对数据的操纵功能,实现对数据库数据的检索、插入、修改和删除。一个好的DBMS应该提供功能强易学易用的数据操纵语言(DML)、方便的操作方式和较高的数据存取效率。DML有两类:一类是宿主型语言,一类是自含型语言。前者的语句不能独立使用而必须嵌入某种主语言,如C语言、COBOL语言中使用。而后者可以独立使用,通常以供终端用户交互使用和批处理方式两种形式使用。 (3)数据库运行管理这是指DBMS运行控制、管理功能。包括多用户环境下的并发控制、安全性检查和存取权限控制、完整性检查和执行、数据加密、运行日志的组织管理、事务的管理和自动恢复(保证事务的正确性),这些功能保证了数据库系统的正常运行。 (4)数据组织、存储和管理DBMS要分门别类地组织、存储各类数据,包括数据字典(亦称系统目录)、用户数据、存取路径等等。要确定以何种文件结构和存取方式在存储级上组织这些数据,如何实现数据之间的联系。数据组织和存储的基本目标是提高存储空间利用率,选择合适的存取方法确保较高存取(如随机查找、顺序查找、增、删、改)效率。 (5)数据库的建立和维护包括数据库的初始建立、数据的转换、数据库的转储和恢复、数据库的重组织和重构造以及有性能监测分析等功能。

数据库课程设计图书管理系统的设计与实现要点

计算机工程学院数据库原理及应用 课程设计报告 课题名称: 专业: 班级: 姓名:图书管理系统的设计与实现 信息管理与信息系统 信管1121 杨** 学号:1121807131 指导老师:周泓、金春霞 2013年12月14日

指导教师(签章): 年月日

课程设计评语 学生姓名:杨**班级、学号:信管 1 1 2 1 1121807131 题目:图书管理系统的设计与实现 综合成绩: 教师评语: 教师(签字): 年月日

中文摘要 图书管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建 立和维护以及前端应用程序的开发两个方面,一方面要求建立起数据一致性和完 整性强、数据安全性好的库另一方面则要求应用程序功能完备易使用等特点。因 此我结合学校图书借阅的要求,对Visual FoxPro数据库管理系统、SQL语言进行了较深入的学习和应用,主要完成对图书管理系统的需求分析、功能模块划分、数据库模式分析,并由此设计了数据库结构和应用程序。VFP图书管理系统是一个教育单位不可缺少的部分它的内容对于学校的决策者和图书管理者来说都至关重要所以图书管理系统应该能够为教师和学生提供充足的图书信息和快捷的查询手段。 关键词信息管理,VFP,图书管理,数据库

外文摘要

目录 1引言 (1) 1.1选题背景 (1) 1.2系统环境 (1) 2 系统总体分析 (2) 2.1需求分析 (2) 2.1.1 功能需求 (2) 2.1.2 性能需求 (3) 2.1.3 环境需求 (3) 2.2 可行性分析 (3) 2.2.1 经济可行性 (3) 2.2.2 技术可行性 (3) 2.2.3 管理可行性 (4) 2.2.4 用户可行性 (4) 3系统总体设计......‥ (4) 3.1 软件模块结果设计 (4) 3.1.1 系统方案确定 (4) 3.1.2 软件结构设计 (4) 3.2系统模块功能图 (4) 3.3 数据库设计 (5) 3.4 概念结构设计 (6) 3.4.1实体功能图 (6) 3.4.2 E-R图 (8) 3.5 逻辑结构设计 (8) 4系统实现与测试 (10) 4.1 连接数据库的实现 (10) 4.2 模块功能实现 (10) 5备份和还原数据库 (16) 5.1 规划数据库的还原和备份 (16) 5.2 数据库的备份 (16) 5.3 还原数据库 (18) 结论 (20) 致谢 (21) 参考文献 (22)

软件工程系统开发目标与设计

软件工程系统开发目标与设计

目录 第1章引言 (1) 1.1系统开发的背景 (1) 1.2系统开发的目标、意义 (1) 1.3本文的组织 (2) 第2章相关技术简介 (4) 2.1系统开发平台及开发工具 (4) 2.2工具和编程语言 (4) 2.2.1 HERITRIX技术 (5) 2.2.2H TMLPARSER技术 (6) 2.2.3 JAVA语言 (6) 2.2.4 JAVA IO流技术 (7) 2.2.5JDBC技术 (8) 第3章系统分析与设计 (9) 3.1功能需求 (9) 3.1.1系统数据流图 (9) 3.1.2 系统状态图 (11) 3.2功能介绍 (12) 3.3概念结构 (13) 3.3.1 概念结构设计 (13) 3.3.2 逻辑结构设计 (14) 第4章模块实现 (17) 4.1爬虫模块 (17) 4.1.1 设计事项 (17) 4.1.2 操作界面 (17) 4.1.3 核心代码 (23) 4.2页面解析文本信息入库模块(HTMLPARSER) (29)

4.2.1设计思想 (29) 4.2.2操作界面 (29) 4.2.3 核心代码 (31) 4.3信息筛选上传、信息查看删除的模块 (34) 4.3.1 设计思想 (34) 4.3.2操作界面 (35) 4.3.3 核心代码 (37) 总结.................................... 错误!未定义书签。

第1章引言 1.1 系统开发的背景 信息在现代经济生活中的作用越来越大,对于个人而言,缺乏信息将导致很多机会的丧失。与此同时,现在的大学生缺乏社会实践锻炼,自我竞争的意识在逐渐降低,而且社会上多数在校大学生沉迷于网络游戏,缺乏主动学习、参与竞争的意识。 当下社会,竞争与挑战是每一个人都将面对且必须面对的,比赛,是可以更好地证明自己的一个重要手段。然而现今缺乏一个整合了所有比赛信息方便人们寻找的平台,学生获得信息的途径也总是少得可怜。 有一个属于自己的比赛信息集成系统成为亟待解决的问题。缺少一个可以每天登陆系统,了解到当下最新的比赛资讯,能够分门别类的,整整有序的,及时全面的网站平台。鉴于此想法,本次项目选择开发比赛信息集成系统。希望通过比赛信息集成系统这个平台让大学生真正得到锻炼的机会,让他们认识到自己的真正价值,发现自己除了游戏之余还有更大的发展空间。 目前,国内同类的赛事信息类系统有“赛才网”。赛才网偏社区、家园、群组,提供的范围较大且包含很多新闻信息;与赛事信息集成系统地不同在于,比赛信息集成系统要做的是以赛事信息提供为主,主打“方便、即时、全面”的概念,对赛事信息要求较高,讨论交流区为辅。两者侧重点不一。 针对于此,此次项目致力打造一个服务于在校大学生的轻松、便捷、互动地参与各类竞赛活动的竞赛门户网站,致力于系统地收集和整理各个领域的各类赛事,为参赛者提供最优质的信息服务,使得来自全国各地的参赛选手可以相互学习分享心得,通过各种有意义的比赛不断提升自己。希望通过此次开发的平台项目,能为广大学生及赛事爱好者提供全面、即时的赛事信息,在分享赛事资讯的同时提供一个交流、讨论的平台。 1.2 系统开发的目标、意义 开发目标:本系统主要为全力打造一个服务于在校学生和在职人员等轻松、便捷、互动地参与各类竞赛活动的竞赛门户网站,为参赛者提供最优质的信息服务,来自全国各地的参赛选手可以相互学习分享心得,通过各种有意义的比赛不断提升自己。系统中主要的开发包括赛事信息网站前台以及赛事网站后

网络教学系统设计与实现

智能化网络教学系统设计与实现 石河子大学信息科学与技术学院高攀郭理* 郑鸿英 摘要:基于Web的智能教学系统综合传统的ITS系统优势,同时又结合Web的特点,系统具有智能性,能够智能地引导学生学习。本文提出了一种基于Web的智能教学系统模型,探讨了智能教学系统的知识库的设计、教学策略的设计及个性化教学的实现,最后给出系统实现的具体思路和解决方案。 1 引言 智能教学系统(Intelligent Tutoring System,ITS)作为人工智能学科的重要研究应用领域,是21世纪人类社会数字化教育的必然发展方向。其研究涉及人工智能(Artificial Intelligence,AI)、计算机科学、认知科学、教育学、心理学和行为科学等多个学科,研究的最终目的是由计算机系统负担起人类教育的主要责任,即使计算机系统具有智能,并在一定程度上代替人类教师实现最佳教学。由于ITS涉及到多门学科,所用到的相关学科的技术即使在本学科也不够成熟以及人类对其自身的学习过程还认识不够,所以对ITS 的研究仍存在相当大的难度,存在知识的表示、对学生的评估、对学生错误的诊断、教学规划、人机自然语言对话处理等技术难题。 2 基于Web的ITS的系统模型 2.1 传统的ITS模型 传统上,智能教学系统由四大部分组成:专家知识库(有关领域的知识描述)、学生模型(学生的知识水平和学习能力)、教师模型(知识的传授方法)和人机交互界面。模型如图1所示。其中人机交互界面部分是在智能教学系统和学生之间建立友好的通信交流方式,有时也被看成是教学方法的补充而作为教师模型的一部分。 传统的智能教学系统多数是单机或单独运行的(stand.alone),系统费用昂贵,维护代价高,难以大范围推广应用。随着Web技术的发展和不断成熟,基于Web的智能教学系统研究越来越受到重视。在Web 上构建智能教学系统,这种方式利用网络实现了分布式教学,可以同时接受多个用户的并发访问,资源利用率大大提高,又不受时间和空间的限制,可以在最大程度上满足“因材施教”的需要。 图1传统的ITS模型 2.2 基于Web的ITS系统模型 基于Web的ITS的系统模型如图2所示。其中,知识点库存放课程知识点,知识点可分为不同的类型和难度级别、重点度级别等;教学课件库存放各种形式的课件;教学方法库存放各种教学模板。学生学习能力是教师实施因材施教的依据,模型突出了其重要性。模型综合了传统ITS系统的优势,同时又结合了Web 的特点,客户端结构简单,适用范围广,人机交互界面简洁明了。系统具有智能性,结合学生的特点进行教学,可以通过多种多样的交流工具进行有效的交互和即时的通信反馈,能够智能地引导学生学习,提供了丰富的信息来源和良好的导航结构,可以进行有效的信息过滤等等,实践证明,基于Web的ITS是ITS

图像检索系统的设计与实现本科生毕业设计论文

毕业设计(论文)说明书 题目:图像检索系统的设计与实现

毕业设计(论文)任务书题目:图像检索系统的设计与实现

毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期:

一、原始依据(包括设计或论文的工作基础、研究条件、应用环境、工作目的等。) 随着互联网的飞速发展,网络上的图片信息呈爆炸式增长,这使得人们在网上找到所需的图片越来越困难,图片检索技术成为当今非常热门的研究话题。 图像检索一直是信息检索领域的一个主流问题,涉及到图像处理、图像分割、模式识别及机器学习等多个方面。检索的智能化和自动化是图像检索的目标。 目前主流的图像检索方法大致可以分为两大类,即基于文本的图像检索(TBIR)和基于内容的图像检索(CBIR)。在检索原理上,无论是基于文本的图像检索还是基于内容的图像检索,主要包括三方面:一方面对用户需求的分析和转化,形成可以检索索引数据库的提问;另一方面,收集和加工图像资源,提取特征,分析并进行标引,建立图像的索引数据库;最后一方面是根据相似度算法,计算用户提问与索引数据库中记录的相似度大小,提取出满足阈值的记录作为结果,按照相似度降序的方式输出。 而搜集图片和建立索引又是实现图像检索技术的非常重要的一个环节。网络爬虫程序就是用来搜集网页和图片的程序。 本文的研究重点在于使用网络爬虫框架Heritrix进行扩展,从网络上下载所需网页及图片并利用HTMLParser进行网页分析和图片相关信息提取。完成上述工作后,再将图片的目录位置和提取的信息存入数据库。并建立一个图片检索系统的Web工程,实现检索功能。开发语言为Java, 开发工具为MyEclipse和MySQL及Tomcat. 二、参考文献 [1]Ritendra Datta, Dhiraj Joshi, Jia Li et al. Image Retrieval: Ideas, Influences, and Trends of the New Age[J].ACM Comput. Surv. 40, 2, Article 5 .April 2008. [2]李晓明,闫宏飞,王继民. 搜索引擎-原理,技术与系统[M].北京:科学出版社,2004. [3]马自萍.形状和颜色特征的混合图像检索[D].银川:北方民族大学,2010.7. [4]陈剑雄,张蓓.简析图像检索中的CBIR技术[J].情报探索(第7期),2010.7. [5]Rafael C.Gonzalez and Richard E.Woods.Digital Image Processing Second Edition [M].Prentice Hall, 2003-3. [6]沈兰荪,张箐,李晓光。图像检索与压缩域处理技术的研究[M].北京:人名邮电出版 社,2008.12. [7]周明全,耿国华,韦娜.基于内容图像检索技术[M].北京:清华大学出版社,2007.7. [8]李向阳, 庄越挺, 潘云鹤. 基于内容的图像检索技术与系统[J]. 计算机研究与发展

《数据库系统设计与开发》模拟实习教学大纲

《数据库系统设计与开发》 模拟实习教学大纲 (Database System Design and Development) 制定单位:工学院计算机科学与技术系 制定人:课程组 编写时间:2016年01月06日

第一部分课程概述 一、基本信息 (一)课程代码 课程代码:07110640 (二)课程属性、学分、学时 计算机专业的专业模拟实习、独立实验、2学分、40学时 (三)适用对象 本课程适用的对象为计算机科学与技术专业的本科生 (四)先修课程与知识准备 《C/C++程序设计》,《数据库原理》,《.Net编程》,《软件工程》 二、实验简介 《数据库系统设计与开发》模拟实习以数据库应用系统的设计与开发为主要目标,结合本专业的多门专业课程:《程序设计》、《数据结构》、《数据库原理》、《面向对象程序设计》、《.Net编程》、《软件工程》等开展专业模拟实习。《数据库系统设计与开发》模拟实习将针对一个现有的数据库应用领域,遵照《软件工程》课程中的生命周期法和软件开发规范进行系统分析与设计,按照《数据库原理》中的关系规范化理论进行数据库的模式设计,并结合《.Net编程》所学基于C#语言及.Net集成开发环境进行系统编码与调试,完成一个小型数据库应用系统的开发任务。最后,通过提交实习报告,提高学生科技论文的撰写能力。通过这一完整的实践教学过程,将进一步加强学生实践和动手能力的培养,真正理解和掌握数据库系统设计和开发的方法,提高学习效果,使学生可以学以致用,成为具有专业技能并有一定实际经验的人才。

三、实验项目 实验一:系统需求分析(4学时) (一)实习(实验)类型 综合性实验。 (二)实习(实验)目的和要求 1.理解需求分析在软件工程应用中的重要性 2.熟悉数据库建模的方法 3.掌握如何将客户的实际需求转化为描述性设计语言 (三)实习(实验)内容 为将要开发的系统作出一份明确、详细的需求分析报告。需求分析报告至少应该包含以下几部分: 1.系统的名称; 2.系统概述; 3.系统要实现哪些功能,每个功能的具体描述。 (四)实习(实验)地点 竞秀楼或竞慧楼机房 实验二:系统设计(4学时) (一)实习(实验)类型 综合性实验。 (二)实习(实验)目的和要求 1.掌握SQL Server数据库管理软件的使用,学习CASE工具(Visio或SA2001)的使用,用信息系统开发工具(例如VS2008)设计一个实用的中小型管理信息系统2.掌握系统设计的基本方法,提高解决实际问题、开发信息系统的实践能力 (三)实习(实验)内容 用信息系统开发工具(例如VS2008)设计一个实用的中小型管理信息系统。 1.根据实验时间选择适当规模大小的设计课题 2.根据合理的进度安排,按照软件工程系统开发的流程及方法,进行实验 3.实验过程中,根据选题的具体需求,在开发各环节中撰写相关的技术文档,最后要

全文检索系统整体方案设计

1全文检索系统方案 1.1全文检索需求 1)系统提供模糊检索、分类搜索、高级复合搜索、全文检索、图片内容检 索、跨库检索等多种检索途径; 2)支持字索引和词索引; 3)检索条件具有完整的关键词布尔逻辑运算AND、OR、NOT能力,支持复 合式布尔逻辑运算查询,并且可以配合多组左括号"("与右括号")"作关 键词查询优先级的设置; 4)提供用户多次递进查询的功能,用户可根据上一次查询关键词得到的检 索结果集,增加查询关键词与缩小搜索日期范围,而得到更准确的查询 结果集; 5)能够支持对以上文件中的中文(简体/繁体)、英文、日语、韩语内容实 现关键字检索; 6)支持对Word、TXT、PDF等多种主流文档格式全文检索,并提供开发接 口以支持特殊文档格式的全文检索; 7)在数据源数据发生更新时,能在索引库中反映出来,保证搜索的信息为 最新,即支持增量索引机制; 8)用户可自行设定时间,让系统自动定时进行更新索引; 9)对于百万级记录数的搜索以及结合模糊搜索等查询方式,搜索时间不得 超过10秒; 10)提供跨数据源、数据格式的搜索; 11)同过相关性搜索,能够把和搜索条件相关联的信息搜索出来; 12)不但能够对图片的描述信息进行搜索,还能对图片内容的检索; 13)提供COM与SOAP的搜索接口(Interface) 可让其它应用程序或查询网 页能够提供用户查询入口和查询结果的呈现,用户可通过应用程序或浏 览器访问全文检索服务器,提交查询条件,可在浏览器中查看检索结果; 14)查询结果集中应包含结果集总数、命中的结果文件的完整路径,以及符 合关键词出现的内容片断; 15)在搜索结果集中,关键词应被标识出来,用特殊的字体及颜色和其他文 字进行区别,查询者可在查询结果片断中一目了然的看到关键词出现的 位置; 16)查询结果可按照关键词命中次数,命中结果文件的修改时间,大小等条 件进行排序; 17)可提供用户对检索命中结果文件在索引库中进行标记,从而再次检索 时,不在标记过的文件中进行查询; 1.2全文检索系统总体方案 系统将采用以下全文检索流程。

数据库系统设计说明书

数据库课程设计——学生信息管理系统 学院:机电工程学院 班级:09工业工程 组员:郎建鹏 学号:0911******* 指导老师:李峰平

目录 第一章系统分析 (2) 1 建立新系统的必要性 (2) 2 业务流程分析(业务流程图) (2) 3 数据流程图 (3) 4 数据字典 (4) 第二章系统设计 (4) 1 数据库设计(E-R) (4) 2系统运行环境 (6) 3输入输出设计 (10) 第三章设计总结 (10) 参考文献……………………………………………………………… 图例说明………………………………………………………………

第一章系统分析 1 建立新系统的必要性 这次的课程设计是在学习完《数据库原理》和《delphi程序设计》基础上进行的一次系统性的训练,既是对所学知识的巩固,也是对自己综合运用所学知识解决实际问题的一次锻炼。学生信息管理系统的主要目的是为了方便学校对学生的信息进行录入、修改、查询,提高学校的工作效率。这一系统的开发成功,解决了手写速度慢、容易出错的现状。 学生信息管理可以帮助学校最迅速最准确的完成所需的工作。无论是在适用性、灵活性和易操作性方面都显示出了它的强大功能。 2 业务流程分析(业务流程图)

数据流图是结构化分析中不可缺少的有力工具,它描述了系统的分解,即系统由哪些部分组成,各部分之间有什么联系等。但是,它还不能完整地表达一个系统的全部逻辑特征,特别是有关数据的详细内容。因此,仅仅一套数据流图并不能构成系统说明书,只有对图中出现的每一个成分都给出详细定义以之后,才能全面地描述一个系统。对数据流、数据存储和数据处理的详细描述,需要用数据字典(DD)。它包括数据流、数据存储、外部项和处理过程的详细条目。数据字典中把数据的最小单位定义为数据项,而若干数据项可以组成一个数据结构。数据字典是通过以数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。 第二章系统设计 1 数据库设计(E-R) (1)管理员实体的E-R图 (2)普通用户实体的E-R图

数据库的设计与实现

《数据库原理》课程设计论文 院(系、部)名称: 专业名称: 学生姓名: 学生学号: 指导教师:

系统简介 开发目的和任务 客户信息是个人,机关,企事业等进行业务联系所必需而频繁使用的信息资料,在许多大型应用系统中都有客户信息管理工具,它是企业单位现代化管理的一个重要的组成部分。本系统的任务是制作一个简单,实用的通讯薄,既可以单独使用,也可以作为其他大型应用系统的一个组成部分来使用。 1.系统功能 (1) 总体功能要求 本系统将介绍如何让在Visual FoxPro 6.0开发环境下快速开发数据库和数据表的方法,并在此基础上建立一个表单,通过表单的运行,可以初步体会到什么是程序,什么是数据库应用程序,数据库应用程序是如何进行编辑,修改,增加,删除,查询和退出的. (2) 客户信息管理系统的基本功能 1)登录:本功能主要是为了防止非操作人员对系统随意更改. 2)主界面:为用户提供了一个友好的界面,是维护,查询模块间相互切换的桥梁. 3)维护:本功能模块主要实现数据的浏览,添加,删除,退出等功能. 4)查询:本功能模块主要实现按姓名,职务,出生日期等查询功能. 2. 系统的特点 (1) 数据库设计的考虑 本系统的信息两不太大,因此只涉及一个库,一个表.库名为通讯

录.DBC表名为通讯录.DBF. (2) 提高系统集成化的考虑 为了是系统短小精悍,并最大限度的提高系统设计的效率,在设计中较多的应用了Visual FoxPro 提供的“选项卡”控件和容器控件.除此之外,还采用了页框控件,其目的是在一个窗口上尽可能多的扩展应用空间,容纳最多的信息量. (3)提高可操作性的考虑 由于使用本系统的人员不一定熟悉计算机基本操作,因此要求系统的操作应尽量简单,本系统在设计时已考虑到这一点,尽可能少的使用键盘的地方,要保证用起来“顺手”. 3. 开发工具与运行环境 (1) 开发工具. VFP6.0 为集成开发环境提供了项目管理器,设计器,生成器和向导机制等,使其成为强有力的数据库开发工具. 1)项目管理器. 2)设计器. 3)生成器. 4)向导. (2)运行环境 硬件环境: PⅡ350MHz以上处理器,16MB以上内存,一般需240MB 硬盘空间. 软件环境:Windows 95及以上的操作系统支持.

软件系统设计与开发实践 说明书-2016

《软件系统设计与开发实践》说明书一、课程设计目的 通过本课程设计的学习实践,了解软件项目开发和维护的一般过程,掌握软件开发的传统方法和最新方法,为更深入地学习和今后从事软件工程实践打下良好的基础。最终目的是: (1)、培养学生数据库分析和设计能力。 (2)、培养学生软件结构和功能模块分析能力。 (3)、培养提高学生自学能力和独立进行软件开发能力。 (4)、培养学生的创新意识和协作精神。 (5)、培养学生文字论述规范、清晰、严谨的能力。 二、设计题目 课程设计题目一:企业客户服务系统实现 随着经济的全球化,市场竞争日趋激烈。企业建立客户为中心的经营战略,为客户提供一流的服务,是企业建立品牌意识、实现差别化服务、取得竞争优势的利器。企业客户服务系统犹如一个信息的工厂,操作方便,运行稳定,快速完成信息的采集、奋发、共享,一直到信息的处理、信息反馈的整个加工过程。 企业客户服务系统是以业务为基础,以客户为核心,实现市场、销售、服务协同工作的管理平台。本系统的主要任务是对企业客户的问题记录进行管理,并将问题记录分配给相关的工程师进行处理;对接受服务调查的客户进行服务调查信息的管理。使企业能够全面追踪客户档案、分析竞争对手,改善客户关系,增加企业收益,提高企业的竞争力。 企业客户服务系统以业务为基础,客户为核心,实现市场、销售 、服务协同工作的管理平台。 要求: 1、 实现的系统对企业客户的资料信息进行管理; 2、 对客户的问题记录进行管理;

3、 实现对记录问题的分配及处理; 4、对接受服务调查的客户进行服务调查信息的管理; 5 、并能对客户进行长期跟踪。 课程设计题目二:毕业设计选题系统的设计与实现 毕业设计是本科教育的一个重要组成部分,其时间跨度大,涉及较多的人员和相应的规章制度,如何对其进行完善的管理是一个有实际意义的问题。本课题的目的是设计一个毕业设计管理系统,它以时间线为基准,以相应的时间阶段需要达到的目的为检查点,以相应阶段应生成的文档为驱动力,最终通过对文档的相关处理来实现对毕业设计的管理。开发跨平台的实现毕业设计(论文)选题过程的信息化和自动化管理,该系统提供以下功能: 1)与本系统相关的基本信息管理,如:专业、班级、学生、指导老师的基本信息管理,支持Microsoft Excel格式数据的批量导入。 2)毕业设计(论文)课题基本信息管理、课题审批等,支持Excel格式数据的批量导入。 3)学生选题过程管理,可以实现学生的选题和退选,教师挑选学生,选题结果支持Excel格式数据的导出。 4)综合信息查询与打印。 使用J2EE或.NET作为基本的开发技术,要求熟练掌握Java或C#、JSP或https://www.doczj.com/doc/df12807020.html,、HTML等基本技能,对Ajax、Struts、Hibernate或.NET 等框架技术较为熟悉;使用数据库(MySQL、Oracle或SQLServer皆可)作为数据存储设施,要求熟练掌握数据库的基本原理,熟练掌握SQL语言; 课程设计题目三:试题库管理系统的设计与实现 利用JAVA与SQL2005等开发工具,建立《操作系统》课程的试题库系统。该系统能够根据所需的题型(如,选择题、填空题、简答题、判断题、计算题、应用题等)、题目的难度系数(简单、中等、难题)、每种题型所占的分值以及每种题型所需的题目数等进行自动组卷,并自动

分布式数据检索系统的设计与实现

龙源期刊网 https://www.doczj.com/doc/df12807020.html, 分布式数据检索系统的设计与实现 作者:钟求喜朱昕 来源:《湖南大学学报·自然科学版》2010年第01期 摘要提出了一套对非结构化数据进行分析和检索系统的设计方案。采用分布式技术在windows平台上建立了一套以任务分发服务器为中心,运算终端为任务处理单元,带有反馈和容错机制的分布式数据检索系统。在给出系统模型和设计思想基础上,对各个功能部件进行了模块化设计、并对各模块故障进行了测试,结果表明,系统能够在部分模块出错的情况下稳定运行,能够满足在实际工作中的需求。 关键词分布式数据检索; windows; 反馈; 容错机制; 中图分类号:文献标识码: DesignAnd Implement of A Data Retrieval Distribution System ZHU Xin,ZHONG Qiu-xi (School of Computer, National University of Defense Technology, Changsha,Hunan 410073,China) Abstract Authors propose a set of pairs of unstructured data analysis and retrieval system design. Use of distributed technology in the windows platform to establish a set of task-distribution server as the central task of computing the terminal processing unit, with feedback and fault-tolerant mechanism for distributed data retrieval system. In the given system model and design based on the idea of the various functional components of the modular design, and failure of each module was tested, results show that the system can go wrong in some cases the module stable operation to meet the actual work requirements. Key words Data Retrieval Distribution; windows; feedback; fault-tolerant mechanism 随着互联网应用技术的推广和普及,互联网在带来发布、传递和获取信息自由便利的同时,各种虚假信息、垃圾邮件、个人隐私问题、网上经济犯罪、危及社会稳定、涉及国家重大利益

《产品设计及开发》教学大纲和实验大纲

《产品设计及开发》教学大纲 大纲说明 课程代码:3335007 总学时:64学时(讲课64学时) 总学分:4学分 课程类别:选修 适用专业:工业设计(本科) 预修要求:工业设计机械基础、形态设计基础、设计构成等 一、课程的性质、目的、任务: 本课程是工业设计专业的一门指导性专业课。通过本课程的学习和训练,使学生把握将市场营销、设计和制造的观点融为一体开发产品的整体思路;了解开发流程和组织、产品规划过程和产品开发项目管理的基本知识,掌握产品构造、产品开发项目的经济分析的基本常识。 二、课程教学的基本要求: 课程教学采用启发、观摩、演练式教学,加深学生对相应知识的理解。使用一些案例来说明产品开发方法,由浅入深,难易搭配,循序渐进。以培养能力为主题,要求学生积极参与,独立完成简单产品的开发,掌握开发产品的基本技能和技巧。 考核形式为考试。主要考查学生对基本概念的理解和应用。 三、大纲的使用说明: 教师可根据本课程发展情况、学生水平等实际情况对教学容作适当的调整和变动。拟采用双语教学。 大纲正文 第一章引论学时:2学时(讲课2学时) 了解成功的产品开发的特点和产品开发的时间和成本,了解本课程特点。 本章讲授要点:产品开发的特点,产品开发的时间和成本,产品开发的挑战。 重点:产品开发的时间和成本。 难点:产品开发的特点。 第一节成功的产品开发的特点 第二节谁来设计和开发产品? 第三节产品开发的时间和成本 第四节产品开发的挑战 习题:估计在一个计算机的价格中,产品开发成本占多大比例。 第二章开发流程和组织学时:4学时(讲课4学时)

掌握基本的产品开发流程、概念开发流程,了解AMF公司的开发流程、产品开发组织。 本章讲授要点:产品开发流程、首末流程。 重点:产品开发流程。 难点:概念开发:首末流程 第一节基本的产品开发流程 第二节概念开发:首末流程 第三节采用基本的产品开发流程 第四节AMF公司的开发流程 第五节产品开发组织 习题:产品开发组织对于那些作为产品开发班的一部分而介入的学生来说,是什么? 第三章产品规划学时:4学时(讲课4学时) 掌握产品规划过程及其方法步骤。 本章讲授要点:产品规划过程,识别机会、项目评价和优先级排序、资源分配和时间计划、完成项目计划、对结果和流程做出反应。 重点:产品规划过程 难点:识别机会 第一节产品规划过程 第二节产品规划过程的方法步骤 习题:对选定产品进行开发过程规划。 第四章识别顾客需要学时:5学时(讲课5学时) 了解识别顾客需要的方法,理解建立需要的相对重要性,掌握对结果和流程做出反应的基本方法。 本章讲授要点:顾客需要、建立需要的相对重要性、对结果和流程做出反应。 重点:识别顾客需要。 难点:建立需要的相对重要性 第一节从顾客那里获取原始数据 第二节从顾客需要的角度理解原始数据 第三节组织需要的等级 第四节建立需要的相对重要性 第五节对结果和流程做出反应 习题:过大开发团队(多于10个人时)的有效调整方法。 第五章产品规格说明学时:5学时(讲课5学时) 了解什么是规格说明、何时建立规格说明、确定最终规格。掌握建立目标规格说明的方法。

数据库系统课程设计--实例

摘要 数据库技术是计算机科学技术发展最快,应用最为广泛的技术之一。其在计算机设计,人工智能,电子商务,企业管理,科学计算等诸多领域均得到了广泛的应用,已经成为计算机信息系统和应用的核心技术和重要基础。 随着信息技术的飞速发展,信息化的大环境给各成人高校提出了实现校际互联,国际互联,实现静态资源共享,动态信息发布的要求; 信息化对学生个人提出了驾驭和掌握最新信息技术的素质要求;信息技术提供了对教学进行重大革新的新手段;信息化也为提高教学质量,提高管理水平,工作效率创造了有效途径. 校园网信息系统建设的重要性越来越为成人高校所重视. 利用计算机支持教学高效率,完成教学管理的日常事务,是适应现代教学制度要求、推动教学管理走向科学化、规范化的必要条件;而教学管理是一项琐碎、复杂而又十分细致的工作,工资计算、发放、核算的工作量很大,不允许出错,如果实行手工操作,每月须手工填制大量的表格,这就会耗费工作人员大量的时间和精力,计算机进行教学管理工作,不仅能够保证各项准确无误、快速输出,而且还可以利用计算机对有关教学的各种信息进行统计,同时计算机具有手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高员工工资管理的效率,也是教学的科学化、正规化管理,与世界接轨的件。在软件开发的过程中,随着面向对象程序设计和数据库系统的成熟,数据设计成为软件开发的核心,程序的设计要服从数据,因此教学管理系统的数据库设计尤其重要。 本文主要介绍教学管理系统的数据库方面的设计,从需求分析到数据库的运行与维护都进行详细的叙述。本系统利用IBM DB2企业版本开发出来的。DB2是IBM公司开发的关系关系数据库管理系统,它把SQL语言作为查询语言。 本文的分为5章。其中第1章主要是课题简介及设计的内容与目的。第2章是需求分析,此阶段是数据库设计的起点。第3章是概念设计,它是将需求分析的用户需求抽象为信息结构,这是整个数据库设计最困难的阶段。第4章是逻辑结构设计,它将概念模型转换为某个DBMS所支持的数据模型。第5章是数据库的实施与运行,它包括数据的载入及数据库的运行。 关键词:SQL语言;IBM DB2;数据库设计;教学管理系统 I

教学系统设计案例

教师学科教案[ 20 – 20 学年度第__学期] 任教学科:_____________ 任教年级:_____________ 任教老师:_____________ xx市实验学校

教育技术绪论 北京大学出版社,李芒、金林编著,《教育技术学导论》 执教:牡丹江师范学院09级教育技术于洋 教学设计 教学过程:

板书: 教育技术绪论 一、教育技术定义 AECT1994 AECT2005 二、教育技术学科性质 三、教育技术培养方向 四、教育技术专业能力结构要求 说课材料 老师同学们大家好!我们今天进行的是教育技术绪论的说课部分。在教育技术绪论这节课的教学设计方案中,我首先对教学对象进行了分析,教学对象分析: 我设定教学对象为刚刚步入大学的教育技术学的新生。由于他们对自己的专业情况缺乏了解,心终会对本专业存在很多的疑惑。那么,《教育技术绪论》这节课的设计方向就是要为新生们的解除这些疑惑。这节课上完后,效果要能达到学生心中清晰“教育技术学是什么”“教育技术学是做什么的”“作为教育技术学的学生应具备哪些能力”等问题。 教学内容地位:

本节课的内容是北京大学出版社出版的《教育技术学导论》一书中的第一篇。他的地位是不容忽视的,它不仅在这门课的教学内容上起着引导性的作用,而且为整个专业课的学习指明了一条道路。 在分析过以上两个必要因素后,我将我的教学设计方案分成六大模块,教学目标、教学重难点、教学媒体、教学方法、教学准备、教学过程。 教学目标: 在教学目标模块,我将目标分为知识与情感两方面。在知识方面,对学生提出三点要求: A.学生能陈述美国教育传播与技术协会推出的AECT1994和2005教育技术定义并理解其内涵 B.学生能了解教育技术学科性质及专业培养方向 C.熟知自己应具备的专业能力 在情感方面,对学生提出两点要求: A.在学生了解专业特性的同时,培养学生热爱自己的专业。 B.学生能主动明确自己大学期间要完成的任务及自己未来的发展方向。 教学重难点: 在本节课中,教学重点主要是让学生掌握教育技术的定义,而难点则是让学生明确自己的发展方向。 教学媒体: 教师主要采用黑板和多媒体两种媒体。 教学方法: 教师主要采用的方法有讲授法、分组讨论法、提问互动法、多媒体课件演示法 教学准备: 教师在课前,除了需要熟悉教学内容还需搜集与本节课课程内容有关的文字、图片等多媒体素材,并能将它们很好地融合在自己的课堂教学中。 教学过程 一、引入环节:设置氛围,自然引出教学内容 通过播放视频:将大学新生的基本状态展示给学生,使学生产生共鸣。这样,学生会有主动学习的欲望,为接下来的学习活动奠定了良好的情感基调。 二、查找重点:任务驱动,培养学生抽象思维能力 教师讲解定义过后,要求学生找出定义中的重点词汇,这样既可以增强学生对定义的理解,又可以培养学生抽象思维能力。 三、脑力激荡:学生分组讨论,团队协作能力 通过讨论1994和2005定义的不同之处,可以让学生对两个定义记忆更为深刻,同时,也可以增强他们的团队意识。 四、归纳总结: 教师分条讲解教育技术学的特点后,要求学生归纳总结教育技术学科性质,

基于内容的图像检索系统的设计与实现【开题报告】

毕业设计开题报告 计算机科学与技术 基于内容的图像检索系统的设计与实现 一、选题的背景、意义 1.1图像检索技术的产生和发展 随着多媒体技术和Internet网络的迅速的发展,数字图像的容量正以惊人的速度增长.无论是军用还是民用,无论是静态的还是动态的,每天都会产生海量的图像信息.近年来大规模图像库的出现,管理、组织和利用图像成为一项亟待解决的技术难题.于是图像检索技术这种能够快速而且准确查找访问图像的技术应运而生[1]. 基于内容的图像检索(Content-Based Image Retrieval,简写为CBIR)是20世纪90年代兴起的新技术,其实质是图像特征相似性匹配检索.因其直观(示例描述)、高效(相似性匹配检索)、通用(与领域知识无关)等特点,近年来在国际国内均是一个热门研究课题. 图像检索技术发展到现在大致经历了两个阶段基于:文本的检索和基于内容的检索.早期的图像检索是基于文本注释的(Text.Based Image Retrieval),该方法的实质是把图像检索转换为与该图像对应的文本检索. 基于内容的图像检索即CBIR),即对图像的视觉内容,如图像的颜色、纹理、形状等进行分析和检索[2]. 基于内容的图像检索系统的体系结构如图(一)所示[3]

图(一) 90年代后,在快速发展的数据库技术和计算机视觉技术的大力推动下,CBIR得到国内外计算机界研究人员的广泛重视,迅速成为国内外研究的热点之一。不仅各大著名国际杂志纷纷设立专刊介绍该领域的研究现状与科研成果,国内外各高校和科研机构也积极展开了对CBIR的研究,发表了大量相关理论和技术应用的论文[4-5].此外,鉴于人们对CBIR的重要性、有效性和优越性有了更深的认识,近年来国内外已纷纷投入人力物力研制成一些系统,既有各科研机构的演示软件,也有商业应用软件。其中,较具有商业价值的有IBM公司的QBIC(Query By Image Content)系统,Virage公司开发的Virage系统以及MIT多媒体实验室开发的Photobook系统。实验原型系统中比较具有代表性的有清华大学计算机系结合863高技术研究发展项目研制的“Web 上基于内容的图像检索"系统, Excalibur公司开发的Retrieval Waret[6]系统,哥伦比亚大学开发的WebSEEK系统,UCSB大学开发的Netra系统原型以及美国伊利诺斯大学Urbana-Champian分校开发的MARS(Multimedia Analysis and Retrieval System)系统。 就目前研究现状而言,CBIR技术己经研究了十多年,有了很大发展,也有了不少成形的算法,不过其中很多关键问题还是远远没有得到解决,总体效果不能令人满意。目前基于内容的图像检索技术仍然主要集中在颜色、纹理、形状、轮廓等底层视觉特征提取的基础上,但是由于图像特征描述和特征提取及相似性度量的复杂性,其技术仍不是很成熟,理论上有许多问题还有待解决。而且,由于计算机视觉以及人工智能发展的不成熟,及目前的关系型数据库不同于理论上的图像数据库,故还有许多问题需要进行研究。主要如下:1.图像特征描述与提取; 2.相关反馈技术; 3.结合多种检索手段[7]; 4.对专业图像的检索; 5.数据模型问题;6.多种检索手段相结合的问题[7];7.高效存储及检索技术; 8.如何评价和衡量一个检索系统的优劣还没有一个统一的标准。 1.2发展现状——图像检索算法的研究 基于图像内容的检索技术主要依据图像的颜色、纹理、形状特征以及图像中子图像(对象)的特征进行检索.常见的检索内容主要包括: (1)颜色:图像颜色分布、相互关系、组成等:(2)纹理:图像的纹理结构、方向、组合及对称关系等:(3)形状:图像轮廓组成、形状、大小等:(4)对象:图像中子对象的关系、数量、属性、旋转等.

相关主题
文本预览
相关文档 最新文档