目 录
引言………………………………………………………………………………… 2
一、问题提出…………………………………………………………………………2
二、可行性分析………………………………………………………………………
(一)技术可行性………………………………………………………………… 3
(二)经济可行性………………………………………………………………… 3
(三)操作可行性………………………………………………………………… 3
三、需求分析………………………………………………………………………
(一)功能描述………………………………………………………………… 3
(二)顶层数据流图……………………………………………………………… 4
四、数据库设计……………………………………………………………………
(一)物理数据库………………………………………………………………… 5
(二)数据库关系图……………………………………………………………… 8
(三)系统所需要的视图………………………………………………………… 9
五、用户层设计………………………………………………………………………
(一)用户层设计实现工具…………………………………………………… 10
(二)ASPX页面关系及页面介绍……………………………………………… 11
(三)用户层与其它层的配合………………………………………………… 17
(四)界面设计所用控件 Controls…………………………………………… 17
(五)界面设计编程部分所用对象(非控件) Objects……………………… 20
(六)界面设计编程部分所用命名空间 namespace………………………… 21
六、总结………………………………………………………………………………21
七、致谢………………………………………………………………………………22
八、参考文献…………………………………………………………………………22
九、附录………………………………………………………………………………23
计算机公共课成绩管理子系统
谢一
西南师范大学计算机与信息科学学院,重庆 400715
摘要:计算机公共课成绩管理子系统以网络为基础,利用.Net平台、SQL Server 2000数据库、支持ASP.net 的IIS服务器建构一个供多种用户使用的管理系统,与MyCollege.Net中的其它子系统结合,从这些子系统中获取系科、学生的基本信息,与本地数据库结合,在传统校园教学计划管理及学生成绩管理的基础上构建一个数字空间,实现教学计划、课程、教师信息、学生成绩的方便查询和管理,达到提高教育管理水平和效率的目的。
Abstract:On the basis of network, Computer Public Course Management System (CPCMS) combines with the other child systems of MyCollege.Net using the .net platform、SQL Server 2000 data base and IIS server which surppot ASPsp.net ,.CPCMS gets departments information and basic students information from these child systems to connect with local data base . Foundation as traditional teaching plan management and score management ,CPCMS build a digital space to achieve convenient search and manage for the teaching plans、courses、teachers、scores .Having it , we can improve management efficiency.
关键词:计算机公共课成绩管理子系统 ASP.net SQL Server 2000
引言
在MyCollege.Net系统的开发中,我主要参与应用子系统——计算机公共课成绩管理子系统的设计与实现。针对需求分析和总体设计,我详细设计了该子系统的数据库,并在SQL Server 2000 上得以实现,为本子系统的后续工作奠定了基础。根据总体设计,我还利用.Net 上的ASP.Net技术设计了本子系统的用户层,并编写代码加以实现。在该层,通过调用统一身份认证子系统和公共资源管理与共享子系统分别实现了对访问计算机公共课成绩管理子系统得用户的身份验证和导入公共资源与共享子系统的数据 。
一﹑问题提出
一直以来,我校公共计算机部对计算机课程以及课程成绩的管理都是手工操作,由教师登记好学生的成绩,上交给教学秘书,再由教学秘书对这些成绩做整合调整,最后再发送给各班。这样既浪费人力,物力,又容易出错和不易保存,与当今高度发达的自动化严重脱节。由此,我们考虑编写一个公共课成绩管理系统来对此进行管理。
二﹑可行性分析
(一)技术可行性
公共课成绩管理系统主要是用于高校公共计算机教育部关于教学计划﹑课程﹑教师信息﹑成绩的查询和管理。通过使用Microsoft公司提供的VisualStudio.net工具以及SQL Server数据库可以实现对有关公共课的教学计划﹑课程等的网上查询和管理。
(二)经济可行性
由于本系统只是作为我们的毕业设计,所以对它的经济可行性不做过多的
考虑。但它非常适合于高校的公共课管理,因为该系统实现了将管理和查询网络
化,极大地方便了管理员﹑教师﹑学生。
(三)操作可行性
本系统的界面设计简单直观,易于理解。它使用的控件都是用户常用的或常见的,操作起来很容易上手。除此之外,该系统是在网络上发布,用户可以随时随地地对此进行访问。不需要特别的培训和讲解,用户便能使用该系统。
三﹑需求分析
(一)功能描述
1.教学管理功能(公共计算机教育部使用)包括:
① 新本学期所开设课程的录入与查询:例如在2004年上学期开设课程:C语言与Vfor。
说明:所有的课程成绩均由三部分组成:平时成绩,上机成绩, 笔试成绩。所占的比重分别为:10%,10%,80%,在该系统中这三部分及其比重是固定不变的。
② 对各系科的课程安排的录入与查询,课程安排即是该学期每个系科
的选课课程、任课教师以及上课时间和上课地点。
说明:每一个院系中所有的不同专业所选的课程都是一样的。但是同一院系的学生不一定有同一个教师授课。
2.成绩管理的功能(教师使用)如下:
① 录入成绩:既可以单个录入也可以批量录入,其中批量录入以成绩单为单位,每次从系统中调出一张成绩单,编辑完成后一次性提交。
成绩单:成绩单包括学期、院系、专业、课程、任课教师、学生成绩。
② 查询成绩:单个查询(学生可使用),根据学生的学号或姓名查询出该学生的所有课程的成绩信息。
批量查询以成绩单为单位,每次查询出一张成绩单。
③ 打印成绩:可以一次打印一张成绩单,也可以按要求批量打印。
④ 统计调整:对成绩单中的成绩进行统计,指出各个分数段的人数分布情况。因为有时学生的成绩整体上偏低,需要进行调整,一次系统可以按照用户设置的规则对成绩单中的成绩进行调整。
成绩调整规则:将成绩单中总分在某一分数段的学生成绩调整到另外一个分数段。例如将50到60分的学生成绩全部调整到60到65分之间。为了使调整过程尽可能合理,还可以对待调整分数段的学生成绩进行限制,例如设置其笔试成绩必须在50分以上,而平时成绩则可以适当放宽。
⑤ 每学期考试不及各的学生自动纳入新学期的教学计划中。
3.权限说明:
① 管理员可使用功能:教师信息管理、系科显示、课程管理、教学计划管理、学生成绩查询;
② 教师可使用成绩管理各项功能:对学生成绩的添、删除、修改、查询、分析、调整;
③ 学生可使用的功能:查询单个学生所有成绩。
4.系统数据更新功能:
从MyCollege.Net下公共资源管理与共享子系统CResource中获取有关学生、系科、专业的基本信息,更新本地数据库,使本地数据库保存的数据与主系统基本数据保持同步。
(二)顶层数据流图
1.管理员可操作管理顶层数据流图:
![]()
2.成绩管理顶层数据流图:
本系统按功能划分模块,使用B-S结构,采用.net和SQL Server作为开发工具。系统的开发只采用四层结构:数据库、数据库访问层、商业逻辑层、用户层。我主要负责数据库和用户层的实现。下面分别介绍:
四﹑数据库设计
本系统的数据库采用SQL Server 2000来实现。它是一种关系数据库产品,该系统具有很高的可靠性,可伸缩性,可用性,可管理性,数据仓库等特点,为各种用户提供了完整的数据库解决方案。SQL Server 2000 着眼于Internet 背景下的网络数据库的应用与开发,除了具备现代数据库管理系统所具备的各种强大的功能外,在支持Internet 技术方面,提供了HTTP 的支持,还为Web 用户提供了功能完善的网络数据管理与数据分析解决方案。它作为网络编程的后台数据库,可以用于ASP.net 技术或JSP 技术制作的Web 网页与数据库之间的连接。这也正是本系统所需要的。
(一)物理数据库
下面详细介绍为本系统开发所设计的基本表:
1.课程 TCourses
课程表是用来存储本学期所开设课程的基本信息。对于课程来说,它只有两个基本属性,课程名以及唯一标志它的课程号。设置课程号还可以简化表示。对于课程号,规定只能用整型数字表示,不能超过4位,这样有利于实现课程号的动态增加;对于课程名,由于无法确定它的长度,用可变长字符串表示,但不能超过50个字符。
2.系科 TDepts
![]()
系科表是用来存储本校所有开设的系科。对于系科来说,它也只需要两个属性,系科名及唯一标志它的系科号。对于系科号,规定只能用整型数字表示,但不能超过4位,这样有利于实现系科号的动态增加;对于系科名,由于长度无法确定,用可变字符串表示,但不能超过20个字符。
在这里,之所以要将系科单独提出来作为一张表,而不在需要时从学生表或者教学计划表里去查取,是因为这样有利于保证数据的一致性,避免了某张表中系科更新后其它表中相同数据没有更新的情况。
3.专业 TMajors
专业表里存储的是每个系科下对应的专业。对于专业来说,它是将系科再进行细化,因此专业就有三个属性:它所对应的系科,以及专业名和唯一标致它的专业号。对于专业号,规定只能用整形数字表示,不能超过4位,这样有利于实现专业号的自动增加;对于专业名,由于长度不确定,用可变长字符串表示,但不能超过50个字符。
4.学生 TStudents
![]()
学生表是用来存储本校所有学生的基本信息。对于学生来说,他对应有姓名,性别,民族,系科,专业,年级,因为多个学生的姓名可能相同,而性别,民族,系科,年级这些也会有相同,所以设学号来唯一地标志一个学生。对于学号,规定只能用10位整形数字表示;对于学生名,用可变长字符串表示,但不能超过20个字符;对于性别,只需要两个字符表示,即一个汉字;对于民族,用可变字符串来表示,但不能超过10个字符;对于年级,规定用整形数字表示,但不能超过4位。
由于根据专业号就可以推出系科名和专业名,所以就去掉了系科名和专业名这两个属性,以免造成冗余信息。
5.教学计划TTeachingPlans
![]()
教学计划表是用来存储本学期公共课的教学计划,它指出每学期每个院系每个年级上什么课以及由哪位教师来上。因为系科,专业,课程,教师都能通过各自的代号从其它基本表中导出,所以这里只需其代号即可。由于所有这些合起来才能推出一条教学计划,因此设一个教学计划号来唯一地标志这些信息。
对于教学计划号,规定用整形数字表示,但不能超过4位,这样有利于实现教学计划号的动态添加。
6.成绩 TScores
![]()
成绩表是用来存储参与计算机公共课学习的所有学生的所有计算机课的成绩。只有在教学计划中存在的专业的学生才会有成绩,因此一条信息由学生学号和教学计划号唯一确定。而通常一门课程的成绩可能会由平时成绩,上机成绩,笔试成绩中的所有或部分来组成总成绩,因此各部分成绩允许为空。
对于各部分成绩,规定用浮点数来表示,长度为8位。
7.教师 TTeachers
教师表是用来存储公共计算机教育部的教师信息。对于教师来说,一般对应有教师名,性别,职称等,因为教师名可能会有重复,因此就设教师号来唯一地标志某位教师。但对于本系统来说,只需要教师名和教师号,不需要其它信息。
对于教师号,规定只能用整型数字表示,不能超过4位;对于教师名,由于长度无法确定,用可变字符串表示,但不能超过20个字符。
(二)数据库关系图:
该关系图确定了各张表之间的对应关系,明确了主键和外键,保证了数据的一致性。
(三)系统所需要的视图
1.VStudents
该视图用于查询学生的基本信息:学号,姓名,性别,民族,系科,专业,年级。通过该视图,可查询出学生的完整信息。
2.VScores
该视图用于查询学生的成绩,可以是单科成绩,所有科目成绩,各部分成绩,总成绩。通过该视图,可以知道有关学生及其所修课程的完整信息,包括课程名,任课教师等。
3.VTeachingPlans
该视图用于查询,教学计划的信息,包括:教学计划号,学期,系科,专业,年级,课程,教师名。因为对于用户来说,他一般只需要知道直观的信息,而不需要系科,课程,教师,专业的代号,代号一般只用于内部操作。
五﹑用户层设计
(一)用户层设计的实现工具
本系统的界面设计主要运用的是Microsoft公司的VisualStudio.Net2003中提供的asp.net,它是当今先进的Web开发平台,运行在服务器端。运用它可以建立强大的Web应用。它提供给用户以下一些特征:
1.它可以选择任何一种可用的.NET程序设计语言。
2.提供了一些对数据库访问的数据控件,如DataGrid﹑DataList控件,使得