毕业设计
1
【摘要】选排课系统功能的设计上,学生选排课系统可以分为登录、排课和选
课 3 个子系统。登录子系统区分排课者(也即系统的管理者)、教师和学生这三者的
不同身份,给出不同的权限,在页面中根据身份判断其相应具有的功能来使用这套
系统。排课子系统主要供排课者使用,排课者可以在这里进行一切与排课有关的活
动。选课系统主要供学生选课使用,在这里可以进行与选课有关的活动;教师可在
教师反馈系统中对排课者提出反馈意见,供排课者在排课时可参考使用。
学生选排课系统使用 Rational Rose 进行 UMI。建模;过程选择使用 ASP 编写脚
本,在数据库上考虑到快捷、有效,同时考虑到多台服务器共同使用同一个数据库
的情况,这里选择 SQL Server 2000 作为数据库服务器;对于网页的服务器平台,这
里选择使用 Information Server5.O 作为 Internet 服务器。在 Windows 2000 Server
上,这是一种很好的组合,也正是 Microsoft 微软公司网站一直以来所使用的。
【关键词】学生排课管理系统 UML ASP
毕业设计
2
【 Summary 】 Chooses the design that line up the lesson system function
last, the student chooses to line up the lesson system cans is divided into
the logging, row lesson with select elective courses 3 statures
system.Register the sub- system distinction row lesson( too namely the
governor of the system), different from student these third of body in teacher
a function for, giving a different legal power, in page according to body
judging its cowgirl having to use this set of systems.The row lesson sub-
system provides to line up the lesson primarily usage, row lesson can be the
whole in here proceeding and line up the activity of relevant lesson.Select
elective courses the system to provide primarily the student select elective
courses the usage, can proceed the activity that have something to do with
selecting elective courses here;Teacher can in teacher feedback system to
row lesson put forward the feedback opinion, provide to line up the lesson
while lining up lesson can consult usage.
The student chooses to line up the lesson system usage Rational Rose
proceeds the UMI.Set up the mold;The process choice uses the ASP the plait
writes the script, on the database in consideration of fast, valid, at the
same time in consideration of many set server common the circumstance of the
same of database in usage, choose the SQL Server here 2000 conduct and actions
database server;Choose the server terrace of the web page, very much to use
the Information Server5.O conduct and actions Internet server.On the 2000
Servers of Windows, this is a kind of good combination, and also exactly
Microsoft Microsoft company website always since then uses of.
【 Key phrase 】 Student Row Lesson Management System UML ASP
毕业设计
3
第一章 系统概述
网上选排课系统(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 系统中则有很多功能相近的子系统,但各子系统所对应的数据表之问相
对独立。
毕业设计
4
第二章 开发工具简介
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 文件的过程如图 2.1 所示。
图 2.1 ASP 访问 Web 数据库的过程
Sql Server 2000 简介
Microsoft SQL Server 是一个 Windows 服务器上使用的、支持客户/服务器结构
的数据库管理系统。SQL Server 是 Microsoft 公司从 Sybase 公司购买技术而开发的
产品,它与 Sybase 的数据库完全兼容。SQL Server 与 Windows 的有机结合,可以充
分利用 Windows NT 的优势,性能价格比高。Microsoft SQL Server 不提供直接的客
户开发平台和工具,只提供了两个接口,即 Microsoft 开放式数据库连接(ODBC)和
DB—Library。
关于 UML 和 Rational Rose
UML(Unified Modeling Language)即统一建模语言。根据 UML 的发明者,“三个
好朋友”Crandv Booch、James Rumbaugh 以及 Ivar Jacobson 所著的 The Unified
Modelign Language UsersGuide 一书,其概念为:
(1)UML 是编写软件蓝图的标准语言;
(2)UML 以可视化方式指定、建构以及记录软件为主系统的产出。
3 位大师是 3 位面向对象系统分析方法的学者,先后被 Rational 公司(现己被 IBM
公司并购)招揽,集 3 家之大成,创立 UML,同时也构建了 Rational Rose 这套优秀
的建模系统。
UML 是完全面向对象的,是图形化的,它为系统开发的不同参与者(包括客户)提
毕业设计
5
供不同层次和角度的图;它鼓励任何层次上的交流(这与传统的瀑布式开发流程是相
悖的),鼓励客户参与,所以开发出来的软件是一个能符合设计之初的设想的软件;
它从用户的角度使用“用例图,,(Use Case Diagram)出发(这与传统的开发模式又是
相悖的,传统的模式是从系统的角度进行功能分析出发)来设计软件系统,所以不会
开发出具有很多开发者自以为很优秀的功能但是确不能符合客户真正需求的系统。
UML 所提供的主要图有:类图、对象图、用例图、状态图、时序图、活动图、协
作图、构件图和部署图。要全部地掌握和使用这些图无疑是一件很困难的事情。但
是,可以“用大约 20%的 UML 来完成大多数问题的 80%的建模工作”(The Unified
Modeling Language UsersGuide)。在上述这些图中,最重要和使用最多的 3 种图是:
用例[](User CaseDiagram)、时序图(Secquence Diagram)和类图(Class Diagram)。
用例图是从用户的角度来描述系统的外部功能的图。对不同的用户,系统应该
有不同的功能,所以一个系统的用例图通常会有多个。图 2—1 是一个简单的用例图
的例子。
图 2-1 简单的用例图
图中的人形代表活动参与者,椭圆代表用例,箭头代表关系,即操作。用例图
是 UML 建模中最重要的一种图,它体现了实实在在展现在用户面前的系统的各项功
能,而与实施没有关系——这正是用户所需要的系统。用例图的设计好坏直接影响
这个系统的设计和实施。有很多人并不完全认可 UML 的一套做法,但基本都认为用
例图是很有用处的。
时序图是从系统实现的角度来描述每一个用例。(可见一个用例一般应有一个对
应的时序图。)它描述的是一个用例中用户与系统进行消息传递,系统各部件(类)之
间进行消息传递的关系和顺序。
时序图表现的是系统具体实施的静态逻辑,从它可以直接联系到代码中一个模
块的具体实现逻辑,所以它对于系统逻辑的具体实施是最重要的类图直接对应到源
代码。在面向对象的程序设计中,整个系统都是由类及其实例(对象)通过相互之问
发送消息以及各自的消息处理函数来实现的。时序图描述了各个类之间要发送的消
息,类图则表明该如何来发送、接收和处理这些消息,这包括各种属性和方法。
在开始的时候要找到一个待开发的系统中的所有的类是一件很不容易的事情,要
找出它们之间的关系及其各自处理消息的方法则更加困难。因为类图实际已经对应
到代码,或者说是代码的图形化的表现。所以,在一开始的时候完全分析所有的要
素是不太实际的。在进行具体的设计时要反复审查和修改用例图和时序图,来建立
类图。
UML 是一种图形化的统一建模语言,它在系统的分析和设计之时对交流思想起到
非常重要的作用。它用图形来表示完整的系统,在运用中要反复审查和修改多次,
所以在系统分析和设计的时候所花的时间是很多的。但是如果分析得越仔细,则在
编码的时候越容易。理论上,只要将代码填充到完整的 UML 模型中去就可以了,并