文档库 最新最全的文档下载
当前位置:文档库 › 题库管理系统设计文档

题库管理系统设计文档

题库管理系统设计文档
题库管理系统设计文档

(此文档为word格式,下载后您可任意编辑修改!)

华南农业大学

软件开发技术实践

课程设计实验报告

小组成员:

教师:林毅申

提交日期: 2013年11月30日

华南农业大学信息学院

课程设计

1、基本信息

1.1 小组基本信息

1.2 项目基本信息

这次我们小组开发的是一个面向一所大学内的任课老师以及在校学生的题库管理系统。作为数字化校园的一部分,该系统的主要的功能包括为教师用户提供的查阅题库,新组试卷功能和面向学生的在线考试功能。题库分为两部分,一部分是之前教师利用组卷功能得到并保存的试卷,一部分是不同类型的题目。题目范围为学校内各门课程期末考试的试题,包括公共基础课以及各学院开设的不同课程。题目不仅包括普通的文字类题目,还包括一些包含复杂元素如图片,特殊公式等的题目,做到基本兼容现在学校内能看到的题目。

考虑到小组成员的技术水平以及项目的实际需要,该系统是采用C/S模式。为提高效能,服务器方面采用IOCP模型,客户端采用WPF技术来改善Winform在界面上的劣势。

1.3 项目技术信息

2、系统架构图

注:实线表示数据传输方向,虚线表示模块间调用关系,由被调用者指向调用者

服务器程序:

数据加密模块:

采用一种加密算法,(具体哪种算法等系统实现时,再进行确定),将即将发送的数据进行加密。保证数据再传输过程中的安全性。与客户端中的数据加密模块原理一样。

数据解密模块:

采用与加密算法相对应的解密算法,将接受到数据,进行解密,还原得到原始的数据。与客户端中的数据解密模块原理一样。

消息队列:

为了能实现同时让尽量多的客户连接到服务器,所以不使用一线程处理一客户模型的服务器。这里的消息队列是将所有用户对服务器的各种请求按照先进先出的规则排列起来。等待处理。如果实现是使用windows io完成端口和对应的SOCKET进行绑定,这个消息队列是由系统生成和维护的。

工作者线程池:

线程池用于维护和管理服务器中所有以工作者身份存在的线程,工作者线程就是用来处理客户请求的线程。线程池的线程会互斥的到消息队列中取出对应的客户请求进行处理。没有请求时候,所有线程都处于阻塞状态等待消息队列中出现客户请求。当工作者线程获得客户请求的时候会按顺序去调用数据解密模块,数据传输格式解析模块,业务逻辑处理模块,加密发送数据模块。

数据传输格式解析模块:

数据在网络传输的过程中,我们给它规定特定的格式。通过该模块,服务器可以清楚的知道,客户需要服务器为他实现哪些功能。但是这里解析的数据需要通过解密之后,才能解析。对应的客户端想要与服务器进行交互,就需要使用这个特定的格式发送数据。

业务逻辑处理模块:

这个模块就是服务器具体工作的模块,模块中包含服务器能够为客户端提供的所有服务。工作者线程通过解析数据格式,知道客户的需求,再从这个模块中调用指定的服务。这个模块也是直接和数据库进行交互的模块。

数据发送加密模块:

业务逻辑模块处理完客户的请求的服务之后,需要为客户返回处理后的结果。可能是简单的操作成功和失败的返回结果,也可能是直接数据的传输。和加密模块结合在一起,说明数据发送前需要进行加密。

数据库模块:

采用sql server做数据库管理,https://www.wendangku.net/doc/0f11666573.html,技术实现面向业务层的接口。

3、系统功能

客户端:

学生:

在这个题库管理中心中,我们设定的学生功能有查看试卷、导出试卷和在线考试并评分。

查看试卷:

学生可以查看不同科目的试卷,选择科目时需要先选择科目分类、学院等上级目录,试卷包括历年考试卷和各学科老师自己组合试题的模拟卷。

导出试卷:

学生查看了试卷之后如果需要带出,可以选择导出试卷,导出的试卷根据学生选择存储位置以WORD文档存储。

老师:

老师可以使用的功能包括:查看题目、组卷。组卷分为按要求自动组卷和手动组卷两个部分。

查看题目:

跟学生的一样,首先选择科目分类、学院等目录,选择了科目之后还需要选择章节和知识点、或者选择某一套题(具体的操作在编码时确定),进入单个题目可以看到题目分类、

难易度、内容和答案,还可以把该题目加入到组卷区里(类似网络购物加入购物车的形式)。

组卷:

自动组卷:老师选择科目、难易度,填入试卷总分和考试时间,选择题数目和选择题总分,填空题数目和填空题总分,客观题视科目需要而定,可以选择简答题、计算题、材料分

析题等题型,最后各题总分要跟试卷总分相同,全部填写好之后就可以进行自动组卷,组卷

成功之后老师看是否满意,不满意可以重来或者可以留下某一些需要的题其他题目随机加

入。

数据传输:

用户进行操作需要读取数据的时候发出命令传给服务器,服务器传过来的数据接受后给用户看。

服务器:

提取数据:

根据客户端传来的命令来进行数据库的读取,读取后给传输模块。

数据传输:

数据提取出来之后,经过格式化以后再进行加密,之后就可以传输给客户端进行解密并呈现给用户。

4、数据库设计

PDM图

数据字典

清单

表名:QB_ACCOUNTS 解释:用户信息表

表名:QB_CHAPTERS 解释:章节信息表

表名:QB_COLLEGES 解释:学院信息表

表名:QB_COURSES 解释:课程信息表

表名:QB_ORIGIN 解释:题目来源表

表名:QB_PAPERS 解释:试题信息表

表名:QB_POINTS 解释

:知识点信息表

表名:QB_PUBLICKINDS 解释:公共课信息表

表名:QB_QUESTIONS 解释:题目信息表

表名:QB_STUDENTS 解释:学生信息表

表名:QB_TEACHERS 解释:教师信息表

5、程序结构

整个系统的数据流大致如上图。

用户在客户端上进行操作时,某些需要用到数据库里的数据的操作,客户端就会编写对应的命令编号以及相应的参数,转换成字节流,经过加密发送到服务器。服务器收到之后经过解密,并且转换回字符串,可以得到相应的命令和参数,根据这个可以进行对应的操作,操作之后返回的是一个布尔值的字符串或者整型数组、字符串数组、题目数组,转换为字节流之后发送给客户端,跟服务器一样接收之后解密转换得到原有的数组或字符串,再分别绑定到对应的控件上。这是一次完整的客户端和服务器之间的数据传输。

Client:客户端类,与服务器传输的代码。

Parse:服务器返回的数据的转换。

Paper:试卷的类。

Questios:题目的类,里面有选择题、填空题、简答题继承题目类。

SecuritySystem:加密解密。

Download:下载文件,利用Tomcat进行传输。

Login:登录Page。

MainWindow:主界面,Grid加载Login。

SelectCourse:选择科目的Page。

Look:查看题目或试卷的Page。

AutoPaper:自动组卷的窗口。

QLMain、QLMainStu:老师、学生的界面,加载科目和查看的Page。

Detail:题目详情窗口。

PaperDetailxaml:试卷详情窗口。

BufferManager:缓冲区管理器。

SecuritySystem:加密解密。

Paper:试卷的类。

Questios:题目的类,里面有选择题、填空题、简答题继承题目类。

Parser:客户端发送的数据的转换。

Server:服务器类,与服务器传输的代码。

Function:跟数据库打交道,利用SQL语句取数据。

Database:数据库打开、链接等基本操作。

SocketAsyncEventArgsPool:管理栈。

AsyncUserToken:记录客户端信息的类。

Program:程序入口。

6、关键功能及代码实现

6.1多并发量的实现

为了实现尽量多的并发量,一般不会使用阻塞的socket模型去编写服务器。因为阻塞的socket操作,需要大量的线程,才能让每个客户都能及时的得到响应,因此cpu在进行频繁的线程切换的过程就浪费了不少cpu的资源。所以必须要选择一个异步的socket模型,在windows中,IOCP(完成端口)是最适合用来实现网络服务器的,所以就选择IOCP。在.net的平台中MSDN中对SocketAsyncEventArgs 的描述是:”SocketAsyncEventArgs 类就是这一组增强功能的一部分。该类专为需要高性能的网络服务器应用程序而设计。应用程序可以完全使用增强的异步模式,也可以仅仅在目标热点区域(例如,在接收大量数据时)使用此模式。”所以这次实现选择了SocketAsyncEventArgs 类来实现服务器。具体会有以下几个方面的实现

6.1.1 实现 SocketAsyncEventArgsPool (SocketAsyncEventArgs 对象池)

这个对象池用于存放SocketAsyncEventArgs 对象。对象池中的对象都是预先分配的,而且也是可重用的,当有客户连接的时候,就在对象池中给客户取出一个对象使用。当客户退出时就回收客户使用的SocketAsyncEventArgs 对象,放回对象池当中,使用这个对象池的好处是在服务器运行阶段,减少了对象申请释放的操作。对于多客户的连接中,就需要多次分配。也为服务器运行的过程节省一些cpu时间。

主要代码如下,简单的实现对象池的效果,实际上就是用栈来管理对象

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using https://www.wendangku.net/doc/0f11666573.html,.Sockets;

namespace Server_

{

class SocketAsyncEventArgsPool

{

// SocketAsyncEventArgs 管理栈

private Stack pool_;

public SocketAsyncEventArgsPool(int capacity)

{

pool_ = new Stack(capacity);

}

// 回收没用的SocketAsyncEventArgs

public void Push(SocketAsyncEventArgs item)

{

if (item == null)

{

throw new ArgumentNullException("Items added to a SocketAsyncEventArgsPool cannot be null");

}

lock (pool_)

{

pool_.Push(item);

}

}

// 分配SocketAsyncEventArgs

public SocketAsyncEventArgs Pop()

{

lock (pool_)

{

return pool_.Pop();

}

}

// 返回可用SocketAsyncEventArgs的个数

public int Count

{

get { return pool_.Count; }

}

}

}

6.1.2 实现缓冲区管理(BufferManager类)

自定义的一个类,因为在每一个SocketAsyncEventArgs对象中,都必须为其指定一个缓冲区。用于数据接收(来自socket缓冲区)用于数据的发送(写进socket缓冲区)。因此假设对于没分配一个SocketAsyncEventArgs对象就必须对应的为其分配一个缓冲区,所以将所有缓冲区也预先分配好,然后统一为SocketAsyncEventArgs 指定,还有回收。好处跟上述的对象池差不多。

class BufferManager

{

private int num_byte_; // 大缓冲区总大小

private byte[] buffer_; // 缓冲区数组

private Stack free_index_pool_; // 已回收的空闲的缓冲区

private int current_index_ ; // 为分配缓冲区的下标

private int buffer_size_; // 小缓冲区的大小

// 构造函数

// totalBytes 大缓冲区总的大小

// bufferSize 小缓冲区的大小

public BufferManager(int totalBytes, int bufferSize)

{

num_byte_ = totalBytes;

buffer_size_ = bufferSize;

current_index_ = 0;

// 用于保存已经回收的缓冲区的栈

free_index_pool_ = new Stack();

}

// 申请空间初始化大缓冲区

public bool initBuffer()

{

buffer_ = new byte[num_byte_];

if (buffer_ == null)

return false;

return true;

}

// 将缓冲区分配出去

// 先从栈中,获取小缓冲区

// 若栈空,就在当前下标下获取小缓冲区

public bool setBuffer(SocketAsyncEventArgs args)

{

if (free_index_pool_.Count > 0)

{

args.SetBuffer(buffer_, free_index_pool_.Pop(), buffer_size_); }

else

{

if (num_byte_ - buffer_size_ < current_index_)

{

return false;

}

else

{

args.SetBuffer(buffer_, current_index_, buffer_size_);

current_index_ += buffer_size_;

}

}

return true;

}

// 回收小缓冲区至栈中

public void freeBuffer(SocketAsyncEventArgs args)

{

free_index_pool_.Push(args.Offset);

args.SetBuffer(null, 0, 0);

}

}

6.1.3 服务器的实现

服务器的逻辑比较简单,就是使用线程阻塞的进行端口的监听,当有客户连接,就为其分配一个SocketAsyncEventArgs 对象,为这个对象指定缓冲区。然后提交一个异步接受的操作。按照IOCP的原理。这个异步操作会等待到数据到达接受到,然后进队列等待线程到来,再处理接受到的数据。处理完这一轮接受操作后,就再次提交下一个异步操作。

代码在 Server.cs 文件内,比较长,就不粘贴出来了。

6.2 数据包加密解密功能

对于客户端和服务器之间传输的数据,为了不让别人识别到。所以这里采用了加密的方案。具体方案是服务器先获得客户端的一个RSA的公钥,然后用这个公钥加密了一个对称加密算法的密钥,并发送给客户端。因为是使用客户端的公钥加密,所以只有客户端能够识别得到这个密钥。这时候服务器和客户端就有了一个商量好的对称加密算法的密钥,之后所传输的数据就用这个对称加密算法的密钥加密了再发送。这里对称加密算法使用DES加密(暂时不讨论DES64位密钥太短的问题)。

DES加密解密代码如下

public byte[] DESEncrpt(byte[] buf)

{

MemoryStream msEncrypt = new MemoryStream();

CryptoStream csEncrypt = new CryptoStream(

msEncrypt,

des_.CreateEncryptor(bufDesKey_, bufDesIv_),

CryptoStreamMode.Write);

BinaryWriter bw = new BinaryWriter(csEncrypt);

bw.Write(buf);

bw.Close();

csEncrypt.Close();

return msEncrypt.ToArray();

}

public String DESDecrypt(byte[] buf, int offset, int len)

{

byte[] bufTemp = new byte[len];

for (int i = 0; i < len; ++i)

bufTemp[i] = buf[offset + i];

MemoryStream msDecrypt = new MemoryStream(bufTemp);

CryptoStream csDecrypt = new CryptoStream(msDecrypt,

des_.CreateDecryptor(bufDesKey_, bufDesIv_),

CryptoStreamMode.Read);

StreamReader srDecrypt = new StreamReader(csDecrypt);

String ret = srDecrypt.ReadLine();

srDecrypt.Close();

csDecrypt.Close();

msDecrypt.Close();

return ret;

}

RSA加密解密代码如下

public byte[] RSAEncrpt(String des_key)

{

return rsa_.Encrypt(Encoding.UTF8.GetBytes(des_key), false);

}

public String RSADecrypt(byte[] buf,int offset,int len)

{

byte[] bufTemp = new byte[len];

for (int i = 0; i < len; ++i)

bufTemp[i] = buf[offset + i];

return Encoding.UTF8.GetString(rsa_.Decrypt(bufTemp, false));

}

.net平台下有现成的类供我们使用,所以代码比较简单

6.3对象序列化和反序列化

因为传输的数据都是以二进制数据,基本类型二进制的转换比较简单。如果要传输对象,就必须先对对象进行序列化。接收方进行反序列化,得到对象。

这个功能比较简单,但是实现过程中,也碰到一些奇怪的问题,所以这里也将代码贴出来。

private byte[] ObjectToBytes(Object obj)

{

BinaryFormatter bf = new BinaryFormatter();

MemoryStream ms = new MemoryStream();

bf.Serialize(ms, obj);

byte[] b = ms.ToArray();

ms.Close();

return b;

}

public static Object BytesToObject(byte[] buf)

{

String ret = Encoding.UTF8.GetString(buf);

BinaryFormatter bf = new BinaryFormatter();

bf.Binder = new UBinder();

MemoryStream ms = new MemoryStream(buf);

Object obj = bf.Deserialize(ms);

ms.Close();

return obj;

}

public class UBinder : SerializationBinder

{

public override Type BindToType(string assemblyName, string typeName)

{

Assembly ass = Assembly.GetExecutingAssembly();

return ass.GetType(typeName);

}

}

6.4自动组卷

这个功能的输入有平均难易度,选择题数,填空题数,简答题数。根据平均难易度和选择题数,该功能生成一个难易度的组合,使其平均值为平均难易度。例如,平均难易度为3,选择题数为5.那么就可能生成 1,2 ,3,4,5这样的难易组合代表难度1的选择题 1道,

难度5的选择题2道。具体是怎么样的组合是随机的,但是组合一定满足平均难度值是我们指定的值。生成组合后,就去数据库取出指定难度的题目出来。填空题,简答题一样的原理。最后组合成一张试卷。

具体实现代码如下:

public int[] AutoPaper(int level, int num)

{

List result = new List();

number = num;

ret = new int[number];

_autoPaper(result, 1, 0, level * num);

int[] count = new int[6];

for (int i = 0; i < num; i++)

{

count[result[4][i]]++;

}

return count;

}

private void _autoPaper(List result, int last, int step, int plus)

{

if (step == ret.Length)

{

if (plus == 0)

{

int[] temp = new int[number];

for (int tt = 0; tt < temp.Length; ++tt)

temp[tt] = ret[tt];

result.Add(temp);

return;

}

else

{

return;

}

}

else

{

for (int i = last; i <= 5; ++i)

{

if ((plus - i) <= (5 * (ret.Length - step - 1)))

{

ret[step] = i;

_autoPaper(result, i, step + 1, plus - i);

}

}

}

}

7、实验结果讨论

7.1系统实现

服务器运行界面:

服务器启动后的界面,能显示出系统当前状态。方便系统管理员对系统进行管理。当前不提供直接对服务器进行命令操作。

登陆界面:

教师和学生使用同一个登陆界面,系统根据用户名自行判断登陆的用户权限,所以界面上并没有用户身份的选择框。

选择科目界面:

因为试题都是对应某一个科目的,这是学生和教师登录后首先看到的界面。首先要选择大的类别,包括每个学院内部的专业课以及一些不同学院的学生都要修习的一些公共课。选择了对应的科目后,才能查看对应的题目或试卷。

题目浏览界面:

这是学生选择科目后能看到的界面,主要内容在右边的文本框中。内容为一套套的试卷。由之前的教师所出。在试卷内容的上面的红框部分是老师出题的时间以及题目的用处。

试卷显示界面:

概要设计说明书题库管理系统

1引言 (2) 1.1编写目的 (2) 1.2背景 (2) 1.3定义 (2) 1.4参考资料 (2) 2总体设计 (3) 2.1需求规定 (3) 2.2运行环境 (4) 2.3基本设计概念和处理流程 (4) 2.4结构 (6) 2.5功能器求与程序的关系 (8) 2.6人工处理过程 (9) 2.7尚未问决的问题 (9) 3接口设计 (9) 3.1用户接口 (9) 3.2外部接口 (9) 3.3内部接口 (10) 4运行设计 (10) 4.1运行模块组合 (10) 4.2运行控制 (10) 4.3运行时间 (10) 5系统数据结构设计 (11) 5.1逻辑结构设计要点 (11) 5.2物理结构设计要点 (11) 5.3数据结构与程序的关系 (11) 6系统出错处理设计 (11) 6.1出错信息 (11) 6.2补救措施 (12) 6.3系统维护设计 (12)

概要设计说明书 1引言 1.1编写目的 说明编写这份概要设计说明书的目的,指出预期的读者。 概要设计说明书的目的:概要设计说明书又称系统设计说明书,这里所说的系统是指程序系统。编写该文档的目的在于明确整个系统的需求、对该项目进行总体设计、详细说明对程序系统的设计考虑(包括:程序系统的基本处理、流程、程序系统的组织结构、模块划分、功能分配、接口设计、运行设计、数据结构设计和出错处理设计等),为程序的详细设计提供基础。使系统开发人员和产品管理人员明确产品功能,可以有针对性的进行系统开发、测试、验收等各方面的工作。从该阶段开发正式进入软件的实际开发阶段,本阶段完成系统的大致设计并明确系统的数据结构与软件结构。在软件设计阶段主要是把一个软件需求转化为软件表示的过程,这种表示只是描绘出软件的总的概貌。而它的真正目的是进一步细化软件设计阶段得出的软件总体概貌,把它加工成在程序细节上非常接近于源程序的软件表示。 预期读者:项目开发人员、编程人员、软件维护人员、技术管理人员、执行软件质量保证计划的专门人员、参与本项目开发进程各阶段验证/确认以及负责最后项目验收人员、合作各方有关部门的负责人、项目组负责人和全体参加人员等 1.2背景 说明: a.待开发软件系统的名称:题库管理系统。 b.列出此项目的任务提出者、开发者、用户以及将运行该软件的计算站(中心)。 任务提出者:北京京胜世纪科技有限公司 开发者:天津职业大学电信学院软件技术2班,小组开发人员:边继红 用户:从事教育事业的教学教师以及在学学生等 运行该软件的计算站:天津职业大学电信学院 1.3定义 1.考试科目:对应教学计划中的课程名称 2.试题类型:包括客观题(单选、多选、判断、填空)和主观题(简答、论述)两大类 3.题目难度:主观上分为较难、一般、容易三种,,录入试题时由试题创建者确定; 4.难度系数:是衡量试题难易程度的客观指标,定义为正确率的倒数: 难度系数= 100 /正确率,初值设为2,以后通过考试结果由系统自动计算。 数值越大,说明错误率高,即难度越大。 5.用户类型:根据权限分为:管理员、任课教师、学生三种角色

题库管理系统设计文档

(此文档为word格式,下载后您可任意编辑修改!) 华南农业大学 软件开发技术实践 课程设计实验报告 小组成员: 教师:林毅申 提交日期: 2013年11月30日

华南农业大学信息学院 课程设计

1、基本信息 1.1 小组基本信息 1.2 项目基本信息 这次我们小组开发的是一个面向一所大学内的任课老师以及在校学生的题库管理系统。作为数字化校园的一部分,该系统的主要的功能包括为教师用户提供的查阅题库,新组试卷功能和面向学生的在线考试功能。题库分为两部分,一部分是之前教师利用组卷功能得到并保存的试卷,一部分是不同类型的题目。题目范围为学校内各门课程期末考试的试题,包括公共基础课以及各学院开设的不同课程。题目不仅包括普通的文字类题目,还包括一些包含复杂元素如图片,特殊公式等的题目,做到基本兼容现在学校内能看到的题目。 考虑到小组成员的技术水平以及项目的实际需要,该系统是采用C/S模式。为提高效能,服务器方面采用IOCP模型,客户端采用WPF技术来改善Winform在界面上的劣势。 1.3 项目技术信息

2、系统架构图 注:实线表示数据传输方向,虚线表示模块间调用关系,由被调用者指向调用者 服务器程序: 数据加密模块: 采用一种加密算法,(具体哪种算法等系统实现时,再进行确定),将即将发送的数据进行加密。保证数据再传输过程中的安全性。与客户端中的数据加密模块原理一样。 数据解密模块: 采用与加密算法相对应的解密算法,将接受到数据,进行解密,还原得到原始的数据。与客户端中的数据解密模块原理一样。 消息队列: 为了能实现同时让尽量多的客户连接到服务器,所以不使用一线程处理一客户模型的服务器。这里的消息队列是将所有用户对服务器的各种请求按照先进先出的规则排列起来。等待处理。如果实现是使用windows io完成端口和对应的SOCKET进行绑定,这个消息队列是由系统生成和维护的。 工作者线程池: 线程池用于维护和管理服务器中所有以工作者身份存在的线程,工作者线程就是用来处理客户请求的线程。线程池的线程会互斥的到消息队列中取出对应的客户请求进行处理。没有请求时候,所有线程都处于阻塞状态等待消息队列中出现客户请求。当工作者线程获得客户请求的时候会按顺序去调用数据解密模块,数据传输格式解析模块,业务逻辑处理模块,加密发送数据模块。 数据传输格式解析模块: 数据在网络传输的过程中,我们给它规定特定的格式。通过该模块,服务器可以清楚的知道,客户需要服务器为他实现哪些功能。但是这里解析的数据需要通过解密之后,才能解析。对应的客户端想要与服务器进行交互,就需要使用这个特定的格式发送数据。 业务逻辑处理模块: 这个模块就是服务器具体工作的模块,模块中包含服务器能够为客户端提供的所有服务。工作者线程通过解析数据格式,知道客户的需求,再从这个模块中调用指定的服务。这个模块也是直接和数据库进行交互的模块。 数据发送加密模块: 业务逻辑模块处理完客户的请求的服务之后,需要为客户返回处理后的结果。可能是简单的操作成功和失败的返回结果,也可能是直接数据的传输。和加密模块结合在一起,说明数据发送前需要进行加密。 数据库模块: 采用sql server做数据库管理,https://www.wendangku.net/doc/0f11666573.html,技术实现面向业务层的接口。

智能化电子系统设计报告

目录 1 前言(绪论) (2) 2 总体方案设计 (3) 2.1方案比较4 2.1.1方案一:长期寿命测试 (4) 2.1.2方案二:加速(短期)寿命测试 (4) 2.2方案论证4 3 单元模块设计 (5) 3.1各单元模块功能介绍及电路设计5 3.1.1热阻( Rθ ) 的测量 (5) 3.1.2结温测量 (6) 3.1.3光通量的测量 (7) 3.1.4串口电路的设计 (8) 3.1.5温度控制和报警电路设计 (9) 3.1.6 过零触发电路设计 (9) 3.2电路参数的计算及元器件10 3.2.1 LED灯常用电路参数 (10) 3.2.2电学特性 (10) 3.3特殊器件的介绍13 3.3.1 ADM3251E (13) 3.3.2 ADUC848 (14) 3.3.3 555芯片 (15) 3.4各单元模块的联接17 4 软件设计 (18) 4.1 PROTEL99 SE简介18 4.2软件设计结构及功能18 5 系统调试 (19) 6 系统功能及指标参数 (20) 6.1说明系统能实现的功能20 6.2系统指标参数测试及测试方法说明20 6.2.1失效时间和失效数的确定 (20) 6.2.2 数据处理方法 (22) 6.3系统功能及指标参数分析22 7 结论 (23) 8 总结与体会 (24) 9 参考文献 (25) 附录1:相关设计图 (26) 附录2:元器件清单表 (27) 附录3:相关设计软件 (28)

1 前言(绪论) 1986 年,在蓝宝石基底上沉积高品质GaN 晶体获得成功,并且在1993 年开发出了高亮度蓝光发光二极管( LEDs) 。至今,人们仍在对高亮度蓝光 LED 进行不断地完善。在 1996 年,开发出了采用蓝光 LED 与黄色荧光粉相结合发出白光的 LED 产品并将其商业化[1]。21 世纪照明 METI 国家(Akari) 项目是一项基于高效率白光 LED 照明技术的工程,它利用的是近紫外线 LED 与荧光粉系统相结合的方法,该项目于1998 年启动,其第一阶段的项目已于 2004 年完成。 作为电子元器件,发光二极管(Light Emitting Diode-LED)已出现40多年,但长久以来,受到发光效率和亮度的限制,仅为指示灯所采用,直到上世纪末突破了技术瓶颈,生产出高亮度高效率的LED和兰光LED,使其应用围扩展到信号灯、城市夜景工程、全彩屏等,提供了作为照明光源的可能性。随着LED应用围的加大,提高LED可靠性具有更加重要的意义。LED具有高可靠性和长寿命的优点,在实际生产研发过程中,需要通过寿命试验对LED芯片的可靠性水平进行评价,并通过质量反馈来提高LED芯片的可靠性水平,以保证LED芯片质量,为此我司在实现全色系LED产业化的同时,开发了LED芯片寿命试验的条件、方法、手段和装置等,以提高寿命试验的科学性和结果的准确性。 近些年来,LED 照明因具有许多优点,例如长寿命、低能耗、体积小等而非常有吸引力。最早 LED 只是被用来替换小型白炽灯充当指示器。在其光效有所提高后,LED 被应用于显示器中。随着其光效和总光通量的进一步改善,LED 开始被应用于日常照明领域。对于普通照明设备而言, LED 有限的光通量是一个难以解决的问题。要想获得高光通量就需要有高密度基底和大的工作电流。这将导致LED 产生热量、温度升高, 损坏LED 模块。 随着LED生产技术水平的提高,产品的寿命和可靠性大为改观,LED的理论寿命为10万小时,如果仍采用常规的正常额定应力下的寿命试验,很难对产品的寿命和可靠性做出较为客观的评价,而我们试验的主要目的是,通过寿命试验掌握LED芯片光输出衰减状况,进而推断其寿命。 本设计介绍了LED芯片寿命试验过程,提出了寿命试验条件,完善的试验方案,消除可能影响寿命试验结果准确性的因素,保证了寿命试验结果的客观性和准确性。采用科学的试验线路和连接方式,使寿命试验台不但操作简便、安全,而且试验容量大。

生产管理系统解决方案

生产管理系统解决方案1、生产管理系统解决方案框

2、 生产管理系统是针对制造型企业的生产运营而开发的管理系统。生产管理系统主要包括订单管理、生产计划管理、成本管理、物料需求计划、采购管理、

库存管理、付款管理、质量管理、生产绩效等核心管理系统,实施生产管理系统能够提高了各组织部分管理的准确性,指导原材料定购,及时掌控各方数据信息,优化资金的合理使用,提高生产的效率和节省生产成本。 二、生产管理系统解决方案需求分析

社会的信息化的深入发展,各企业都在加快建设特信息网络平台的步伐。企业在处理采购、生产、成本管理、质量管理等重要环节方面,正在逐步加强 对利用信息化网络平台和计算机的利用。在企业生产管理中,对可视化信息的 需求十分迫切。比如,在安全防卫方面,企业需要再厂区、厂房、仓库以及各 交界处实施全天候视频监控及预警、录像系统;监管人员需要及时掌握各厂房 车间的流水线的生产情况;领导层也有了解各生产环节实时生产情况,现场语 音交流指导和处理突发状况的需求。 此外,制造行业的人力成本不断上升,而且人工处理缓慢,出错率高,因此企业对于生产管理软件开发提出了更高的要求,企业通过实施生产管理系 统解决方案,不仅促进企业生产社会化自动化要求,也是企业发展、减少成本 需要。另一方面,我国正处在粗放式经济增长方式向集约型转变的道路上,利 用生产管理软件来实现车间生产管理的信息化和生产管理的信息化,用生产管 理软件的精确管理控制代替手工的粗放式管理,更好的节约物料资源,降低产 品的成本,创造出最大的经济效益,不断地增强企业的核心竞争力。 三、生产管理系统解决方案 生产流程越来越复杂,使得企业越来越难以控制生产过程,对流程的 管理也随之缺乏灵活性;同时,社会分工越来越细化,生产工人对所从事的生 产的全过程也缺乏了解,因此也缺乏改变已有条件的积极主动性。 现在,企业生产有一种趋势向小型化、自治化的制造和装配单元发展,生产管理系统的生产计划和控制可以只对制造或者其他部门规定某个时间段应 该完成的粗略生产计划;具体的生产调度,如技术、分配、质量管理等功能都 分开控制完成,企业可以采用生产控制方法可以减轻负荷。

文件管理系统课程设计

课程名称:操作系统 实验题目:文件管理系统 1、课程设计选题 (3) 1.1主要设计内容 3 1.2主要设计思路 3 2、课程设计需求分析 3 3、概要设计 (4) 3.1整体设计框架 4 3.2各模块的基本功能 4 4、系统实现 5 4.1原理 6 4.2各模块算法思想 6 4.3流程图描述 9 4.4代码描述 10 5、系统测试 11

5.1系统主界面 11 5.2子系统功能测试 11 6、总结 19 7、参考文献样式 19 1、课程设计选题 1.1主要设计内容 本课程设计主要是用C语言编写,设计的是一个模拟的多用户多级目录的文 件管理系统。通过具体的文件存储空间的管理、文件的物理结构、目录结构和文 件操作的实现,加深对文件系统内部功能和实现过程的理解。 1.2主要设计思路 首先系统要完成初始化的任务,建立起整个系统,等待用户注册,注册成功后,用户登录模块,对用户的用户名进行验证,如果用户登录成功,则系统进入 等待用户输入的状态,用户选择相应指令后,系统按照即定方式处理用户请求, 用户退出后,系统转入登录模块,等待下一位用户的登录。 2、课程设计需求分析 本系统为多用户多级目录的文件管理系统,用户可以根据所注册的用户名登 陆来对文件或是文件进行操作。多用户功能可以满足不同用户不同的需求,同时 也起到了很好的保密作用。 文件系统为用户提供了按名存取的功能,以使得用户能透明地存储访问文

件。为了实现按名存取,文件需要对文件存储设备进行合理的组织,分配;对存储在文件存储设备上的文件进行保护,保密和提供共享的手段。另外,文件系统还要提供检索文件或文件中记录的手段,文件系统就是完成上述功能的一组软件和数据结构的集合。 模拟一个文件管理系统,要完成对文件的基本操作,文件的基本操作有文件、文件夹的打开、新建、删除和读取写入文件,创建更改目录,列出目录内容等信息。系统建立了文件目录树,存储文件系统中的所有文件。对于用户名下的文件,用文件目录树的分枝来存贮。 采用命令行操作界面很直观,也方便用户进行操作,用户只要按照操作界面所显示的命令来操作就行了。 因为存在着同一个目录下不能有同名文件的问题。所以在进行文件的基本操作时要考虑到在已经有的文件中是否有同名文件,有的话则输出提示信息。 3、概要设计 3.1整体设计框架 系统初始化界面是由用户注册,用户登录,退出系统三个模块组成。用户登录模块再由创建用户,进入目录,删除用户,显示所有用户,显示位示图,修改用户资料几大模块组成。然后各个模块再由一些小模块组成。其中创建文件,打开关闭文件,读写文件等文件操作模块包括在进入目录模块里面。 3.2各模块的基本功能 3.21系统初始化 系统的初始化包括初始化了磁盘的空间即位示图、一个管理员用户 3.22用户注册模块 用户可以在这里注册,用户名和密码的最大长度都为10个字节,如果用户名不重复的话,则注册成功,用户的权限默认为一般用户。

电子系统设计报告

课程设计实践报告 一、课程设计的性质、目的与作用 本次电子系统设计实践课程参照全国大学生电子设计模式,要求学生综合利用所学的有关知识,在教师的指导下,分析和熟悉已给题目,然后设计系统方案、画原理图及PCB、软件编程,并做出课程设计报告。因此,在设计中,要求学生应该全面考虑各个设计环节以及它们之间的相互联系,在设计思路上不框定和约束同学们的思维,同学们可以发挥自己的创造性,有所发挥,并力求设计方案凝练可行、思路独特、效果良好。 本课程设计的目的是为了让学生能够全面了解电子电路应用系统的整个设计过程,逐步掌握系统开发的以下相关技术: (1)熟悉系统设计概念; (2)利用所学数电、模拟电路知识,设计电路图; (3)利用PROTEL软件画原理图及PCB; (4)熟悉系统项目设计报告填写知识; (5)培养团队合作意识。 通过本课程设计,有助于学生更好地了解整个课程的知识体系,锻炼学生实际设计能力、分析和思考能力,使其理论与实践相结合,从而为后续课程的学习、毕业设计环节以及将来的实际工作打好坚实的基础。 二、课程设计的具体内容 电子系统设计实践课程就是锻炼学生系统设计、分析和思考能力,全面运用课程所学知识,发挥自己的创造性,全面提高系统及电路设计、原理图及PCB 绘画等硬件水平和实际应用能力,从而体现出电子系统设计的真谛。下面是各个设计阶段的具体内容。 1.系统方案认识 根据所设定的题目,能够给出系统设计方案与思路

题目:信号发生器产生电路,请设计一个能产生正弦波、方波及三角波电路,并制作原理图,然后阐述其原理。 基本原理: 系统框图如图1所示。 图1 低频信号发生器系统框图 低频信号发生器系统主要由CPU、D/A转换电路、基准电压电路、电流/电 压转换电路、按键和波形指示电路、电源等电路组成。 其工作原理为当分别按下四个按键中的任一个按键就会分别出现方波、锯齿 波、三角波、正弦波,并且有四个发光二极管分别作为不同的波形指示灯。2、各部分电路原理 (1)DAC0832芯片原理 ①管脚功能介绍(如图5所示) 图5 DAC0832管脚图 1) DI7~DI0:8位的数据输入端,DI7为最高位。

文档管理系统论文

1.系统目标 本系统的目标是开发一个操作简单、界面友好、功能齐全的管理系统,在网上完成有关文档的管理工作,包括用户登录、注册、文档的添加、浏览、选择、下载;用户个人信息的维护;用户信息的管理等等。本系统提供了一个方便教师和学生交流的平台,将其应用于教学管理中,可以减少教师和学生的工作量,方便双方的交流,不受时间和地点限制,能够大大提高有关文档的管理效率。 2.开发工具和环境 2.1 开发框架https://www.wendangku.net/doc/0f11666573.html, https://www.wendangku.net/doc/0f11666573.html,是 Active Server Page (ASP) 的下一个版本,是一种建立在通用语言上的程序构架,能被用于一台Web服务器来建立强大的Web应用程序。https://www.wendangku.net/doc/0f11666573.html,提供许多比现在的Web开发模式强大的优势。因为https://www.wendangku.net/doc/0f11666573.html,是基于通用语言的编译运行的程序,不像以前的ASP即时解释程序,而是程序首次在服务器端运行时就进行编译,这样的执行效果比一条一条的解释强很多。所以它的强大性和适应性,可以使它运行在Web应用软件开发的多数平台上。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到https://www.wendangku.net/doc/0f11666573.html,的Web应用中。同时,https://www.wendangku.net/doc/0f11666573.html,语言独立化。所以,可以选择一种最适合自己

的语言来编写程序,如: C#,VB,Jscript等。另外,https://www.wendangku.net/doc/0f11666573.html,可以使用一些自带组件和自定义组件。同时,https://www.wendangku.net/doc/0f11666573.html,使运行一些很平常的任务如表单的提交、客户端身份的验证、分布系统和网站的配置变得非常简单。 https://www.wendangku.net/doc/0f11666573.html,使用一种字符基础的分级配置系统,使服务器环境和应用程序的设置更加简单。一个https://www.wendangku.net/doc/0f11666573.html,的应用程序在一台服务器系统的安装只需要简单的拷贝一些必要的文件,不需要系统的重新启动。多处理器环境的https://www.wendangku.net/doc/0f11666573.html,已经成为一种可以用于多处理器的开发工具。 2.2开发环境Visual Studio Visual Studio 是微软公司推出的开发环境。是目前最流行的Windows 平台应用程序开发环境。Visual Studio 可以用来创建Windows 平台下的 Windows 应用程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和 Office 插件。 2.3开发语言C# C#派生于C/C++,是Microsoft专门为使用.NET平台而创建的一种新型编程语言,也是在移植到其他操作系统上的.NET版本中使用的主要语言。与Windows的体系结构相似,易为开发人员所熟悉。C#是面向对象的编程语言,具有面向对象编程语言的一切特性,封装性

试试题库管理系统毕业论文

试题库管理系统 (伊犁师学院计算机系,XX 伊宁835000) 摘要:随着计算机办公自动化程度的不断提高,开发各种数据库管理应用软件用于各种工作中能有效地提高工作效率,节省时间,能使学校的教学工作上一个新的台阶。传统的人工命题形成试卷,往往会出现大量的重复劳动,并且形成的试卷因出卷人的不同其质量会差距很大,这样一来会直接导致考试结果波动很大,使考试的科学考评效果大幅度降低,这也往往引起学生和教师的广泛议论和关注,解决这一早就出现的问题一直是许多人的迫切愿望,由于各种考试名目繁多,试卷容广杂,使出卷难度加大,要出一份好试卷更是难上加难;另外,许多基础学科容长期不变或基本不变,这就使建立试题库成为非常必要和可能。通过筛选、总结、修正,使以往大量优秀的试题进入试题库,继承了前人辛勤的劳动和智慧的结晶,也顺应了标准化命题的要求。 本系统是在WINDOWS98平台上,以Visual Basic6.0为工具,利用OLE等技术设计实现了一个试题库管理系统。系统设有特权用户(Supervisor),对系统的所有资源实施管理;一般用户只可选择访问已经授权可访问的资源。为试卷选题可通过人工进行,也可给出各种具体的条件,然后由程序自动来选定完成。试卷容是文本文档处理的各种数据。 关键词:OLE;试题库;试卷生成;试卷管理 中图分类号:TP311 应用Visual Basic6.0可视化编成工具开发软件速度快,界面实现简单方便,具有高可靠性、便于维护调试和高效率等突出优点。在深入学习和研究了Visual Basic6.0这一可视化继承开发环境的基础上和在参阅了大量文献资料的基础上,同时了解到我国大、中学校录取新学生、考察学生学习情况的手段主要还是通过考试,而每次考试,都要花费老师大量的心血去筛选试题、组织试卷、整理试题答案等。根据这些情况,我们开发设计了该《试题库管理系统》应用软件,以实现课程的试题库管理和处理,相信它必将在教学中发挥积极的作用。 1.概述 1.1研究背景 1. 随着计算机办公自动化程度的不断提高,开发各种数据库管理应用软件用于各种工作中

电子系统设计报告

电子系统设计与实践—— 具有报时报温功能的电子钟 设计者:电气83班 08041074刘湛 08041072 李旭 内容摘要 本次设计以AT89C52芯片为核心,辅以必要的外围电路,设计了一个简易的具有报时报温功能的电子钟,它由5V直流电源供电。在硬件方面,除了CPU外,使用8个七段LED数码管来进行显示,LED采用的是动态扫描显示,利用74LS573进行数码管段驱动,利用ULN2803A进行位驱动。通过LED能够比较准确显示时、分、秒以及日期和当前室温。利用5个简单的按键分别实现对时间的调整,年月日显示的切换,温度显示切换。时钟日历来源于DS1302芯片。温度测量功能来源于DS18BU20芯片。 软件方面采用C语言编程,以完成功能实现。整个电子钟系统能完成时间的显示,调时,以及温度显示等功能。 关键词:电子系统设计AT89C52 LED数码管日历芯片DS1302 温度测量芯片DS18BU20

目录 一.实现功能、任务以及具体要求二.重要硬件简介及应用 三.功能的论证与实现 四.系统框图 五.总体设计系统电路原理图和PCB 版图 六.程序流程图 七.实验遇到的问题及改进 八.实验总结及感想 九.参考书目 十.源程序

一.实现功能、任务以及具体要求1.目的及任务: (1)通过查阅相关资料,深入了解温度测量相关知识; (2)学习动态显示方式的实现方法及原理; (3)复习“MCS-51单片机原理及C语言程序设计”,掌握其接口扩展; (4)确定具有报时报温功能的电子钟的原理图,构建硬件平台; (5)采用汇编或C语言编写应用程序并调试通过;(6)制作出样机并测试达到功能和技术指标要求;(7)写出设计报告和答辩PPT。 .2.具体工作内容: (1)技术要求: 1. 时钟日历来源于DS1302芯片。 2. 温度测量使用DS18BU20。 3. 定闹功能、蜂鸣器音提示。 4. 具有实时年月日显示和校时功能。 5. 六位数码管动态显示,可采用按键切换显示。(2)工作任务: 1.组建具有报时报温功能的电子钟的总体结构框图;

人事信息管理系统后台数据库设计

《数据库管理系统》 课程设计报告 题目:人事信息管理系统的后台数据库设计 院(系):信息科学与工程学院 专业班级:计算机科学与技术****班 学生姓名:****** 学号:*********** 指导教师:陈颉 20 一三年 1 月 7 日至20 一三年 1 月一八日 华中科技大学武昌分校制

数据库管理系统课程设计任务书 一、设计(调查报告/论文)题目 人事信息管理系统的后台数据库设计 二、设计(调查报告/论文)主要内容 内容:完成人事信息的管理工作,实现各部门的信息化管理,满足员工与管理者的办公需求,例如员工查询信息、管理员修改信息等,要求设计并实现人事信息管理系统的后台数据库。 基本功能与要求: 1.在人事管理过程中,实现信息的自动化管理。 2.实现各种信息的修改、插入、删除功能(对管理员而言)。 3.实现对各种信息的查询、统计,支持模糊查询(对员工和管理员均可)。 4.按照年份月份统计某个员工的出勤情况。 5.按照某年某月某日统计查询某部门的迟到和早退人数。 6.按年统计各部门的调入调出人数信息。 分工任务:1 需求分析 2 数据库物理实现 3系统后台功能测试 三、原始资料 1.《数据库管理系统课程设计》指导书 2. 数据库系统设计课件 四、要求的设计(调查/论文)成果 1.课程设计报告 2.课程设计作品

五、进程安排 序号课程设计内容学时分配备注 1 选题、需求分析1天 2 数据库设计2天 3 数据库表及相关约束、视图实现2天 4 数据库的存储过程、触发器实现2天 5 数据库后台功能测试2天 6 验收答辩、撰写课程设计报告1天 合计10天 六、主要参考资料 [1] 顾兵.数据库技术与应用(SQL Server).北京:清华大学出版社,2010. [2] 马晓梅.SQL Server实验指导.第3版.北京:清华大学出版社,2009. [3] 范立南等.SQL Server 2005实用教程.北京:清华大学出版社,2009. [4] 李丹.SQL Server 2005数据库管理与开发.北京:机械工业出版社,2010. 指导教师(签名): 20 年月日

文件管理系统设计方案和对策

文件管理系统设计方案 传统的管理和保存文件的方式是人工生成和保管文件(包括:生成、传阅、审批、进入受控状态等),文件通常是保存在文件柜中的。 由于文件数量多,版本复杂,在实际使用中经常出现问题,例如:文件版本不一致、文件查找困难、文件管理处理历史记录报表工作量过大等。本方案旨在解决单位对大量工程和技术文件的管理,达到并确保工作人员手中文件版本的一致性、文件更改的可追溯性,同时以实现电子公告、电子通知、电子邮件、公文收发等功能来提高单位日常办公及管理的自动化。 一、文件管理系统的建设目标和意义 目标: 满足企业对文件信息进行集中管理、查询的需要 通过文件的集中管理,使企业实现资料共享,资料同步更新 企业重要文档的使用权限设置,一方面节约了资本,另一方面自动化管理,保证了资料的保密性和安全性 简化了员工查找和使用资料的工作步骤,使员工把时间放在其他更有价值的工作上,减少重复劳动,提高工作效率,为企业争取更多 利润 把无纸化办公和自动化办公结合起来,实现了无纸化和物理化文档管理的有机组合 把先进的数据库技术运用于文档管理,促进企业信息化管理的进步文件管理系统建设意义: 1、分类、管理企业文件 文件管理系统通过数据库管理,对企业纷杂的文件内容进行分门别类的管理,按照不同的介质(图片、影音、word、excel、ppt、pdf等)进行存放管理。 文件管理系统通过权限管理,对不同的员工开放不同级别的文件库,最大程

度保证企业的文件安全。 2、共享、学习企业文件 文件管理系统通过内部网络将文件资本进行共享,让更多的人分享到企业文件资本,拓宽部门和员工的知识范围。 3、应用、增值文件资本 文件管理平台构建面向企业业务流程的文件管理系统,使得工作过程中显形知识结构化,隐形知识显形化。 通过文件的不断重复应用,实现文件增值。有效的规避了人员升迁流动所造成了关键业务领域的损失,让业务运行不辍。 4、提升企业竞争力 创造企业新竞争价值,增加企业利润,降低企业成本,提高企业效率。建立企业新文化,鼓励思想自由,培育创新精神。 通过减少反应时间来提高为客户服务的水平,通过快速向市场提供产品和服务来增加收入。 二、文件管理系统的建设要求 首先是支持的文件内容要全面,从文件管理的内容角度,至少应该包括: ?对信息的发布,比如直接发布各种内容 ?对文档的管理,如各类DOC、XLS、PPT等文件 ?对数据信息的管理,如各类报表等等 有利于充分利用文件: ?对链接的处理:在内容中可以互相链接,它是有效利用文件的非常重要的环节 ?强有力的索引能力,特别是全文检索 ?对于动态数据的强有力查询能力,比如可以根据各种条件进行查询

试题管理系统UML系统分析与设计

《信息系统分析与设计》课程设计报告 班级:信管1002 姓名: 学号:

试题管理系统 课程设计要求: 1、应画出该系统的完整用例图。 2、给出负责模块的用例的详细事件流描述。 3、从用例的事件流描述中获取候选的实体类,确定类之间的关系 并画出正确的类图。 4、画出用例的顺序图以及协作图。 5、根据用例的事件流描述,画出用例的活动图。 6、根据类图,画出类的状态图。 7、最后给出系统的构件图、部署图。 8、具有完整清晰的设计流程。 9、各图布局合理、美观。 10、提供完整的课程设计说明书。 课程设计说明书的正文应包含以下几部分: 1、封面; 2、系统分析:给出详细分析过程; 3、系统设计:给出系统的UML图; 4、遇到的问题及解决方案。 摘要 传统的试题管理方法因受到时间、空间和管理维护等因素的限制, 已很难适应

现代信息社会教育教学发展的需求。随着计算机技术、网络技术和数据库技术的成 熟与稳定以及全国各高校校园网的建立和教育教学管理信息化程度的不断提高, 试 题管理系统获得了前所未有的发展前景与强大的技术支持。因此, 教学管理者希望 有一个集试卷分类、试卷管理、试题管理等功能于一体的网络试题库管理系统, 以 提高管理效率。而利用计算机自动生成试卷,并通过积累逐步形成有效试题库,使 试题和试卷的管理高效便捷,同时也使教学方式和考试方式有更多选择。这对提高 教学效率,有效利用资源和使传统的教学方式逐步走向自动化具有重要作用。 所开发的系统提供了试卷分类、试卷管理、试题管理及试卷生成等功能,为教师提 供了一个功能强大的平台,通过这个平台教师可以根据实际教学情况来组成相应的 试题与试卷,并轻松的管理试题库与试卷库,在实际应用中可以有效减轻教师的工 作量。 关键词:试题管理;试卷管理;UML;信息系统分析 目录 一、试题库管理系统的调查及初步分析 (2) (一)试题库管理系统的开发背景 (2) (二)试题库管理系统的需求分析 (3)

电子系统设计报告

电子系统设计报告 设计题目:基于单片机的简易电压表设计 指导老师:///////// 专业班级:///////// 报告人姓名://///////// (签名) 学号:////////// 信息工程学院通信工程教研室

摘要 数字电压表简称DVM,它是采用了数字化测量技术,把连续模拟量(直流输入电压)转换成不连续,离散的数字形式加以现实的仪表。传统的指针是电压表功能单一,精度低,不能满足数字化时代的需求,采用单片机的数字电压表,由精度高,抗干扰能力强,可扩展性强,集成方便,不可与PC进行实时通信。目前由各种单片机A/D转换器构成的数字电压表,已被广泛的应用为电子及其电工的测量,工业自动化仪表,自动测试系统等智能化测量领域,显示出强大的生命力。数字电压表是诸多数字化仪表的核心与基础,电压表的数字化是将连续的模拟量如直流电压转换成不连续的离散的数字形式,并加以显示,这有别于传统的指针加刻度盘进行读数的方法,避免了读数的视差和视觉的疲劳,目前数字电压表的核心部件是A/D转换器,转换器的精度很大程度上影响着数字电压表的准确度。本设计主要分为两部分:软件仿真原理图及软件程序。而软件仿真又大体可分为单片机小系统电路、A/D转换电路、LCD显示电路,各部分电路的设计及原理将会在软件仿真设计部分详细介绍;程序的设计使用C语言编程,利用keil软件对其编译,详细的设计算法将会在程序设计部分详细介绍。 关键字:数字电压表转换A/D转换器

目录 第一章绪论 (3) 第二章设计准备知识 (3) 2.1设计目的 (3) 2.2设计要求或内容 (3) 2.3设计软件及材料 (3) 2.3.1单片机软件开发工具keil介绍 (3) 2.3.2仿真软件protues介绍 (4) 2.3.3ADC0804 介绍 (4) 2.3.4液晶显示器 (4) 第三章整体设计过程 (4) 3.1设计思路 (4) 3.2模块分析 (5) 3.2.1AT89C51单片机 (5) 3.2.2A/D转换 (6) 3.2.3显示电路 (6) 3.3程序设计 (7) 3.3.1程序设计总方案 (7) 3.3.2系统子程序设计 (7) 3.4软件调试 (8) 第四章显示结果及误差分析 (8) 4.1 显示结果 (8) 4.2误差分析 (10) 第五章出现的问题及解决 (10) 5.1问题 (10) 5.2改进 (11) 第六章设计总结 (11) 第七章附件:(程序) (12) 7.1主程序 (12) 7.2SMC1602 (13) 7.3AD转换程序 (16)

学生管理系统设计文档

学生管理系统设计文档 1.系统概述 本学生信息管理系统可以说是一个综合性的学校学生管理系统,这它集成了学生学籍管理系统、学生成绩管理系统、学生档案管理系统等多种功能,因而具有较强的实用性和先进性。 1.1 系统及需求分析 1.1.1 系统需求 通过调查,要求系统需要有以下功能: ⑴由于操作人员的计算机知识普遍较差,要求有良好的人机界面; ⑵由于该系统的使用对象多,要求有较好的权限管理; ⑶原始数据修改简单方便,支持多条件修改 ⑷方便的数据查询,支持多条件查询; ⑸在相应的权限下,删除数据方便简单,数据稳定性好; ⑹数据计算自动完成,尽量减少人工干预; 1.1.2可行性分析 由于本系统管理的对象单一,都是在校学生,且每个数据内容具有较强的关联性,涉及的计算过程不是很复杂。因此,比较适合于采用数据库管理。且学校用于学生管理的微机都是以上的机器,在存储量、速度方面都能满足数据库运行的要求。在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上资料,特别是参考其它程序的功能,因此完全可以实现。 本系统的设计是在中文版操作系统环境下,使用 6.0开发的。数据库是中的重要支持技术,在开发过程中,如何选择数据库管理是一个重要的问题,目前,数据库产品较多,每种产品都具有各自的特点和适用范围,因此,在选择数据库时,应考虑数据库

应用的特点及适用范围。本系统选用的开发语言:语言,用的,它是一种可视化的、面对对象和条用事件驱动方式的结构化高级程序设计,可用于开发环境下的种类应用程序。它效率高,且功能强大,可以与的专业开发工具相媲美。在环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用内部的应用程序接口()函数,以及动态链接库()、动态数据交换()、对象的链接与嵌入()、开放式数据访问()等技术,可以高效、快速地开发出环境下功能强大、图形界面丰富的应用软件系统。 1.2系统的功能简介 本系统主要可以实现以下的管理功能:班级管理、学生档案管理、学生交费管理、课程管理、成绩管理等等。 1.3.1 项目规划 学生信息管理系统是一个典型的数据库应用程序,由系统、设置、录入、查询、帮助等模块组成,特规划如下: 1.3.2系统模块 该模块的主要任务是维护系统的正常运行和安全性设置,包括系统登录、退出登录、用户管理、退出系统等等。 1.3.3设置模块: 该模块的功能是实现设置功能,包括:专业、课程、班级的设置,这三个功能模块各自独立,完成学生管理必需的设置。 1.3.4录入模块: 该模块的主要功能是实现录入功能,包括学生档案、学生成绩的录入,完成学生管理数据的录入功能。 1.3.5查询模块: 该模块主要功能是实现查询功能,包括学生档案和成绩的查询以及成绩统计,都有打印报表的功能。 1.3.6帮助模块: 本系统的使用说明和关于。

简单题库管理系统设计

简单题库管理系统设计一 1. 数据库dxjsj.mdb 结构(由9张表组成 ) 2. 表结构(这里列出选择题、填充题、知识点3张表 ) 3. 数据存放目录结构 4.管理程序菜单功能 标准答案文件夹 存放数据库的文件夹 设计操作题素材文件夹 OS 操作题素材文件夹 操作结果样例文件夹

试题维护包括不同题型的处理界面 知识点、OS操作类型、设计操作类型处理界面

(1)设计涉及到多个窗体,需要通过下图所示操作加入新窗体,结果如右图所示。 添加新窗体结果(需要修改窗体文件名) 其中,testm为主窗体(设计时第一个建立的窗体),应用程序的主入口,提供菜单功能,菜单建立使用menuStrip控件。 (2) 窗体的打开(以单选题为例) Form fdxt = new fdxt(); fdxt.MdiParent = this; //作为主窗体testm的子窗体 fdxt.Show(); 窗体的关闭使用命令:this.Close(); 注意:应用程序的关闭退出使用命令:Application.Exit(); (3) 窗体之间共用的变量

先定义一个private/public的类,然后在类中声明一个static public属性的变量,可以在类中初始化或第一次使用之前初始化。使用“类名.变量名”形式引用。 根据本例的数据存放目录结构,需要获得程序的运行路径,可在主窗体testm的外面定义一个类,本例的类名为mv,如下所示。 namespace jsjtest { public partial class testm : Form { 主窗体testm中的代码 } 定义一个窗体之间共用的变量mpath public class mv { public static string mpath = Application.StartupPath; //获得程序的运行路径 } } 在其他窗体内使用变量mpath的方法: string connStr = "Provider = Microsoft.Jet.OleDB.4.0;Data Source=" + mv.mpath + "\\db\\dxjsj.mdb"; 5. 具体设计: (1)新建一个解决方案jsjtest.sln,将Form1窗体命名为testm,使用menuStrip控件建立菜单。需要引用using System.Data.OleDb; (2)添加新窗体,命名为zsd,用于知识点的数据管理。设置窗体标题为“知识点设置”。 按图所示,在知识点窗体添加网格控件,文本框,命令按钮、标签等,其中 用于导航,label4显示记录号。设置网格的AutoSizeColumnMode属性为Fill,可调整列宽。 在知识点窗体也需要引用using System.Data.OleDb; 声明全局变量: string connStr = "Provider = Microsoft.Jet.OleDB.4.0;Data Source=" + mv.mpath + "\\db\\dxjsj.mdb"; OleDbConnection conn; // 连接对象 OleDbDataAdapter da ; // 适配器对象

电子系统设计总结报告汇编

电子系统设计总结报告 题目:医院呼叫系统 班级: 组别:第四组 指导教师:张廷荣 设计时间

医院呼叫系统 一、引言 1. 选题意义 1.1 性价比 在此次课程设计中,选用的原件蜂鸣器、74LS147译码器、555定时器等,都是较常见和比较常用的,比较经济实惠,节约成本。因此,该方案设计的医院呼叫系统经济适用,成本合适,性价比较高。 1.2 EWB模拟仿真 EWB模拟仿真图如图1所示(见附录1)。 综上所述,呼叫器应用广泛,所需器件价格低,成本低,性价比高。经过EWB模拟仿真结果可得出,它具有可实行性。所以我们选则这个题目进行设计与制作。2. 设计目标 对于此课题,主要分为三个模块,一是采用74LS147为核心进行优先编码,设计优先编码模块,多人同时呼救时,危重病人优先被医治;二是采用555定时器与74LS192组成呼叫系统控制模块,三是呼叫提示系统,由二极管和蜂鸣器组成,病房病人呼叫即开关闭合时,二极管发光提示,蜂鸣器报警,持续5秒钟 3.小组成员及分工 二、作品说明 1.功能 此设计是用于医院病人的紧急呼叫,它的功能如下: 1.当病人按下呼救信号按钮,呼救灯亮,同时显示病人编号,蜂鸣器发出5秒呼救声,等待医护人员来护理。 2.按照病人的病情划分出优先级别,有多个病人同时呼救时,系统优先显示最高级别的呼救编号。 3.当医护人员处理完最高级别呼救后,按下清零键,系统按优先等级先后显示其它病人编号。 2. 操作说明

此设计使用的的是四节1.5V干电池,放入电池槽中即可。病人在需要帮助时,只需按下与自己床位相对应的开关,医生便可获知病人相应的床位信息 三、基本原理 1. 原理图 (1) 方案呼叫系统电路原理框图如图2所示。 图2医院呼叫系统电路的原理框图 对于此课题,主要分为三个模块,一是采用74LS147为核心进行优先编码,设计优先编码模块,多人同时呼救时,数码管按优先级显示病人病房编号,危重病人优先被医治;二是采用555定时器与74LS192组成呼叫系统控制模块,控制呼叫提示系统;三是呼叫提示系统,由二极管和蜂鸣器组成,病房病人呼叫即开关闭合时,二极管发光提示,蜂鸣器报警,持续5秒钟。 (2) 电路原理图如图3所示(见附录2) 2.工作原理 (1) 直流电源 将四节电压为1.5V的干电池串联起来,为整个电路提供电压。 (2)呼叫控制模块 利用由555定时器和外接元件R 1、R 2 、C构成多谐振荡器,长时间的振震荡 信号驱动蜂鸣器呼叫。配以相应参数的阻容器件以及计数器74LS192,可将振荡时间准确的控制在要求的8秒钟 每次呼叫时长:T=(R1+2R2)×C1×Ln2×8 =(15+2×68)×0.00001×Ln2×8= 8s 呼叫控制电路原理图如图3所示:

超市后台管理系统的设计与实现

本科生毕业论文(设计) 题目: 超市后台管理系统的设计与实现姓名: 杜闪闪 学院: 理学院 专业: 计算机科学与技术 班级: 2006级计算机(5)班 学号: 2006814504 指导教师: 沈峰职称: 讲师 2010 年6月5日 安徽科技学院教务处制

目录 摘要 (1) 关键词 (1) 引言 (1) 1 系统概述 (1) 1.1开发背景及意义 (1) 1.2系统开发目标 (2) 1.3开发工具简介及系统运行环境 (2) 1.3.1 开发工具 (2) 1.3.2 运行环境 (2) 2系统分析 (2) 2.1设计目标 (2) 2.2系统开发可行性 (3) 2.2.1技术可行性分析 (3) 2.2.2 经济上的可行性 (3) 2.2.3操作可行性 (3) 2.3系统功能分析 (3) 3系统总体设计 (3) 3.1系统的功能模块 (3) 4超市后台管理数据库设计 (4) 5超市后台管理系统详细设计 (6) 5.1系统的总体设计说明 (6) 5.2数据库中各表之间的关系图 (6) 5.3系统窗体的具体实现 (7) 5.3.1系统登陆程序的设计和实现 (7) 5.3.2系统主窗体程序的设计和实现 (8) 5.3.3基础信息菜单的设计和实现 (8) 5.3.4销售管理菜单的设计和实现 (9) 5.3.5调货管理菜单的设计和实现 (12) 5.3.6库存管理菜单的设计和实现 (13) 5.3.7系统管理菜单的设计和实现 (15) 6系统测试 (17) 6.1 登录界面的测试 (17) 6.2销售管理界面的测试 (17) 6.3入库管理界面的测试 (18) 6.4调货管理界面的测试 (18) 6.5库存管理界面的测试 (18) 6.6基础信息管理界面的测试 (19) 6.7系统设置管理界面的测试 (19) 总结 (20) 致谢 (20) 参考文献 (20) 英文摘要 (21) 附录 (22)

相关文档
相关文档 最新文档