论文

更新时间:2024-06-13 22:33:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

毕 业 设 计 [论 文]

题 目: C语言在线学习系统

学 院: 计算机科学与工程

专 业: 信息管理与信息系统

姓 名: 王二威 学 号: 083411234

指导老师: 崔雪冰 完成时间: 2015年05月25日

摘 要

随着现代信息技术的发展,Internet日益成为各项事业的发展方向。本论文根据C语言在线学习系统现已存在的问题,对其做全面的分析和整体的介绍。介绍了ASP.NET+SQL2005技术开发该系统及其子系统的整个过程。该系统主要利用了ASP.NET强大的网络数据库访问技术,实现web 交互。系统设计并实现了Server和Client模块。这些模块各自发挥了不同的作用与功能,并以ASP.NET+C#语言为实例进行了系统实现。

本系统的开发利用SQL2005作为本系统的数据库,它是一个支持多用户的新型数据库,适用于大中规模的数据量需求。学校校园网的建设也为新系统服务器/客户端的结构提供了硬件的支持。

使用Visual Studion.NET作为系统开发的开发环境,它提供完善的指令控制语句、类与对象的支持及丰富的数据类型,给开发高性能系统提供的保障为开发满足客户要求的系统,保证了代码的模块化要求,而代码模块化的提高,非常有利于以后对新系统的扩展与修改。

本课题是基于B/S架构的网站系统开发工具采用VS2005集成开发环境进行开发,配合使用微软的SQL2005数据库作为网站的数据库平台。

关键词 课程,教学,ASP.NET ,数据库,C#

Abstract

The development of modern information technology, the Internet has increasingly become a cause the direction of development of the item. In this paper, based on the existing C language on-line learning system to do a comprehensive analysis of the introduction and overall. ASP.NET + SQL2005 technology the whole process of the

development of the system of subsystems. The system mainly utilizes the ASP.NET powerful network database access technology, web interaction. The system was designed and implemented the Server and Client module. These modules have played a different role and functions, and the instance system implementation to ASP.NET + C # language. The development and utilization of the system SQL2005 as the database of the system, it is a support for the new multi-user database, applies to the amount of data needs of medium and large scale. The construction of the campus network also provides hardware support for the new system server / client structure.

To use Visual Studion.NET as a development environment for system development, it provides comprehensive instruction control statements, class and object support and rich data types, and to the development of security systems to meet customer requirements for the development of high-performance systems, to ensure that the code modular requirements, the code modular improve very conducive to future extensions and modifications of the new system.

This topic is VS2005 IDE development tools based on the site of the B / S architecture system development, used in conjunction with Microsoft SQL2005 database as the website's database platform. =

Keywords Curriculum, teaching, ASP.NET, database, C #

目录

目录 ........................................................................................................................................................ IV 1.1 选题背景 .................................................................................................................................... 1 1.2研究意义 ..................................................................................................................................... 1 1.3研究现状 ..................................................................................................................................... 2 1.4数据库系统选择 ........................................................................................................................ 2 2.开发环境和技术介绍 ........................................................................................................................ 4 2.1 B/S结构模式............................................................................................................................. 4 2.2 ASP.NET2.0技术的介绍 ......................................................................................................... 5 2.3 SQL SERVER数据库简介 ......................................................................................................... 7 3. 系统分析 ............................................................................................................................................. 9 3.1可行性分析 ................................................................................................................................. 9 3.1.1 技术可行性 ....................................................................................................................... 9 3.1.2 经济可行性 ..................................................................................................................... 10 3.2.3 操作可行性 ..................................................................................................................... 10 3.2 需求分析 .................................................................................................................................. 10 3.3需求分析 ................................................................................................................................... 14 3.4 性能需求 .................................................................................................................................. 14 4. 系统总体设计 ................................................................................................................................... 16 4.1 系统功能结构 ......................................................................................................................... 16 4.2 数据库设计 .............................................................................................................................. 19 4.2.1数据库设计 ....................................................................................................................... 19 4.2.2数据库表设计 .................................................................................................................. 22 5.系统详细设计 ..................................................................................................................................... 25 5.1功能模块的详细设计 ............................................................................................................. 25 5.2学生管理模块........................................................................................................................... 26 5.3信息管理模块........................................................................................................................... 27 5.4 教学视频信息管理模块设计 ............................................................................................... 28 5.5 账号管理模块详细设计 ........................................................................................................ 30 5.6 论坛管理模块详细设计 ........................................................................................................ 31 6.系统测试 ............................................................................................................................................... 1 6.1 测试目的 .................................................................................................................................... 1 6.2 测试方法 .................................................................................................................................... 1 6.3 系统测试 .................................................................................................................................... 2 6.3.1 测试的数据 ....................................................................................................................... 2 6.3.2 系统测试方法 ................................................................................................................... 2 6.3.3 系统测试项目表 ............................................................................................................... 2

6.3.4 系统测试结果 ................................................................................................................... 3

致 谢 ........................................................................................................................................................ 5 参考文献 .................................................................................................................................................. 6

1.前言

1.1 选题背景

现代信息技术的发展,Internet日益成为项事业的发展方向。本文就根据现已存在的问题,对基于web的在线C语言学习系统做了全面的分析和整体的介绍。介绍了ASP.Net2.0+SQL Server2005技术开发该系统的子系统的整个过程。该系统主要利用了ASP.Net2.0强大的网络数据库访问技术,实现web 交互。系统设计并实现了Server和Client模块。这些模块各自发挥了不同的作用与功能,并以ASP。NET2.0+C#语言为实例进行了系统实现。

目前,传统的学习方式都是通过出版书籍和杂志等实体类的学习材料。对人们的学习造成了一定的障碍比如你自己好多的东西根本无法自己去理解,请教老师又不是很方便。本文针对这些问题提出相应的解决方案,使学在线C语言学习系统不仅成为人们在结合实体类的学习资料的同时结合网络的资源和手段充分的把想学的知识掌握好。具体而言,它主要涉及到以下几个方面:在线报名;在线论坛交流;在线咨询;适应不同用户的不同学习要求,能根据不同用户的需要发布相应的信息资料。

1.2研究意义

目前,传统的学习方式都是通过出版书籍和杂志等实体类的学习材料。对人们的学习造成了一定的障碍比如你自己好多的东西根本无法自己去理解,请教老师又不是很方便。本文针对这些问题提出相应的解决方案,使学资源网站不仅成为人们在结合实体类的学习资料的同时结合网络的资源和手段充分的把想学的知识掌握好。具体而言,它主要涉及到以下几个方面:网络学习资料的下载;在线提问解决问题;注册获得更多的网络服务;适应不同用户的不同学习要求,能根据不同用户的需要发布不同的学习资料。

本论文就是为了解决或改善这些问题,以更好地满足用户的需求,达到网络教学的真正目的。其研究意义有以下几点:

(1) 用户模型的设计使得根据用户不同特点提供个性化服务成为可能。 (2) 各种模块充分考虑了用户学各种需求,体现以用户中为心的思想和服务宗旨。

1.3研究现状

随着计算机在教育教学中的普遍应用,在线交流学习和在线查看下载学习资料也成为了大学生学习中的重要辅助手段,越来越多的学生把网站交流作为一种学习学习的重要方法,在线C语言学习系统就是为在线学习者提供更多的教育信息和学习资源,以及让更多的注册用户在在线论坛中进行有效的学习交流。

开发在线C语言学习系统之前我们参考了目前主流的在线C语言学习系统作为例子。然后根据在线C语言学习系统应该具有的功能和模块对系统进行需求分析,然后建立初步的信息流程和初步的网站系统界面来逐步的开发和完善在线C语言学习系统的全部功能。

1.4数据库系统选择

本系统将采用Microsoft SQL Server2005作为系统的DBMS支撑,SQL Server2005是能够支持企业级关系型数据库的管理系统,它能与Windows操作系统紧密集成,具有方便易用的图形管理界面,其用户界面风格与Windows一样非常友好。SQL Server2005在存储大容量数据方面,在数据的安全性和完整性方面,在分布式处理等都是适合于企业级应用的。而其相对Oracle,DB/2等大型数据库来说,学习更为容易,应用成本也相对较低。采用SQL Server2005 + ASP.Net开发本系统是一个较为理想的组合。

SQL Server2005的新特点:

动态的自我管理:SQL Server2005运行时动态配置运行环境,优化并简化了许多服务器配置选项,可随用户增多或者减少动态地请求追加或者释放资源,并可随数据的增减自动改变数据库大小。

丰富的管理工具:SQL Server2005提供了许多数据库系统管理工具。系统管理员可以在运行SQL Server Enterprise Manager的中央控制台上,管理和监视服务器运行性能和企业数据库。

可编程的管理:SQL分布式对象可用于编写应用程序,这就可以使应用程序数据包透明地将SQL Server 2005嵌入应用程序中。也可以使用SQL-DMO为不同站点的通用的管理任务建立应用程序。

可能收缩性和高可能性:SQL Server 2005数据库引擎可以几乎所有Windows平台上运行,是可管理上千万个用户的大型数据库。同时其还具有动态自我调解的特性,能有效地在笔记本或者PC上运行。

支持数据仓库: SQL Server 2005支持数据仓库。

系统访问Internet集成:SQL Server 2005与其他产品一起为Internet或Intranet系统形成一个稳定的安全的数据存储;可为运行在IIS下的Web应用程序提供一个高性能的数据存储服务;此外,SQL Server2005数据库引擎还包括了对XML的本地支持,Transact-SQL结果可以作为XML文档返回给使用OLEBD和ADO API的应用程序,XML文档还可以添加到SQL Server 2005中。

综上所述,在开发本系统时,采用SQL Server 2005作为数据库管理系统。

2.开发环境和技术介绍

2.1 B/S结构模式

B/S(Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。

在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。相对于C/S结构属于“胖”客户端,需要在使用者电脑上安装相应的操作软件来说,B/S结构是属于一种“瘦”客户端,大多数或主要的业务逻辑都存在在服务器端,因此,B/S结构的系统不需要安装客户端软件,它运行在客户端的浏览器之上,系统升级或维护时只需更新服务器端软件即可,这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。 B/S结构系统的产生为系统面对无限未知用户提供了可能。当然,与C/S结构相比,B/S结构也存在着系统运行速度较慢,访问系统的用户不可控的弱点。

以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN,WAN,Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。

一、B/S模式的优点和缺点 B/S结构的优点

(1)、具有分布性特点,可以随时随地进行查询、浏览等业务处理。 (2)、业务扩展简单方便,通过增加网页即可增加服务器功能。 (3)、维护简单方便,只需要改变网页,即可实现所有用户的同步更新。

(4)、开发简单,共享性强 B/S 模式的缺点

(1)、个性化特点明显降低,无法实现具有个性化的功能要求。

(2)、操作是以鼠标为最基本的操作方式,无法满足快速操作的要求。 (3)、页面动态刷新,响应速度明显降低。

(4)、功能弱化,难以实现传统模式下的特殊功能要求。 二、C/S 模式的优点和缺点 C/S 模式的优点

1.由于客户端实现与服务器的直接相连,没有中间环节,因此响应速度快。 2.操作界面漂亮、形式多样,可以充分满足客户自身的个性化要求。 3.C/S结构的管理信息系统具有较强的事务处理能力,能实现复杂的业务流程。

C/S 模式的缺点

1.需要专门的客户端安装程序,分布功能弱,针对点多面广且不具备网络条件的用户群体,不能够实现快速部署安装和配置。

2.兼容性差,对于不同的开发工具,具有较大的局限性。若采用不同工具,需要重新改写程序。

3.开发成本较高,需要具有一定专业水准的技术人员才能完成。

2.2 ASP.Net2.0技术的介绍

ASP.Net2.0是把基于通用语言的程序在服务器上运行。不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译。ASP.Net2.0构架是可以用Microsoft(R)公司最新的产品 Visual Studio.net开发环境进行开发,WYSIWYG(What You See Is What You Get所见即为所得)的编辑。这些仅是ASP.Net2.0强大化软件支持的一小部分。

因为ASP.Net2.0是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.Net2.0的Web应用中。ASP.Net2.0同时也是language-independent语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C++和Java的结合体),VB,Jscript。将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向ASP.Net2.0。

ASP.Net2.0使用一种字符基础的,分级的配置系统,使你服务器环境和应用程序的设置更加简单。因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。这种被称为\Administration\的哲学观念使ASP.Net2.0的基于应用的开发更加具体,和快捷。一个ASP.Net2.0的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须得文件,不需要系统的重新启动,一切就是这么简单。

ASP.Net2.0已经被刻意设计成为一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝连接技术,将很大的提高运行速度。即使你现在的ASP.Net2.0应用软件是为一个处理器开发的,将来多处理器运行时不需要任何改变都能提高他们的效能,但现在的ASP确做不到这一点。

ASP.NET优越性主要体现在以下几个方面:

(1)效率,ASP.NET是建立在.NET Framework之上的,可使用Visual Basic ,C++这样的模块化程序设计语言,在第一次执行后不须重新编译就可直接运行,所以速度和效率比ASP这种只能用VBScript或JavaScript这样的非模块化语言来编写的脚本编程语言提高很多。

(2)是可重用性ASP.NET不再像ASP那样将ASP代码与HTML混合在一起,而是实现代码与内容的完全分离,可重用性强。

(3)是代码量.ASP对所有要实现的功能通过编写代码来实现,而ASP.NET只须预先说明,就可自动实现,所以,实现同样的功能,ASP.NET要比ASP代码量小的多。

Microsoft.NET作为一种面向网络、支持各种用户终端的开发平台环境,推动了新一代因特网的发展,真正地让人们可以在任何时间、任何地点、通过任何设备得到信息。而ASP.NET是建立在.NET平台构架上,利用公共语言运行库(Common Language Runtime)在服务器端为用户提供建立强大的企业级Web应用服务的编程框架。ASP.NET提供了一个统一的Web开发模型,并提供了开发人员创建企业极Web应用程序所需的各种服务。ASP.NET可以与任何与.NET兼容的语言编写应用程序。此外,ASP.NET应用程序都可以完全使用.NET Framework。

ASP.NET是.NET计划中的一个重要组成部分,其为Web应用程序开发人员提供了许多新特性,这些特性包括已编译的服务器端代码、一种将服务器端逻

辑与客户端布局相分离的代码隐藏(code-behind)技术、可扩展的服务器端控件模型、设计数据绑定模型、xcopy部署以及客户和服务器上的窗体身份证验证支持等。

与以前的Web开发工具相比,其主要表现在以下几方面:

增强的性能。ASP.NET 是在服务器上运行的编译好的公共语言运行库代码。与被解释的前辈不同,ASP.NET 可利用早期绑定、实时编译、本机优化和盒外缓存服务。这相当于在编写代码行之前便显著提高了性能。

世界级的工具支持。ASP.NET 框架补充了 Visual Studio 集成开发环境中的大量工具箱和设计器。WYSIWYG 编辑、拖放服务器控件和自动部署只是这个强大的工具所提供功能中的少数几种。

威力和灵活性。由于 ASP.NET 基于公共语言运行库,因此 Web 应用程序开发人员可以利用整个平台的威力和灵活性。.NET 框架类库、消息处理和数据访问解决方案都可从 Web 无缝访问。ASP.NET 也与语言无关,所以可以选择最适合应用程序的语言,或跨多种语言分割应用程序。另外,公共语言运行库的交互性保证在迁移到 ASP.NET 时保留基于 COM 的开发中的现有投资。

简易性。ASP.NET 使执行常见任务变得容易,从简单的窗体提交和客户端身份验证到部署和站点配置。例如,ASP.NET 页框架使您可以生成将应用程序逻辑与表示代码清楚分开的用户界面,和在类似 Visual Basic 的简单窗体处理模型中处理事件。另外,公共语言运行库利用托管代码服务(如自动引用计数和垃圾回收)简化了开发。

2.3 SQL Server数据库简介

SQL Server 是一个关系数据库管理系统。它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2 版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本。Sybase 则较专注于SQL Server在UNIX 操作系统上的应SQL Server安装界面用。

SQL Server 2005 Enterprise Edition(32 位和 64 位)

Enterprise Edition 达到了支持超大型企业进行联机事务处理 (OLTP)、高度复杂的数据分析、数据仓库系统和网站所需的性能水平。Enterprise Edition 的全面商业智能和分析能力及其高可用性功能(如故障转移群集),使它可以处理大多数关键业务的企业工作负荷。Enterprise Edition 是最全面的 SQL Server 版本,是超大型企业的理想选择,能够满足最复杂的要求。该版本还推出了一种适用于 32 位或 64 位平台的 120 天 Evaluation Edition。

SQL Server 2005 Standard Edition(32 位和 64 位)

Standard Edition 是适合中小型企业的数据管理和分析平台。它包括电子商务、数据仓库和业务流解决方案所需的基本功能。Standard Edition 的集成商业智能和高可用性功能可以为企业提供支持其运营所需的基本功能。Standard Edition 是需要全面的数据管理和分析平台的中小型企业的理想选择。

SQL Server 2005 Workgroup Edition(仅适用于 32 位)

对于那些需要在大小和用户数量上没有限制的数据库的小型企业,Workgroup Edition 是理想的数据管理解决方案。Workgroup Edition 可以用作前端 Web 服务器,也可以用于部门或分支机构的运营。它包括 SQL Server 产品系列的核心数据库功能,并且可以轻松地升级至 Standard Edition 或 Enterprise Edition。Workgroup Edition 是理想的入门级数据库,具有可靠、功能强大且易于管理的特点。

3. 系统分析

3.1可行性分析

可行性分析(已具备的条件和待解决的问题;拟采取的研究方法、技术路线、实验方案等)

1、已具备的条件:资料的查询、计算机硬件的准备、对已有教育信息交流网的研究。

2、待解决的问题:页面的设计实现、数据库的构建、库的连接及各个表的创建、文件的上传功能

3、拟采取的研究方法:ASP.NET SQL server

ASP.NET是Microsoft公司的产品,它是一个可以使用任何.NET语言兼容的应用程序。ASP.NET不仅是ASP的一个升级版本,它还提供了一个统一的web开发模型。ASP.NET的语法在很大程度上与ASP兼容,所以在现有ASP应用程序中可以添加ASP.NET代码,以增强ASP应用程序的功能。以往ASP网页并没有内建FTP文件上传功能,想要提供文件上传的功能,需额外购买文件上传组件,现在ASP.NET以内建文件上传的功能,既好用又不必额外付费。

SQL server2005是Microsoft公司发行的关系型数据库管理与分析系统,它提供了功能全面、操作简单的图形界面。由于ASP.NET应用的后台程序中有专门针对SQL server的数据应用类库供用户使用,方便了用户对数据的操作。 3.1.1 技术可行性

随着计算机的普及,其应用也越来越重要,正是在这种情况下各种应用软件也应运而生,而且不断丰富。在本系统中,操作人员易于贯穿软件思想并掌握使用方法,系统在运行时每一步都有相应的文字提示,有时还会弹出小窗口。只要根据提示进行相应的操作即可,操作十分简单。本系统是一套比较完整的应用程序,功能比较齐全,系统可以解决用户注册、查询信息、资料管理,资料下载,新闻信息,新闻公告,在线论坛等实用性问题。因此,开发此软件在技术上是可行的。

3.1.2 经济可行性

软件的经济可行性是指软件所能带来的经济效益与开发设计所需要的投资相比,是否相适宜,同时还要看此软件能否真正给用户带来足够的经济效益。我所开发的在线C语言学习系统正是基于为用户提高工作效率、节省工作时间、方便操作与管理的目的而设计的。本系统的开发在经济上是完全可行的。开发此软件不需要大量的经费,而且是个人独立设计,可以节省许多费用,同时也可提高个人的实际动手能力。 3.2.3 操作可行性

自从人类社会进入九十年代后,以及计算机技术的飞速发展,各种应用软件已日益为人们所接受。管理形式的计算机化是社会发展的必然趋势,各种智能化的软件层出不穷,而面对二十一世纪智能管理的挑战,减少了原来人工操作的费时费力的状况。并且可以避免人为的经济犯罪,管理层容易做出及时的决策。本系统用户平台直接面向普通用户,界面简单、明了,采用可视化界面,普通用户只需用鼠标就可以完成相应的数据操作;少量的数据输入是由后台管理员用户完成的。对于初次使用此系统的用户,不必经过复杂的培训和学习就可以掌握本系统的操作流程。由此可见,开发此系统在操作上是可行的。

3.2 需求分析

用业务流程图描述系统各项业务处理过程,并结合业务流程图详细准确地说明业务处理过程中数据的收集、输入、传递、存储、加工的方法、算法、输出的数量及形式等。

1.基本信息业务流程描述如下:

操作员登陆后可以操作的功能包括:账号管理、信息管理、教学视频管理、论坛管理、报名管理、用户信息管理等功能模块。

系统业务流程如图3-1所示。

开始 后台登陆 身份验证 是否正确 Y 系统后台 N 选择1 N 选择2 N 选择3 N 选择4 N 选择5 N 选择6 Y 账号管理 Y 信息管理 Y 视频管理 Y 会员管理 Y 教师管理 Y 论坛管理 结束

图3-1 系统业务流程

2.信息管理业务流程描述如下:

管理员添加一些信息到信息表中。前台学生可以对信息进行查看。 信息管理包括新闻公告,教学大纲信息,参考文献,课程习题等信息。 信息管理业务流程如图3-2所示。

管理员 信息 添加 会员理 保存 前台 显示 图3-2 信息管理流程图

3.教学视频管理业务流程描述如下:

管理员添加教学视频信息到数据库表中。前台学生可以对教学视频信息进行查看。

教学视频管理业务流程如图3-3所示。

教学视频前台 显示管理员 信息 添加

会员 图3-3 教学视频管理业务流程图 4.教师信息管理业务流程描述如下: 管理员添加教师信息到教师信息表中。 教师信息管理业务流程如图3-4所示。

管理员 信息 添加

教师信息前台 显示会员

图3-4 教师信息业务流程图

5.课件信息管理业务流程描述如下:

管理员可以再台对课件信息进行管理,包括添加课件信息,修改课件信息,删除课件信息,学生在前台可以查看和下载课件信息。

课件管理业务流程如图3-5 所示。

课件信息 后台 管理会员 课件 下载

图3-5 课件信息管理业务流程图

管理员 6.论坛管理业务流程描述如下:

注册用户在前台可以发布论坛主题信息,回复主题信息等功能,管理员可以在后台对论坛信息进行管理。

论坛信息管理业务流程如图3-6 所示。

论坛信息 后台 管理用户 主题 添加

图3-6 论坛管理业务流程图 管理员

3.3需求分析

在对系统已经有了初步的了解之后,本章会对系统模块做一个完整的需求分析,定义模块需要实现的功能以及需要达到的性能等。

设计并开发在线C语言学习系统就要对整个系统的需求和流程进行分析,所以本节我们主要对在线C语言学习系统的整个流程进行需求分析。

我们先来看下整个系统的用例图:

账号管理<><><><><>新闻管理<><>教师管理资料管理视频管理论坛管理学生管理课程介绍修改信息<>系统管理员<><><><><><>资料下载修改密码<><>在线视频新闻显示学生在线交流教师信息用户登录

图3-1 系统用例图

3.4 性能需求

(1) 数据精度

对于系统软件要求输入的数据或者软件运行输出的数据精度严格按照系统设计时的要求,在数据传输过程中要保持数据精度,不能丢失精度。

(2) 时间特性要求

对于系统软件运行时的时间特性要求如下:

响应时间:满足使用需要,在使用者容忍范围之内; 更新处理时间:及时更新;

数据的转换和传送时间:满足使用需要,在使用者容忍范围之内。

学生信息新闻信息登录账号编号注册时间登录密码姓名电话

图3-8学生信息实体图

论坛帖子信息实体图如图3-9。

编号论坛主题新闻信息标题点击次数发布时间发布用户版面

图3-9论坛帖子信息实体图

论坛回复信息实体图如图3-10。

编号回复信息新闻信息回复内容点击次数回复时间回复用户主题编号

图3-10论坛回复信息实体图

教师信息实体图如图3-11。

教师信息新闻信息姓名编号教师头像年龄邮箱电话

图3-11教师信息实体图

4.2.2数据库表设计

本系统采用SQL2005数据库系统作为系统的后台数据库,建立的数据库名称为czaixianceshixitong包括的数据库表主要有9个基本表。

课程简介信息表如表3-1所示

表3-1 课程简介信息表(AboutInfo)

列 名 AboutInfo

说 明 名称

类 型 ( 长 度 ) text

备 注 不允许空

管理员信息表如表3-2所示

表3-2 管理员信息表(Admin)

列 名 Id Aname Apwd

说 明 编号 名称 密码

类 型 ( 长 度 ) Int (4) Varchar (50) Varchar (50)

备 注 不允许空,主键 不允许空 不允许空

用户信息表如表3-3所示

表3-3 用户信息表(Users)

列 名 Id UserName XingMing Sex Age

说 明 编号 登陆账号 姓名 性别 年龄

类 型 ( 长 度 ) Int (4) Varchar (50) Varchar (50) Bigint (8) Varchar (20)

备 注 不允许空,主键 不允许空 不允许空 不允许空 不允许空

emal UserType XueXiao Ds Photo pwd

电子邮件 用户类型 学校 描述 照片 密码

Varchar (50) Varchar (50) Varchar (50) Varchar (50) Dattime (8) Varchar (50)

不允许空 不允许空 不允许空 不允许空 不允许空 不允许空

视频信息表如表3-4所示

表3-4 视频信息表(Video)

列 名 Id VideoName VideoDs VideoPath Addtime FileName

说 明 编号 视频名称 视频描述 视频地址 添加时间 文件名称

类 型 ( 长 度 ) Int (4) Varchar (50) text Varchar (20) datetime Varchar (50)

备 注 不允许空,主键 不允许空 不允许空 不允许空 不允许空 不允许空

课件信息表如表3-5所示

表3-5课件信息表(FileInfo)

列 名 Id TitleName FileDs FilePath Addtime FileName

说 明 编号 资料名称 资料描述 文件地址 添加时间 文件名称

类 型 ( 长 度 ) Int (4) Varchar (50) text Varchar (20) datetime Varchar (50)

备 注 不允许空,主键 不允许空 不允许空 不允许空 不允许空 不允许空

论坛主题信息表如表3-6所示

表3-6 论坛主题信息表(Topic)

列 名 Id

说 明 编号

类 型 ( 长 度 ) Int (4)

备 注 不允许空,主键

Topic AddUser Addtime Contents isReplay

问题标题 发布人 发布时间 内容 是否回复

Varchar (50) Varchar (50) Varchar (20) Varchar (50) Varchar (50)

不允许空 不允许空 不允许空 不允许空 不允许空

信息表如表3-7所示

表3-7 信息表(News)

列 名 Id name content typeid TypeName Addtime

说 明 编号 新闻标题 新闻内容 类别编号 信息类别 添加时间

类 型 ( 长 度 ) Int (4) Varchar (50) text Int (4) Varchar (50) datetime

备 注 不允许空,主键 不允许空 不允许空 不允许空 不允许空 不允许空

回复信息表如表3-8所示

表3-8 回复信息表(Replay)

列 名 Id Replay ReplayUser TopicId AddTime ReplayTitle

说 明 编号 回复内容 回复人 问题编号 回复时间 回复标题

类 型 ( 长 度 ) Int (4) Varchar (50) Varchar (50) Int (4) Datetime(8) Varchar (50)

备 注 不允许空,主键 不允许空 不允许空 不允许空 不允许空 不允许空

信息类别表如表3-9所示

表3-9信息类别表(Infotype)

列 名 Id Name

说 明 编号 类别名称

类 型 ( 长 度 ) Int (4) Varchar (50)

备 注 不允许空,主键 不允许空

5.系统详细设计

5.1功能模块的详细设计

首页是网站的第一个页面,也是打开网站的第一个页面,本网站首页显示了很多信息,包括界面的导航信息,用户登陆,用户注册,在线论坛,教学视频,课程习题,多媒体课件,新闻公告,教师信息,教学大纲,参考文献,课程简介等链接。

网站首页的运行效果如图5-1。

图5-1网站前台

网站首页的关键代码如下: if (!IsPostBack) {

getAbot();

dlNews.DataSource = data.GetDataReader(\ 5 * from News where TypeName='新闻公告' order by id desc \ dlNews.DataBind();

dlXinDe.DataSource = data.GetDataReader(\ 5 * from News where TypeName='教学大纲' order by id desc \ }

5.2学生管理模块

学生模块包括学生的注册,学生登录,管理员对学生信息进行管理。学生注册信息包括学生登录账号,学生密码,学生性别,学生真实姓名,学生电话,学生住址,学生邮编等信息。

学生注册界面如图5-2 。

图5-2学生注册界面

学生登录界面如图5-3。

图5-3学生登录界面

学生管理是管理员对前台注册的学生信息进行管理的功能模块,管理员可以查看学生信息,可以删除学生信息。

学生管理界面如图5-4。

图5-4后台学生管理界面

学生注册的关键代码如下: protected void Button1_Click(object sender, EventArgs e) {

data.RunSql(\

Users(emal,UserName,Sex,Age,Ds,pwd,UserType,XueXiao,XingMing,Photo,Tel)values('\Age.Text + \学生','\XingMing.Text + \

Alert.AlertAndRedirect(\注册成功!\}

5.3信息管理模块

信息管理模块包括了几个大的功能模块,包括学生前台显示查看信息内容和列表,后台管理员添加信息,修改信息,删除信息,信息类别管理等功能模块。

信息列表功能模块显示了资料的列表信息,包括信息的标题,发布时间,信息类别,信息内容等信息。

添加信息模块,添加信息是后台管理员添加信息的功能,添加的信息包括信息的标题,信息的类别,信息的内容等信息。

管理员还可以对信息进行查看和修改删除等操作。

管理员进入后台可以对信息进行添加,添加信息的界面如图5-5。

图4-5添加信息界面

管理信息是管理员在后台具有的功能,包括修改信息,删除信息等功能。管理信息的界面如图5-6。

图5-6信息管理界面

添加信息的关键代码如下:

protected void Button1_Click(object sender, EventArgs e) {

string sql = \title.Text.ToString().Trim() + \

DropDownList1.SelectedValue + \ data.RunSql(sql);

Alert.AlertAndRedirect(\添加成功\ }

5.4 教学视频信息管理模块设计

教学视频信息模块网站对教学视频信息进行管理包括管理员添加教学视频信息,修改教学视频信息,删除教学视频信息,前台显示教学视频信息。

后台管理员可以对教学视频信息进行添加,添加教学视频信息的界面如图5-7。

图5-7添加修改教学视频信息界面

后台管理员添加了教学视频前台就能显示出来,教学视频信息显示的界面如图5-8。

图5-8教学视频信息显示界面

添加教学视频管理的关键代码如下:

protected void Button1_Click1(object sender, EventArgs e) {

string filename = Hidden1.Value; int i = this.pic.Text.LastIndexOf(\

string newname = this.pic.Text.Substring(i);//获取文件的扩展名 string sql = \

Video(VideoName,VideoDs,VideoPath,Ename,FileName,Photo)values('\

TextBox1.Text.Trim() + \\ data.RunSql(sql);

Alert.AlertAndRedirect(\添加成功继续添加\ }

5.5 账号管理模块详细设计

账号管理模块是对使用网站后台的用户进行管理的功能模块,包括添加账号信息,修改账号信息,删除账号信息等功能模块。

添加管理员账号信息界面如图5-9。

图5-9添加管理员账号

后台管理员可以对账号信息进行管理的功能模块,管理账号信息界面如图5-10 。

图5-10账号管理信息界面

添加管理员的关键代码如下:

protected void btnAdd_Click(object sender, EventArgs e)

{

try {

SqlConnection con = new SqlConnection(SqlHelper.connstring); con.Open();

SqlCommand cmd = new SqlCommand();

cmd.Connection = (SqlConnection)con;//对象实例化 cmd.CommandText = \(Apwd,Aname)values(@Apwd,@Aname)\

cmd.Parameters.Add(\ cmd.Parameters.Add(\ cmd.Parameters[\ cmd.Parameters[\ cmd.ExecuteNonQuery(); con.Close();

Response.Write(\添加成功');location.href='AdminList.aspx'\ } catch {

Response.Write(\添加失败');location.href='AdminList.aspx'\ } }

5.6 论坛管理模块详细设计

论坛管理模块是系统中最重要的功能模块,包括学生发布论坛主题功能,学生回复论坛主题信息,管理员对论坛版面信息的管理,管理员对用户发布的帖子信息进行管理的功能。

用户发布主题信息,包括主题标题和内容以及所在论坛版面信息。发布帖子界面如图5-11。

图5-11用户发帖界面

论坛主题回复操作,用户点击一个主题之后就能查看帖子的详细信息,已经登陆的用户还可以对主题进行回复,回复帖子信息的界面如图5-12。

图5-12回复帖子界面

发布帖子的关键代码如下:

protected void Button1_Click(object sender, EventArgs e) {

SqlHelper data = new SqlHelper();

data.RunSql(\+ \ Alert js = new Alert(); js.Alertjs(\发布成功\

Response.Redirect(\ }

6.系统测试

6.1 测试目的

软件是由程序员来编写的,程序员在编程时难免出错。错误可能发生在需求分析、概要设计、详细设计、编码等软件开发的各个阶段,如果这些错误不能在软件交付使用前被查出改正,那么迟早会在软件运行期间被发现,不仅修改这些错误的代价会更高,而且往往造成很恶劣的后果。开发任何一个软件系统,设计完成以后都必须经过调试。只有通过调试,才能检验软件产品的性能和质量,才能发现并解决系统、程序或功能等方面的错误。调试是发现、检查并纠正错误的过程,是开发一个软件系统必不可少的过程。由于软件测试的目标,就决定了软件测试的首要作用是寻找出软件当中的错误。测试理论指导测试人员设计出更容易发现软件错误的测试用例,有助于在软件正式运行之前发现更多的错误,减少软件正式使用之后出现问题的频度;其次,软件测试带来的益处是能够验证软件的功能与性能等方面是否与软件需求相符;此外,软件测试时收集到的测试结果数据为软件的可靠性与质量分析提供了依据。

程序调试是一个复杂而漫长的工作,调试基本上可分为两个阶段:一是单个模块调试,二是整个软件的总体调试。单个模块调试是比较基本的调试内容,当然在这里要再细分的话,还要对每个域属性进行设置,判断每个触发器的编制是否正确,这些都直接影响整个模块的功能及运行的成功。调试时,对触发器的级别,触发器名称、属性、主程序等应反复编译、测试,直到实现模块功能运行成功为止。对于总体程序的实现,就是把每个模块与菜单连在一起,然后试验各个内容是否正确。

6.2 测试方法

在软件开发的过程中,软件测试是其中重要的一部分。由于开发一个软件项目的时间是漫长的,同时也要面对极其错综复杂的问题,人们的主观认识不可能完全符合客观现实,而与工程密切相关的各类人员之间的通信和配合也不可能完美无暇,因此,软件生命周期的每个阶段都不可回避地会产生差错,我们力是求在每个阶段加速之前通过严格的技术审查尽可能的早发现并纠正错误。如果在软件投入运行前,没有发现并纠正软件中的大部分错误,则这些错误迟早会在管理过程中暴露出来,那进不仅改正这些错误的代价更大,而且会

造成很恶劣后果。测试的目的就是在软件投入实际使用前,尽可能地多发现软件中的错误。目前软件测试仍然是保证软件质量的关键步骤,它是对软件规格说明设计和编码最后复查。

我们的测试的原则:通过测试发现程序在的错误、尽可能发现目前尚未发现的算法错误。

测试的正确定义是“为了发现程序中的错误而执行程序的过程”。这和某些人通常想象的“测试为表明程序是正确的”,“成功的测试是没有错误的测试”等等是完全相反的。正确认识测试的目的是十分重要的,测试的目的决定了测试方案的设计。如果为了表明程序是正确的而进行测试,就会设计一些不易暴露的测试方案。

6.3 系统测试

6.3.1 测试的数据

在进行编写调试时,我都是按照“编码→测试→修改→再测试(→再修改)”方式进行,所需的数据都是由本人自己添加,系统在设计中使用的测试数据也是由本人随机输入产生。 6.3.2 系统测试方法

首先在自己的电脑上进行多次测试,保证不能有错误和过失,其次是在安装有数据库SQL server 2005和Microsoft Visual Studio.NET 2005的同学电脑上进行测试,测试在不同的电脑上本系统能否运行正常,以达到测试的效果。

6.3.3 系统测试项目表

测试项目表如下: 序号 1 续表5-1 测试项目表 2 用户管理 输入正确信息 成功完成 测试项目 用户登录 表5-1 测试项目表

内容和目的 输入正确账号与密码 输入错误账号与密码 测试结果 可以登录 提示错误的信息

本文来源:https://www.bwwdw.com/article/nh36.html

Top