下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、封面1.2.作者: Pan Hongliang仅供个人学习目 录摘要4第一章引言41.1 编写目的4II/2适用范围 .41.3研究背景 .41.4定义 .51.4.1 视图定义 .5第二章 任务概述 .52.1目标 .52.2用户的特点 .62.3开发环境约束: .6第三章 需求规定 .63.1系统功能的规定 .63.2系统总体流程 .7第四章 系统详细设计 .84.1数据库设计 .84.1.1 数据表的设计 .84.1.2 数据库表间的逻辑关系图 .114.2系统主要功能模块详细设计与实现.124.2.1 前台主要功能模块介绍 .124.2.2 后台主要功能模块介绍 .18
2、第五章 对性能的规定 .225.1精度 .225.2时间特性要求 .225.3输人输出要求 .225.4数据管理能力要求 .225.4.1 数据备份 .225.4.2 数据规模 .225.5故障处理要求 .235.5.1 系统设计方面 .23第六章 运行环境规定 .236.1设备 .236.2支持软件 .236.3控制 .236.4界面要求 .236.5软件质量要求 .23致谢 .24参考文献 .24III / 26个人收集整理勿做商业用途摘要网上答疑系统为基于ASP.NET与 C#技术的 WEB应用程序,并以互联网为传播媒介来实现远程教育的一个教学平台。系统主要论述了其设计开发的基本过程,设
3、计开发中主要运用了 ASP.NET技术与C#语言、 SQL 等相关技术,根据面向对象开发原理,采用了基于B/W/S三层体系结构的开发模式系统。以IIS为服务器, SQL server 2005为数据库平台,提供一个师生之间相互交流、相互探讨的网络空间, 使学生在获取知识时更具有主动性。本系统包括即时答疑的管理与控制,文件资源的共享管理,问题及疑问留言解答的管理,后台数据库信息的管理维护等这些基本模块。关键词: ASP.NET;在线答疑;实验室信息化;B/W/S 结构第一章引言1.1 编写目的为了计算机机房提供一个利用现有设备进行课程教学,师生互动问答讨论的系统。通过相应功能模块实现问题的实时或
4、留言问答,实验内容等文件资源的共享上传与下载,以及相关知识拓展,师生在电脑前就能完成全程教学,使学生摆脱了以前的羞涩心理,主动参与到网络学习活动中来,有效地调动了学生学习的积极性。同学与同学之间、教师与同学之间的讨论既活跃了思维,也拉近了彼此的距离,促进了教学活动的开展。我们根据系统的总体要求和功能要求编写了这个系统需求规格说明书,为系统后期的概要设计和详细设计做好基础。并且保证本需求分析的结果能够完整、无遗漏地反映待开发系统的要求。1.2 适用范围本文档适用于所有与本项目有关的软件开发阶段及其相关人员,其中:项目经理、 技术开发人员、测试人员应重点阅读本文档各部分,其他人员可选择性阅读本文档
5、。1.3 研究背景为了推动学校政务信息化建设,根据教育部教厅综200114 号文件教育部办公厅关于加快推进教育系统政务信息化建设的通知的有关精神,现制定学校办公自动化建设方案。4/26个人收集整理勿做商业用途1.4 定义1.4.1 视图定义进程数据第二章任务概述2.1 目标系统需实现的功能目标为:首先,针对计算机实验室的特点,在线答疑功能模块可以利用现有的局域网拓扑结构,在网络环境中进行信息的输入与传输显示,并存储在主机数据库服务器里。通过对交谈方式的控制,在群聊和一对一私谈交流两者之间切换交谈方式。其次, 在教学过程中,必然有跟实验课程相关的实验指导、实验内容等相关的文档。为免去安装ftp
6、服务器实现文件共享的麻烦,在该答疑系统中还应包括文件资源的上传、下载功能模块,实现相关资料的相互传递。再次,在线答疑模块中,主要是实现类似qq 群聊天的即时通讯功能,里面的发言呈现出多人发言,交叉发言,讨论内容多且比较凌乱的现象,不利于对某一疑问的深层次探讨。因此, 在系统中,应设置类似我们平时所用的论坛留言的功能模块,并包含了发表疑问,回复疑问,管理疑问信息等功能。另外,在教学过程中,为加深学生对实验内容的理解,拓宽知识的应用,有必要设置知识扩展模块 ,包含相关知识门户网站链接,应用实例展示 ,技术文章等内容。为更方便处理班级事务,通知学生们班中相关信息,系统中也应包括班级公告功能,显示近期
7、的班级安排等。为了保证数据库的安全,以及教学的顺利进行,系统还需要对学生们的身份进行管理,最简单的一点就是对访问该系统的学生要求登录操作,进行身份的验证, 以及把该身份在系统中其它功能的使用情况存储在系统的数据库中,方便以后需要确认某学生身份的调用操作。最后,该系统提供的后台数据管理,应让具有管理权限的人员对数据库进行操作,包括学生信息的管理,上传文件管理,疑问管理,链接管理,通知管理等功能,具体功能呈现为对数据源的数据进行访问、添加、编辑、删除等操作。极大方便地对系统进行统一管理控制与显示。参照各模块的功能与具体的特点,在架构整个系统应达到以下设计目标:稳定性:整个系统应能稳定运行,硬件配置
8、的局部改变不会影响整体的正常运行。准确性: 所有前台用户的操作与数据库原定产生变化的实际状态应严格保持一致,杜绝5/26个人收集整理勿做商业用途错误记录、数据错位等情况的出现。可扩展性: 如果需增加新的功能,再次开发不需更改原有系统的源代码,原有系统对扩展的部分一般不具有依赖性。可维护性: 界面风格或其它可能的参数化改变(如增加新功能等)不需要重新编写源代码,可以方便进行二次开发。独立性: 每一个功能模块尽量独立,减少与其它模块之间的耦合性,尽可能做到按客户的需求。易使用性:系统的界面与操作人员的交互性好,容易使用。2.2 用户的特点计算机实验课在线答疑系统主要为计算机机房提供一个利用现有设备
9、进行课程教学,师生互动问答讨论的系统。从而达到学生与教师之间进行学习、沟通和协调。2.3 开发环境约束:服务器: Windows系列 Server;开发环境: Server SQL Server2005 和 Microsoft Visual Studio 2008 ;第三章需求规定3.1 系统功能的规定计算机实验课在线答疑系统分为二大模块:系统前台,系统后台。系统身即文疑知班份时件问识级登发管管扩公图 3.1.1前台功能结构图6/26个人收集整理勿做商业用途系 统学文疑链通生件问接知管管管管管图 3.1.2后台功能结构图3.2 系统总体流程用户成功登录后,如果验证是管理员身份,则可选择进入前台
10、显示还是后台管理,如果是普通用户,则定向到系统前台首页。在首页里,默认是即时发言页面,也可通过页面链接到文件共享或者查看疑问页面。在即时发言页面,可以选择发言字体的颜色,切换群聊和密谈模式。在文件共享页面,显示现有的文件列表,右击文件名即可选择下载,点击上传文件按钮,进入文件上传页面。在查看疑问页面,可以发表疑问或者点击相应疑问,进入详细回答页面。各页面中,都包含返回主页面的链接按钮。7/26个人收集整理勿做商业用途即 时 发群 聊 /系返统下 载 /回文 件 共首首页回 复 /查 看 疑知 识 扩查 看班 级 公查 看进否入管是后登 录 界成台是否图 3.2.1系统总体流程图第四章系统详细设
11、计4.1 数据库设计本系统数据库采用SQL Server 2005 EXPRESS 数据库设计,其中包括5 张表 。4.1.1 数据表的设计用户信息表用户信息表记录用户的基本信息。其主要字段包括:用户ID 、用户名称、用户密码、用户职位。见表所示:表 4.1.1用户信息表名称字段名称数据类型长度非空用户编号idint4yes8/26个人收集整理勿做商业用途用户名称usernamevarchar50yes用户密码passwordvarchar50yes用户职位positionvarchar50No即时发言信息表即时发言信息表的主要字段包括: ID 号、发言者、 接收者、 发言内容、 发言字体颜色
12、、是否密谈、发言时间。见表所示:表 4.1.2即时发言信息表名称字段名称数据类型长度非空ID 号idint4yes发言者user_fromvarchar50yes接收者user_tovarchar50yes发言内容contentvarchar255yes字体颜色colorvarchar50yes是否公开ispublicbit4yes发言时间sendtimedatetime8yes文件信息表文件信息表的字段主要包括上传者、文件名称、上传时间、存储路径等。见表所示:表 4.1.3 文件信息表名称字段名称数据类型长度非空id 号idint4yes上传者Send_Uservarchar50yesNam
13、e文件名称Send_Filevarchar100yesName上传时间Send_Timevarchar50yes存储路径Send_Filevarchar100yes疑问信息表该表主要是记录发表疑问信息,以及访问次数和回答次数。包括标题,具体内容, 提问者等字段。见表所示:表 4.1.4疑问信息表9/26个人收集整理勿做商业用途名称字段名称数据类型长度非空默认值id 号idint4yes提问者Authornvarchar50yes标题Subjectnvarchar50yes内容Contentntext16no提问时PostTimedatetime8yesgetdat间e()访问次TotalVie
14、wint4yes数回答次Replyint4yes数回复信息表回复信息表主要字段包括:回答编号 id、对应的问题 id、回答者、标题、详细回答内容、回答时间。见表所示:表 4.1.5 回复信息表名称字段名称数据类型长度非空默认值回答编MessageIDint4yes号对应问idint4yes题回答者Authornvarchar50yes标题Subjectnvarchar50yes详细内Contentntext16no容回答时PostTimedatetime8yesgetdat间e()链接类别表链接类别表主要字段包括:编号id、类别名称。见表所示:表 4.1.6 链接类别表名称字段名称数据类型长度
15、非空默认值编号idint4yes10/26个人收集整理勿做商业用途类别名classchar10yes称网站信息表网站信息表主要字段包括:编号、类别编号、网站名称、网址和网站简介。见表所示:表 4.1.7 网站信息名称字段名称数据类型长度非空默认值编号idint4yes类别编cidint4yes号网站名namechar10yes称网址linkchar50yes网站简showchar50no介班级公告表班级公告表主要字段包括:编号、标题、内容和时间。见表所示:表 4.1.8 班级公告表名称字段名称数据类型长度非空默认值编号idint4yes标题titlechar50yes内容contentchar
16、50no时间timedatetime8yesgetdate()4.1.2数据库表间的逻辑关系图数据库的表与表之间各字段的关系如图所示:图 4.1.2数据库表间关系图11/26个人收集整理勿做商业用途4.2 系统主要功能模块详细设计与实现4.2.1 前台主要功能模块介绍即时发言模块:该模块首页面为default.aspx,页眉为自定义控件WebUserControl.ascx,里面包括各功能模块的链接, 和显示系统时间等信息。中间为即时发言界面,主要是显示信息和发送信息,页脚为后台登录链接,当登录者为admin 时,该链接控件由灰色不可用变为可用链接,点击即进入后台登录页面。登录页面 defau
17、lt.aspx时,载入处理函数Page_Load() ,控制代码为:protectedvoid Page_Load( objectsender,EventArgs e)if(Sessionusername .ToString() =admin )HyperLink1.Visible =true ;普通用户登录admin 登录即时发言的界面为图 即时发言的界面图处理发送信息的函数为 send();代码为functionsend()vartxtContent = document.all(content).value;/文本框输入内容if (txtContent = ) retur
18、n;varuser_to = document.all(userlist ).value;/聊天对象vartextcolor = document.all(textcolor).value;/ 颜色varisPublic = !(document.all(isSecret).checked);/ 是否密谈显示发言信息的函数为refresh_chatcontent();代码为functionrefresh_chatcontent()/ 调用服务器方法获取最新消息的HTML字符串12/26个人收集整理勿做商业用途var div = document.all(chatcontent);var str
19、NewMsg = ChatRoom.GetNewMsgString().value;控制上线名单的函数为refresh_onlineusers();代码为functionrefresh_onlineusers()/ 发送对象列表var userlist = document.all(userlist);/ 调用服务器端方法获取用户列表字符串(用逗号分隔)var strUserlist = ChatRoom.GetOnlineUserString().value;/ 获取客户端显示的用户列表字符串var strUserlistClient = ;for ( var i = 1;i userlis
20、t.options.length;i+)if(i != userlist.options.length - 1)strUserlistClient += userlist.optionsi.value +, ;elsestrUserlistClient += userlist.optionsi.value;if(strUserlistClient != strUserlist)/ 在线用户列表发生变化var userArr = strUserlist.split( ,);/在线用户数var usercount = document.all( usercount );usercount.inne
21、rHTML = 在线名单:( + userArr.length + 人) ;文件共享模块:该功能模块包括文件显示下载页面SaveFile.aspx 和文件上传页面Chuanshu.aspx两页面,以及保存资源的文件夹file 。通过该模块,可以方便地上传下载实验内容等资料文件。在 web.config 中设置连接数据库的语句为:13/26个人收集整理勿做商业用途使用 SqlDataSource 控件操作数据库的语句为:asp:SqlDataSourceID =SqlDataSource1runat=serverConnectionString = SelectCommand=SELECT*FR
22、OM SendFile ORDER BY id desc使用 GridView 控件显示数据的代码为: 处理上传文件的函数为SaveBtn_Click() ,主要代码为:protected void SaveBtn_Click( object sender, EventArgs e)String Send_user1 = Send_User.Text;StringTimeNow=DateTime .Now.Year.ToString()+-+DateTime .Now.Month.ToString()+-+DateTime .Now.Day.ToString()+ - +DateTime .N
23、ow.Hour.ToString()+ : +DateTime .Now.Minute14/26个人收集整理勿做商业用途.ToString()+ : +DateTime .Now.Second.ToString();/获得时间MyUpload MyUpload = new MyUpload ();string Pic1 = File/ ; / 保存路径MyUpload.Path = File ;MyUpload.Sizes = 2048;/文件大小MyUpload.FileType=jpg|gif|bmp|JPG|GIF|BMP|doc|DOC|txt|TXT|xls|XLS|FLV|flv|
24、SWF|swf ; /文件类型 string a = MyUpload.PostedFile.FileName.Split( ); /分离出文件名 string b = aa.Length - 1;FileTitle1 = b;MyUpload.PostedFile = FileUpload1.PostedFile;String Pic2 = MyUpload.Upload();if (Pic2 = null)Page.RegisterStartupScript( , alert( 上传失败 !) );Response.AddHeader(Refresh , 0.0001 );elsePic2
25、 = Pic1 + Pic2;StringSql=insertintoSendFile(Accept_UserName,Send_UserName,Send_File,Send_Time,Send_FileName)values( +username + , + Send_user1 + , + Pic2 + , + TimeNow +, + FileTitle1 +) ;if (db.insert(Sql)/ 插入数据Page.RegisterStartupScript( ,alert(上传成功!) );Accept_User.Text = ;Send_User.Text = ;图 4.2.
26、1.2上传文件界面图发表疑问模块:该模块主要页面包括显示疑问列表页面showthread.aspx,某疑问及相应回复列表页面showmessages.aspx,发表新疑问页面editthread.aspx。该模块主要实现疑问的发表和回复。删除功能包含在后台管理页面中。15/26个人收集整理勿做商业用途发表疑问利用一个AddThread 方法,代码为:public void AddThread(System. Int32 threadID,System. String author,System.String subject,System.String content,System.Int32
27、reply,System. Int32 totalView)/ 下面为创建数据库实例和命令对象SqlConnectionmyConnection=newSqlConnection ( ConfigurationSettings .AppSettings connectionString );SqlCommandmyCommand=newSqlCommand (AddThread ,myConnection);/ 下面为把命令对象类型设置为数据库已经创建好的存储过程,能把一大段 sql 语句存储为一个过程,便于调用myCommand.CommandType = CommandType .Stor
28、edProcedure;/ 向存储过程中传递参数SqlParameterparameterAuthor=newSqlParameter(author ,SqlDbType .NVarChar,50);parameterAuthor.Value = author;myCommand.Parameters.Add(parameterAuthor);SqlParameter parameterSubject = new SqlParameter(subject , SqlDbType .NVarChar,50);parameterSubject.Value = subject;myCommand.P
29、arameters.Add(parameterSubject);SqlParameter parameterContent = new SqlParameter(content , SqlDbType .NText,16);parameterContent.Value = content;myCommand.Parameters.Add(parameterContent);SqlParameterparameterTotalView=newSqlParameter(totalView ,SqlDbType .Int,4);parameterTotalView.Value = totalView
30、;myCommand.Parameters.Add(parameterTotalView);SqlParameterparameterReply=newSqlParameter(reply ,SqlDbType .Int,4);parameterReply.Value = reply;myCommand.Parameters.Add(parameterReply);/ 打开数据库并执行16/26个人收集整理勿做商业用途myConnection.Open();myCommand.ExecuteNonQuery();myConnection.Close();图 发表疑问界面图显示疑
31、问列表采用 GetThreads()方法,代码为private DataSet GetThreads()/创建数据库实例和命令对象SqlConnectionmyConnection=newSqlConnection ( ConfigurationSettings .AppSettings connectionString );SqlDataAdapter myCommand = new SqlDataAdapter (GetThreads , myConnection);/下面为把命令对象类型设置为数据库已经创建好的存储过程,能把一大段 sql 语句存储为一个过程,便于调用myCommand.SelectCommand.CommandType=CommandType.StoredProcedure;/ 建立并且填充一个 dataset 数据集DataSet myDataSet = new DataSet();myCommand.Fill(myDataSet);/ 返回一个 dataset 数据集return myDataSet;图 上显示疑问列表界面图显示疑问详细内容的方法为AddThread() ,代码为publicvoidAddThread(System. Int32threadID,Syst
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 基于物联网技术的拼多多农业电商平台研究
- 旅游行业产品经理的职责与技能要求详解
- 旅行社计调经理的招聘面试全解析
- 基于地球仪视角的初中自然科学学习策略
- 护理礼仪的礼仪故事
- 护理课件制作中的游戏化设计
- 护理实践中的法律问题探讨
- 护理考试名师强化辅导
- 领导力培养与团队指导计划同仁堂副经理
- 基于家庭教育活动的家长培训计划设计
- 天津市河西区2024年九年级结课质量调查英语试卷
- 2024外研版初中英语单词表汇总(七-九年级)中考复习必背
- 六安职业技术学院单招《职业技能测试》参考试题库(含答案)
- 有关物业管家培训课件
- 第二章 教育研究的选题与设计
- 新改版苏教版四年级下册科学全册知识点(精简版)
- 流程图绘制培训
- 口腔颌面外科学课件:颌骨骨髓炎
- 上海市初中物理竞赛“大同杯”历年真题分类汇编(共9个)学生版+解析版
- 2023年广东高考英语听说考试真题D录音原文与参考答案
- 《史记》上册注音版
评论
0/150
提交评论