计算机软件毕业设计离散数学课程网站的设计与分析Word文件下载.docx
《计算机软件毕业设计离散数学课程网站的设计与分析Word文件下载.docx》由会员分享,可在线阅读,更多相关《计算机软件毕业设计离散数学课程网站的设计与分析Word文件下载.docx(32页珍藏版)》请在冰豆网上搜索。
![计算机软件毕业设计离散数学课程网站的设计与分析Word文件下载.docx](https://file1.bdocx.com/fileroot1/2022-12/14/1daade97-bb3e-43e0-a93b-34bae42bf460/1daade97-bb3e-43e0-a93b-34bae42bf4601.gif)
Networkofkeycurriculum;
MultimediaTeaching;
MultimediacoursewareInteractivity
1引言
在21世纪这个信息高度发达,并且高速流通的时代,计算机的普及以及计算机网络技术的应用,让大量普通人能够有机会接触到比以往更多的知识。
对于一门重点课程,建立一个自己的重点课程网站是十分必要的事情,这不仅能使更多的人享用宝贵的教育资料源,同时也对于提高学生自学能力,有相当大的帮助。
当前的网络课程大部分都功能齐全完整,表现手段向综合型、立体型发展,信息量大、素材多,界面友好清新明快,在实验教学和教学设计方面也有所突破,但仍有很多问题,如缺乏师生在线交流,学生不能对一门课程的整体把握而导致不能正确制定学习计划。
离散数学是研究离散量的结构及其相互关系的数学学科,是现代数学的一个重要分支。
它在各学科领域,特别是计算机技术领域有着广泛的应用。
同时,离散数学也是计算机学科很多课程的基础课程,如数据结构、算法设计与分析、操作系统、人工智能等。
为了更好的掌握后续这些重要课程,提高抽象思维和逻辑推理能力,在学习离散数学这门课程的过程中一定要掌握方法,通过课上课下学习掌握基础知识和思维方式。
三层架构是软件体系架构中设计中最简单、最常见的一种架构模式。
三层架构主要分为数据访问层(DAL)、业务逻辑层(BLL)、表现层(UI)三层。
开发人员可以只关注整个结构中的其中某一层来进行分析设计,也可以很容易的用新的实现来替换原有层次的实现,同时三层架构降低了不同层之间的依赖,有利于标准化和各层逻辑的复用。
三层架构在后期维护的时候,极大地降低了维护的成本和时间。
随着技术的发展,传统的HTML静态网页已不能满足人们的需要,动态网页技术孕育而生,ASP.Net技术是目前最为流行的动态网页技术。
ASP是最常用的网页技术之一,ASP.Net是ASP的升级版,在技术上有很大的飞跃。
而ASP.Net又从VB.Net过渡到了C#.Net,使包括表单提交客户端身份验证的一些常用任务变得简单易行,同时也使界面变得美观,对信息的管理更加高效、及时,提高了工作效率。
本重点课程网就是基于Internet跟多媒体计算机的这种图文并茂,易于学生理解、学习的优势产生的,使教学内容而不受时间和空间的限制,学生可以根据自己的需要选择要学习的内容。
2
开发环境及技术简介
本设计是Windows7操作系统下开发的,采用ASP.net语言的Web系统开发技术,基于三层架构的开发流程,开发工具采用VisualStudio2010和SQLSever2008,运行环境为IIS。
所设计的离散数学重点课程网包括自主学习功能模块和互动交流模块,其中自主学习模块包括课程介绍、教师介绍、教学大纲、教学计划、多媒体课件、电子教案、课后习题等模块,互动交流主要是指留言及留言管理模块、用户管理等模块。
下面在本章中对以上提到的技术和工具分别加以简单介绍。
2.1ASP.net技术
ASP是一项微软公司的技术,是一种使嵌入网页中的脚本可由因特网服务器执行的服务器端脚本技术。
指ActiveServerPages(动态服务器页面),运行于IIS之中的程序。
ASP.net是一种建立在通用语言上的程序构架,能被用于一台Web服务器来建立强大的Web应用程序。
ASP.net提供许多比现在的Web开发模式强大的的优势。
a)执行效率的大幅提高
ASP.net是把基于通用语言的程序在服务器上运行。
不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译,这样的执行效果,当然比一条一条的解释强很多。
b)世界级的工具支持
ASP.net构架是可以用Microsoft(R)公司的产品VisualS开发环境进行开发,WYSIWYG(WhatYouSeeIsWhatYouGet所见即为所得)的编辑。
这些仅是ASP.net强大化软件支持的一小部分。
c)强大性和适应性
因为ASP.net是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。
通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.net的Web应用中。
ASP.net同时也是language-independent语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C++和Java的结合体),VB,Jscript,本重点课程网主要用到了C#和Jscript。
将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向ASP.net。
d)高效可管理性
使用一种字符基础的,分级的配置系统,虚拟服务器环境和应用程序的设置更加简单。
因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。
这种被称为"
ZeroLocalAdministration"
的哲学观念使的基于应用的开发更加具体和快捷。
一个的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须的文件,不需要系统的重新启动,一切就是这么简单。
多处理器环境的可靠性已经被刻意设计成为一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝连接技术,将很大的提高运行速度。
即使你现在的应用软件是为一个处理器开发的,将来多处理器运行时不需要任何改变都能提高他们的效能,但现在的ASP却做不到这一点。
自定义性和可扩展性设计时考虑了让网站开发人员可以在自己的代码中自己定义"
plug-in"
的模块。
可以通过在现有ASP应用程序中逐渐添加功能,随时增强ASP应用程序的功能。
是一个已编译的、基于.NET的环境,把基于通用语言的程序在服务器上运行。
将程序在服务器端首次运行时进行编译,比ASP即时解释程序速度上要快很多.而且是可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScript.NET.)创作应用程序。
另外,任何应用程序都可以使用整个.NETFramework。
开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。
可以无缝地与WYSIWYGHTML编辑器和其他编程工具(包括MicrosoftVisualStudio.NET)一起工作。
这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI和完全集成的调试支持。
2.2三层架构
三层架构(3-tierarchitecture)将整个业务应用划分为:
表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。
区分层次的目的即为了“高内聚,低耦合”的思想。
其分层结构如下图2.1所示:
2.2.1三层架构原理
3个层次中,系统主要功能和业务逻辑都在业务逻辑层进行处理。
所谓三层体系结构,是在客户端与数据库之间加入了一个“中间层”,也叫组件层。
这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即使这三个层放置到一台机器上。
三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。
通常情况下,客户端不直接与数据库进行交互,而是通过COM/DCOM通讯与中间层建立连接,再经由中间层与数据库进行交互。
2.2.2各层作用
Ø
数据访问层(DAL)
主要是对原始数据(数据库或者文本文件等存放数据的形式)的操作层,而不是指原始数据,也就是说,是对数据的操作,而不是数据库,具体为业务逻辑层或表示层提供数据服务。
业务逻辑层(BLL)
主要是针对具体的问题的操作,也可以理解成对数据层的操作,对数据业务逻辑处理,如果说数据层是积木,那逻辑层就是对这些积木的搭建。
表示层(UI)
主要表示WEB方式,也可以表示成WINFORM方式,WEB方式也可以表现成aspx,如果逻辑层相当强大和完善,无论表现层如何定义和更改,逻辑层都能完善地提供服务。
2.2.3区分方法
主要看你的数据层里面有没有包含逻辑处理,实际上他的各个函数主要完成各个对数据文件的操作。
而不必管其他操作。
主要负责对数据层的操作。
也就是说把一些数据层的操作进行组合。
主要对用户的请求接受,以及数据的返回,为客户端提供应用程序的访问。
2.2.4三层架构的优点
从开发角度和应用角度来看,三层架构比双层或单层结构都有更大的优势。
三层结构适合群体开发,每人可以有不同的分工,协同工作使效率倍增。
开发双层或单层应用时,每个开发人员都应对系统有较深的理解,能力要求很高,开发三层应用时,则可以结合多方面的人才,只需少数人对系统全面了解,从一定程度工降低了开发的难度。
三层架构属于瘦客户的模式,用户端只需一个较小的硬盘、较小的内存、较慢的CPU就可以获得不错的性能。
相比之下,单层或胖客户对面器的要求太高。
三层架构的另一个优点在于可以更好的支持分布式计算环境。
逻辑层的应用程序可以有多个机器上运行,充分利用网络的计算功能。
分布式计算的潜力巨大,远比升级CPU有效。
三层架构的最大优点是它的安全性。
用户端只能通过逻辑层来访问数据层,减少了入口点,把很多危险的系统功能都屏蔽了。
另外三层架构还可以支持如下功能:
RemoteAccess(远程访问资料),例如可透过Internet存取远程数据库;
HighPerformance(提升运算效率)解决集中式运算(Centralize)及主从式架构(Client-Server)中,数据库主机的运算负担,降低数据库主机的ConnectionLoad,并可藉由增加AppServer处理众多的数据处理要求,这一点跟前面讲到的分布式计算提高运算能力是一个道理;
Client端发出Request(工作要求)后,便可离线,交由AppServer和DataBaseServer共同把工作完成,减少Client端的等待时间。
2.3数据库技术
2.3.1数据库(Database)
数据库(Database),是按照数据结构来组织、存储和管理数据的仓库,是用于查询的大量数据的存储区域。
使用数据库可以带来许多好处:
如减少了数据的冗余度,从而大大地节省了数据的存储空间,实现数据资源的充分共享等等。
此外,数据库技术还为用户提供了非常简便的使用手段,使用户易于编写有关数据库应用程序。
特别是近年来推出的计算机关系数据库管理系统,操作直观,使用灵活,编程方便,功能强大,环境适应广泛,数据处理能力极强。
数据库的设计是指对一个给定的应用环境,构造数据库模式,建立数据库及其应用系统,满足各种用户需求。
作为信息资源开发、管理和服务的一种有效的手段,数据库技术的应用已越来越广泛,从小型的单项事务处理系统到大型的信息系统大都用先进的数据库技术来保持系统数据的安全性、完整性和共享性。
对一个实际的系统来说,数据库表的设计在遵循数据库理论的同时,必须能用开发工具来实现用户在各方面提出的功能要求。
我们现在可以使用的数据库有很多种,如:
Fox数据库(.dbf)、Access数据库(.mdb)、DB2、Informix、Oracle和SQLServer等等,在本次设计中,选择了SQLServer作为后台数据库工具,因为它功能远比Access、Fox数据库(.dbf)强大,并提供了许多标准的关系数据库管理功能的支持。
他的各种关系数据库管理系统适应于各种硬件平台,包括Unix,PC和主机系统。
数据库的完整性是指数据的正确性和相容性。
数据库管理系统(DBMS)用一定的机制来检查数据库中的数据是否满足规定的条件——完整性约束条件,数据的约束条件是语义的体现,将作为模式的一部分存入数据库中。
在此网站中为确保数据的完整性,在不同的模块中修改数据,将对与其关联的数据进行更新。
数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄漏、更改或破坏。
在数据库系统中,大量的数据集中存放,而且为许多用户直接共享,是宝贵的信息资源,网站的安全保护措施就显得更为重要,它保护数据库防止恶意的破坏和非法的存取。
2.3.2SQL
SQL是英文StructuredQueryLanguage的缩写,意思为结构化查询语言。
SQL是一种通用的、功能强的数据库语言,不仅具有查询功能,还有数据定义语言DDL、数据操纵语言DML、数据控制语言DCL的功能,是一种通用的关系数据库语言,能够完成从定义数据库、录入数据来建立数据库,并且为用户提供查询、更新、维护、扩充等操作,以及保障数据安全的操作。
SQL语言采用面向集合的操作方式,不仅查找结果可以是记录的集合,而且一次插入、删除、更新操作的对象也可以是记录的集合。
SQL提供的两种使用方式:
一种是自含语言,是一种以独立语言的方式与机器进行交互,是非过程化语言,用户只需提出操作要求,发出SQL命令,而不必提出操作步骤;
另一种是宿主语言,是将SQL命令嵌入某种高级程序设计语言中,以实现数据库操作,从整个程序来讲是过程化的,程序中规定了操作的步骤,但嵌入的SQL语言仍是非过程化的,完成该语句的过程由系统经过优化决定。
SQL的使用:
ASP.net与SQLSERVER2008数据库连接:
Sqlconnectioncon=newSqlconnection(“连接数据库”);
con.Open();
Sqlcommandcmd=newSqlcommand(“sql语句”,con);
2.4IIS
IIS(InternetInformationServices)即互联网信息服务,是由微软公司提供的基于运行MicrosoftWindows的互联网基本服务,包括WEB、FTP、SMTP等服务器组件。
IIS集成在Windows2000/2003Server版中,在Windows2000Server中集成的是IIS5.0,在WindowsServer2003中集成的是IIS6.0。
IIS6.0不能用于Windows2000中。
Windows9x/Me里也有IIS,但只是PWS(个人WEB服务器),功能很有限,只支持1个连接。
WindowsXP里也能安装IIS5.0,但功能受到限制,只支持10个连接。
通常在WindowsXP操作系统中安装IIS的目的是为了调试ASP等程序。
IIS6.0包括了Windows管理规范(WMI)提供程序,WMI这一技术允许管理员以编程方式控制所有服务和应用程序。
目前的windowsvista及windows7中均可自己通过控制面板进行添加IIS6.0服务。
2.5Web服务的发展
2.5.1主机/终端结构
最早的计算机网络是伴随着主机(Host)和终端(Terminal)这两个概念的出现而产生的。
当时的主机通常指大型机或功能较强的小型机,而终端则是指一种计算机外部设备,现在的终端概念已定位到一种由CRT显示器、控制器及键盘合为一体的设备,它与我们平常指的微型计算机的根本区别是没有自己的中央处理单元(CPU),当然也没有自己的内存,其主要功能是将键盘输入的请求数据发往主机(或打印机)并将主机运算的结果显示出来。
而随着互联网的发展,目前对于“终端”一词又引入了新的含义。
对互联网而言,终端泛指一切可以接入网络的计算设备,如个人电脑、网络电视、可上网手机、PDA等。
2.5.2客户机/服务器结构
C/S模式主要由客户应用程序(Client)、服务器管理程序(Server)和中间件(middleware)三个部件组成。
客户应用程序是系统中用户与数据进行交互的部件。
服务器程序负责有效地管理系统资源,如管理一个信息数据库,其主要工作是当多个客户并发地请求服务器上的相同资源时,对这些资源进行最优化管理。
中间件负责联结客户应用程序与服务器管理程序,协同完成一个作业,以满足用户查询管理数据的要求。
2.5.3浏览器/服务器结构
B/S模式是一种以Web技术为基础的新型的MIS系统平台模式。
把传统C/S模式中的服务器部分分解为一个数据服务器与一个或多个应用服务器(Web服务器),从而构成一个三层结构的客户服务器体系。
第一层客户机是用户与整个系统的接口。
客户的应用程序精简到一个通用的浏览器软件,如NetscapeNavigator,微软公司的IE等。
浏览器将HTML代码转化成图文并茂的网页。
网页还具备一定的交互功能,允许用户在网页提供的申请表上输入信息提交给后台,并提出处理请求。
这个后台就是第二层的Web服务器。
第二层Web服务器将启动相应的进程来响应这一请求,并动态生成一串HTML代码,其中嵌入处理的结果,返回给客户机的浏览器。
如果客户机提交的请求包括数据的存取,Web服务器还需与数据库服务器协同完成这一处理工作。
第三层数据库服务器的任务类似于C/S模式,负责协调不同的Web服务器发出的SQ请求,管理数据库。
3
需求分析
需求分析是一种软件工程活动,在整修软件工程中处于十分重要的地位,它是架起最终用户和软件产品之间关系的桥梁工程。
是指理解用户需求,就软件功能与客户达成一致,估计软件风险和评估项目代价,最终形成开发计划的一个复杂过程。
在这个过程中,用户的确是处在主导地位,需求分析工程师和项目经理要负责整理用户需求,为之后的软件设计打下基础。
需求分析就是分析软件用户的需求是什么.如果投入大量的人力,物力,财力,时间,开发出的软件却没人要,那所有的投入都是徒劳.如果费了很大的精力,开发一个软件,最后却不满足用户的要求,从而要重新开发过,这种返工是让人痛心疾首的。
因此,此离散数学重点课程网的开发也毫不例外,首当其冲的任务就是需求分析。
说到需求分析,其主要任务也就是要弄清楚客户所需要的离散数学精品网站具备哪些功能。
离散数学重点课程网开发出来后,能不能满足客户提出的要求。
本网站是一个通用的学习型网站,因此,此网站只具备一些基本功能,对于客户有特别要求的地方,还需另行开发。
3.1任务描述
本网站主要完成广大学习者特别是正在学习离散数学这门课程的学生,能够在线自主地学习,主要任务:
●对离散数学这门课的简介及教学计划、教学大纲,即可以非常清楚地明白自己所学习的这门课,合理的制定学习计划。
●为广大学习者提供一个在线学习的空间,即可以在网上在线学习离散数学这门课的各章内容,以致学习者能够更加牢固地掌握知识。
●为广大学习者提供一个自我测试的空间,即可以在线观看历年真题,以督促学习。
●为广大学习者提供一个自由问答的空间,即在这里有什么不会的,不太了解的,都可以提问,教师可以根据每个学习者的不同情况,给予回复,其他学习者也可以根据自己的理解给予回复,以达到让学习者拥有满载而归的感觉。
3.2功能需求
通过与老师及学生的调研过程中了解到基本模块主要完成课程介绍、主讲教师介绍、授课内容、在线学习、试题习题、在线交流功能。
离散数学重点课程网的结构如图3.2所示:
授课内容模块中通过下拉列表的模式点击对应选项可以实现在线预览模式。
在线学习模块中通过选择对应选项,会在页面中列出该模块的所有文件名,点击对应的文件名便会跳转至在线预览模式。
在线交流是一个单独的模块,该模块既实现了用户间的交流,又实现了后台用户及留言的管理,该模块的界面采用最新的windows8的Metro风格给人感觉一新,点击对应模块便可进入对应功能模块。
其中的留言模块无论是否登录到系统中均可以查看,用户若没有登录入系统则在发表留言提问或回复的时候则默