《第17章网络课程生成系统.ppt》由会员分享,可在线阅读,更多相关《第17章网络课程生成系统.ppt(56页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、如今,随着计算机技术的发展及计算机的日益普及,基于Web的在线选课与无纸化办公一样已成为大势所趋。基于Web在线选课也越来越成为学校的好帮手,它的优势不但体现在人力上也体现在物力上。基于Web的在线选课系统方便学生在线选择自己选修的课程,从而提高学校的办公效率,节省了工作时间。网络选课系统极大地提高了教学的灵活性,目前在许多领域特别是教育领域已经有了广泛的应用。本章将介绍一个在线选课系统,教师通过添加课程数据库库,学生登录系统就可以在线选课,整个选课的过程完全在线完成,不受时间和地点的限制。17.1 系统分析 17.2 系统总体结构设计 17.3 公共类17.4 用户登录模块17.5 院系管理
2、模块 17.6 学生管理模块 17.7 学生后台管理模块 17.8 教师后台管理模块 17.9 管理员后台管理模块1 1功能需求分析功能需求分析(1)管理员模块。 学生管理子模块 教师管理子模块 课程管理子模块 (2)教师模块。 选课情况模块 成绩提交模块 (3)学生模块。2 2数据库需求分析数据库需求分析根据系统的设计目标,系统需要具有用户管理、课程管理、成绩管理等功能。 (1)用户管理功能。 (2)课程管理功能。(3)考试管理功能。3 3环境需求分析环境需求分析(1)网站开发环境 。 操作系统:Windows XP(SP2)/Windows 2000(SP4)/Windows Server
3、 2003(SP1)。 开发环境支持平台:Microsoft.NET Framework 3.5。 开发工具:Visual Studio.NET 2008集成开发环境。 开发数据库:SQL Server 2005。 开发语言:ASP.NET 3.5。3 3环境需求分析环境需求分析(2)服务器端运行环境。 操作系统:Windows XP(SP2)/Windows 2000(SP4)/Windows 2003 Server(SP1)。 Web服务:IIS5.0以上版本 + Frontpage2000服务器扩展。 开发环境支持平台:Microsoft.NET Framework 3.5。 数据库服务
4、器:SQL Server 2005。 数据库访问组件:MDAC2.7。 浏览器:Internet Explorer 6.0及以上。3 3环境需求分析环境需求分析(3)客户端运行环境。 浏览器:Internet Explorer 6.0及以上。 分辨率:最佳效果1024768像素。1 1技术方面技术方面(在线选课系统属于一个Web页系统。该系统是某校在线选课系统的简化版本,提供了学生管理、教师管理、课程管理、分数管理等功能。该校在线选课系统具有比较大的复杂性、繁琐性,该章介绍的系统只是实现了原有在线选课系统的基本功能。该系统还是属于一个基于数据库应用的Web应用系统,其基本操作还是对数据库进行添
5、加、删除、查找、编辑等。所以从技术角度看,该系统就是网络数据库应用,通过ASP.NET 3.5技术可以方便的实现,不存在技术上不能解决的问题。2 2经济方面经济方面该系统可以在普通服务器上运行,学生可以通过网络进行在线选课,教师可以通过网络管理选课。由于该系统对服务器要求较低,配置一台一般性能的服务器就可以正常运行该系统,对硬件的成本要求不高,大约需要1万元。2 2经济方面经济方面纵观整个系统需要的软硬件,整个项目的费用除了硬件费用外,另一方面是系统开发的费用,这包括程序开发和测试的各种费用。开发阶段需要投入一个项目小组,需要系统分析人员一名(兼任项目经理),代码实现及测试人员一名。项目开发费
6、用包括支付给开发小组人员的工资以及软件购买费用,合计大约2万元。本章介绍的系统是某校在线考试系统所使用的简化版本,开发周期较短,大概开发时间为1个月。另外,项目运行后,系统需要维护。维护阶段预计需要投入1万元的资金。累计项目投入需要4万元资金。3 3法律方面法律方面整个系统由于是自行开发,自行使用,所以系统本身不存在法律上的版权争议。在服务器软件方面,应该使用正版软件,因为整个系统尽管是开发给内部使用,但它毕竟很多部分还是要依靠Internet的,一旦服务器连接到Internet上,它的操作系统可能会被Microsoft跟踪,如果不是正版软件,将不得不面临民事诉讼的风险。4 4目前存在的问题目
7、前存在的问题由于网络速度的限制,参与在线选课的人数过多,有可能会造成网络的拥塞,影响正常的测试。另一方面,该系统采用SQL Server数据库系统,数据传输的有效性和安全性会成为需要关注的问题。该系统存在的最大问题是数据库安全问题。数据库安全是当今动态网站普遍存在的问题,如SQL注入曾经威胁大量网站系统。 1 1目的目的为了保证项目按时、保质的完成,达到预定目标,使项目开发人员和管理人员更好地了解项目实际情况,按照合理的顺序开展工作,现以书面的形式将项目开发生命周期中的项目任务范围、任务分解、项目团队组织结构和责任、沟通协作方式、经费预算、开发进度等内容描述出来,作为项目成员和项目相关人员之间
8、的共识与约定。 2 2背景背景在线选课系统是某校为方便选课而设计的。该系统主要为学生在线选课、教师在线管理选课、在线管理成绩提供方便快捷的操作,降低选课的成本,提高选课的效率,项目开发周期为1个月,免费维护周期为12个月。 3 3概述概述在线选课系统的项目目标是学生和教师。学生可以在线选课、在线查询自己的成绩;教师可以管理选课、安排选课、管理成绩。该系统实施后,能够为学生和教师带来极大方便,为学校和师生节约大量成本和时间。整个项目需要在1个月的时间内交付用户使用。 4 4项目团队组织项目团队组织系统分析员(兼任项目经理)负责整个项目的分析、策划、进度控制以及内部验收;负责系统的功能分析和框架设
9、计。软件工程师负责系统代码设计。美工负责网页风格设计、静态页面模板制作和图片处理。17.2.1 模块设计管理员表管理员表字段中文描述数据类型是否为空adminName用户名Varchar(20)否adminPwd密码Varchar(20)是学生用户表学生用户表字段中文描述数据类型是否为空stuID学生学号Varchar(20)否stuPwd学生密码Varchar(20)否stuName学生姓名Varchar(10)否stuDepart所在院系int是stuGrade所在年级int是stuClass所在班级int是教师用户表教师用户表 字段中文描述数据类型是否为空teaID教师编号Varchar
10、(20)否teaPwd教师密码Varchar(20)否teaName教师姓名Varchar(10)否teaDepart所在院系int是课程表课程表 字段中文描述数据类型是否为空coureID课程编号Varchar(20)否teaID教师编号Varchar(20)否coureName课程名Varchar(100)否coureTime上课时间Varchar(20)是coureAddress上课地点Varchar(50)是coureInfo课程介绍Text是选课表选课表 字段中文描述数据类型是否为空stuID学生学号Varchar(20)否coureID课程编号Varchar(20)否teaID教师
11、编号Varchar(20)否Score所在院系int是院系表院系表 字段中文描述数据类型是否为空departID院系编号Int否departName院系名称Varchar(100)是公共类是系统和数据库交互的中转类,是系统与数据库进行操作的基类,系统中进行的任何与数据库有关的操作,都经过此类进行传输操作。(1)功能。系统与数据库进行数据交换的基类。(2)数据流程。系统的中枢类,对数据库中各个表进行所有操作。(3)所运用到的知识点。1)ASP.NET数据库操作类。2)类、对象。3)方法的重构。1 using System;2 using System.Data;3 using System.Co
12、nfiguration;4 using System.Linq;5 using System.Web;6 using System.Web.Security;7 using System.Web.UI;8 using System.Web.UI.HtmlControls;9 using System.Web.UI.WebControls;10 using System.Web.UI.WebControls.WebParts;使用using引入SqlClient命名空间11 using System.Xml.Linq;12 using System.Data.SqlClient;13 / 14
13、/MDBdatabase 的摘要说明15 / 16 public class MDBdatabase17 18 private static readonly string ConnString = ConfigurationManager.ConnectionStringsConnectionString.ConnectionString;19 public int pagetotal;20 SqlConnection con = new SqlConnection();21 SqlCommand cmd = new SqlCommand();22public MDBdatabase()23
14、2425 public SqlConnection GetConnection() 26 27 con = new SqlConnection(ConnString);28 if (con.State = ConnectionState.Closed)29 con.Open();30 return con;31 32 public void CloseConnection() 33 34 if (con.State = ConnectionState.Open)35 con.Close();36 37 public int Command(string SqlStr)38 39 GetConn
15、ection();40 cmd = new SqlCommand(SqlStr,con);41 42 int result = cmd.ExecuteNonQuery();43 return result;44 45 public int Scalar(string SqlStr)46 47 int num;48 GetConnection ();49 cmd = new SqlCommand(SqlStr, con);50 num=Convert.ToInt32( cmd.ExecuteScalar();51 return num;52 53 public SqlDataReader Dat
16、aReader(string SqlStr)54 55 GetConnection();56 cmd = new SqlCommand(SqlStr, con);57 SqlDataReader sdr = cmd.ExecuteReader();58 return sdr;59 60 登录模块是网络课程生成系统的门户,是用户进入到网络课程生成系统的窗口,也是网络课程生成系统最先要执行的页面。本网络课程系统中,学生、教师和管理员使用一个界面来登录,在登录时,可以选择不同的角色。本系统中的用户登录页面为Login.aspx。(1)功能。对用户身份进行验证,不同的用户转向不同的页面。(2)数据流程
17、。主要是对用户信息表进行操作。用户信息表包括用户名、密码等字段。(3)具体界面设计。用户登录界面设计用户登录界面效果(4)具体要求和注意事项。注意表单中要提供验证用户名和密码是否为空的表单验证代码。(5)所运用到的知识点。1)文本框控件、验证控件和按钮控件。2)通过ADO.NET连接数据库、查询数据库。3)用户名或密码错误提示,登录成功转向主页面。院系管理模块是课程网络生成系统中的重要部分。该模块主要用来管理教师和学生是属于哪个学院的,对于高校来说,现在各个专业和科目越来越多,综合性大学所设置的科目也越来越复杂,所以院系管理是区分教师和学生的重要部分。(1)功能。本系统中院系管理主要用来向网络
18、课程生成系统高校的院系名称,同时提供编辑和删除的功能。(2)数据流程。主要是对院系信息表进行操作。(3)具体界面设计。院系管理模块界面设计院系管理模块界面效果添加成功编辑院系信息(4)具体要求和注意事项。数据库查询及GridView相关控件的使用。(5)所运用到的知识点。1)文本框控件、GridView控件和按钮控件。2)通过ADO.NET连接数据库、查询数据库。在此页面中,添加课程的Button控件的单击事件用来向数据库中插入新的院系,其代码如下。1 protected void imgBtnAdd_Click(object sender, ImageClickEventArgs e)2 3
19、 if (tbPartName.Text.Trim() != )4 5 string sql = insert into Depart(departName) values( + tbPartName.Text. Trim()+);6 int n;7 try8 9 n = mdb.Command(sql);10 if (n 0)11 12 Response.Write(function window.onload() alert(添加成功!);location.href=partDetails.aspx);13 14 15 catch (Exception ex)16 17 Response.
20、Write(ex.Message);18 19 20 else21 22 Response.Write(function window.onload()alert(院系名称不能为空!);location.href=partDetails.aspx);23 24 本页面中用来呈现院系列表的部分使用GridView控件来实现,关于GridView控件的数据绑定代码如下。1 public void databind()2 3 SqlDataAdapter sda = new SqlDataAdapter();4 sda.SelectCommand = new SqlCommand(select *
21、from Depart order by departID desc, mdb.GetConnection();5 DataSet ds = new DataSet();6 sda.Fill(ds, dsmes);7 GridView1.DataSource = ds;8 GridView1.DataBind();9 学生管理模块是管理员管理模块中的一个子模块,用来管理网络课程生成系统中的学生信息,管理员可以通过学生管理子模块向系统中添加新的学生信息,也可以修改和删除已有的学生信息。(1)功能。向系统中添加新的学生信息,也可以修改和删除已有的学生信息。(2)数据流程。主要是对学生信息表进行操作
22、。学生信息表包括用户名、密码等字段。(3)具体界面设计。学生管理模块界面设计学生管理模块界面效果编辑学生信息学生后台页面学生选课 选修“商务英语”课程 教师管理模块界面设计教师录入成绩课程管理课程详细信息 管理员管理模块是管理员通过登录窗口登录之后所跳转的页面,用来管理数据库中存储的学生信息、教师信息和课程信息等。(1)功能。管理员管理系统中管理员、教师、学生、选课和成绩信息。(2)数据流程。主要是对学生信息表、教师信息表、课程信息表、选课信息表、成绩信息表进行操作。(3)具体界面设计。树状菜单其显示用户账户信息的代码如下1 protected void Page_Load(object sender, EventArgs e)2 获取用户名,组成欢迎信息3 if (!this.IsPostBack)4 5 Label1.Text = SessionuserName.ToString()+您好!;6 7