搜档网
当前位置:搜档网 › 软件工程课程设计报告--学生选课系统

软件工程课程设计报告--学生选课系统

软件工程课程设计报告--学生选课系统
软件工程课程设计报告--学生选课系统

1. 概述

1.1课题题目:学生选课系统 1.2系统的主要目标:

本系统目标是实现选课系统所需的各种基本功能,包括学生选课、退课功能和教师查看选修课程、提交课程成绩功能以及管理员添加学生、维护学生信息、成绩管理、添加教师、维护教师信息、维护选修课程,还有公用的修改密码等功能。 1.3 系统的开发环境及运行环境:

操作系统: Windows XP Pro SP2 建模工具: Rational Rose 2003 数据库系统:SQL Server2000 开发工具: Visual Studio 2005 Web 服务器:IIS+https://www.sodocs.net/doc/a012646716.html, 2.0平台

2. 系统需求分析

学生选课系统主要满足来自三方面的需求,这三个方面分别是学生用户、教师用户和管理员用户,也即是三类用户角色。

(1)学生用户是主要的需求者,主要需求功能是查询可选课程、查看自己选课情况及进行选课、退课操作等;

(2)教师用户主要需求功能是查看自己所教授的课程、课程有哪些学生选修、以及利用本系统提交学生的成绩;

(3)管理员用户的功能需求较为复杂,包括对学生信息、教师信息、课程信息进行管理。在学生信息管理子模块中,实现对学生信息的添加、修改、删除操作,还可以输入查询条件进行查询操作。在教师管理子模块中,实现对教师信息的添加、修改、删除、查询等操作。在课程管理子模块中,实现对课程信息的添加,添加时为其分配任课教师、上课时间和地点,实现对课程的修改、删除、查看某个课程的详细信息等。

本系统将管理员用户、教师用户、学生用户的身份及权限进行严格的划分,让管理员拥有最高权限,可以查看、维护系统中的所有信息,如添加学生,添加课程,修改课程信息等;让教师拥有查看自己开设的课程的信息,以及提交所开设课程成绩的权限;让学生拥有选课和退选的权限;而修改密码模块的权限每个用户都可拥有,用以修改自己的密码信息。通过进行严格的权限划分,可以更好地进行管理,也可更好地保护用户信息安全。

2.1 用例图

选课

查看选课

退课

查看学生选课提交成绩

添加学生

学生管理

<>

<><>

教师管理

<>

<>

学生用户

<>

教师用户

<><>

<>

图2-1 学生选课系统用例图

用例图说明:

(1)系统的外部角色有:学生用户、教师用户和管理员。

(2)系统主要用例的文档描述:

①学生管理用例:学生用户可见的功能,包含了选课、退课和查看选课三个用例功能。

②教师管理用例:教师用户可见的功能,包含了查看学生选课和提交成绩两个用例功能。

③信息管理用例:管理员可见的功能,这个用例进一步分为三个用例:学生信息管理用例、

教师信息管理用例和课程信息管理用例。

④学生信息管理用例:信息管理用例可见的功能,实现学生信息的管理功能,包含了添加学

生、修改学生信息和删除学生三个用例。

⑤教师信息管理用例:信息管理用例可见的功能,实现教师信息的管理功能,包含了添加教

师、修改教师信息和删除教师三个用例。

⑥课程信息管理用例:信息管理用例可见的功能,实现课程信息的管理功能,包含了添加课

程、修改课程信息和删除课程三个用例。

⑦修改密码用例:所有用户都可见的功能,用于修改用户的密码信息。

(3)系统用例之间的关系:

①学生管理用例与选课、查看选课、退课三用例之间是包含关系。

②教师管理用例与查看学生选课、提交成绩两用例之间是包含关系。

③信息管理用例与学生信息管理用例、教师信息管理用例和课程信息管理用例之间是包含关

系。

④学生信息管理用例与添加学生、修改学生信息和删除学生三个用例之间是包含关系。

⑤教师信息管理用例与添加教师、修改教师信息和删除教师三个用例之间是包含关系。

⑥课程信息管理用例与添加课程、修改课程信息和删除课程三个用例之间是包含关系。(4)系统关键用例的正常事件流图和异常事件流图

表2-1 修改密码用例的正常事件流图和异常事件流图

用例名称修改密码

参与者管理员、教师、学生

描述管理员、教师、学生用户进行密码修改

启动单击“修改密码”链接

前置条件用户成功登录

主事件流

用户系统

1.进入用户修改密码界面,输入旧密码一次

,新密码两次

2.系统检查密码格式是否相符

3.系统检查旧密码是否正确

4.如果正确,进行密码修改,转入密码修改成功界

异常流

异常流密码检查未通过

系统返回密码修改界面,提示旧密码不正确,新密码

格式不符,两次不同等密码

异常用户旧密码错误

表2-2 提交成绩用例的正常事件流图和异常事件流图

用例名称提交成绩用例

参与者教师用户

描述提交选自己开设课程的学生的成绩

启动进入提交成绩界面

前置条件用户成功登录

后置条件尚未提交过成绩

主事件流

用户系统

1.单击提交成绩

2.系统提交成绩页面

3.填写学生成绩,单击提交成绩

5.更新学生成绩,提示提交成功

异常流

异常流用户已经提交过该门课程成绩

系统提示该课程成绩已提交,不能再次提交

2.2类图

图2-2 学生选课系统类图

类图说明:

(1)BaseUser类是一个系统角色用户的基类,主要方法有两个:modifyPWD() 用于修改用户的密码;

loginCheck() 用于用户登录验证。

(2)Admin类继承自BaseUser类。

(3)Student类继承自BaseUser类,主要方法有:

studentAdd() 用于添加学生;

studentDel() 用于删除学生;

studentUpdate() 用于更新学生信息;

getStudents() 用于获取学生列表。

(4)Teacher类继承自BaseUser类,主要方法有:

teacherAdd() 用于添加教师;

teacherDel() 用于删除教师;

teacherUpdate() 用于更新教师信息;

getTeachers() 用于获取教师列表。

(5)Course类是一个课程类,主要方法有:

courseAdd() 用于添加课程;

courseDel() 用于删除课程;

courseUpdate() 用于修改课程信息;

getCourses() 用于获取课程列表。

(6)Elect类是一个选课表类,主要方法有:

elect() 选修课程;

electDel() 退选课程;

getElectInfo() 获取选课信息;

haveSubmit() 检测是否已提交过成绩; submitScore() 提交成绩。

2.3 顺序图

(1) 管理员修改课程信息顺序图

图2-3 管理员修改课程信息顺序图

(2)

学生用户退选课的顺序图

图2-4 学生用户退选课的顺序图

(3) 教师提交成绩顺序图

: 管理员

: BaseUser

: Admin : Course

1: 登录

2: 验证登录

3: 进入管理员界面

4: 点击“修改课程”

5: 修改课程信息

6: 提示修改成功

: 学生用户

: BaseUser

: Student

: Elect

1: 登录

2: 登录验证

3: 进入学生界面

4: 点击“退课”

5: 退选课程

6: 提示退课成功

图2-5 教师提交成绩顺序图

2.4 协作图(可选)

(1) 学生用户选课协作图

图2-6 学生用户选课协作图

(2) 教师提交成绩协作图

: 教师用户

: Teacher

: BaseUser

: Elect

1: 登录

2: 验证登录

3: 进入老师界面

4: 点击“提交成绩”

5: 准备提交成绩

6: 验证是否已提交成绩

7: 提交成绩

8: 提示提交成功

: 学生用户

: Student

: BaseUser

: Elect

验证用户身份

验证是否课程时间冲突

3: 点击选课

6: 提示选课成功

1: 输入账户、密码

2: 登录成功

4: 提交选课信息

5: 选课成功

图2-7 教师提交成绩协作图

3. 系统总体设计 3.1 设计问题域子系统

学生选课系统是实现学生选课退课、教师提交成绩以及学校教务管理员维护信息的一个平台,整个学生选课系统有前台和后台两部分,共分为4个模块:管理员模块,教师模块,学生模块和公有模块,分别用于完成各自的功能。以下为学生选课系统总体设计图和各功能模块说明:

(1)总体设计图

: 教师用户 : Teacher

: Elect

: BaseUser

验证用户身份

验证是否已提交

1: 输入用户名、密码2: 登录成功

3: 点击提交成绩

6: 提示提交成功

4: 准备提交成绩

5: 提交成功

学生选课系统

前台模块

后台模块

学生登录模块

教师登录模块

学生处理模块

教师处理模块

管理员处理模块

公共模块

管理员登录模块

(2)各模块功能

表3-1 学生选课系统功能模块表

功能模块

包含子功能模块 功能

管理员模块

学生管理子模块

对学生信息的添加、修改,删除操作

教师管理子模块

对教师的添加,修改,删除,查询操作 课程管理子模块 对课程的添加,添加时为其分配任课教师,上

课时间和地点,实现对课程的修改,删除,查看某个课程的详细信息等

教师模块

实现查看自己所教授的课程,课程有哪些学生选修,以及利用本系统提交学生的成绩

学生模块 实现学生选课,查看所选课程,修改自己的选课信息 公有模块

实现用户的身份验证,密码修改,退出系统等功能

3.2 设计数据管理子系统

(1)数据库表

表3-2 数据库表

序号 数据库表

数据表存储的内容

1 Student 存储学生的信息

2 Teacher 存储教师的信息

3 Users 存储管理员的信息

4 Elect 存储选课的信息

5 Cource 存储课程的信息 6

Depart

存储学校系院信息

(2)数据表之间的关系

图3-2 数据表之间的关系图

(3)数据库表结构

①学生表Student的详细数据字段:

表3-3 Student学生用户表

序号字段名字段类型说明备注

1 stuID nvarchar(20)not null 学生学号关键字

2 stuPwd nvarchar(20)not nul 学生密码

3 stuName nvarchar(20)not nul 学生姓名

4 stuDepart Int 学生系院号

5 stuGrade int 学生年级

6 stuClass int 学生班级

②教师表Teacher的详细数据字段:

表3-4 Teacher教师用户表

序号字段名字段类型说明备注

1 teaID nvarchar(20)not null 教师编号关键字

2 teaPwd nvarchar(20)not null 教师密码

3 teaName nvarchar(100)not null 教师姓名

4 teaDepart Int(4) 教师系院号

③课程表Course的详细数据字段:

表3-5 Cource课程信息表

序号字段名字段类型说明备注

1 courseID nvarchar(20)not null 课程编号关键字

2 teaID nvarchar(20)not null 教师编号关键字

3 courseName nvarchar(100) not null 课程名称

4 courseTime nvarchar(20) 上课时间

5 courseAddress nvarchar(50) 上课地点

6 courseInfo Text 课程简介

④选课表Elect的详细数据字段:

表3-6 Elect选课信息表

序号字段名字段类型说明备注

1 stuID nvarchar(20)not null 学生学号关键字

2 courseID nvarchar(20)not null 课程编号关键字

3 teaID nvarchar(20)not null 教师编号关键字

4 Score int 课程成绩

⑤系统管理员表Users的详细数据字段:

表3-7 Users管理员表

序号字段名字段类型说明备注

1 adminName nvarchar(20)not null 系统管理员用户名关键字

2 adminPwd nvarchar(20) 系统管理员密码

⑥系院表Depart的详细数据字段:

表3-8 Depart系院表

序号 字段名 字段类型

说明

备注

1 departID Int not null 系院号 关键字 2

departName

nvarchar(100)

系院名称

3.3 设计人机交互子系统

(1)用户分类

本系统的用户可分为三类: ①管理员用户; ②教师用户; ③学生用户。 (2)用户描述

①管理员用户的描述:

管理员用户在整个选课系统中起到管理和维护的作用,对学生和教师的信息进行管理和维护以及开设课设等职责。 ②教师用户的描述:

教师用户在本系统中具有管理选修了自己开设的课程的学生的权限,查看选修了自己开设课程的学生信息有及提交学生成绩。 ③学生用户的描述:

选课系统主要是针对管理学生的,学生在本系统中具有修改自己的信息,以及选课和退选的功能。

(3)设计命令层次

①系统的人机交互子系统的内容和准则:

本学生选课系统的人机交互子系统在根据不同的用户身份登陆到不同的页面,然后按照不同的用户只能进行用户权限内的操作,其结构图如下:

②通过采用树形结构,细化命令的组织方式,如下:

主系统界面

管理员用户

学生用户

教师用户

主系统界面

学生用户界面

教师用户界面

管理员用户界面

图3-3 人机交互子系统结构图

4.详细设计

学生选课系统是实现学生网上选课、教师提交成绩以及学校教务管理员维护信息的一个平台,整个学生选课系统共分为4个大模块:管理员模块,教师模块,学生模块和公有模块,其中复杂的方法和模块的详细设计流程图如下。

4.1系统用户登录流程图

4.2 用户密码修改流程图

输入用户名、密码

验证用户名、密码

提示用户登录失败

进入相应的用户页面

选择相关管理操作

安全退出系统

验证正确 结束

图4-1 系统用户登录流程图

4.3教师提交成绩流程图

4.4管理员添加课程流程图

输入用户旧密码、新密码 验证用户密码是否合法

输入不合法,重新输入

修改用户密码

提示修改成功

是否合法? 结束

图4-2 用户密码修改流程图

是 否

开始

点击成绩提交

填写学生成绩

提示已提交,不能再提交

点击提交

提交成绩,并提示成功

检查是否已提交过 确认提交? 结束

图4-3教师提交成绩流程图

4.5学生选修课程流程图

5. 系统实现

开始

退出

转到添加课程 填写课程信息 点击添加

填写编号

提示重新填写编号

添加课程 提示添加成功

课程编号是否重复?

图4-4 管理员添加课程流程图

开始

结束

点击选修

选修成功

更新选、退课课表

提示时间冲突,不能选修

上课时间冲突

继续选课?

否 图4-5 学生选修课程流程图

本系统采用了三层架构来实现,即分为用户界面层(UI)、业务逻辑层(BLL)和数据访问层(DAL),用户界面层是展示给用户的界面,方便用户与系统进行交互;业务逻辑层是对系统业务实体的封装,完成系统业务功能;数据访问层直接与数据库打交道,为业务逻辑层提供底层的数据库操作。

5.1 Database类主要是与数据库连接,提供数据库操作功能,代码如下:

namespace MyElectCourse.DAL

{

public class Database

{

protected string connectionString;

protected SqlConnection connection = null;

public Database()

{

connectionString =

ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString.ToString();

}

~Database()

{

if (connection != null)

{

connection = null;

}

}

protected void Open()

{

if (connection == null)

{

connection = new SqlConnection(connectionString);

}

if (connection.State.Equals(ConnectionState.Closed))

{

connection.Open();

}

}

protected void Close()

{

if (connection != null)

{

connection.Close();

}

}

public int ExecuteSQL(string sqlstr)

{

int count = -1;

this.Open();

SqlCommand cmd = new SqlCommand(sqlstr, connection);

count = cmd.ExecuteNonQuery();

this.Close();

return count;

}

public DataSet GetDataSet(string sqlstr)

{

this.Open();

DataSet ds = new DataSet();

SqlDataAdapter adapter = new SqlDataAdapter(sqlstr,connection);

adapter.Fill(ds);

this.Close();

return ds;

}

public DataTable GetDataTable(string sqlstr)

{

DataSet ds = this.GetDataSet(sqlstr);

DataTable dt = new DataTable();

if (ds.Tables.Count > 0)

{

dt = ds.Tables[0];

}

return dt;

}

public SqlDataReader GetDataReader(string sqlstr)

{

this.Open();

SqlCommand cmd = new SqlCommand(sqlstr, connection);

SqlDataReader sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection);

//this.Close();

return sdr;

}

}

}

5.2 UserBase类是所有系统角色用户的基类,完成用户登录验证与修改密码的功能,代码如下:namespace MyElectCourse.BLL

{

public class UserBase

{

private string userID;

public string UserID

{

get { return userID; }

set { userID = value; }

}

private string userPSW;

public string UserPSW

{

get { return userPSW; }

set { userPSW = value; }

}

public string loginCheck(string uid, string upwd, string urole)

{

String selectStr = String.Empty;

switch (urole)

{

case"0": //身份为教师时

selectStr = "Select * from Teacher where teaID = '" + uid + "'";

break;

case"1": //身份为学生时

selectStr = "Select * from Student where stuID = '" + uid + "'";

break;

case"2": //身份为管理员时

selectStr = "Select * from Users where adminName = '" + uid + "'";

break;

default:

return null;

}

Database db = new Database();

DataTable dt = db.GetDataTable(selectStr);

if (dt.Rows.Count > 0) //如果该用户存在

{

if (dt.Rows[0][1].ToString().Equals(upwd)) //密码正确

{

switch (urole)

{

case"0": //身份为教师时

return"0";

case"1": //身份为学生时

return"1";

case"2": //身份为管理员时

return"2";

default:

return null;

}

}

else//密码错误,给出提示信息!

{

return"-1";

}

}

else//用户不存在或用户名输入错误

{

return"-2";

}

}

public string modifyPWD(String urole, String uid, String oldPwd, String newPwd)

{

String updateStr = String.Empty;

switch (urole)

{

case"0": //身份为教师时

updateStr = "update Teacher set teaPwd='" + newPwd + "' where teaID='" + uid + "'";

break;

case"1": //身份为学生时

updateStr = "update Student set stuPwd='" + newPwd + "' where stuID='" + uid + "'";

break;

case"2": //身份为管理员时

updateStr = "update Users set adminPwd='" + newPwd + "' where adminName='"

break;

}

string ucheck = this.loginCheck(uid, oldPwd, urole);

if (ucheck.Equals("0") || ucheck.Equals("1") || ucheck.Equals("2"))

{

int t = new Database().ExecuteSQL(updateStr); //根据修改后返回的结果给出提示

if (t > 0)

{

return"1";

}

else

{

return"0";

}

}

else

{

return"-1";

} } }}

5.3 系统登录页面,代码及运行效果如下:

登录页面

学生选课系统

用户名

密   码:

ErrorMessage="不能为空!">

教师

学生

管理员

基于jsp(java)学生选课系统的设计和开发

基于jsp学生选课系统的设计 姓名 系别、专业 导师姓名、职称 完成时间

基于JSP的学生选课系统 张三 内容摘要:随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。学生选课系统作为一种现代化的教学技术,以越来越受到人民的重视,是一个学校不可缺少的部分, 学生选课系统就是为了管理好选课信息而设计的。学生选课系统的将使选课管理工作规范化,系统化,程序化,避免选课管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改选课情况。 关键词:选课、课程信息发布、B/S、JSP

目录 第一章引言 第二章相关技术介绍 第一节Java技术 (2) 第二节Servlet技术 (3) 第三节Jsp技术 (4) 第四节开发软件介绍 (5) 4.1 eclipse平台 (5) 4.2 Tomcat服务器 (6) 4.3 SQL server 2000 (6) 第三章系统分析 第一节系统功能模块划分 (8) 第二节系统功能类别划分 (8) 第三节系统维护 (9) 3.1 课程基本资料维护 (9) 3.2 系部维护 (10) 3.3 管理员维护 (10) 第四节学生选课 (10) 4.1 课程预览 (10) 4.2 选课 (10) 4.3 退课 (11) 4.4 修改密码 (11) 第五节教师课程查询 (12) 5.1 查询课程情况 (12) 5.2 修改密码 (12) 第四章系统功能设计 第一节系统功能设计图 (13) 第二节数据库设计 (13) 第三节页面及功能设计 (14) 第五章总结

(完整版)学生选课系统可行性分析报告

文档编号:RS-4 版本号:1.0.0 学生选课系统 可行性分析报告 项目名称:学生选课系统 项目负责人:路景 项目开发小组:软三四组 修改记录:

学生选课系统可行性分析报告 1.引言 当今社会是一个讲求效率的社会,时间就是金钱。开发简单,易于操作的管理软件不仅可以节省时间,还可以避免浪费人力,物力,提高效率。 待开发系统是一个学生选课的管理系统,该系统软件非常容易被接受,它具有简单易学性,便于管理等功能。它是对学校选课管理的一种工具。 1.1编写目的 由于教学制度的改革,现在大部分高等院校实行的是学生的自主选课模式,传统的学生按照学校安排好的课程上课的教学模式已经不能适应新型的教学手段,如果仍然通过纸上的方式选课,一方面浪费的大量的人力、物力资源,另一方面浪费时间以及在人为的统计过程中不可避免出现的差错等情况。此选课系统就是为了解决这个问题。 1.2项目背景 随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现选课系统势在必行。对于一个学校来说,用计算机进行选课管理所无法比拟的优点是检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学校选课的效率。 工程名称:学生选课系统 工程组织者:威海职业学院 产品设计者:软三四组开发小组 产品生产者:软三四组开发小组 产品所有权:软三四组开发小组拥有 产品用户:具有一定特权的管理人员、老师和学生 1.3定义 学生选课系统是一个功能实用、操作方便、简单明了、使用方便的选课的系

统,能实现老师对课程的添加,删除,更改,浏览,查询等功能,并能对每门课程成绩进行评定,学生可对相关信息有查询和修改功能的系统。 1.4参考资料 魏志华.《软件工程》.北京:清华大学出版社,2005 张海藩.《软件工程》.北京:人民邮电出版社,2002 2.可行性研究的前提 2.1基本要求 (1)该软件的功能为:学生选课信息更新、选课查询、成绩查询、密码管理、以及学生选课信息的导入/导出。 学生选课信息更新:添加选课学生、删除选课学生、修改选课学生信息。 查询功能:记录浏览和条件查询。 密码管理功能允许合法用户对密码进行修改。 (2)性能 方便数据的录入,使查询速度大大提高。 (3)系统的输入 选课学生所包含的信息。 (4)系统的输出 查询结果和各类报表。 (5)数据安全和保密 系统对不同权限的用户提供不同的功能模块,有一定权限的用户可以进行操作,一般的用户只能进行查询的操作。 2.2开发目标 (1)开发此学生选课管理系统软件,使教学人员及操作者进行选课管理,方便操作者随时添加、查询、修改,使工作人员从繁琐的填表,查表工作中解放出来,使得人力和设备减少; (2)使供需双方都获得满意的结果; (3)促进报表、统计数字的规范化; (4)处理速度高,提高工作效率;

学生选课管理系统软件课程设计报告(精)

山东交通学院 面向对象课程设计学生选课管理系统软件 院(系别信息工程系 班级计算091 学号xxxxxxxxxxxx 姓名 xxxxx 指导教师 xxxxx 时间2011-04-05—2011-04-17 课程设计任务书 题目学生选课管理系统 系 (部信息工程系 专业计算机 班级计算091 学生姓名 xxxxx 学号 xxxxx 0 4 月 05日至 04 月 17 日共 2 周 指导教师(签字 系主任(签字 年月日

成绩评定表

abstract In order to improve everyone's hands-on time ability and the content of the later work have certain knowledge, at the same time for everybody in a database of a learning inspection study; School for everybody arranged for a two-week course design, make everyone working environment to the database, and understand more about curriculum design is several classmates to do the same projects, the regulation of the people's operation, is later programming work strengthened the personal programming specifications. This document on the database and VC briefly simply introduces, in the form of using graphic combined with written by the students elective course system in detail. Students elective course system is a more perfect record course information, her students can add students' information, new information, show the modified students of information and inquires the student students of information, etc. For the record students' information provides convenient records. Key words: database, VC, source program, students' course selection 目录 1课程设计概述 (1 1.1学生选课管理系统软件功能概述 (1 1.2Visual C++6.0概述 (1 2学生选课管理系统软件总体设计 (1 2.1学生选课管理系统软件总体设计思想 (1 2.2总体设计流程图 (3

学生选课系统课程设计

课程设计报告 课程名称: 学生选课系统的设计与实现 专业: 12级计算机科学与技术 姓名: 班级: 学号: 年月日 学生选课系统的设计与实现一、需求分析

1.设计背景 随着高校教学改革的不断深入,越来越多的高校都陆续采用了学分制。高校大学生们可以根据自己兴趣和爱好来自由选择自己所喜爱的课程。基于高校校园网的网上选课系统不仅克服了以往人工报送选课方式所暴露出的缺点与不足。同时极大地提高了高校教务人员工作效率,极大地方便了高校师生。网上学生选课系统在C/S的架构下采用了目前最流行的Internet的主流技术C#技术作为运行平台。学生选课系统的推出,使得全校选课的维护、学生选课及查询、成绩录入、统计等工作均变得轻松高效,形成了教与学的积极互动,减轻了系统维护的成本与工作量,方便学生及老师的使用。 学生选课系统要求可以进行课程信息的录入,课程信息的浏览,可以按学分查询。作为学生选课系统,我设计了对学生和老师的信息管理,选课系统包含的信息涉及信息多,所以这方面我额外的增加了这方面的信息管理。 2.设计目标 ●系统能够提供友爱的用户界面,使操作人员的工作量最大限度地减少; ●系统具有良好的运行效率,能够达到提高效率的目的; ●系统应有良好的可扩充性,可以容易地加入其他系统的应用; ●通过这个项目可以锻炼自己,提高自己的开发能力和项目管理能力; 3..实现功能 本设计所开发的系统用户有三类:学生用户,教师用户,管理员用户。 当学校公布可以选课了,学生就应该急时登陆选课系统进行选课。对学生来说,进行登陆选课,系统中有哪些可选的课程由管理员添加。课程重要的信息之一就是该课程的老师。当加入老师时,应该跟老师的信息相关联。当老师登陆时,可以查看自己所教的课程的报名情况,以及学生对该课的评价等等信息。学生和老师都不可能使用管理员的功能。 学生选课系统共设计4个模块,其功能介绍如下: ●登录模块:此模块实现用户的的注册和登录 ●学生模块: 1)查询信息:查询学生自己信息 2)录入选课信息 ●教师模块: 1)查询信息:查询教师自己信息 查询选课信息 ●管理员模块: 1)学生信息管理:用于管理学生信息,实现对学生信息的增加,删除,修改等功能。 2)课程信息管理:用于管理课程信息,实现对课程信息的增加,删除,修改等功能。 3)选课系统:用于学生选课,提供学号和课程号,进行选课功能。 4)教师信息管理:用于管理教师信息,实现对教师信息的查询,以及对学生信息的增加,删除,修改等功能。用户管理:用于对用户进行增加,删除,修改操作; 4.数据流图 (1)底层数据流图

选课系统的设计与实现

防灾科技学院 实习报告书 防灾科技学院灾害信息工程系 2015年制

实习所用软件简介: 系统的搭建平台选用的操作系统是Windows XP:Microsoft Windows XP是微软公司推出供个人电脑使用的操作系统,包括商用及家用的台式电脑等。2011年9月底前,Windows XP是世界上使用人数最多的操作系统,它的全球市场占有率达42%。2012年8月份,统治操作系统市场长达11年之久的Windows XP最终被Windows 7超越。 基于数据库的选课系统的数据管理所选得软件是SQL Server2008:SQL Server 2008 在Microsoft的数据平台上发布,可以组织管理任何数据。可以将结构化、半结构化和非结构化文档的数据直接存储到数据库中。可以对数据进行查询、搜索、同步、报告和分析之类的操作。SQL Server 2008 允许使用Microsoft .NET 和Visual Studio开发的自定义应用程序中使用数据,在面向服务的架构(SOA)和通过 Microsoft BizTalk Server 进行的业务流程中使用数据。信息工作人员可以通过日常使用的工具直接访问数据。 基于https://www.sodocs.net/doc/a012646716.html,的选课系统开发所选的开发工具 Visual Studio 2010:Microsoft Visual Studio 2010 是微软的一个综合性的应用程序生命周期管理工具套件,可供团队用于确保从设计到部署的整个过程都能取得较高质量的结果。无论是创建新的解决方案,还是改进现有的应用程序,都能针对不断增加的平台和技术(包括云和并行计算)将梦想变成现实。 基于系统的建模选择的画图软件viso:Office Visio 2007 是一款便于IT 和商务专业人员就复杂信息、系统和流程进行可视化处理、分析和交流的软件。使用具有专业外观的 Office Visio 2007 图表,可以促进对系统和流程的了解,深入了解复杂信息并利用这些知识做出更好的业务决策。Visio帮助创建具有专业外观的图表,以便理解、记录和分析信息、数据、系统和过程。使用 Visio 时,以可视方式传递重要信息就像打开模板、将形状拖放到绘图中以及对即将完成的工作应用主题一样轻松。

学生选课系统设计报告

大理学院数学与计算机学院《数据库系统设计》课程设计报告 班级:2012级计算机科学与技术1班 学号:201211514 姓名:刘秀珍 系统名称:学生选课系统 总分:

实验报告内容及撰写要求: 一、需求分析 程序的主要功能描述,可以用文字、框图、用例等方式。 参考《数据库系统设计任务书》附录中的内容来进行设计报告的撰写。 主要应当包含分析的过程及分析后得到的数据流图和数据字典。 二、数据库设计 2.1 数据库概念设计 实体关系模型设计,创建分ER图和总体ER图,并描述总体E-R图合并时的问题解决。 2.2数据库的逻辑设计 根据概念设计结果,创建数据库的逻辑模型,建立在具体DBMS下(SQL SERVER 2005)的表结构,并根据规范化理论对表结构进行优化调整。 同时,根据应用需求,创建数据库系统所需的外模式(视图)、模式和内模式(索引)等,此外,应当根据需求,建立数据完整性约束(实体完整性,参照完整性和用户自定义完整性)。 三、系统实现 3.1 数据库访问 1)数据访问类及实现代码 2)SQL语句 3.2 业务逻辑层类及代码 描述业务流程、数据处理功能的模块代码 3.3表示层的实现 可以用界面截图及其实现类及核心代码描述

四、总结

一、需求分析 1.1背景 全校性选修课开设的目的在于扩大学生的知识面、加强学生素质教育、培养复合型高级人才,具有不可替代的重要性。随着教育改革的不断深入和素质教育的加强,学分制的实施,选修课在一个学生的培养计划中占的比重将越来越大。 网上选课系统的出现使同学们能够更加自主、便捷、准确的进行选课。但是,由于一般高校中的学生都比较多,因此带来了诸多如信息管理等问题,鉴于需要将学生信息、选课信息等信息数字化以便于管理维护,我们便想到了利用数据库能够比较良好地解决此类问题,由此下面我将设计出一个学生选课系统以供参考。 1.2系统设计要求: 设计出一个学生选课数据库系统的简要要求如下: 1)设计要求 ①建立相应的数据库及相关的表、属性、约束、规则、默认等; ②输入相应的记录(每个表不少于20条记录); ③编写进行数据管理的存储过程。 2)系统用户由系统管理员、学生用户和教师用户三类组成。 (1)系统管理员的主要功能: ①用户管理(对教师、学生信息的管理和维护); ②课程管理(对课程信息的管理和维护); ③选课管理(实现选课功能开放和禁止、老师成绩输入开放和禁止)。

学生选课系统课程设计

数据库课程设计报告 课题名称:学生选课系统 专业:计算机科学与技术 班级:计算机 姓名: 学号: 指导老师:

设计任务书 指导教师(签章): 年月日

摘要: 随着社会的进步,尤其是计算机技术与网络的发展,人们对于数据传输,远程控制的实时性要求越来越高,这就使得计算机技术的发展越来越面向网络。现代学校管理无疑成为网络应用的典型代表,学生在校期间需要进行大量课程的学习,除学校安排的基本课程之外,还要进行部分选修课的学习。为了达到选课的方便、快捷,高等学校都提供网上选课平台供学生使用。本次课程设计选做学生选课系统就是建立在面向网络的基础之上,选用Visual Studio 2008 开发工具和SQL Server2005 数据库。所开发出的系统能够方面学生选课、教师查询和管理员管理。具有较强的实时性,在面向网络的基础上可以方便在外用户进行各种操作。 关键词:面向网络;数据库;方便

目录 1 需求分析 (1) 1.1 系统目标 (1) 1.2 系统功能需求 (1) 2 数据库概念设计 (1) 2.1 系统概念模型 (1) 3 将概念模型转换为关系模型 (2) 3.1 将E-R模型转换为关系模型 (2) 3.2 数据库结构设计 (3) 3.3 实现数据完整性 (4) 4 应用程序设计 (4) 4.1 学生选课系统处理流程图 (4) 4.2 总体结构和外部结构设计 (4) 5 编程实现 (5) 5.1 Login.aspx (5) 5.2 Student.aspx (5) 5.3 Teacher.aspx (6) 5.4 guanliyuan.aspx (6) 5.5 Acourse.aspx (7) 5.6 Ateacher.aspx (7) 5.7 Astudent.aspx (7) 5.8 Password.aspx (7) 总结 (9) 致谢 (10) 参考文献 (11)

学生选课系统(详细设计说明书)

1引言 (2) 1.1编写目的 (2) 1.2背景 (2) 1.3定义 (2) 1.4参考资料 (2) 2程序系统的结构 (2) 3程序1 (标识符)设计说明 (3) 3.1程序描述 (12) 3.2功能 (12) 3.3性能 (12) 3.4输人项 (113) 3.5输出项 (113) 3.6 算法 (113) 3.7流程逻辑 (113) 3.8 接口 (113) 3.9存储分配 (13) 3.10注释设计 (13) 3.11限制条件 (13) 3.12测试计划 (13) 3.13尚未解决的问题 (114) 4程序2 (标识符)设计说明 (114)

详细设计说明书 1引言 1.1编写目的 为了更好的描述软件结构以及系统各组成成分之间的相互关系,因此撰写详细设计说明书。 1.2背景 a?待开发的软件系统的名称:大连交通大学学生选课系统; b ?本系统主要为方便广大学选课,避免选课高峰期选不上等问题; c.本系统的受益人为:老师、学生和系统管理人员。 1.3定义 详见概要设计说明书。 1.4参考资料 【1】张海藩,软件工程导论【M】北京:清华大学出版社2008年2月第五版 【2】王珊、萨师煊,数据库系统概论【M】北京:高等教育出版社2006年5 月第四版2程序系统的结构 该详细设计只针对学生信息管理中的信息查询和信息维护两个子功能作说明, 其程序流程图如下:

图4-2学生信息管理模块程序流程图 结束 图4-1学生信息查询模块程序流程图 Y

3程序1 (标识符)设计说明 #in clude #in clude int N1,N2,kk1,kk2,kk3; struct couse * headl; struct stude nt * head2; struct couse//课程信息结构体 { int nu ml; char name1[20]; int score; int n elepeo;//课程已选人数 int Melepeo;//课程人数上限 struct couse * n ext; }; struct stude nt//学生信息结构体 { int nu m2; char name2[20]; int nelenum[50];〃已选课程编号 int nelen;〃已选课程数量 struct stude nt * n ext; }; void Ms() { for(kk1=0;kk1<1100;kk1++) for(kk2=0;kk2<1200;kk2++) for(kk3=0;kk3<1200;kk3++); } void keyboardc()〃录入课程子函数(从键盘录入) { struct couse *p1,*p2; 2= 0; p1=p2=(struct couse*)malloc(sizeof(struct couse)); printf("课程编号\t课程名称\t学分\t课程人数上限\n"); scan f("%d%s%d%d",&p1-> num1,p1-> name1, &p1->score,&p1->Melepeo); p1- >n elepeo=0; head 仁NULL; while(p1-> nu m1!=0) { 2= N1+1; if(N1==1)head 1= p1;

学生的的选课管理系统体系结构设计报告模板总结模板计划模板.doc

精品文档 目录 0. 文档介绍 (2) 0.1 文档目的 (2) 0.2 文档范围 (2) 0.3 读者对象 (2) 0.4 参考文献 (2) 0.5 术语与缩写解释 (2) 1. 系统概述 (3) 1.1 概述 (3) 1.2 功能描述 (3) 2. 设计约束 (5) 2.1 需求规定 (5) 2.2 运行环境 (5) 2.3 接口约束 (6) 2.4 质量约束 (7) 2.5 隐含约束 (7) 3. 设计策略 (8) 3.1 关键技术 (8) 3.2 扩展策略 (8) 3.3 复用策略 (8) 4. 系统总体结构 (10) 4.1 逻辑设计 (12) 4.2 用户接口逻辑设计 (12) 4.3 物理设计 (12) 5. 子系统的结构与功能 (13) 6. 开发环境的配置 (18) 7. 运行环境的配置 (19) 8. 测试环境的配置 (20) 9. 其他 (20)

0.文档介绍 0.1 文档目的 该文档描述了学生选课管理系统的主要功能,阐述了系统的总体构架,包括物理、逻辑结构,并说明了体系结构所采取的设计策略和所有技术。 0.2 文档范围 学生选课管理系统 0.3 读者对象 项目组长,项目负责小组,各功能模块负责人及程序员。 0.4 参考文献 资料名称资料来源 《学生选课管理系统项目计划书》学生选课管理系统《学生选课管理系统需求规格说明书》学生选课管理系统《计算机软件文档编写指南》图书馆 《 CMMI+3级软件过程改进方法与规范》图书馆 0.5 术语与缩写解释 缩写、术语解释 SPP简并行过程(Simplified Parallel Process) PM项目管理(project management) 实体实体是一个可持久化的域对象,比如电脑、书等。 数据字典对数据流程图中对象的详细描述

网上选课系统课程设计文档

《网上选课系统》课程设计 20111 / 2012 学年第 1 学期 姓名:____黄勇、王超、陈云_____ 专业:____计算机科学与技术_____ 班级:_______0905092___________ 指导教师:周蓓、周荣、许秀兰、王剑 计算机科学与工程学院 2011

一、系统简介 (3) 1.1系统基本功能简介 (3) 1.2系统需求分析 (3) 1.2.1业务流程分析 (4) 1.2.2数据流分析 (8) 1.2.3数据字典 (11) 二、系统设计 (13) 2.1数据库设计 (13) 2.1.1概念结构设计 (13) 2.1.2逻辑结构设计 (16) 2.2系统模块设计 (22) 三、系统实现 (25) 3.1实现概况 (25) 3.2 登录模块 (26) 3.2.1程序流程图 (26) 3.2.2关键代码 (26) 3.3 排课模块 (29) 3.4选课模块 (32) 3.4.1程序流程图 (32) 3.4.2选课的存储过程 (33) 3.5其他模块简介 (34) 3.6系统界面设计 (35) 3.6.2选课主界面 (35) 结论 (38)

一、系统简介 1.1系统基本功能简介 网上选课系统是根据大学的选课的网上申请与管理而进行开发设计的是实现选课的网上申请与安排,管理。 此系统功能主要根据角色的不同而设置了不同的权限,例如管理员具管理此系统的全部权限(设置选课时间的开放时间),增删改学生,老师,管理员,发布选课信息,排课等。 学生随时都可以进入系统查看选课信息,等选课开放时间开放后能进行自主选课,取消所选课程。 教师没有时间限制,随时可以登录观看自己的上课时间,地点。 1.2系统需求分析 通过对系统需求进行分析,系统中设有三类用户:管理员,教师,学生期末管理员开放成绩输入的时候输入学生成绩。各用户的具体描述如下:(1)管理员 描述:管理员维护整个系统,包括发布选课信息,设置选课时段,选课前学生只能登录查看选课通知,不能选课;选课结束,学生不能再进行选课更改,只能查看选课信息。管理让学生所选的课程。增删改学生、老师,管理员信息。选课结束后,管理员手动进行排课,排课时数据库中有各种验证来验证排课信息的冲突,排完课后,发布排课信息,让老师,学生进行查看,设置成绩输入的开放时间。 (2)教师 描述:只能查看选课通知,排课安排,根据上课时间,地点准备教学资料,期末管理员开放成绩输入的时候输入学生成绩。 (3)学生: 描述:选课前查看选课通知,不能进行选课;等待到选课时间段后,

c++学生选课系统设计报告

C++程序设计课程设计报告 课题名称: 学生选修课程系统设计 组号:第八组 指导教师:张帆

目录 引言………………………………………………………………..一设计目的及内容……………………………………………………二课题总体设计……………………………………………………… 1.性能需求…………………………………………………………… 2.功能需求……………………………………………………………. 3.功能模块图…………………………………………………………三详细设计……………………………………………………………. 1.各模块说明. ………………………………………………………. 2.各模块功能流程图………………………………………………四测试与调试…………………………………………………………五心得体会…………………………………………………..六附:源代码……………………………………………….

引言 21世纪以高科技为核心的知识经济占主导地位,国家的综合国力和以国际竞争力将越来越取决于科学技术创新水平。教育作为知识创新,传播和应用的基础,培养和输送人才的摇篮,已经成为经济发展和社会进步的基础。 尽管人类进步的程度随着不同时代,不同地区而有所变化,教育的口径不断扩宽,以便使过去仅供少数人使用的教育资源能够为更多各种年龄,不同社会阶层和背景的人们所用。在信息爆炸的时代,传统教学管理面临诸多挑战。 课程设计是课程教学必不可缺的一个重要环节,可加深学生对该课程所学内容的进一步的了解与巩固,是将计算机课程与实际问题相连接的关键步骤。此次程序设计综合运用所学知识解决实际问题,将课堂的书本知识有效的在程序中体现出来,让学生更理解了C++功能之强大,进一步让学生对面向对象的方法以及C++的编程思想有了较好了解和认识。 一设计目的及内容: 网上选课系统是针对在校学生和教师使用,从学生的角度来说,由于学校教学制度的改革,现在大部分高等院校开始实行的是学生的自主选课模式,传统的教学模式(学生按照学校安排好的课程上课)已经不能适应新型的教学手段,如果仍然通过纸上的选课,一方面浪费大量的人力,物力资源,另一方面浪费时间以及在人为的统计过程中不可避免出现的差错等情况。随着学校规模的不断扩大,专业,班级,学生的数量急剧增加,有关学生选课的各种信息也成倍增加,而目前许多高校的学生的选课管理仍然停留在复杂的人工操作上,重复工作较多,工作量大,效率低,各种弊端会越来越多的暴露出来,因此利用网络,使学

学生选课系统课程设计报告

学生选课系统课程设计报告

《数据库原理》课程设计报告 题目:实验2学生选课系统 姓名:李子甘 班级:计科0601 学号:200640274 08年1月

一.需求分析 传统的选课方式都是手写的,教务处通知各 个班级选课,各个班长再通知同学,经过统 计在上交,这样繁琐的过程比较浪费时间。 再者选课时不知道所选课人数已满,要等到 教务处统计后才知道,然后再重新选择。网 上选课为同学节省时间的同时,也减少了不 必要的步骤,也更加方便管理员的管理。 网上选课系统为同学们提供了一个自由的 平台,学生们可以选择规定范围内的课程,查看已修课程总数,还可以修改个人信息。 同时也给老师提供了很大的方便,教师可以 根据统计的人数挑选一定数量的学生,也可 以方便的在网上公布成绩,让学生可以在网 上直接查寻成绩。 我国不少高校都实行学分制,它的核心是允 许学生自由选课,即把学生的自主权交给学 生。在这里,学生的选课制约因素比较复杂,工作量也很大,而且往往需要在较短的时间 内完成。运用计算机辅助选课,即能实时地 对大量选课数据进行检验和统计,十分方便 的输出选课结果,同时也避免了人工选课时

容易产生错误。 二.概念机构设计 根据系统功能设计的要求以及功能模块 的划分,各个系统的逻辑实现如下: 1.对于学生选课系统数据库,可以列出以下数 据项和数据结构: 学生信息:学号、学生姓名、学生的系名、学生性别、学生年龄、学生密码。2.对于教师信息维护数据库,可以列出以下数 据项和数据结构: 教师个人信息:教师编号、教师名称、教师密码。 3.对于后台管理数据库,可以列出以下数据项 和数据结构: 管理员信息:管理员名称、管理员密码。 课程信息:课程号、课程名称、课程类别、开课系。 选课信息:课程号、学生学号、成 绩。 4.数据流:学生管理员和教师分别有自己的权 限,学生可以查看全部选修必修课程,查看

选课系统-课设报告

******************* 实践教学 ******************* 兰州理工大学 计算机与通信学院 2011年春季学期 C程序设计课程设计 题目:学生选课系统 专业班级:软件一班 姓名:黄锋 学号:10240506 指导教师:王连相 成绩:

摘要 学生选课系统是C语言应运的一个简单实例,它能实现选课信息的输入、删除、查找、保存等功能。该系统由七个模块组成,各模块的完成分别由指针、数组、链表等实现,最后通过主函数将各个模块加以联结组成此简单的学生选课管理系统。该系统有查找方便、可靠性高、存储量大、保密性好等优点,是一个教育单位不可缺少的部分。 关键词:C语言;学生;信息;选课

目录 一、需求分析 (1) 二、总体设计 (2) 三、详细设计 (3) 1、数据定义 (3) 2、算法流程图 (4) 四、编码 (7) 五、测试 (9) 六、设计总结 (9) 致谢 (14) 参考文献 (15)

一、需求分析 经过简单的调研分析,可以基本确定学生选课系统主要用来实现对选课信息的输入、删除、保存、查找等功能。 1·录入课程信息 教务系统对课程进行安排。 2·课程管理 用户可以查看新增课程和已删除课程。 3·录入学生信息 学生可以输入自己的基本信息。 4·学生信息管理 系统可以对学生输入的信息进行管理,同时用户也可以进行自我信息更改。5·学生选课 学生可以查询已选课程和可选课程,然后进行选课。 6·系统信息查看及及存储 用户可以查看课程信息和学生信息以及及存储自己信息。 7·退出系统 用户完成在学生成绩管理系统的一系列操作后要离开,则就需退出系统。

网上选课系统详细设计

网上选课系统 详细设计说明书 学院:计算机科学技术学院 专业:软件工程 班级:08-2班 组长:张一帆 组员:田晓磊张雪杨景隆潘萌

1 引言 1.1编写目的 随著WWW(World Wide Web) 及Internet 的快速发展及日渐普及,学校校务行政的电脑化也迈入以网络为基础的新纪元.选课系统是大学教务系统中非常重要一环,由于牵涉到每一学生该学期的学习,加上新的课程设计中,大量的选修与更具弹性的措施,使得传统的人工作业不合时宜,半自动的语音选课亦不能满足这些新需求;网际网路的兴起,使我们有机会重新检讨选课的作业流程,以及如何运用网路其不受时空限制的特性进行选课作业流程的改善.为了提高学校教务工作的效率,更加合理的利用既有的资源,减少传统选课方式给学生带来的不便和麻烦,网上选课系统的采用被提上日程。此外,学生公寓宽带的安装使得学生能够在寝室非常方便的获取网络资源。这又为网上选课系统被广大同学接受提供了必要的资源。在以往学生常常抱怨不易找到所要资讯,以及选课期间同学因怕额满选不到理想的课,都挤在第一天选课造成塞车严重,而且若第一天有课的同学便常因抢不到理想的课而忿忿不平.此外在选课时同学们必须先查好所欲选之课程代码再来选课,为此教务处每学期要印出各系所开课表供学生查询选课资讯,即使每两人共用一册数量仍相当庞大且选课后课表便没用处,而且一旦调课或开课上的变更,无法及时异动,一方面造成纸张资源的浪费,另一方面学生即使先查好课表再去选课,也无法确定自己的课表,既不方便又费时.在预选课后教务处人员要印一次点名计分册给老师,到了加退选后因选课有异动又得再印一次最新的选课名册给任课老师,造成教务处人员的重复工作负担,对老师而言,必须仰赖教务处工作人员的处理及列印,自己无法随时掌握选课学生名单,也甚不方便.每学期到了学期末同学们最关心的成绩,必须等收到成绩单才能知道自己的成绩,若要历年成绩单也要等开学后到教务处填申请单,再去出纳组缴费过一天后才能来领取.因此,如何建立一个方便且即时的成绩管理系统,以伴随选课系统也是十分迫切的.为了建立一个方便,公平,又有效率的选课系统,我们决定规划一个植基于网际网路的网路选课系统,并实现下列几个主要的目的: (1).提升选课公平性; (2).缩短选课时间,提高效率; (3).节省课表列印经费并节省人力; (4).学生可即时上网查询单学期或历年成绩 1.2项目背景

学生选课系统设计报告

学生选课系统设计 报告

******************* 实践教学 ******************* 兰州理工大学 计算机与通信学院 春季学期 C程序设计课程设计 题目:学生选课系统 专业班级:应用物理 姓名:杨维峰 学号: 指导教师:李聪 成绩:

学生选课系统 摘要 学生选课系统是教育单位不可缺少的重要系统组成部分,她对于学校的决策者、管理者管理、查看课程来说都有至关重要,因此学生选课系统应该能够为广大学、师生提供充分的信息和快捷的课程选择过程,有助于学生选好每一门课程,此系统选课方便、快捷,用简单的界面来展示学生的选课信息,能够提高对学生信息管理的效率。 关键词:方便,快捷,选课信息,选择,管理

目录 1题目要求 (4) 2需求分析 (4) 2.1功能简介 (4) 3总体设计 (4) 4详细设计 (5) 4.1 系统主要函数说明 (5) 4.1.1 主函数 (6) 4.1.2 input函数 (7) 4.1.3del函数 (8) 4.1.4find函数 (9) 4.1.5display函数 (9) 5 系统测试 (10) 6总结 (13) 参考文献 (14) 致谢 (15) 附录: (16) 源程序 (16)

文档仅供参考,不当之处,请联系改正。 1题目要求 设计一个关于学生选课方便简捷的程序,从而达到学生能够快速的选到课程。 2需求分析 数据结构可用结构体,包括课程和选修两个结构体,其中课程结构体成员包括课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期。选修结构体成员包括学号,课程编号,该结构体的建立主要是为了查询某门课程学生选修情况。 2.1功能简介 此系统是一个学生选课管理系统。它包含功能有:学生选课信息的录入,学生选课信息的删除,学生选课信息的查找,学生选课信息的显示等功能。 菜单模式:此模块主要实现对本系统所有功能的显示。 录入模块:此模块主要实现对学生选课信息的录入,主要包括学生学号、学生姓名、所选课程、课程学分、授课老师。 删除模式:此模块主要实现对学生选课信息的删除。显示模块:此模块主要实现对学生选课信息的显示。 查找模块:此模块主要是经过学生学号查找该学生的选课信息。清屏模块:此模块主要是对主界面输入的信息进行清屏。退出程序:此模块主要用于退出系统。

学生选课系统概要设计说明书

学生选课系统概要设计说明书 目录 1引言 (2) 1. 1编写目的 (2) 1.2背景 (2) 1.3定义 (3) 1.4参考资料 (3) 2总体设计 (3) 2.1需求规定 (3) 2.2运行环境 (4) 2.3基本设计概念和处理流程 (5) 2.4结构 (9) 2.5功能需求与程序的关系 (9) 2.6人工处理过程 (10) 2.7尚未解决的问题 (10) 3接口设计 (10) 3.1用户接口 (10) 3.2外部接口 (10) 3.3内部接口 (11) 4运行设计 (11) 4.1运行模块组合 (11) 4.2运行控制 (11) 4.3运行时间 (13) 5系统论据结构设计 (13) 5.1逻辑结构设计要点 (13) 5.2物理结构设计要点 (13) 6系统出错处理设计 (13) 6.1出错信息 (13) 6.2补救措施 (15)

1引言 概要设计说明书又可称系统设计说明书,这里所说的系统是指程序系统。编制的目的是说明对程序系统的设计考虑,包括程序系统的基本处。流程、程序系统的组织结构、模块划分、功能分配、接口设计。运行设计、数据结构设计和出错处理设计等,为程序的详细设计提供基础。编制概要设计说明书的内容。 1.1编写目的 为了保证项目团队按时保质地完成项目目标,便于项目团队成员更好地了解项目情况,使项目工作展开的各个过程合理有序,因此以文件化的形式,把开发过程中的各项工作记录下来,作为项目团队成员以及项目干系人之间的共识与约定,项目团队开展和检查项目工作的依据,以便计划开展和确保项目开发成功。 本文档的预期读者是: 设计人员 开发人员 测试人员 用户 1.2背景 开发软件名称:学生选课系统 项目任务提出者:姚敦红

学生选课系统开题报告书

学生选课系统开题报告书 目学生选课及信息管理系统的设计与实现学院物联网工程学院专业计算机科学与技术姓名学号指导教师副教授年月课题来源本课题是自拟课题.科学依据 一、本课题的目的及实际意义随着科学技术的不断提高,计算机科学日渐成熟,其强大的计算机功能已经让人们深刻认识到,计算机已经进入人类社会的各个领域并发挥着越来越重要的作用.作为计算机应用的一部份,使用计算机对选课信息进行管理,具有手工管理所无法比拟的优点.例如:查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等.这些优点能够极大地提高人事劳资管理的效率,也是学校的科学化、正规化管理与世界接轨的重要条件.因此,很有必要开发一套这样的软件.网上选课在我国起步比较晚,但发展很快.随着互联网的普及和网上选课系统的更趋向于成熟化,会有越来越多的学校和培训机构需要网上选课系统.学生选课系统是一个学校学生管理中不可缺少的一部分,对于学校的决策者和管理者来说都至关重要,所以系统应该为用户提供充分的信息管理和方便的查询手段.但一直以来,人们使用人工的方式管理文件档案,这种管理方式存在着许多缺点:效率低,保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难.使用计算机对选课信息进行管理,具有手工管理所无法比拟

的优点.这些优点能够极大地提高人事劳资管理的效率,也是学校的科学化、正规化管理与世界接轨的重要条件.通过本系统的开发及研究,可以进一步巩固在校所学各种理论知识,为今后的就业和工作打下一个良好的基础. 二、本课题的国内外的研究现状我国高校都实行了学分制,它的核心是允许学生自由选课,即把学习的自主权交给学生.在这里,学生选课时的制约因素比较复杂,工作量也很大,而且往往需要在较短的时间内完成.运用计算机辅助选课,即能实时地对大量选课数据进行检验和统计,分方便地输出选课结果,同时也避免了人工处理时容易产生的错误.在高等学校的教务管理工作中,课程表的编排是一项分复杂、棘手的工作.在排课过程中,除了满足大量的制约条件以外,还必须解决许多冲突与矛盾,例如:两位教师不能同一时间在同一班级上课、一位教师不能在同一时间上两门课等等.利用计算机辅助进行课表编排工作,既提高了排课工作的科学性,又可大大减轻管理人员的工作强度,提高工作效率,从而使学校教务管理现代化迈上了一个新台阶.研究内容通过研究和探讨,初步确定主要研究内容如下:本系统包括以下功能模块:1、管理员模块,包括学生、课程、教师、选课信息的管理.2、教师模块,包括课程、个人信息、课程信息、成绩统计等功能.3、学生模块,包括选课、查看成绩等功能.拟采取的研究方法、技术路线、实验方案及可行性分析本课题所开发的系统使用JAVA来设计开发完成,SQLServer作

学生选课系统课程设计报告

学生选课管理系统 摘要 随着社会的发展,学生的人数和课程的种类急速增加,传统的选课管理模式已经无法满足当前的实际需求,为此,我们开发了学生选课管理系统。 本人结合学生选课管理的实际需要,完成了对学生选课管理系统的需求分析、功能模块划分、数据库模式分析等,并由此设计了后台数据库以及前台应用程序。 文中首先对课题背景,数据库基础理论和SQL语言进行了简单的讨论;接着,对系统前台开发工具PowerBuilder9.0,学生选课管理系统进行了详细分析,划分了具体的功能模块;最后,给出了学生选课系统应用程序的设计过程,以及每个功能模块的核心代码。 系统可以实现学生选课的一些重要功能,如:课程的添加、删除,信息查询、选课、生成课表,以及学生选课管理人员、用户个人信息的维护等。 关键词管理系统;数据库;PowerBuilder9.0;SQL Server 2000

Select Course Management System of Students ABSTRECT With the development of society, not only the stud ent’s number but also the kinds of course increased rapidly, the traditional management mode has been unable to adapt to actual need, so we develop the select course management system of students. According to the actual need of select course, I analyzed t he demand, divided function nodule, analyzed database mode of the system. Then, I designed database of backstage and application program of stage. Firstly, I simply discussed the background of this subject and the basic theory of the database and SQL langu age in the article. Then I analyzed the development tool—PowerBuilder9.0,analyzed in detail to system and divided the concrete function module. Finally, I provided the design process of the system and the key code of each function nodule. The system accomplished some important functions of management system of books, such as: course’s input, output, information inquiry, select courses, create table of course, modify information of the administrators and students, etc. KEY WORDS Management System,Database, PowerBuilder9.0, SQL