数据结构与算法课程设计(2015计科)

数据结构与算法课程设计(2015计科)
数据结构与算法课程设计(2015计科)

《数据结构与算法课程设计》要求

一、课程设计报告应包括封面、中英文摘要、目录、题目、1、问题分析和任务定义、2、数据结构的选择和概要设计、3、详细设计和编码、4、上机调试过程、5、测试结果及其分析、6、用户使用说明、附录、参考文献、致谢这几个部分和顺序;

二、文档格式为A4纸、页边距上下2.5cm,左右2.5cm;

三、图、表应有标号和名称,且图名位于图下,表名位于表格上方;

四、参考文献格式为:

序号作者.书名.出版地:出版社名称,出版社年份

序号作者.论文题名.期刊名称,年份,卷号(期号):起至页码

五、附录中的源代码应有适当的注释;

六、按照格式要求填写《课程设计报告封面》、《课程设计评分表》中学生应填写的内容。

七、课程设计结束后,学生应提交的文档包括纸质文档和电子文档。纸质文档包括:

1、《课程设计任务书》一份;

2、《课程设计报告》1份(用塑料拉杆夹装订好);

3、《课程设计评分表》1份;

纸质文档装入“课程设计资料袋”上交。

电子文档包括:

1、课程设计报告

2、课程设计评分表

3、课程设计任务书

4、源程序

5、程序的可执行文件(.exe)

将这些电子档形成一个压缩文件,文件名为:学号-姓名-课程设计名,发送至指导老师的邮箱。

课程设计内容:从以下题目中任选2题

1. 运动会分数统计

【问题描述】

参加运动会的n个学校编号为1~n。比赛分成m个男子项目和w个女子项目,项目编号分别为1~m和m+1~m+w。由于各项目参加人数差别较大,有些项目取前五名,得分顺序为8,5,3,2,1;还有些项目只取前三名,得分顺序为5,3,2。写一个统计程序产生各种成绩单和得分报表。

【基本要求】

1)可以输入各个项目的前三名或前五名的成绩;

2)能统计各学校总分,

3)可以按学校编号或名称、学校总分、男女团体总分排序输出;

4)可以按学校编号查询学校某个项目的情况;可以按项目编号查询取得前

三或前五名的学校。

5)数据存入文件并能随时查询

6)规定:输入数据形式和范围:可以输入学校的名称,运动项目的名称

输出形式:有中文提示,各学校分数为整型。

界面要求:有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。

存储结构:学生自己根据系统功能要求自己设计,但是要求运动会的相关数据要存储在数据文件中。

测试数据:

【测试数据】

要求使用1、全部合法数据;2、整体非法数据;3、局部非法数据。进行程序测试,以保证程序的稳定。

例如,对于n=4,m=3,w =2,编号为奇数的项目取前五名,编号为偶数的项目取前三名,设计一组实例数据。

【实现提示】

可以假设n≤20,m≤30,w≤20,姓名长度不超过20 个字符。每个项目结

束时,将其编号、类型符(区分取前五名还是前三名) 输入,并按名次顺序输入运动员姓名、校名(和成绩)。

【选作内容】

允许用户指定某项目采取其他名次取法。

2. 魔王语言解释

【问题描述】

有一个魔王总是使用自己的一种非常精练而抽象的语言讲话,没有人能听得懂,但他的语言是可以逐步解释成人能听懂的语言,因为他的语言是由以下两种形式的规则由人的语言逐步抽象上去的:

(1)m βββα 21→

(2)θθδθδθδδδθδ1121)( -→n n n

在这两种形式中,从左到右均表示解释。试写一个魔王语言的解释系统,把他的话解释成人能听得懂的话。

【基本要求】

用下述两条具体规则和上述规则形式(2)实现。设大写字母表示魔王语言的词汇;小写字母表示人的语言词汇;希腊字母表示可以用大写字母或小写字母代换的变量。魔王语言可含人的词汇。

(1)tAdA B →

(2)sae A →

【测试数据】

B(ehnxgz)B 解释成tsaedsaeezegexenehetsaedsae

若将小写字母与汉字建立下表所示的对应关系,则魔王说的话是“天上一只鹅地上一只鹅鹅追鹅赶鹅下鹅蛋鹅恨鹅天上一只鹅地上一只鹅”。

【实现提示】

将魔王的语言自右至左进栈,总是处理栈顶字符。若是开括号,则逐一出栈,

将字母顺序入队列,直至闭括号出栈,并按规则要求逐一出队列再处理后入栈。其他情形较简单,请读者思考应如何处理。应首先实现栈和队列的基本操作。

3. 银行业务模拟

【问题描述】

客户业务分为两种。第一种是申请从银行得到一笔资金,即取款或借款。第二种是向银行投入一笔资金,即存款或还款。银行有两个服务窗口,相应地有两个队列。客户到达银行后先排第一个队。处理每个客户业务时,如果属于第一种,且申请额超出银行现存资金总额而得不到满足,则立刻排入第二个队等候,直至满足时才离开银行;否则业务处理完后立刻离开银行。每接待完一个第二种业务的客户,则顺序检查和处理(如果可能)第二个队列中的客户,对能满足的申请者予以满足,不能满足者重新排到第二个队列的队尾。注意,在此检查过程中,一旦银行资金总额少于或等于刚才第一个队列中最后一个客户(第二种业务)被接待之前的数额,或者本次已将第二个队列检查或处理了一遍,就停止检查(因为此时已不可能还有能满足者)转而继续接待第一个队列的客户。任何时刻都只开一个窗口。假设检查不需要时间。营业时间结束时所有客户立即离开银行。

写一个上述银行业务的事件驱动模拟系统,通过模拟方法求出客户在银行内逗留的平均时间。

【基本要求】

利用动态存储结构实现模拟。

【测试数据】

一天营业开始时银行拥有的款额为10000(元),营业时间为600(分钟)。其他模拟参量自定,注意测定两种极端的情况:一是两个到达事件之间的间隔时间很短,而客户的交易时间很长,另一个恰好相反,设置两个到达事件的间隔时间很长,而客户的交易时间很短。

【实现提示】

事件有两类:到达银行和离开银行。初始时银行现存资金总额为total。开始营业后的第一事件是客户到达,营业时间从0到closetime。到达事件发生时随机地设置此客户的交易时间和距下一到达事件之间的时间间隔。每个客户要办理的

款额也是随机确定的,用负值和正值分别表示第一类和第二类业务。变量total,closetime以及上述两个随机量的上下界均交互地从终端读入,作为模拟参数。两个队列和一个事件表均要用动态存储结构实现。注意弄清应该在什么条件下设置离开事件,以及第二个队列用怎样的存储结构实现时可以获得较高的效率。注意:事件表是按时间顺序有序的。

4. 一元稀疏多项式计算器

【问题描述】

设计一个一元稀疏多项式简单计算器。

【基本要求】

一元稀疏多项式简单计算器的基本功能是:

(1) 输入并建立多项式;

(2) 输出多项式,输出形式为整数序列:n,c l,e l,c2,e2,…,c n,e n,其

中n是多项式的项数,c i和e i,分别是第i 项的系数和指数,序列按指数降序排列;

(3) 多项式a和b相加,建立多项式a+b;

(4) 多项式a和b相减,建立多项式a -b。

【测试数据】

(1)(2x+5x8-3.1x11) + (7-5x8+11x9)=(-3.lx11+11x9+2x+7)

(2)(6x-3-x+4.4x2-1.2x9) -(-6x-3+5.4x2-x2+7.8x15)

=(-7.8x15-1.2x9+12x-3-x)

(3)(1 +x+x2+x3+x4+x5)+(-x3-x4)=(1+x+x2+x5)

(4)(x+x3)+(-x-x3)=0

(5)(x+x100)+(x100+x200)=(x+2x100+x200)

(6)(x+x2+x3)+0=x+x2+x3

(7) 互换上述测试数据中的前后两个多项式

【实现提示】

用带表头结点的单链表存储多项式。

5. 航空客运订票系统

【问题描述】

航空客运订票的业务活动包括:查询航线、客票预订和办理退票等。试设计一个航空客运订票系统,以使上述业务可以借助计算机来完成。

【基本要求】

(1)每条航线所涉及的信息有:终点站名、航班号、飞机号、飞行周日(星期几)、乘员定额、余票量、已订票的客户名单(包括姓名、订票量、舱位等级1,2或3)以及等候替补的客户名单(包括姓名、所需票量);

(2)系统能实现的操作和功能如下:

①录入:可以录入航班情况,全部数据可以只放在内存中,最好存储在文件中;

②查询航线:根据旅客提出的终点站名输出下列信息:航班号、飞机号、星期几飞行,最近一天航班的日期和余票额;

③承办订票业务:根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若尚有余票,则为客户办理订票手续,输出座位号;若已满员或余票额少于订票额,则需重新询问客户要求。若需要,可登记排队候补;

④承办退票业务:根据客户提供的情况(日期、航班),为客户办理退票手续,然后查询该航班是否有人排队候补,首先询问排在第一的客户,若所退票额能满足他的要求,则为他办理订票手续,否则依次询问其他排队候补的客户。

【测试数据】

由读者自行指定。

【实现提示】

两个客户名单可分别由线性表和队列实现。为查找方便,已订票客户的线性表应按客户姓名有序,并且,为插入和删除方便,应以链表作存储结构。由于预约人数无法预计,队列也应以链表作存储结构。整个系统需汇总各条航线的情况登录在一张线性表上,由于航线基本不变,可采用顺序存储结构,并按航班有序或按终点站名有序。每条航线是这张表上的一个记录,包含上述8个域、其中乘员名单域为指向乘员名单链表的头指针,等候替补的客户名单域为分别指向队头和队尾的指针。

【选作内容】

当客户订票要求不能满足时,系统可向客户提供到达同一目的地的其他航线情况。读者还可充分发挥自己的想象力,增加你的系统的功能和其他服务项目。

6. 哈夫曼编/译码器

【问题描述】

利用哈夫曼编码进行通信可以大大提高信道利用率,缩短信息传输时间,降低传输成本。但是,这要求在发送端通过一个编码系统对待传数据预先编码,在接收端将传来的数据进行译码(复原)。对于双工信道(即可以双向传输信息的信道),每端都需要一个完整的编/译码系统。试为这样的信息收发站写一个哈夫曼码的编/译码系统。

【基本要求】

一个完整的系统应具有以下功能:

(1)I:初始化(Initialization)。从终端读入字符集大小n , 以及n个字符和n 个权值,建立哈夫曼树,并将它存于文件hfmTree中。

(2)E:编码(Encoding)。利用已建好的哈夫曼树(如不在内存,则从文件hfmTree中读人),对文件ToBeTran中的正文进行编码,然后将结果存入文件CodeFile中。

(3)D: 译码(Decoding)。利用已建好的哈夫曼树将文件CodeFile中的代码进行译码,结果存入文件TextFile中。

(4)P:打印结果文件(Print)。将文件TextFile显示在终端上,每行50 个代码。

(5)T:打印哈夫曼树(Tree printing)。将已在内存中的哈夫曼树以直观的方式(树或凹入表形式)显示在终端上,同时将此字符形式的哈夫曼树写入文件TreePrint中。

【测试数据】

(1)利用教科书中的数据调试程序。

(2)用下表给出的字符集和频度的实际统计数据建立哈夫曼树, 并实现以下报文的编码和译码:"THIS PROGRAM IS MY FA VORITE"。

7.停车场管理

【问题描述】

设停车场内只有一个可停放n辆汽车的狭长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端),若车场内已停满n辆汽车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后开入的车辆必须先退出车场为它让路,待该辆车开出大门外,其它车辆再按原次序进入车场,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。试为停车场编制按上述要求进行管理的模拟程序。

【基本要求】

以栈模拟停车场,以队列模拟车场外的便道,按照从终端读入的输入数据序列进行模拟管理。每一组输入数据包括三个数据项:汽车“到达”或“离去”信息、汽车牌照号码及到达或离去的时刻,对每一组输入数据进行操作后的输出数据为:若是车辆到达,则输出汽车在停车场内或便道上的停车位置;若是车离去;则输出汽车在停车场内停留的时间和应交纳的费用(在便道上停留的时间不收费)。栈以顺序结构实现,队列以链表实现。

【测试数据】

设n=2,输入数据为:(‘A’,1,5),(‘A’,2,10),(‘D’,1,15),(‘A’,3,20),(‘A’,4,25),(‘A’,5,30),(‘D’,2,35),(‘D’,4,40),(‘E’,0,0)。每一组输入数据包括三个数据项:汽车“到达”或“离去”信息、汽车牌照号码及到达或离去的时刻,其中,‘A’表示到达;‘D’表示离去,‘E’表示输入结束。

【实现提示】

需另设一个栈,临时停放为给要离去的汽车让路而从停车场退出来的汽车,也用顺序存储结构实现。输入数据按到达或离去的时刻有序。栈中每个元素表示一辆汽车,包含两个数据项:汽车的牌照号码和进入停车场的时刻。

8. 校园导游咨询

【问题描述】

设计一个校园导游程序,为来访的客人提供各种信息查询服务。

【基本要求】

(1) 设计你所在学校的校园平面图,所含景点不少于10个。以图中顶点表示校内各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等相关信息。

(2)为来访客人提供图中任意景点相关信息的查询。

(3)为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。

【测试数据】

以广东理工学院校区为例。

【实现提示】

一般情况下,校园的道路是双向通行的,可设校园平面图是一个无向网。顶点和边均含有相关信息。

9.迷宫问题(栈或队列)

【问题描述】

以一个m*n的长方阵表示迷宫,0和1分别表示迷宫中的通路和障碍。设计一个程序,对任意设定的迷宫,求出一条从入口到出口的通路,或得出没有通路的结论。

【基本要求】

首先实现一个以链表作存储结构的栈类型(或队列),然后编写一个求解迷宫的非递归/递归程序。求得的通路以三元组(i,j,d)的形式输出,其中:(i,j)指示迷宫中的一个坐标,d表示走到下一坐标的方向,如:对于下列数据的迷宫,

输出的一条通路为:(1,1,1),(1,2,2),(3,2,3),(3,1,2),…。

【测试数据】

迷宫的测试数据如下:左下角(1,1)为入口,右下角(8,9)为出口。

【实现提示】

计算机解迷宫通常用的是“穷举求解”方法,即从入口出发,顺着某个方向进行探索,若能走通,则继续往前进;否则沿着原路退回,换一个方向继续探索,直至出口位置,求得一条通路。假如所有可能的通路都探索到而未能到达出口,则所设的迷宫没有通路。

可以二维数组存储迷宫数据,通常设定入口点的下标为(1,1),出口点的下标为(n,n)。为处理方便起见,可在迷宫的四周加一圈障碍。对于迷宫中任一位置,均可约定有东、南、西、北四个方向可通。

【选做内容】

(1)编写递归形式的算法,求得迷宫中所有可能的通路;

(2)以方阵形式输出迷宫及其通路。

10.教学计划编制问题

【问题描述】

大学的每个专业都要制定教学计划。假设任何专业都有固定的学习年限,每学年含两学期,每学期的时间长度和学分上限值均相等。每个专业开设课程都是确定的,而且课程在开设时间的安排必须满足先修关系。每门课程有哪些先修课程是确定的,可以有任意多门,也可以没有。每门课恰好占一个学期。试在这样的前提下设计一个教学计划编制程序。

【基本要求】

(1)输入参数包括:学期总数,一学期的学分上限,每门课的课程号(固定占3位的字母数字串)、学分和直接先修课的课程号。

(2)允许用户指定下列两种编排策略之一:一是使学生在各学期中的学习负担尽量均匀;二是使课程尽可能地集中在前几个学期中。

(3)若根据给定的条件问题无解,则报告适当的信息;否则将教学计划输出到用户指定的文件中。计划的表格格式自行设计。

【测试数据】

学期总数:6;学分上限:10;该专业共开设12门课,课程号从C01到C12,学分顺序为2,3,4,3,2,3,4,4,7,5,2,3。先修课程关系自己设定。

【实现提示】

可设学期总数不超过8,课程总数不超过100。如果输入的先修课程号不在该专业开设的课程序列中,则作为错误处理。应建立内部课程号与课程号之间的对应关系

操作系统课程设计

课程设计报告 2015~2016学年第一学期 操作系统综合实践课程设计 实习类别课程设计 学生姓名李旋 专业软件工程 学号130521105 指导教师崔广才、祝勇 学院计算机科学技术学院 二〇一六年一月

- 1 -

- 2 -

一、概述 一个目录文件是由目录项组成的。每个目录项包含16B,一个辅存磁盘块(512B)包含32个目录项。在目录项中,第1、2字节为相应文件的外存i节点号,是该文件的内部标识;后14B为文件名,是该文件的外部标识。所以,文件目录项记录了文件内、外部标识的对照关系。根据文件名可以找到辅存i节点号,由此便得到该文件的所有者、存取权、文件数据的地址健在等信息。UNIX 的存储介质以512B为单位划分为块,从0开始直到最大容量并顺序加以编号就成了一个文件卷,也叫文件系统。UNIX中的文件系统磁盘存储区分配图如下: 本次课程设计是要实现一个简单的模拟Linux文件系统。我们在内存中开辟一个虚拟磁盘空间(20MB)作为文件存储器,并将该虚拟文件系统保存到磁盘上(以一个文件的形式),以便下次可以再将它恢复到内存的虚拟磁盘空间中。文件存储空间的管理可采用位示图方法。 二、设计的基本概念和原理 2.1 设计任务 多用户、多级目录结构文件系统的设计与实现。可以实现下列几条命令login 用户登录 logout 退出当前用户 dir 列文件目录 creat 创建文件 delete 删除文件 open 打开文件 close 关闭文件 - 3 -

read 读文件 write 写文件 mkdir 创建目录 ch 改变文件目录 rd 删除目录树 format 格式化文件系统 Exit 退出文件系统 2.2设计要求 1) 多用户:usr1,usr2,usr3,……,usr8 (1-8个用户) 2) 多级目录:可有多级子目录; 3) 具有login (用户登录)4) 系统初始化(建文件卷、提供登录模块) 5) 文件的创建:create (用命令行来实现)6) 文件的打开:open 7) 文件的读:read8) 文件的写:write 9) 文件关闭:close10) 删除文件:delete 11) 创建目录(建立子目录):mkdir12) 改变当前目录:cd 13) 列出文件目录:dir14) 退出:logout 新增加的功能: 15) 删除目录树:rd 16) 格式化文件系统:format 2.3算法的总体思想 - 4 -

课程设计模板参考

附件2:课程设计模板参考 《******》 (课程名称) 整体教学设计 (XXXX~XXXX学年第X学期) (第X学年第X学期) 课程名称: 所属系部: 制定人: 合作人: 制定时间: ××职业技术学院

课程整体教学设计 一、课程基本信息 一、课程定位 (尽可能用图形、表格表述) 1. 岗位分析: 本专业毕业生的(技术、管理)岗位分析:初次就业、二次晋升、未来发展。 指出本课程面向的主要岗位。画出其典型工作流程图。 写出该岗位的主要能力需求、知识需求和素质需求。 2. 课程分析:

标出本课程在课程体系中的位置(前导课、后续课)。 说明本课程与普通高校、中职(高职)、培训班相关课程的异同。 二、课程目标设计 总体目标: (这是课程的第一层目标,须与课程标准中相关表述一致,对于尚未制定课程标准的课程,由指定教师写出初稿,课程组教师集体研讨商定本课程的总体目标。) 能力目标:((学生)能根据××(标准、规范),运用××(知识),做××(事情))知识目标:(知道...;了解…;理解…;掌握…。) 素质目标:(职业道德、职业素质、职业规范在本课中的具体表现) 其它目标:(有则写,无则不写) 三、课程内容设计:

四、能力训练项目设计 五、项目情境设计 每个项目的多个情境。即该项目的由来、约束条件和工作环境。 用情境引出项目任务。情境类型尽可能齐全,情境展示尽可能生动。

六、课程进程表 注1:“第×次”指的是该次课在整个课程中的排序,也就是在“单元设计”中的标号,不是在本周内的次序。 注2.:“师生活动”指的是师生“做什么(项目、任务中的)事情;学什么内容”。此项内容在这里只是个标题,具体化为“单元设计”后,就要详细展开为“怎样做?怎样学?”。 六、第一次课设计(面向全课,力争体验)。 最后一次课设计(面向全课,高水平总结)。 七、考核方案(考核方案先由指定教师写出,然后由课程组成员集体研讨商定) 八、教学材料(指教材或讲义、参考资料、所需仪器、设备、教学软件等) 九、需要说明的其他问题 十、本课程常用术语中英文对照 附:课程整体设计体会

操作系统课程设计报告书

题目1 连续动态内存管理模拟实现 1.1 题目的主要研究内容及预期达到的目标 (1)针对操作系统中内存管理相关理论进行设计,编写程序并进行测试,该程序管理一块虚拟内存。重点分析三种连续动态内存分配算法,即首次适应算法、循环首次适应算法和最佳适应算法。 (2)实现内存分配和回收功能。 1.2 题目研究的工作基础或实验条件 (1)硬件环境:PC机 (2)软件环境:Windows XP,Visual C++ 6.0 1.3 设计思想 首次适应算法的实现:从空闲分区表的第一个表目起查找该表,把最先能够满足要求的空闲区分配给作业,这种方法的目的在于减少查找时间。为适应这种算法,空闲分区表中的空闲分区要按地址由低到高进行排序。该算法优先使用低址部分空闲区,在低址空间造成许多小的空闲区,在高址空间保留大的空闲区。 循环首次适应算法的实现:在分配内存空间时,不再每次从表头开始查找,而是从上次找到空闲区的下一个空闲开始查找,直到找到第一个能满足要求的的空闲区为止,并从中划出一块与请求大小相等的内存空间分配给作业。该算法能使内存中的空闲区分布得较均匀。 最佳适应算法的实现:从全部空闲区中找到能满足作业要求的、且最小的空闲分区,这种方法能使碎片尽量小。为适应此算法,空闲分区表中的空闲分区要按从小到大进行排序,从表头开始查找第一个满足要求的自由分配。 1.4 流程图 内存分配流程图,如图1-1所示。

图1-1 内存分配流程图内存回收流程图,如1-2所示。

图1-2 内存回收流程图 1.5 主要程序代码 (1)分配内存 void allocate(char z,float l) { int i,k; float ad; k=-1; for(i=0;i= l && free_table[i].flag == 1) if(k==-1 || free_table[i].length

数据库课程设计(完整版)

HUNAN CITY UNIVERSITY 数据库系统课程设计 设计题目:宿舍管理信息系统 姓名: 学号: 专业:信息与计算科学 指导教师:

20年 12月1日 目录 引言 3 一、人员分配 4 二、课程设计目的和要求 4 三、课程设计过程 1.需求分析阶段 1.1应用背景 5 1.2需求分析目标5 1.3系统设计概要 5 1.4软件处理对象 6 1.5系统可行性分析 6 1.6系统设计目标及意义7 1.7系统业务流程及具体功能 7 1.8.1数据流程图8 2.系统的数据字典11 3.概念结构设计阶段 13 4.逻辑结构设计阶段 15 5.物理结构设计阶段 18 6.数据库实施 18 7.数据库的运行和维护 18 7.1 解决问题方法 19 7.2 系统维护 19 7.3 数据库性能评价 19 四、课程设计心得. 20

参考文献 20 引言 学生宿舍管理系统对于一个学校来说是必不可少的组成部分。目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条一条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。我们针对如此,设计了一套学生宿舍管理系统。学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的学校提供了一个方便、快捷的操作方式。本系统具有运行速度快、安全性高、稳定性好的优点,并且具备修改功能,能够快速的查询学校所需的住宿信息。 面对目前学校发展的实际状况,我们通过实地调研之后,对宿舍管理系统的

操作系统课程设计报告

操作系统课程设计报告

东莞理工学院 操作系统课程设计报告 学院:计算机学院 专业班级: 13软件工程1班 提交时间: 2015/9/14 指导教师评阅意见: . 项目名称:进程与线程管理功能 一、设计目的 用语言来模拟进程和线程管理系统,加深对进程和线程的理解,掌握对进程和线程各种状态和管理的算法原理。

二、环境条件 系统: WindowsXP、VMWare、Ubuntu Linux 语言:C/C++ 开发工具:gcc/g++、Visual C++ 6.0 三、设计内容 1. 项目背景 计算机的硬件资源有限,为了提高内存的利用率和系统的吞吐量,就要根据某种算法来管理进程和线程的状态从而达到目的。 进程与线程管理功能完成基于优先级的抢占式线程调度功能,完成进程虚拟内存管理功能。 进程与线程管理功能 基本要求:完成基于优先级的抢占式线程调度功能,完成进程虚拟内存管理功能。 提高要求:(增加1项就予以加分) (1) 实现多种线程调度算法; (2)通过“公共信箱”进行通信的机制,规定每一封信的大小为128字节,实现两个用户进程之间通过这个“公共信箱”进行通信。 (3) 实现多用户进程并发的虚拟内存管理功能。

(4) 实现用户进程间通信功能,并用生产者/消费者问题测试进程间通信功能的正确性。 (5) 实现改进型Clock页面置换算法。 (6) 实现Cache功能,采用FIFO替换算法。 2. 扩展内容 实现多种线程调度算法:时间片轮转调度算法 四、人员分工 优先级调度算法:钟德新,莫友芝 时间片轮转调度算法:张德华,袁马龙 设计报告由小组队员共同完成。小组成员设计的代码分工如下:钟德新编写的代码:void Prinft(){ PCB *p; system("cls");//清屏 p=run; //运行队列 if(p!=NULL) { p->next=NULL; } cout<<"当前正在运行的进程:"<procname<<"\t\t"<pri<<"\t"<needOftime<<"\t\t"<runtime<<"\t\t"<state<next; } cout<

数据库课程设计(自己做的)

——货存控制系统 6、1数据库设计概述 ㈠数据库设计的概念:数据库设计就是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求与处理要求)。在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。 ㈡数据库设计的特点 1、数据库建设就是硬件、软件与干件的结合:三分技术、七分管理、十二分基础数据,技术与管理的界面称之为干件。 2、数据库设计过程就是结构设计与行为设计的密切结合:结构设计就是设计数据库结构,行为设计就是设计应用程序、事务处理等。 ㈢数据库设计的方法 1、手工试凑法:设计质量与设计人员的经验与水平有直接关系,缺乏科学理论与工程方法的支持,工程质量难保证。 2、规范设计法:基本思想就是过程迭代与逐步求精。 ㈣数据库设计的基本步骤 准备工作:选定参加设计的人员。 ⑴分析员:数据库设计的核心人员,自始至终参与数据库设计,其水平决定了数据库系统的质量。 ⑵用户:主要参加需求分析与数据库的运行维护,用户的积极参与将加速数据库设计,提高数据库设计的质量。 ⑶程序员:在系统实施阶段参与进来,负责编制程序。 ⑷操作员:在系统实施阶段参与进来,准备软硬件环境。 ㈤数据库设计的过程(六个阶段) 1、需求分析阶段: 准确了解与分析用户需求(包括数据与处理),就是整个设计过程的基础,就是最困难、最耗费时间的一步。 2、概念结构设计阶段: 整个数据库设计的关键,通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型 3、逻辑结构设计阶段: 将概念结构转换为某个DBMS所支持的数据模型,并对其进行优化。 4、数据库物理设计阶段: 为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构与存取方法)。 5、数据库实施阶段: 运用DBMS提供的数据语言、工具及宿主语言,根据逻辑设计与物理设计的结果建立数据库、编制与调试应用程序、组织数据入库并进行试运行。 6、数据库运行与维护阶段: 数据库应用系统经过试运行后即可投入正式运行,在运行过程中不断对其进行评价、调整与修改。 设计一个数据库应用系统往往就是上述六个阶段的不断反复。 ㈥数据库设计各阶段的模式形成: 1、需求分析阶段:综合各个用户的应用需求。 2、概念设计阶段:形成独立于机器特点,独立于各个DBMS产品的概念模式(E-R图)。

操作系统课程设计报告

上海电力学院 计算机操作系统原理 课程设计报告 题目名称:编写程序模拟虚拟存储器管理 姓名:杜志豪.学号: 班级: 2012053班 . 同组姓名:孙嘉轶 课程设计时间:—— 评语: 成绩: 目录 一、设计内容及要求 (4) 1. 1 设计题目 (4) 1.2 使用算法分析: (4)

1. FIFO算法(先进先出淘汰算法) (4) 1. LRU算法(最久未使用淘汰算法) (5) 1. OPT算法(最佳淘汰算法) (5) 分工情况 (5) 二、详细设计 (6) 原理概述 (6) 主要数据结构(主要代码) (6) 算法流程图 (9) 主流程图 (9) Optimal算法流程图 (10) FIFO算法流程图 (10) LRU算法流程图 (11) .1源程序文件名 (11) . 2执行文件名 (11) 三、实验结果与分析 (11) Optimal页面置换算法结果与分析 (11) FIFO页面置换算法结果与分析 (16) LRU页面置换算法结果与分析 (20) 四、设计创新点 (24) 五、设计与总结 (27)

六、代码附录 (27) 课程设计题目 一、设计内容及要求 编写程序模拟虚拟存储器管理。假设以M页的进程分配了N

块内存(N

课程整体教学设计模板

课程整体教学设计要求一、课程整体教学设计模板 《**》课程整体教学设计 一、管理信息 课程名称:批准人:课程代码:所属学院:制定人:制定时间: 二、基本信息 学分:课程类型:学时:先修课: 授课对象:后续课: 三、课程设计 1.课程目标设计 (1)知识目标 (2)能力目标 (3)素质目标

5.第一节课设计梗概 四、考核方案设计 五、教材、资料 二、基本要求 1.教学设计必须认真研究学生的学习需求,要体现:工学结合、职业行动导向;突出能力目标;项目任务载体;能力实训;学生主体;知识理论实践一体化的课程教学。 2.公共基础课要体现为专业培养目标服务,课程教学设计要有针对性,体现专业培养目标的特色。 3.对于学生素质培养,如自学能力、与人交流能力、与人合作能力等要渗透到所有的课程教学活动中。 4.课程的能力目标不是来自课本,而是以职业岗位需求为准。用具体、可检验的语言,准确描述课程的能力目标:“能用××做××”。 5.课程内容必须以职业活动为导向、以工作过程为导向。课程的实例、实训和主要的课堂活动,都要紧紧围绕职业能力目标的实现,尽可能取材于职业岗位活动,以此改造课程的内容和顺序,从“以知识的逻辑线索为依据”转变成“以职业活动的工作过程为依据”。 6.以项目为课程能力训练载体。项目选择要综合考虑实用性、典型性、覆盖性、综合性、趣味性、挑战性、可行性。 7.知识、理论、能力训练和实践应当尽可能一体化进行:时间、地点、教师尽可能不是分离的。 8.课程考核设计要突出突出能力目标,考核要全面和综合评价,

要形成性考核和终结性考核相结合

。考核项目涵盖学生能力、知识、态度。各考核项目分值合理,比例适当。在能力考核中体现单项能力与综合能力考核。知识考核以对知识运用的考核为主。 三、说明 1.批准人一般为教研室主任,制定人一般为课程负责人。 2.课程类型。表述为**专业的专业课(专业基础课)或公共课。 3.授课对象应表述为**专业*年级学生。公共课可表述某大类专业的*年级学生,也可为全院*年级学生。 注:此标准仅适用专业课,公共基础课供参考。

大工15春《SQL数据库课程设计》模板及要求(最新)

大工15春《SQL数据库课程设计》模板及要求网络教育学院 《SQL数据库课程设计》 题目:XX系统的设计与实现 学习中心: 专业: 年级:年春/秋季

学号: 学生: 指导教师: 《SQL数据库课程设计》要求 《SQL数据库课程设计》是大连理工大学网络教育学院计算机应用技术专业开展的一项实践教学环节,是理论联系实践的纽带和桥梁,是培养学生综合运用所学知识解决实际问题的有效手段。该课程设计要求如下:1.要求学生以SQL Server 2008或其他版本为后台数据库,以VB、VC 或其他开发工具作为前台开发工具,围绕自己选定的某一个具体的系统完成一个小型数据库应用系统的开发,例如《图书管理系统的设计与实现》《书店管理系统的设计与实现》等。其课程设计具体内容包括项目概况、需求分析、详细设计等,详见课程离线作业中上传的《SQL数据库课程设计模板》。 注意:禁止撰写《学生成绩管理系统》课程设计!! 2.要求学生必须按照《SQL数据库课程设计模板》提供的格式和内容进行课程设计,完成课程设计模板提供的全部课程设计内容,字数要求达到3000字以上。 3.学生在进行课程设计的过程中,可参考辅导教师在导学资料中上传的

文献资料,有问题可通过课程论坛答疑。 4.2015年春季学期学生提交本课程设计形式及截止时间 学生需要以WORD附件形式(附件的大小限制在10M以内)将完成的课程设计以"离线作业"形式上传至课程平台中的"离线作业"模块,通过选择已完成的课程设计,点"上交"即可,如下图所示。 截止时间:2015年9月1日。在此之前,学生可随时提交课程设计,如需修改,可直接上传新文件,平台会自动覆盖原有文件。 5.课程设计批阅 老师会在离线作业关闭后集中批阅课程设计,在离线作业截止时间前不进行任何形式的批阅。 注意: 本课程设计应该独立完成,不准抄袭他人或者请人代做,如有雷同作业,

课程设计(会计信息系统课程设计参考模板6)

江苏科技大学经济管理学院 2014至2015学年第一学期会计信息系统课程设计报告班级学号1140403211 姓名刘璐成绩 库存管理模块 1、数据库分析(配合图形作简要说明) 1.1数据流图 ●顶层数据流程图 说明: (1)库存基础数据管理只要管理仓库部门所发的文件,通过物品代码文件对屋子进行管理。 (2)库存处理是物资管理的核心,一切的文件都汇总到库存处理。 (3)计划部门通过计划单的形式将需求送达库存处理。 (4)其他部门将物品进出库的文件送达库存处理 (5)库存处理结合业务办理,库存台账汇总出业务单据,传递到财务部门。 ●第一层数据流程图 采购部门 售后部门生产部门 入库处 理财务部门 销售部门 出库处 理 制作报 表 损毁处 理 库存操作文件库存台账 客 户 退 货 单 销售出货单 产 品 入 库 单 领 料 单 出库单据 入库单据 材料入库单

说明: (1)入库处理,由采购部门、售后部门、生产部门分别将材料入库单、客户退货单、产品入库单送入库处理。 (2)入库处理后将入库单据送达财务部门。 (3)销售部门将销售出货单送至出库处理。 (4)出库处理将出库单据、领料单分别送至财务部门、生产部门。 (5)最后根据入库处理、财务部门、出库处理、制作报表、损毁处理制作出库存操作文件和库存台账 (6)入库和出库由生产部门和财务部门组成一个循环,不断生产销售。 1.2E-R图 说明: (1)数据库个表之间都是通过一对多,一对一的关系进行连接的,通过主索引设立主表,候选索引设立字表,个表之间的关系连接不断。 (2)表之间的各种关系都是连接的。 (3)此E-R图是库存系统中个表的关系,由领料单文件,物资,入库单文件,客户,工程,部门,建立主索引。其余分别连接各种表的普通索引

操作系统课程设计报告

东莞理工学院 操作系统课程设计报告学院:计算机学院 专业班级:13软件工程1班 提交时间:2015/9/14 指导教师评阅意见: . 项目名称:进程与线程管理功能 一、设计目的 用语言来模拟进程和线程管理系统,加深对进程和线程的理解,掌握对进程和线程各种状态和管理的算法原理。 二、环境条件 系统:WindowsXP、VMWare、Ubuntu Linux 语言:C/C++ 开发工具:gcc/g++、Visual C++ 6.0 三、设计内容 1. 项目背景

计算机的硬件资源有限,为了提高内存的利用率和系统的吞吐量,就要根据某种算法来管理进程和线程的状态从而达到目的。 进程与线程管理功能完成基于优先级的抢占式线程调度功能,完成进程虚拟内存管理功能。 进程与线程管理功能 基本要求:完成基于优先级的抢占式线程调度功能,完成进程虚拟内存管理功能。 提高要求:(增加1项就予以加分) (1) 实现多种线程调度算法; (2)通过“公共信箱”进行通信的机制,规定每一封信的大小为128字节,实现两个用户进程之间通过这个“公共信箱”进行通信。 (3) 实现多用户进程并发的虚拟内存管理功能。 (4) 实现用户进程间通信功能,并用生产者/消费者问题测试进程间通信功能的正确性。 (5) 实现改进型Clock页面置换算法。 (6) 实现Cache功能,采用FIFO替换算法。 2. 扩展内容 实现多种线程调度算法:时间片轮转调度算法 四、人员分工 优先级调度算法:钟德新,莫友芝 时间片轮转调度算法:张德华,袁马龙 设计报告由小组队员共同完成。小组成员设计的代码分工如下: 钟德新编写的代码:void Prinft(){ PCB *p; system("cls");//清屏 p=run; //运行队列 if(p!=NULL) { p->next=NULL; } cout<<"当前正在运行的进程:"<procname<<"\t\t"<pri<<"\t"<needOftime<<"\t\t"<runtime<<"\t\t"<state<next; } cout<procname<<"\t\t"<pri<<"\t"<needOftime<<"\t\t"<runtime<<"\t\t"<state<next; } cout<

操作系统课程设计报告

东莞理工学院 操作系统课程设计报告 学院:计算机学院 专业班级:13软件工程1班 提交时间:2015/9/14 指导教师评阅意见: . 项目名称:进程与线程管理功能 一、设计目的 用语言来模拟进程和线程管理系统,加深对进程和线程的理解,掌握对进程和线程各种状态和管理的算法原理。 二、环境条件

系统:WindowsXP、VMWare、Ubuntu Linux 语言:C/C++ 开发工具:gcc/g++、Visual C++ 6.0 三、设计内容 1. 项目背景 计算机的硬件资源有限,为了提高内存的利用率和系统的吞吐量,就要根据某种算法来管理进程和线程的状态从而达到目的。 进程与线程管理功能完成基于优先级的抢占式线程调度功能,完成进程虚拟内存管理功能。 进程与线程管理功能 基本要求:完成基于优先级的抢占式线程调度功能,完成进程虚拟内存管理功能。 提高要求:(增加1项就予以加分) (1) 实现多种线程调度算法; (2)通过“公共信箱”进行通信的机制,规定每一封信的大小为128字节,实现两个用户进程之间通过这个“公共信箱”进行通信。 (3) 实现多用户进程并发的虚拟内存管理功能。 (4) 实现用户进程间通信功能,并用生产者/消费者问题测试进程间通信功能的正确性。 (5) 实现改进型Clock页面置换算法。 (6) 实现Cache功能,采用FIFO替换算法。

2. 扩展内容 实现多种线程调度算法:时间片轮转调度算法 四、人员分工 优先级调度算法:钟德新,莫友芝 时间片轮转调度算法:张德华,袁马龙 设计报告由小组队员共同完成。小组成员设计的代码分工如下:钟德新编写的代码:void Prinft(){ PCB *p; system("cls");//清屏 p=run; //运行队列 if(p!=NULL) { p->next=NULL; } cout<<"当前正在运行的进程:"<procname<<"\t\t"<pri<<"\t"<needOftime<<"\t\t"<runtime<<"\t\t"<state<next; } cout<procname<<"\t\t"<pri<<"\t"<needOftime<<"\t\t"<runtime<<"\t\t"<state<next; } cout<procname<<"\t\t"<pri<<"\t"<needOftime<<"\t\t"<runtime<<"\t\t"<state<

数据库课程设计(完整版)

HUNAN CITY UNIVERSITY 数据库系统课程设计 设计题目:宿舍管理信息系统 姓名: 学号: 专业:信息与计算科学 指导教师: 20年 12月1日

目录 引言 3 一、人员分配 4 二、课程设计目的和要求 4 三、课程设计过程 1.需求分析阶段 1.1应用背景 5 1.2需求分析目标5 1.3系统设计概要 5 1.4软件处理对象 6 1.5系统可行性分析 6 1.6系统设计目标及意义7 1.7系统业务流程及具体功能 7 1.8.1数据流程图8 2.系统的数据字典11 3.概念结构设计阶段 13 4.逻辑结构设计阶段 15 5.物理结构设计阶段 18 6.数据库实施 18 7.数据库的运行和维护 18 7.1 解决问题方法 19 7.2 系统维护 19 7.3 数据库性能评价 19 四、课程设计心得. 20参考文献 20

引言 学生宿舍管理系统对于一个学校来说是必不可少的组成部分。目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生信息量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。而且当查找某条记录时,由于数据量庞大,还只能靠人工去一条一条的查找,这样不但麻烦还浪费了许多时间,效率也比较低。当今社会是飞速进步的世界,原始的记录方式已经被社会所淘汰了,计算机化管理正是适应时代的产物。信息世界永远不会是一个平静的世界,当一种技术不能满足需求时,就会有新的技术诞生并取代旧技术。21世纪的今天,信息社会占着主流地位,计算机在各行各业中的运用已经得到普及,自动化、信息化的管理越来越广泛应用于各个领域。我们针对如此,设计了一套学生宿舍管理系统。学生宿舍管理系统采用的是计算机化管理,系统做的尽量人性化,使用者会感到操作非常方便,管理人员需要做的就是将数据输入到系统的数据库中去。由于数据库存储容量相当大,而且比较稳定,适合较长时间的保存,也不容易丢失。这无疑是为信息存储量比较大的学校提供了一个方便、快捷的操作方式。本系统具有运行速度快、安全性高、稳定性好的优点,并且具备修改功能,能够快速的查询学校所需的住宿信息。 面对目前学校发展的实际状况,我们通过实地调研之后,对宿舍管理系统的设计开发做了一个详细的概述。

操作系统(一个小型操作系统的设计与实现)课程设计

南通大学计算机科学与技术学院操作系统课程设计报告 专业: 学生姓名: 学号: 时间:

操作系统模拟算法课程设计报告 设计要求 将本学期三次的实验集成实现: A.处理机管理; B.存储器管理; C.虚拟存储器的缺页调度。 设计流程图 主流程图 开始的图形界面 处理机管理存储器管理缺页调度 先来先服务时 间 片 轮 转 首 次 适 应 法 最 佳 适 应 法 先 进 先 出 L R U 算 法

A.处理机调度 1)先来先服务FCFS N Y 先来先服务算法流程 开始 初始化进程控制块,让进程控制块按进程到达先后顺序让进程排队 调度数组中首个进程,并让数组中的下一位移到首位 计算并打印进程的完成时刻、周转时间、带权周转时间 其中:周转时间 = 完成时间 - 到达时间 带权周转时间=周转时间/服务时间 更改计时器的当前时间,即下一刻进程的开始时间 当前时间=前一进程的完成时间+其服务时间 数组为空 结束

2)时间片轮转法 开始 输入进程总数 指针所指的进程是 否结束 输入各进程信息 输出为就绪状态的进程的信息 更改正在运行的进程的已运行时间 跳过已结束的程序 结束 N 指向下一个进程 Y 如果存在下一个进程的话 Y N 输出此时为就绪状态的进程的信息 时间片轮转算法流程图

B.存储器管理(可变式分区管理) 1)首次适应法 分配流程图 申请xkb内存 由链头找到第一个空闲区 分区大小≥xkb? 大于 分区大小=分区大小-xkb,修改下一个空闲区的后向指针内容为(后向指针)+xkb;修改上一个空闲区的前向指针为(前向指针)+xkb 将该空闲区从链中摘除:修改下一个空闲区的后向地址=该空闲区后向地址,修改上一个空闲区的前向指针为该空闲区的前向指针 等于 小于延链查找下 一个空闲区 到链尾 了? 作业等待 返回是 否 登记已分配表 返回分配给进程的内存首地址 开始

课程设计模板

山西大学商务学院 《软件工程课程设计》报告 题目:基于手机的智能家居控制系统的设计与实现班级:??嵌入式?班 组长: 组员姓名:

说明 一、设计题目:基于手机的智能家居控制系统的设计与实现 二、小组成员及任务分配情况 姓名学号任务分配 软件工程课程总体设计报告、???? 系统可行性分析文档、???? 系统需求分析文档、???? 系统详细设计文档、???? 系统测试文档、????

目录 1. 开发目的和意义 (3) 1.1 开发背景和意义 (3) 1.2 完成情况 (3) 2. 开发相关技术及方法 (2) 2.1 开发环境 (2) 2.2 相关技术及方法 (2) 3. 系统分析 (3) 3.1 可行性分析 (3) 3.2 需求分析 (3) 3.2.1 性能需求 (3) 3.2.2 功能分析 (3) 3.2.3 行为模型 (4) 4. 系统设计 (6) 4.1 总体设计 (6) 4.2 详细设计 (6) 4.2.1 用户登录控制模块的设计 (6) 4.2.2 网络管理模块的设计 (7) 4.2.3 温度控制模块的设计 (7) 4.3 数据库设计 (8) 4.3.1 概念结构设计 (8) 4.3.2 逻辑结构设计 (8) 4.3.3 数据表设计 (8) 5. 系统实现 (10) 5.1 用户注册界面 (10) 5.2 用户登录界面 (10) 5.3 手机端远程桌面控制实现界面 (10) 6. 系统测试 (11) 6.1 测试方法 (11) 6.2 测试用例及结果 (11) 6.3 测试记录和结果反馈 (11) 7.实践总结 (13) 7.1 小结 (13) 7.2 实践感想 (13) 附录1 系统可行性分析文档 (15) 附录2 系统需求分析文档 (20) 附录3 系统详细设计文档 (24)

操作系统课程设计报告

操作系统课程设计实验报告 实验名称:进程控制 姓名/学号: 一、实验目的 学习、理解和掌握Linux与windows的进行控制系统调用的功能,熟悉主要的几个系统调用命令的格式和如何利用系统调用命令进行编程。通过学习,理解如何创建一个进程、改变进程执行的程序、进程和线程终止以及父子进程的同步等,从而提高对进程和线程控制系统调用的编程能力。 二、实验内容 设计并实现Unix的“time”命令。“mytime”命令通过命令行参数接受要运行的程序,创建一个独立的进程来运行该程序,并记录程序运行的时间。 三、实验环境 CPU: Inter ×2 2.10GHz RAM: 3.00GB Windows 7 旗舰版 Linux Ubuntu 10.04 编译: VS2010 四、程序设计与实现 4.1进程控制系统的调用 4.1.1 windows进程控制调用程序中使用的数据结构及主要符号说明 SYSTEMTIME starttime,endtime; //进程开始时间和结束时间 PROCESS_INFORMATION pi //该结构返回有关新进程及 //其主线程的信息 STARTUPINFO si //该结构用于指定新进程的主窗口特性4.1.2 linux进程控制调用程序中使用的数据结构及主要符号说明 struct timeval starttime,endtime //进程开始时间和结束时间 pid_t pid //进程标志符

4.2 程序流程图 图1 windows进程控制调用图2 linux进程控制调用程序运行流程图程序运行流程图 五、实验结果和分析 5.1 windows实验结果和分析

数据库课程设计题目及要求_韩军涛

数据库系统原理课程 设计指导

一、本课程的教学目的及基本要求 教学目的 本课程是为《数据库系统原理》课程所开的实践环节。数据库系统原理课程是一门实践性很强的技术课程,而且是计算机科学与技术中发展最快的领域之一。 本课程设计的目的旨在使学生能够掌握数据库的基本原理、数据库设计的基本方法、SQL语言的应用、SQL Server 2000/2008数据库环境的使用,并能根据所应用到的数据库管理系统的相关技术,按照规范化设计的方法解决现实中数据库设计的问题。 选修本课程前应已选修《数据库系统原理》课程,并熟练掌握SQL语言,以及数据库设计的规范化等基本方法。 先修课程:数据库系统原理。 教学基本要求 要求学生通过上机实验,培养学生的分析实际问题的能力,掌握复杂项目从需求到设计直到最后实现的基本方法,并对所设计的数据库进行测试与分析,使学生在数据库设计方面能够得到很大程度的提高。 课程设计基本要求: 1、(课前准备)掌握课堂教学内容,主要包括 (1)比较系统的掌握数据库原理的理论知识; (2)学会研究分析具体应用的需求,完成需求分析; (3)初步掌握在需求分析基础上设计数据库的能力; (4)熟练掌握一种数据库设计工具。 2、课程设计按以下步骤进行: (1)问题分析,理解问题,明确做什么,完成需求分析,写出系统的功能框架并给出每一系统功能的详细叙述。 (2)概念设计:在概念结构设计中画出ER图,在ER图中标出主码。可以有分ER图。 (3)逻辑结构设计:针对概念设计的结果做出逻辑结构设计并进行规范化,对表进行分解或必需的合并(要写出理由和根据)。对用户进行分类,有必要时可以给用户创建用户子模式(比如视图)并定义权限。 (4)物理设计:设计数据库的存储结构(包括索引的设计等)。

课程设计模板

《生产实习》课程教学大纲 (黑体,三号,居中,段前段后0,1.5倍行距) (课程基本信息:黑体,五号,左对齐,段前段后0,1.5倍行距) 课程名称:生产实习 课程代码: 适用专业:机械设计制造及其自动化 学分:2 学时:40 (其中:理论学时: 0 实践学时:40 ) 课程性质:必修 先修课程: 开课单位:机电工程学院 版本:2016.0 一、课程简介(一级标题:黑体,五号,首行缩进2个汉字,段前段后0,1.5倍行距) 二、课程目标 (一)课程具体目标(二级标题:黑体,五号,首行缩进2个汉字,段前段后0,1.5倍行距) 1.(三级及以下标题:宋体,五号,首行缩进2个汉字,段前段后0,1.5倍行距)(正文:宋体,五号,首行缩进2个汉字,段前段后0,1.5倍行距) 2. …… 说明:1. 课程目标是本课程支撑的毕业要求指标点在本课程上的具体体现,将相应指标点结合本课程具体情况进行一对一描述; 2.除了本课程强支撑的毕业要求指标点之外,也可适当增加本课程能够(弱)支撑的指标点对应的课程目标,尤其是强支撑指标点较少的课程应适当增加,并在表1的“达成度”栏备注“弱支撑”。弱支撑的课程目标在教学大纲第五部分“考核方式与成绩评定方法”中可以不体现。 (二)课程目标与专业毕业要求的关系 说明:需描述出本课程支撑所属专业“毕业要求”的指标点和达成度,参考表格如表1

所示。 表1 本课程对培养目标(或毕业要求)及其指标点的支撑(样表)(表头:黑体,五号,居中,段前段后0,1.5倍行距) (表体:宋体,五号,左对齐,段前段后0,单倍行距) 三、教学内容及基本要求 (一)实习教学 (说明:实践类课程描述实践教学内容。) 1. 单元1: XXXXX (1)教学目标 (说明:描述该单元教学目标,明确该单元支撑的课程目标。) (2)教学内容及要求 (说明:描述该单元教学内容和基本要求) 2. 单元2: XXXXX (二)其他要求(可选) 四、教学安排与方法 (一)教学方法 (说明:教学组织实施过程中对学生学习、设计等提出的其他要求。) 表2 课程目标与教学环节

《数据库设计》课程设计要求

《数据库技术》课程设计 设计目的: 数据库技术课程设计是在学生系统的学习数据库技术课程后,按照关系型数据库的基本原理,综合运用所学的知识,以个人或小组为单位,设计开发一个小型的数据库管理系统。通过对一个实际问题的分析、设计与实现,将数据库技术、原理与应用相结合,使学生学会如何把书本上学到的知识用于解决实际问题,培养学生的动手能力;另一方面,使学生能深入理解和灵活掌握教学内容。 总体要求: 1)2到3人为一个小组,每个小组设组长一人,小组成员既要有相互合作的 精神,又要分工明确。 2)每个学生都必须充分了解整个设计的全过程。 3)从开始的系统需求分析到最后的软件测试,都要有详细的计划,设计文档 应按照软件工程的要求书写。 4)系统中的数据表设计应合理、高效,尽量减少数据冗余。 5)软件界面要友好、安全性高。 6)软件要易于维护、方便升级。 7)后台数据库(DBMS)用SQL Server2008. 8)前台开发工具自选,但一般情况下应该是小组的每个成员都对该语言较熟 悉,避免把学习语言的时间放在设计期间。 9)每组提交一个课程设计报告和可行的应用软件。 具体设计要求: 结合一个具体任务(课程设计参考题目),完成一个基于C/S模式或者 B/S模式的数据库系统的设计与开发。 正文要包括系统总体设计、需求分析、概念设计、逻辑设计(在逻辑设计中,需要检测是否满足3NF,如果设计为不满足3NF的,要说明原因)、物理 设计(物理设计中,要设置表的索引、完整性、联系等)、测试、安装说明、用户使用说明书,参考文献等。 主要应包括如下内容: 1.完成课题任务的需求分析、完成系统总体结构设计方案。(主控功能模块、数据处理模块、统计报表模块等) 2.数据库结构的设计与实现。 3.数据库安全的设计 4.客户端数据库应用程序的开发。 5.综合调试方法的掌握。

相关文档
最新文档