计算机软件毕业论文[1].doc_第1页
计算机软件毕业论文[1].doc_第2页
计算机软件毕业论文[1].doc_第3页
计算机软件毕业论文[1].doc_第4页
计算机软件毕业论文[1].doc_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

南京人口管理干部学院 毕 业 论 文姓 名: 麻雪莲 _ 学 号: 班 级: 1101软件 学 系: 信息技术工程系 学 院: 锡林郭勒职业学院 题 目: 网上选课系统的设计与实现 指导者: (姓 名) (专业技术职务) 2013年4月13日 目 次 摘要.1 1.引言(绪论).2 2.开发工具的简介.3 2.1 ASP简介.4 2.2 SQL server2000简介.5 2.3 数据库系统设计.6 3.应用系统的开发.7 3.1 系统对硬件个软件的要求.8 3.2 运行要求.9 3.3 其他要求.10 3.4 数据库应用系统开发.11 3.5 学生选课系统 .12 4.系统设计分析.13 4.1 系统简要分析.14 4.2 应用需求分析.15 4.3 业务流分析.16 4.4 数据流分析.17 4.5 E_R图.18 5.数据库设计.19 6.系统的实现.20 6.1 系统首页 default.asp.21 6.2 选课子系统selectcourse. .22 7.实施概况.23 7.1 实施环境与工具的比较.24 7.2 编程环境工具,实现与数据准备概况.25 7.3 系统测试概况.26 7.4 系统转换方案与实现概况.27 7.5 系统运行与维护概况.28 结论.29【摘要】 Internet网是目前全球最大的计算机通信网,它遍及全球几乎所有的国家和地区。www系统是一个大型的分布式超媒体信息数据库,它极大的推动了Internet的发展,己经成为Internet中最流行、最主要的信息服务方式。www技术之所以能在全球普及,一个重要的原因就是它与数据库管理系统相互融合,成为一个处理和共享信息的强大工具。一方面,数据库是一种强大的信息管理工具,另一方面,www提供了共享数据的方法。两者强强联合取长补短,发挥各自优势,使用户可以在Web浏览器上方便地检索数据库的内容。 经过分析,我使用 MICROSOFT公司的ASP (active server pages)作为开发工具, 用Microsoft Windows XP Professional 版本2002 Service Pack 2 简体中文版,Microsoft Offices ACCESS 2003 中文版,Internet Information Services (IIS6) Manager,Intel(R) PIIII CPU 3.0GHz Double CPU 512MB Rom 160GBHardDisk作为开发平台。【关键词】 选课 学生 数据库 查询1.引言(绪论) 网上选排课系统(WebCtour。seSettlement)系统是依据大学的网上选排课需求进行设计的。由于在算法上存在难题,且排课问题本身就是组合优化问题里面的一个NP难的问题,所以这个系统并不试图做一个自动排课系统这真的太难了,以至于没有一个比较理想的近似算法(网上有很多的自动排课软件,效果都不理想)。这个网上选排课系统所做的是让排课者手工排课,然后检测、避免这种排课的冲突(其核心是一个存储过程DetectArrangeCollision),在进行选课时,这里也要检测和避免这种实际中可以遇见的冲突(其核心也是用一个存储过程DetectSelectCollision来实现的)。在这套选排课系统功能的设计上,StudentCourseSettlement系统可以分为登录、排课和选课3个子系统。登录子系统区分排课者(也即系统的管理者)、教师和学生这三者的不同身份,给出不同的权限,者使用,排课者可以在这里进行一切与排课有关的活动。选课系统主要供学生选课使用,在这里可以进行与选课有关的活动;教师可在教师反馈系统中对排课者提出反馈意见,供排课者在排课时可参考使用。 StudentCourseSettlement使用Rational Rose进行UMI。建模;过程选择使用ASP编写脚本,在数据库上考虑到快捷、有效,同时考虑到多台服务器共同使用同一个数据库的情况,这里选择SQL Server 2000作为数据库服务器;对于网页的服务器平台,这里选择使用Information Server5.O作为Internet服务器。在Windows 2000 Server上,这是一种很好的组合,也正是Microsoft微软公司网站一直以来所使用的。本章主要介绍如何使用SQL Server2000来编写存储过程,以优化整个系统数据库管理的速度、安全性和灵活性,同时大大提高系统代码的模块化和封装性。与上一章相比较,StudentCourseSettlement在“深度”上比WebOffice更进一步,它涉及到一些比较复杂的判断处理逻辑,对数据库的设计要求也提高了很多;而Web()ffice系统中则有很多功能相近的子系统,但各子系统所对应的数据表之问相对独立。2.开发工具的简介2.1 ASP简介 ASP是Active Server:Pages的缩写,是Microsoft:公司开发的Web服务器端脚本开发环境,利用它可以生成动态、高效的Web应用程序。 虽然人们习惯于将ASP称为ASP语言,但从严格意义上讲,ASP只是为VB Script和JaVaScript等脚本语言提供了一个运行的环境,使开发人员可以在HTML代码中使用脚本语言编写程序。当然,AsP自身也提供了一些非常好用的命令和内置对象。 ASP程序保存为后缀名为asp的文件,一个ASP文件相当于一个可执行文件,因此必须放在Web服务器上有可执行权限的目录下。当浏览器向Web服务器请求调用ASP文件时,就启动了ASP。Web服务器开始调用ASP,将被请求的asp文件从头读到底,执行每一个命令,然后动态生成一个HTML页面并送到浏览器。由于ASP在服务器端解释执行,开发者可以不必考虑浏览器是否支持ASP,也不必担心程序会被从客户端下载。执行ASP文件的过程如图21所示。图21 ASP访问Web数据库的过程2.2 Sql Server 2000简介Microsoft SQL Server是一个Windows服务器上使用的、支持客户/服务器结构的数据库管理系统。SQL Server是Microsoft公司从Sybase公司购买技术而开发的产品,它与Sybase的数据库完全兼容。SQL Server与Windows的有机结合,可以充分利用Windows NT的优势,性能价格比高。Microsoft SQL Server不提供直接的客户开发平台和工具,只提供了两个接口,即Microsoft开放式数据库连接(ODBC)和DBLibrary。2.3 数据库系统设计 信息系统的主要任务是通过大量的数据获得管理所需要的信息,这就必须存储和管理大量的数据。因此建立一个良好的数据组织结构和数据库,使整个系统都可以迅速、方便、准确地调用和管理所需的数据,是衡量信息系统开发工作好坏的主要指标之一。数据库系统设计数据库设计主要是进行数据库的逻辑设计,即将数据按一定的分类、分组系统和逻辑层次组织起来,是面向用户的。数据库设计时需要综合企业各个部门的存档数据和数据需求,分析各个数据之间的关系,按照数据库提供的功能和描述工具,设计出规模适当、正确反映数据关系、数据冗余少、存取效率高、能满足多种查询要求的数据模型。为了更好地组织数据和设计出实际应用数据库,应该注意如下问题:规范化地重组数据结构:对数据进行规范化表达,这在后面将会具体讨论。关系数据结构的建立:在进行了数据基本结构的规范化重组后,还必须建立整体数据的关系结构。这一步设计完成后数据库和数据结构设计工作基本完成,只待系统实现时将数据分析和数据字典的内容代入到所设计的数据整体关系结构中,一个规范化数据库系统结构就建立起来了。建立关系数据结构涉及三方面内容:确定关联的关键指标项并建立关联表;确定单一的父系记录结构;建立整个数据库的关系结构。定义安全保密性的方法一般有如下几种: a原则上所有文件都定义为4级,个别优先级特别高的办公室(终端或微机的入网账号)可定义高于4级的级别,反之则定义为低于4的级别。 b统计文件(表)和数据录入文件一般只对本工作站定义为只写方式,对其它工作站则定义为只读方式。3.应用系统开发工具3.1系统对硬件和软件的要求服务器硬件处理器:Intel PII 450 或更好内 存:256M 或更大硬 盘:20G 或更大软件Microsoft WindowsNT Server 4.0 或更高版本Microsoft Sql Server 7.0 或更高版本Microsoft IIS 4.0 或更高版本Microsoft Office 2000SDK客户机硬件无特殊要求,只要能上连接互联网即可软件Microsoft Windows / 95 / 98 或更高版本Microsoft IE 4.0 或更高版本系统的性能要求通常指系统需要的存储容量以及后援存储,重新启动和安全性,运行效率等方面的考虑。 本系统运行环境为单环境,在运算时对系统整体性能要求过高,要求:软件系统环境 :IIS5.0 + SQL + SDK硬件系统环境:C600、64MB(RAM)、500MB(HD)。系统运行时对数据的保密性要求不高对一般的数据不要求进行加密。此外,对其它软件几乎没有依赖性,程序健壮性较好。3.2 运行需求硬件条件:586 CPU、32M RAM、3.2G硬盘以上的PC机;打印机;局域网。软件条件:Windows 98以及Windows NT操作系统; 服务器。3.3 其他需求本系统有较好的可维护性、可靠性、可理解性、效率。易于用户理解和操作。可维护性包括了可读性、可修改性、可测试性、等含义。可靠性通常包括正确性和健壮性。开发过程中,在各种矛盾的目标之间作权衡,并在一定的限制的条件下(经费、时间、可用的软、硬件资源等),使上述各方面最大限度的得到满足。3.4数据库应用系统开发简介 在数据库应用系统开发之前,对开发数据库的基本概念应当了解,对数据库的结构、开发数据库应用程序的步骤、开发体系及方法都应当有相当清晰的了解和认识。数据库应用系统开发的目标是建立一个满足用户长期需求的产品。开发的主要过程为:理解用户的需求,然后,把它们转变为有效的数据库设计。把设计转变为实际的数据库,并且这些数据库带有功能完备、高效能的应用。数据库技术在计算机软件邻域研究中一直是非常重要的主题,产生于60年代,30多年来数据库技术得到了迅速发展,并已形成较为完整的理论体系和一大批实用系统。并且,近年来,随着World Wide Web(WWW)的猛增及Internet技术的迅速发展,使得数据库技术之时成为最热门技术之一。用户数据目前表明,大多数主流数据库管理系统把用户数据表示为关系。现在把关系看作数据表。表的列包含域或属性,表的行包含对应业务环境中的实体的记录。并非所有的关系都同样符合要求,有些关系比其它关系更结构化一些。3.5学生选课系统 当今时代是飞速发展的信息时代。在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。计算机的最大好处在于利用它能够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。本系统就是为了管理好选课信息而设计的。学校作为一种信息资源的集散地,学生和课程繁多,包含很多的信息数据的管理,现今,有很多的学校都是初步开始使用,甚至尚未使用计算机进行信息管理。根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于选课情况的统计和查询等往往采用对课程的人工检查进行,对学生的选课权限、以及选课代号等用人工计算、手抄进行。数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统,规范的信息管理手段。尽管学校都有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发的基本环境。数据处理手工操作,工作量大,出错率高,出错后不易更改。学校采取手工方式对学生选课情况进行人工管理,由于信息比较多,选课信息的管理工作混乱而又复杂;一般选课情况是记录在文件上,课程的数目和代号也记录在文件中,学校的工作人员也只是当时对它比较清楚,时间长了,如再要进行查询,就得在众多的资料中翻阅、查找了,造成查询费时、费力。如要对很长时间以前的选课进行更改就更加困难了。基于这些问题,我认为有必要建立一个学生选课系统,使选课管理工作规范化,系统化,程序化,避免选课管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改选课情况。4.系统分析4.1系统简要分析管理员可以通过超级用户身份登录,对系统进行全面的管理,对新用户的添加,删除,对信息进行管理。管理员可以对老师及同学的帐户进行管理,老师、学生不同身份的用户进入不同的界面,进行不同的操作。教师可以发布自己本学期所要教的课程,以及对学生成绩进行管理。同学可以通过查询本学期所开设课程进行选择。 4.2 应用需求分析 学生选课系统需要满足来自三方面的需求,这三个方面分别是学生、教师和管理员。学生的需求是查询院系的课程、学生选课情况及学生信息的修改;教师对选课系统学生选课情况进行操作,同时形成学生选课查看确认;选课管理员的功能最为复杂,包括对学生、教师、选课进行管理和统计,及系统状态的查看、维护并生成选课报表。学生可以直接查看选课情况,学生可以根据本人学号和密码登录系统,还可以进行本人学科成绩情况的查询和维护部分个人信息。一般情况下,学生只应该查询和维护本人的选课情况和个人信息,若查询和维护其他学生的选课及成绩查询信息,就要知道其他学生的学号和密码。这些是很难得到的,特别是密码,所以不但满足了学生的要求,还保护了学生的个人隐私。学校工作人员有修改学生选课的权限,所以需对工作人员登陆本模块进行更多的考虑。在此系统中,学校工作人员可以为学生加入选课或是登陆记录,并打印生成相应的报表给用户查看和确认院系管理人员功能的信息量大,数据安全性和保密性要求最高。本功能实现对选课信息、教师信息、总体选课情况信息的查询和统计、工作人员和管理人员信息查看及维护。学校管理员可以浏览、查询、修改、统计选课的基本信息;浏览、查询、统计和修改学生选课的基本信息,浏览、查询、统计学生信息,但不能添加删除和修改学生的信息,这部分功能应该由院系工作人员执行,但是,删除某条学生选课基本信息记录时,应实现对该学生选课的级联删除。并且还应具有生成选课报表,并打印输出的功能。设计不同用户的操作权限和登陆方法对所有用户开放的学生选课查询和个人部分信息维护查看个人情况信息维护学生个人密码根据选课情况对数据库进行操作并生成报表根据选课情况对数据库进行操作并生成报表查询及统计各种信息维选课信息维护工作人员和管理员信息维护学生信息处理信息的完整性。本系统主要实现教师信息管理、学生信息管理、课程信息管理和系信息管理,其中教师信息管理有教师姓名、教师工号、教师职称、教师所属系;学生信息管理有学生姓名、学生学号和学生所在系;课程信息管理有课程名称、学分、上课地点、已选人数、课程性质、开课系、课程人数;系信息管理有系号和系名。(1)学生信息模块完成学生的登陆,然后根据各位同学所在的系不同,调用相应的选课模块。其中学生登录模块的功能是验证登录人员确实是本院的学生,学生启动本系统后,系统提示输入学生学号码和密码,验证后进入主控操作界面。(2)教师信息模块完成教师的登陆,然后根据各位教师所在的系不同,教师所教的课程不同,调用所选的课程.其中教师登陆模块的功能是验证登录人员确实是本院的教师,教师启动本系统后,系统提示输入教师工号和密码,验证后进入主控操作界面。(3)课程信息管理包括必修课程和选修课程,学生必需先登陆才能进行对课程的选课否则不能进入选课系统.(4)学生必需选重所在的学号和课程才能进行选课,否则并不能进行选课.4.3业务流分析学生成绩管理系统的业务流程:首先由教师或系统管理员等有录入权限的用户将各自权限范围内的信息进行录入,然后保存信息到数据库中。有权限的人可以对这些库信息进行修改和删除。所有用户均可以进行信息查询和统计,有权限用户还可以基于已有信息进行选择。4.4数据流分析学生课程管理系统的数据流程:首先由教师或系统管理员等有录入权限的用户将各自权限范围内的信息进行录入处理,然后保存信息到数据库中。有权限的人可以对这些库信息进行修改和删除处理。所有用户均可以进行信息查询和统计,有权限用户还可以基于已有信息评定处理过程。4.5 E-R图教师密码权限班级课程课号姓名、管理员姓名班级密码学生密码课程班级姓名学号课程学时学号课程名教师号课程号上课时间上课地点课程状态课程简介5. 数据库设计以下罗列出学生选课系统所需的数据表。表5-1 排课表(Arrange)字段说明类型(长度)备注ARRANGE_ID排课编号int主键,标识CLASSROOM_ID上课教室号int外键DAY_TIME上课时间varchar(20)SETTING_ID课程设置号datetime外键表5-2 院系信息表(DeptInfo)字段说明类型(长度)备注DEPT_ID院系编号char(10)主键DEPT_NAME院系名称nchar(10)表5-3 学生信息表(StudentInfo) 字段说明类型(长度)备注STUDENT_ID学生学号varchar(20)主键STUDENT_NAME学生姓名nvarchar(10)DEPT_ID所属院系编号char(10)外键MAJOR_ID专业号varchar(20)表5-4 教师信息表(TeacherInfo) 字段 说明类型(长度)备注TEACHER_ID教师编号varchar(20)主键TEACHERNAME教师姓名 nvarchar(1O)DEPTID所属院系编号char(10)外键表5-5 教学楼信息表(Buildinglnfo) 字段说明类型(长度)备注BUILDING_ID教学楼编号int主键,标识BUILDINGNAME教学楼名称nchar(10) 表5-6 教室信息表(elassroonlInf0)字段说明类型(长度)备注CLASSROOM_ID教室编号int主键,标识CLASSROOM_NAME教室名称nchar(10、BULDINal_ID教学楼编号Int外键PROPERTY教室属性nchar(10)表5-7 课程详细信息表(courseInfo) 字段说明类型(长度)备注COURSE_ID课程设置编号char(20)主键COURSE_NAME课程名称nchar(20)NTTRODUCTION课程介绍nvarchar(300)表5-8 开课信息表(coursesettingInfO) 字段说明类型(长度)备注SETTING_ID课程编号INT主键,标识ORIENT_DE面向专业编号varchar(20)SCORE学分tinvintSELECT_LIMIT限选性质nchar(4)TEACHER_ID教师编号varchar(20)TEST_METHOD考察方式nchar(4)COMMENT备注nvarchar(200)默认值“无”SELECTPR_NO_LIMIT最大选课人数smallintCOURSE_ID课程编号char(20)DEPT_ID开课院系编号char(10)GRADE_ID面向的年级tinyint 表5-9 反馈信息表(FeedBack)字段说明类型(长度)备注FEEDBACK1D反馈信息编号smallint主键FEEDBACKTITLE反馈信息标题nvarchar(20)默认值“无FEEDBACK_CONTENT反馈信息内容nvarchar(3000)USERID用户IDvarchar(20)FEEDBACKTIME反馈时间datetime 表5-10 备份排课记录表(BackUpArrangeList) 字段说明类型(长度)备注LISTID列表号int主键BACKUPID备份排课记录表1Dvarchar(20)表5-11 选课信息表(CourseSelect) 字段说明类型(长度)备注ARRANGE_ID排课编号intSTUDENT_ID学生学号varchar(20) 表5-12 选课时间段信息表(courseSelectInterval)字段说明类型(长度)备注BEGIN_TIME开始选课时间datetimeEND_TIME终止选课时间datetime表5-13 选课通知表(CourseSelectNotice) 字段说明类型(长度)备注NOTICE_ID通知编号smallintt键,标识NOTICE_TITLE通知标题nvarchar(20)NOTICE_CONTENT通知内容nvarchar(3000)NOTICE_TIME通知时间datetimeNOTICE_HOT是否为“热点”bit(2)默认值“0”表5-14 系统用户信息表(UserInfo) 字段说明类型(长度)备注USER_TYPE用户类型(排课者、教师或学生)char(1)USER_ID用户编号,标识intUSER_NAME用户名varchar(20)PASSWORD用户密码varchar(20) 以上是在数据库“物理设计”中设计的表(被称为数据库的“内模式”)。在设计过程中应尽量避免冗余,并且在各相关的表之间建立约束,以从数据库本身来避免数据冲突,保持数据的完整性和合理性。注意其中有一部分表是从其他系统Import进来的。具体地,DeptInfo来:自院系管理系统;studentInfo来自学籍管理系统;TeacherInfo来自各院系办公系统的教师管理子系统;BuildingInfo来自学校资产管理系统;CourseSettingInfo来自各院系办公系统的课程设置子系统。这些表在这里只是其原所在系统的一部分。 在具体查询过程中,如果全部直接从物理表查询,则要建立多重的联合(内联)查询,这样用起来很不方便,也容易出错;同时要从IIS发送更多的查询语句到SQL服务器,影响效率。因此建立以下的关键视图(被称为数据库的“外模式”),方便查询。 完整排课信息的视图(VIEW_Arrange)如表5-15所示。表5-15 完整排课信息的视图VIEW_Arrange 字段源表说明COURSE_IDCourseSettingInfo课程编号COURSE_NAMECourseInfo课程名称TEACHER_IDCourseSettinglnfo教师编号TEACHER_NAMETeacherlnf0教师姓名SELECT_LIMITCourseSettinglnfo限选性质SCORECourseSettinglnfo学分TEST_METHODCourseSettinglnfo考察方式0RIENT_DEPT_IDCourseSettinglnfo面向专业编号SELECTOR_N0_LIMITCourseSettinglnfo最大选课人数CLASSROOM_NAMEClassroomInfo教室名称CLASSR00M_PROPERTYClassroomlnf0教室属性DEPT_NAMECourseSettinglnfo开课院系名称BUILDINGNAMEBuildingInfo教学楼名称BULDINGIDArrange教学楼编号DAYJIMEArrange上课时问SETTINGIDArrange课程设置编号ARRANGE_1DArrange排课号CLASSROOMIDArrange教室编号完整选课信息的视图(VIEW_Select)如表5-16所示。表5-16 完整选课信息的视图VIEW_Select 字段源表说明ARRANGE_IDArrange排课号COURSE_IDCourseSettinglnfo课程编号COURSEJNAMECourseInfo课程名称TEACHER_IDCourseSettingInfo教师编号TEACHERJNAMETeacherlnfo教师名称ORIENT_DEPT_IDCourseSettingInfo面向专业编号STUDENY_IDSelect学生学号STUDENT_NAMEStudentInfo学生姓名 视图从表中将用到的一组记录提取出来组成一个虚拟表,而不管数据源中的其他信息,它可以改变这些记录的值,并把更新结果送回到源表中。从用户的观点来看,视图和基本表是一样的。作为数据库的一个重要概念,视图有以下许多优点。 (1)提供了一定程度的逻辑独立性。当数据库重新构造时,数据库整体的逻辑结构将发生变化。如果用户程序是通过视图来访问数据的,视图相当于用户的外模式,只需要修改视图定义来保证用户的外模式不变,因此用户的程序也不必改变。 (2)有利于数据保密。对不同的用户定义不同的视图,而且只授予用户访问自己的视图的权限,使其无法看到其他用户的数据。 (3)简化了用户的操作。视图机制使用户把注意力集中在自己关心的数据上。这种视图所表达的数据的逻辑结构与基本表相比,更易于被用户理解。而对视图的操作实际上是把对基本表(尤其是多个基本表)的操作隐藏

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论