aspnet作业在线提交系统的设计与实现Word格式文档下载.docx
《aspnet作业在线提交系统的设计与实现Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《aspnet作业在线提交系统的设计与实现Word格式文档下载.docx(28页珍藏版)》请在冰豆网上搜索。
.NET平台;
DesignandImplementationofAssignmentsubmissionsystem
Abstract
Thechiefpurposeoftheworksubmissionsystemistosolvetheinconvenientquestionsofexchanging,thatis,thestudentshandintheworkandtheteachercorrectsstudents'
papers,butallthecommunicationhastodependonthepaper.Thesystemhasthemanagermoduleandthestudentmodule.Ithasaperfectcharacteristicthattheoperationwillbesimpleandhasthefriendlysurface.Thepaperhasexplainedthebackground,significance,developingenvironmentandrequirementsanalysisofsystem,italsodescribesthedatabasedesignandsystemfunctionsdetailedly.ThesystemisbasedontheB/Sstructure,usingC#andMicrosoftSQL2000asthe.NETplatform.Thesystemhasabrightfuture.Itwillreplacethetraditionalthewaysofhandinginhomeworkandrealizethewaysofhandinginhomework’snetworkmanagement.
Keywords:
Theworksubmissionsystem;
MicrosoftSQL2000database;
The.NETplatform;
论文总页数:
21页
1引言
1.1本课题选题背景及目的
随着互联网技术的迅猛发展,网络给人们带来了很多便利,但是在目前的高校教学系统中,学生提交作业和教师批改作业都得靠纸质交流,或者是用单一的上传,拷贝等方法交流。
这样的传统作业提交批改方式已经过时,而且也无法满足现在高效率的时代。
因此设计开发了此系统。
该系统完全可以淘汰纸质作业的形式,首先可以方便学生查看作业的批改情况以便于更好的学习,其次可以在教师发布标准答案之后查看标准答案方便和自己的作业进行对比学习。
开发此系统的目的在于方便教师和学生的互动交流,大大提高学生提交作业,教师批改作业的效率。
1.2本课题选题意义
网络化教育代表了教育改革的一个发展方向,已经成为现代教育的一个特征,并对教育的发展形成新的推动力。
通过Internet来实现网上作业提交,是现代教育技术的一个具体实现,具有很重要的现实意义。
作业在线提交系统可以实现学生在线提交作业的无纸化管理,可以有效利用校园网的软硬件资源,提高学生提交作业的效率,使其发挥最大效力,更好的为学校的教学、科研、管理服务,随时随地的可以让学生联机操作提交。
让学生能和教师进行更好的互动式的学习与教学。
本系统有着很好的应用前景,用来代替传统的作业提交方式,实现在线作业提交方式的网络化管理。
1.3本课题研究思路和方法
本系统的开发要求采用B/S结构,应首先分析用户需求的相关功能后写出需求分析;
其次,综合运用以前所学的相关知识(数据结构,C语言等),选择所熟悉的开发工具进行开发(本系统选择了MicrosoftVisualStudio.NET2003作为开发平台,开发语言选择了C#;
数据库采用MicrosoftSQLServer2000),在设计中以需求分析为基础,写出系统开发计划,实现流程及相关问题的实现方法;
同时,在开发设计与实现中,要保存好相关的设计文档。
最后,系统开发完毕后,进行调试和试运行,并做好调试和试运行的相关记录。
1.4本课题预期结果
本设计的预期成果是完成作业提交批改系统的部分功能——作业上传和管理用户,并能够实现作业在线提交功能;
作业参考答案的下载;
在线实时查看作业批改的情况;
用户信息管理(教师用户,学生用户,管理员用户),设置用户的功能和权限。
同时,还要求与另一位同学所设计与实现的“作业审阅系统”集成在一起,形成一个真正实用的、功能完善的作业在线提交批改系统。
2开发平台与语言简介
简介
“.NET是Microsoft的用以创建XMLWeb服务(下一代软件)的平台。
该平台将信息、设备和人以一种统一的、个性化的方式联系起来。
”
“借助于.NET平台,可以创建和使用基于XML的应用程序、进程和Web站点以及服务,它们之间可以按设计、在任何平台或智能设备上共享和组合信息与功能,以向单位和个人提供定制好的解决方案。
”
“.NET是一个全面的产品家族,它建立在行业标准和Internet标准之上,提供开发(工具)、管理(服务器)、使用(构造块服务和智能客户端)以及XMLWeb服务体验(丰富的用户体验)。
.NET将成为今天正在使用的Microsoft应用程序、工具和服务器的一部分,同时,新产品不断扩展XMLWeb的服务能力以满足您的所有业务需求。
.NET为开发人员提供了新的开发平台(.NET框架),新的开发语言(C#),新的开发工具(VisualStudio.NET),新的开发方式(WebService);
为普通用户提供了WindowsCE、WindowsXP、Xbox、TabletPC、.NETMyServices、MSN等产品;
为企业提供了bCentral。
在未来,最终大多数流行的Microsoft软件应用程序——包括Office和VisualStudio.NET——将开始与XMLWeb服务实现交互,并把它们的主要功能作为XMLWeb服务公开,以便其他开发人员可以利用。
2.2HTML标记语言
HTML的英语意思是:
HypertextMarkedLanguage,即超文本标记语言,是一种用来制作超文本文档的简单标记语言。
超文本传输协议规定了浏览器在运行HTML文档时所遵循的规则和进行的操作。
HTTP协议的制定使浏览器在运行超文本时有了统一的规则和标准。
用HTML编写的超文本文档称为HTML文档,它能独立于各种操作系统平台,自1990年以来HTML就一直被用作WWW(是WorldWideWeb的缩写,也可简写WEB、中文叫做万维网)的信息表示语言,使用HTML语言描述的文件,需要通过WEB浏览器显示出效果。
HTML是在SGML定义下的一个描述性语言,或可说HTML是SGML的一个应用程式。
HTML不是程式语言,如C++和Java之类,它只是标示语言,基本上你只要明白了各种标记的用法便算学懂了HTML,HTML的格式非常简单,只是由文字及标记组合而成,至于编辑方面,任何文字编辑器都可以,只要能将文件另存成ASCII纯文字格式即可,当然以专业的网页编辑软件为佳。
2.3C#简介
C#(读作“c-sharp”)作为Microsoft的下一代面向对象的语言产品,能够使开发人员在.NET平台上快速地建立大量的应用程序。
按照微软给出的定义,C#是一种源自于C和C++的、简单的、现代的、面向对象的和类型安全的程序设计语言。
C#为程序员提供了开发飞速发展的Web应用程序所需的强大而灵活的功能。
C#和Java的核心与C++比较有着相同的优势和局限,比起C++,C#将更容易被人们理解和接受,未来大量.NET平台的应用将由C#开发。
2.4ADO.NET简介
ADO.NET是对MicrosoftActiveXDataObjects(ADO)一个跨时代的改进,它提供了平台互用性和可以伸缩的数据访问。
由于传送的数据都是XML格式的,因此任何能够读取XML格式的应用程序都可以进行数据处理。
事实上,接受数据的组件不一定要是ADO.NET组件,它可以是基于一个MicrosoftVisualStudio的解决方案,也可以是任何运行在其它平台上的任何应用程序。
ADO.NET提供对MicrosoftSQLServer等数据源以及通过OLEDB和XML公开的数据源的一致访问。
数据共享使用者应用程序可以使用ADO.NET来连接到这些数据源,并检索、操作和更新数据。
在运行时,数据会从数据库中取出并先传给一个中间层业务对象,然后传至用户界面。
为了适应这种数据交换,ADO.NET采用了基于XML的持续的传递格式。
也就是说,当数据从一个层传向另一个层时,ADO.NET的方案是将内存中的数据(即数据集)表述为XML,然后以XML格式传递给其他组件。
2.5MicrosoftSQLServer2000简介
MicrosoftSQLServer2000是一个高性能的客户端/服务器结构的关系数据库管理系统(RDBMS,RelationalDatabaseManagementSystem)。
SQLServer2000是为了支持高容量的事务处理(比如在线订购录入、存货目录、记帐或制造)以及数据仓库和决策支持系统(比如销售分析应用)而设计的。
它运行在MicrosoftWindowsNT4或MicrosoftWindows2000Server上——基于Intel处理器的网络。
可以把SQLServer2000作为一种个人桌面数据库系统安装在运行WindowNTWorkstation4、Windows2000Professional、Windows98和WindowsMillenniumEdition(Me)的机器上。
可以使用相同的CD来安装任何一个SQLServer2000的服务器版本或个人版本。
2.6浏览器/服务器模型
B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。
在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现。
B/S结构,主要是利用了不断成熟的WWW浏览器技术,结合浏览器的多种Script语言(VBScript、JavaScript…)和ActiveX技术,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。
随着Windows98/Windows2000将浏览器技术植入操作系统内部,这种结构更成为当今应用软件的首选体系结构。
显然B/S结构应用程序相对于传统的C/S结构应用程序将是巨大的进步。
3系统需求分析
3.1系统业务需求及特点
3.1.1业务需求
系统要求管理员管理所有的用户信息,添加,删除用户都必须由管理员来完成,管理员可见所有用户的信息。
普通用户(学生和教师用户)只能修改自己的信息。
学生可以选择不同的教师,能够准确快速的查看已经布置的作业,学生只能看见自己的作业题目和内容,不能抄袭其他学生的作业。
在提交作业以后,教师发布成绩和参考答案之后才能查看成绩与答案。
管理员不能看到作业情况。
3.1.2系统特点
性能:
安全可靠,实时控制。
输入/输出:
英文和汉字输入,英文和汉字输出。
安全与保密要求:
不能轻易地被破坏,不能让管理员以外的人添加删除用户信息,对断电、死机、系统崩溃等问题有有力措施以保障数据不受损失。
3.2用户特点
3.2.1管理员用户
管理员可以是机房管理员,也可以是某位教师,对计算机技术比较了解,责任心和保密意识强。
3.2.2学生用户
学校学生有计算机相关专业学生,能很快熟悉系统的使用方法,非计算机专业的学生也能很快学会并掌握使用系统。
3.3系统业务流程图
图1系统业务流程图
系统业务流程如图1所示,管理员用户登陆到管理员模块后,可以管理所有用户(包括管理员用户,教师用户,学生用户)的个人信息,通过添加,修改,删除操作来管理用户信息数据。
学生用户登陆到学生模块以后,首先只能查看已经布置的作业,提交自己的作业以后才能进行查看作业成绩和查看教师发布的参考答案的操作。
在学生模块里学生可以修改自己的个人信息,但是不能删除自己的信息。
3.4数据流图
系统数据流图如图2所示,管理员用户负责管理所有用户的个人信息数据,学生用户可以更改自己的用户数据信息。
学生用户必须首先撰写自己的作业,然后才能把撰写好的作业数据提交到作业数据库。
在提交作业数据之后,学生用户才能通过作业信息数据库查看教师已经发布的作业成绩数据或作业的参考答案数据。
图2数据流图
3.5开发环境
1.MicrosoftVisualStudio.NET2003开发平台;
2.MicrosoftSQLServer2000数据库。
3.要求系统支持Microsoft.NETFramework1.1。
4.要求系统必须安装IIS。
3.6限制条件
1.学生不可以进入教师与管理员的页面。
2.管理员也不可以进入学生和教师页面。
3.普通用户使用修改密码都只能修改自己的密码,无法修改他人的。
4.不同的用户使用个人数据功能时,只可以看到自己的信息不可以看到其他用户的信息。
5.学生提交作业的类型,大小,时间等,受到教师发布作业的约束。
6.只有当教师发布作业的标准答案之后,学生才能查看作业的标准答案。
7.当老师发布新的作业之后,学生才可以查看到作业题目并提交作业。
8.学生作业提交之后,不可以再更改作业内容。
9.只有当老师公布成绩之后,学生方可查看作业成绩。
4系统设计与实现
.1系统功能划分
1.系统分为管理员模块和学生模块;
2.不同用户登录进入不同的界面;
3.学生作业的查看与提交;
4.学生作业成绩的查看;
5.作业参考答案的查看;
6.管理员添加管理员用户、教师用户和学生用户;
7.管理员修改管理员密码、用户信息与学生用户信息;
8.管理员删除管理员用户、教师用户和学生用户;
9.用户对个人资料的查看与修改。
.2系统功能体系图
无论是管理员用户还是学生用户,都必须通过登陆进入功能模块,管理员可以管理所有用户的信息,可以对用户信息进行添加,删除和修改操作;
学生用户登陆后,可以进行标准答案下载,作业下载提交,作业成绩查询和修改用户资料四种操作。
系统功能体系图如图3所示:
图3系统功能体系图
.3数据库设计
4.3.1数据库E-R图
数据库E-R图如图4所示,管理员和其他实体没有联系,是一个单独的实体,故图中没有画出管理员实体。
学生实体和教师实体存在一个多对多的关系,学生和作业内容也存在一个多对多的关系,多个学生提交多份作业。
教师和作业题目则是一对多的关系,一位教师可以布置多个作业题目。
图4数据库E-R图
4.3.2数据库表
表1数据库admin表
列名
数据类型
长度
允许空
admin_name
varchar
50
admin_pwd
id
int
4
表2数据库person_info表
name
passwd
email
√
phone
role
number
表3数据库student_work_info表
studentid
teacherid
subtime
datetime
8
correcttime
title
100
content
text
1000
grade
remark
char
10
表4数据库teacher_work_info表
teacherid
answer
表5数据库stusent_teacher表
4.3.3数据库表说明
1.admin表与其它表无关系只是为了存放管理员的帐号与密码等数据。
2.person_info表里的id字段为主键用于存放普通用户的ID。
3.student_work_info表和teacher_work_info表里的id字段用于存放每个作业的ID。
4.person_info表里的role字段用来区别用户类型。
1表示教师用户;
2表示学生用户。
5.stusent_teacher表用来表示学生和教师的多对多的关系。
.4管理员模块的设计与实现
4.4.1用户界面
管理员模块用户界面如图5所示:
图5管理员模块用户界面
1.管理员用户从主登陆页面点击“管理员登陆”进入管理员模块登陆页面。
2.在登陆页面输入正确的用户名和密码后方可登陆到管理员模块。
3.管理员模块只允许管理员用户进入。
4.管理员模块的页面分成两栏,左边是功能目录,右边是具体功能的页面。
5.管理员用户在该模块中可进行管理员用户信息和普通用户信息的管理。
6.管理操作分为添加用户信息,修改用户信息和删除用户信息三种。
7.管理员用户可以查看各个用户的个人信息。
8.点击“安全退出”可以退出该模块。
4.4.2增删改管理员用户
管理员可以添加更多的管理员用户,管理员用户必须由管理员添加,每次当管理员添加管理员用户时系统通过INSERT语句向admin表里插入一行,记录新的管理员用户的用户名,密码。
删除管理员必须由管理员用户来操作,执行删除操作时,系统通过判断admin表中的id字段,使用Delete语句从admin表中删除相对应的行。
当admin表中的行数等于1的时候,则提示“请至少保留一个管理员帐号”。
修改管理员密码必须先登陆管理员界面,在密码栏里输入新密码,系统通过UPDATE语句更新admin表中的admin_pwd字段。
1.添加新管理员
a、判断帐号是否重复
DataTabletempDt=Db.ExecuteToDataSet("
Selectadmin_nameFromadminwhereadmin_name='
"
+strTrans.insertTran(adminName.Text)+"
'
).Tables[0];
if
{
msg.Text="
<
script>
alert(\"
帐号重复!
\"
);
document.getElementById('
adminpass'
).focus();
/script>
;
return;
}
b、添加管理员信息到数据库
Db.ExecuteSql("
insertintoadmin(admin_name,admin_pwd)values('
'
+strTrans.insertTran(adminPass.Text)+"
)"
Response.Redirect("
admin.aspx"
true);
2.删除管理员帐号
privatevoiddelAdmin()
{
DataSetds=Db.ExecuteToDataSet("
SelectCount(*)Fromadmin"
if(Convert.ToInt32(ds.Tables[0].Rows[0][0])==1)
{
ds.Dispose();
msg.Text="
alert('
请至少保留一个管理员帐号'
return;
}
ds.Dispose();
Db.ExecuteSql("
Deletefromadminwhereid="
+Request.QueryString["
id"
].ToString());
}
3.修改管理员密码信息
Db.ExecuteSql("
Updateadminsetadmin_pwd='
+strTrans.insertTran(adminpass2.Text)+"
Whereadmin_name='
+strTrans.insertTran(adminname2.Text)+"
4.4.3添加新用户
普通用户(包括教师用户和学生用户)都必须通过管理员添加新的用户。
person_info表用来记录普通用户的用户信息(用户名,密码,E-mail,,用户类型)。
管理员登陆管理员界面后,点击“添加新用户”,在表单中输入需要添加的用户信息后,点击“提交”按钮,系统通过INSERT语句向person_info表里插入一行,记录该用户的个人信息。
管理员添加用户时,用户id必须是唯一的,因为用户可能会有名字相同的情况,所以系统通过id字段来判断用户的唯一性。
1.判断