当前位置:文档之家› 学生选课管理信息系统设计与实现

学生选课管理信息系统设计与实现

软件工程课程设计报告江苏师范大学计算机科学与技术学院学生选课管理信息系统的设计与实现一、课程设计任务完成学生选课管理信息系统的开发二、需求描述选课管理系统的主要目的是利用软件实现选课的录入、查询、修改等功能,针对不同表的用户(学生、教师、管理员)提供不同的操作,使学生选课及对其的管理更加方便,提高工作效率,降低管理成本。

选课的管理一般包括选课查询和选课维护两部分,在实际的选课过程中,学生主要对课程进行选择,了解自己的选课情况,而教师除了能够对选择教师自己教授的课程的学生进行查询之外,还要对课程成绩进行录入,修改等操作。

对于整个系统而言,为了便于对各种数据进行维护,还要增设管理员,方便对学生和教师信息以及课程等基本信息的维护,从而达到灵活的管理选课的效果。

本系统是一个单机版的小型的学生选课管理系统,在本系统中,开发了一个面向管理员、学生和教师这三个对象的教务平台,对学生提供的服务有选课服务;对教师提供的服务有登录成绩;对管理员提供的服务有学生信息管理、学生选课管理模块、课程信息管理模块和用户管理模块。

三、系统总体设计四、1.系统架构设计学生选课管理信息系统的总目标是为用户提供迅速、高效的服务,避免手工处理的繁琐与误差,及时、准确地反学生选课情况、成绩情况,从而提高选课信息的效率,实现选课管理的规范化、自动化。

在选课信息中,包括课程编号、课程名称、任课教师、选课的学生情况等。

在学生信息中,包括学号、姓名、所属院系、已选课情况等。

在成绩信息中,包括课程编号、课程名称、学分、成绩。

按一定条件可以查询,并将结果打印输出。

具体的目标包括:(1)简便迅捷的用户登录服务(2)教师、学生、管理员的信息和选课相关信息(3)系统运行稳定可靠、各项维护功能齐全、易于维护(4)简单、友好的操作界面本实验实现的客房管理系统主要包括以下功能:(1).完成数据的录入和修改,并提交数据库保存。

其中的数据包括:学生信息、课程设置、学生成绩以及操作员信息等;(2).实现信息查询。

主要包括:学生信息查询、课程信息查询和成绩查询等;(3).具备一定的安全性管理功能。

包括操作员的权限设置、密码设置、重新登录和修改口令等功能。

处理流程和数据流程数据流图--学生数据流图---管理员2.各模块功能:登录界面:登录界面是有帐号,密码两个JTextField ,登录前要选择用户类别,登录帐号或密码输入错误会弹出相应的提示对话框。

学生信息管理模块:管理员用于添加和删除学生信息的模块。

用户管理模块:管理员用于添加和删除信息的模块。

学生选课管理模块:管理员用于学生选课信息的管理。

用户管理模块:管理员用于对登录用户的管理。

课程信息管理模块:管理员用于对课程信息的管理。

学生选课模块:该模块通过表格的形式将所有课程列出来,学生可以根据个人兴趣选择不同的课程,且不能重复选课,否则会弹出对话框,提示用户查看已经选择了的课程。

成绩录入模块:教师可以浏览选修自己课程的学生的信息并且录入该学生的成绩。

3.数据库设计 (概要设计...)学生选课管理信息系统学 生 信 息 管 理 模 块 学 生 选 课 管 理 模 块用 户 管 理 模 块课 程 信 息 管 理学 生 选 课 模 块成 绩 录 入 模 块(1)E-R 图(2)关系模式学生(学生学号,学生姓名,学生性别,学生年龄,所在班级),课程(课程号,课程名,学分,授课教师)。

选课主要包括2个实体,分别是学生、课程、及一个关系,即选修。

一门课程可由多个学生选择,一个学生也可以选择多门课程,课程实体与学生实体是多对多关系。

(3)数据库管理系统:Microsoft SQL Server 2000 (4)数据库命名:stu_cou表1 学生信息表Student 的表结构 主码 列 名 数据类型 宽度 小数位 空否备 注 Pk Snum Char 5 N 学号 Sname Char 8 Y 姓名SexChar2Y性别授课教师 学 分 课程 学生 选课 学生学号 课程名 课程号 学生姓名 所在班级 学生性别 学生年龄 m n 成绩Sage int Y 年龄Sclass Char 10 Y 所在班级表2 课程信息表Course的表结构主码列名数据类型宽度小数位空否备注Pk Cnum Char 16 N 课程号Cname Char 20 Y 课程名称Cxf Char 10 Y 学分Ctch Char 10 Y 修课教师表3 选课表Choose的表结构主码列名数据类型宽度小数位空否备注PkSnum Char 16 N 学号Cnum Char 16 N 课程号Grade Decimal 10 1 Y 成绩表4 管理员表User的表结构主码列名数据类型宽度小数位空否备注Pk Username Char 16 N 管理员姓名Usercode Char 16 Y 登陆密码Usertype Char 10 Y 类型四.系统界面设计1.系统登陆用户输入用户名和密码,系统查询数据库中的信息对用户名和密码进行验证。

如果用户名或密码不正确则不能进入系统。

如果用户名存在且密码正确,系统会自动根据该用户所在的表进入不同的界面且显示该用户相对应的基本信息。

2. 学生界面a. 基本信息学生登陆成功,可看到自己的基本信息包括学号、姓名、性别、年龄、系别。

b. 选课可查看学生本人的选课情况,包括课程名、授课老师、课室、分数。

并可进一步进行选择和删除。

3. 教师界面a. 查看学生信息可查看选择自己教授的课程的学生名单,并可进一步对选择该门课程的学生成绩进行录入和修改。

4.管理员界面学生信息管理模块:管理员用于添加和删除学生信息的模块。

用户管理模块:管理员用于添加和删除信息的模块。

学生选课管理模块:管理员用于学生选课信息的管理。

用户管理模块:管理员用于对登录用户的管理。

系统登陆界面protected void btnin_Click(object sender, EventArgs e) {string strCon = "DataSource=localhost;Database=stu_cou;IntegratedSecurity=true";SqlConnection conn = new SqlConnection(strCon);conn.Open();//打开数据库连接SqlCommand cmd = new SqlCommand();//创建SqlCommand对象cmd.Connection = conn;//关联connmandText = "select * from user where username='" + tbuserid.Text + "' and usercode='" + tbusercode.Text + "'";//设置CommanText为SQL语句 SqlDataReader dr = cmd.ExecuteReader();//创建SqlDataReader对象if (dr.Read() == true)//读入数据{Response.Redirect("choose.aspx?ch="+DropDownList1.SelectedItem.Text +"& user="+tbuserid.Text);}else{Label4.Visible = true;//"用户名或密码输入不正确"}conn.Close();}管理员界面管理员以用户类别为管理员,用户名为3001,密码123登录成功进入管理员的信息管理界面,通过点击“学生信息管理”和“教师信息管理”进入不同的管理界面,学生信息管理界面如下:,课程信息管理界面如下:学生选课管理界面如下:用户管理界面如下:protected void Page_Load(object sender, EventArgs e) {string choose = Request.Params["ch"];string username = Request.Params["user"];if (choose =="管理员")Panel2.Visible = true;if (choose == "学生"){Panel3.Visible = true;lblsid.Text = username;}if (choose == "教师"){Panel4.Visible = true;lbltid.Text = username;}}学生界面以学生帐号(如:帐号:1001)登陆成功后进入如下界面:protected void Button1_Click(object sender, EventArgs e) {string strCon = "DataSource=localhost;Database=stu_cou;IntegratedSecurity=true";SqlConnection conn = new SqlConnection(strCon);conn.Open();SqlCommand cmd1 = new SqlCommand();SqlCommand cmd2 = new SqlCommand();cmd1.Connection = conn;cmd2.Connection = conn;mandText = "select cnum from cou where cname='" + DropDownList1.SelectedItem.Text + "'";SqlDataReader dr = cmd1.ExecuteReader();string num = "";while (dr.Read())//读入数据{num = dr["cnum"].ToString();}mandText = "insert into choose(snum,cnum)values('" + lblsid.Text + "','" + num + "')";if (cmd2.ExecuteNonQuery() > 0)//Command对象的ExecteNonQuery方法执行不返回结果的SQL语句,执行SQL语句并返回受影响的记录行数{Label4.Text ="选课成功!";Label4.Visible=true;}else{Label4.Text ="选课失败!";Label4.Visible=true;}conn.Close();}教师界面以教师帐号(如:教师号2001,)登陆成功后进入如下界面:protected void Button2_Click(object sender, EventArgs e) {string strCon = "DataSource=localhost;Database=stu_cou;IntegratedSecurity=true";SqlConnection conn = new SqlConnection(strCon); conn.Open();SqlCommand cmd1 = new SqlCommand();SqlCommand cmd2 = new SqlCommand();cmd1.Connection = conn;cmd2.Connection = conn;mandText = "select cnum from cou where cname='" + DropDownList2.SelectedItem.Text + "'";SqlDataReader dr = cmd1.ExecuteReader();string num = "";while (dr.Read())//读入数据{num = dr["cnum"].ToString();}mandText = "insert into choose(grade) values('" + tbgrade.Text + "') where snum='"+ DropDownList3.SelectedItem.Text + "' and cnum='" + num + "'";if (cmd2.ExecuteNonQuery() > 0)//Command对象的ExecteNonQuery方法执行不返回结果的SQL语句,执行SQL 语句并返回受影响的记录行数{Label4.Text ="录入成功成功!";Label4.Visible=true;}else{Label4.Text ="录入失败!";Label4.Visible=true;}conn.Close();}五、课程设计体会通过本次试验培养了我们利用所学的数据库原理及应用的知识,选择某一编程工具,进行数据库应用系统的开发,同时培养学生独立思考问题、团队合作解决问题的能力和计算机应用编程的能力。

相关主题