• 1.19 MB
  • 2022-04-22 13:44:36 发布

学生处管理系统毕业论文.doc

  • 39页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'学生处管理系统毕业论文目 录第一章 绪论1第一节选题背景和意义1第二节国内外研究概况1第三节本文研究的主要问题2第二章 相关技术介绍4第一节ASP.NET简介4一、什么是ASP.NET4二、ASP.NET技术优势4第二节其他技术介绍6一、.NETFramework6二、C#语言7三、ASP.NETAJAX8第三节三层架构9第三章 软件可行性研究及其需求分析10第一节可行性研究10一、技术可行性10二、经济可行性11三、操作可行性11第二节需求分析12一、理解需求12二、需求分析13II 三、软件需求13四、硬件需求14第四章 系统总体设计与实现14第一节系统数据流程分析15第二节系统概要设计17第三节数据库结构设计18第五章 系统详细设计25第一节用户登陆25第二节教师管理界面26第三节学生管理界面27第四节课程管理界面30第五节成绩管理界面31第六节班级管理界面32第六章 总结34致谢35参考文献36II 第一章 绪论第一节 选题背景和意义学生处信息管理系统是一个教育单位不可缺少的组成部分,它的内容对于学校的决策者和管理者来说都是至关重要的。随着用户的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。面对庞大的信息量,学生信息管理系统必须肩负起提高学生管理工作效率的重任,通过这样的系统,必须做到信息的规范管理、科学统计和快速的查询,从而方便老师及时、全面地掌握学生情况,减少工作量,规范用户管理学生,实现无纸办公。从技术角度上讲,各种开发工具已日趋成熟。随着互联网的普及,开发基于互联网络的学生信息管理系统己不再困难。首先,由于开发工具尤其是在.NET家族中的ASP.NET出现后,使得开发基于互联网的学生信息管理系统变得简单易行;其次,SQLServer己成为世界上最流行的数据库管理系统。同时,.NET家族中ADO.NET对各种数据库提供了全面的支持,使得对SQLServer的操作变的更简单、更高效。基于以上的原因和背景,开发一套基于互联网的学校学生信息管理系统是必要和可行的。第二节国内外研究概况2000年6月22日,微软公司向全球宣布了其下一代软件与服务,即Microsoft.NET平台的构想与实施步骤。.NET的目标是人们今后无论何时何地,都可以通过任何一台计算机或手机、掌上电脑等移动设备来处理个人数据、玩游戏或者上网冲浪。通俗地讲,.NET的核心内容之一就是要搭建第三代互联网平台。从.NET的发布之日开始,国内外对它的研究比较多。国外对ASP.NET共36页第37页 研究方面的资料已经比较丰富,JesseLiberty和DanHurwitz演示了如何使用VisualStudio2005和ASP.NET2.0来构建下一代Web应用程序。深入讨论了控制、事件、ASP.NETWeb页面的生命周期以及其他ASP.NET框架。GlennJohnson是一名专业培训师,具有多年的教学经验,他曾担任过Tyco国际集团的信息技术和技术支持总管,目前在开展自己的培训、咨询和开发业务。他制作过课件,并在全球各地讲过MicrosoftASP.NET,ADO.NET,C#和.NET课程。并出版了专门介绍MicrosoftADO.NET2.0的基本功能和新特性的技术参考书,讲解ADO.NET非连接类、ADO.NET连接类、日志跟踪、数据连接的高级主题、并发冲突、数据网格控件、事务、元数据、ADO.NET安全性等一系列重要问题。近几年来国内对于ASP.NET技术的研究也正在兴起。ASP.NET主要应用于Windows平台,虽然添加组件后也可以用于Linux平台,但是很多重要的功能没办法实现。针对这些情况,近几年来国内对于ASP.NET技术的研究也正在兴起。郝刚,多年来一直从事计算机软件、通信、电视系统等工作。2000年开始致力于.NET技术研究。至今,已发表论文十余篇,并于2006年出版新作《ASP.NET2.0开发指南》,在基于ASP.NET技术的特性框架基础上,充分说明技术理论的同时,详细创建和分析了数十个与理论密切相关的典型应用。杨云,MicrosoftMVP,参加过多项基于微软.NET技术的大型项目,包括企业级应用系统、电信应用系统、政府办公自动化系统等。长期从事微软ASP.NET技术方面的培训,是微软指定培训中心讲师,并为微软新闻组和多家报纸杂志撰写文章。在MicrosoftASP.NET技术体系方面的主要研究方向是:ASDP.NET技术在实际项目中的简便开发,典型设计模式在Web开发中的运用。另外南京邮电大学的吴素琴、徐艳平、於建华等人也对ASP.NET安全机制的研究及实现有所阐述。第三节本文研究的主要问题本系统就是基于ASP.NET开发的,在论文中,主要研究下面几个问题:①什么是ASP.NET,ASP.NET相较于其他技术有哪些优势。笔者将在第二章中做概括性叙述,让读者对ASP.NET有一定的认识。共36页第37页 ②基于ASP.NET的学生信息管理系统是否可行。即该系统的可行性分析,笔者将在本文的第三章中做详细阐述。③如何运用ASP.NET开发学生信息管理系统。笔者将在最后一章展示ASP.NET开发的学生信息管理系统的部分图片。共36页第37页 第二章 相关技术介绍第一节 ASP.NET简介一、什么是ASP.NETASP.NET是Microsoft.NET的一部分,作为战略产品,不仅是ActiveServerPage(ASP)的下一个版本;它还提供了一个统一的Web开发模型,其中包括开发人员生成企业级Web应用程序所需的各种服务。ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。可以通过在现有ASP应用程序中逐渐添加ASP.NET功能,随时增强ASP应用程序的功能。ASP.NET是一个已编译的、基于.NET的环境,可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScript.NET)创作应用程序。另外,任何ASP.NET应用程序都可以使用整个.NETFramework。开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。ASP.NET可以无缝地与WYSIWYGHTML编辑器和其他编程工具(包括MicrosoftVisualStudio.NET)一起工作。这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI和完全集成的调试支持。微软为ASP.net设计了这样一些策略:易于写出结构清晰的代码、代码易于复用和共享、可用编译类语言编写等等,目的是让程序员更容易开发出Web应用程序,满足计算机向Web转移的战略需要。二、ASP.NET技术优势ASP.NET的技术优势主要体现在以下几个方面:①运行速度快共36页第37页 ASP.NET是把基于通用语言的程序在服务器上运行。不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译,这样的执行效果,当然比一条一条的解释强很多。一方面由于ASP.NET是编译执行,比ASP等一些解释执行的Web程序技术要高出一个等级。在虚拟路径的bin目录下已经生成一装配件形式存在的动态链接库文件,这是编译好的2进制文件,是可以通过.NET中间语言(IL)来执行的机器码。Web服务器执行页面时,直接调用动态链接库文件,而今在少数条件下会重新编译程序,即使这样速度也较ASP快。另一方面采用XML技术,由于XML文件是基于ASCII或Unicode编码的文本文件,读取、写入、执行速度明显要比一些数据库文件快(在数据量相对不太大的情况下)。这是本系统采用ASP.NET技术的原因之一。对于中小型系统来说,有相当的速度优势。②平台构建免费本系统在基本的服务器上,只需安装Microsoft.NETFramework即可运行。而这个.NETFramework是微软免费发布的,如果服务器操作系统是WindowsServer2003,则.NETFramework已经随系统默认安装了。相对于基于Oracle数据库的系统来说,无需任何高昂的软件费用即可使用。③扩展性好这是.NET平台的优势。.NET技术能将几乎所有能见到的编程语言有机的组合到一起,同一个系统可能有好几种互不相干的语言编写,但运行效果和用一种语言编写的相同,无论是C++、C#,还是Pascal。.NET丰富的类库资源和可扩展性使得在本系统上可以方便的添加其他模块来实现更多的功能。④强大性和适应性因为ASP.NET是基于通用语言的编译运行程序,所以它的强大性和适应性,使它几乎可以运行在Web应用软件开发者的全部平台上。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.NET的Web应用中。ASP.NET同时也是语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写。现在已经支持的有C#,VB和Jscript。这样的多种程序语言协同工作的能力将保护您现在的基于COM+开发的程序,能够完整的移植向ASP.NET。共36页第37页 ⑤简单性和易学性ASP.NET可以运行一些很平常的任务,如表单的提交、客户端的身份验证,分布系统和网站配置变得非常简单。例如ASP.NET页面构架允许你建立你自己的用户分界面,使其不同于常见的VB-Like界面。另外,通用语言简化了开发,把代码结合成软件也变得简单易行。第二节 其他技术介绍一、.NETFramework.NETFramework是微软公司的新战略,它包含微软公司对未来的核心战略、规划和洞察力。所有微软公司的产品都将围绕这个战略开发,此战略的核心就是.NETFramework,该框架提供了全面支持.NET的核心技术。.NET是一种新的计算机平台,他简化了高度分布式Internet环境中的应用程序开发。.NETFramework框架的基本思想是:把原有的重点从连接到互联网的单一网络或设备转移到计算机、设备和服务群组上,而将互联网本身作为新一代操作系统的基础。这样,用户将能控制信息的传送方式、时间和内容,从而得到更多的服务。.NETFramework具有两个主要组件:公共语言运行库和.NETFramework类库。比如创建.NET应用程序的步骤如下所示:①编写应用程序代码,编译成Microsoft中间语言(MicrosoftIntermediateLanguage,MSIL)代码,存储在装配件中。②使用JIT(Just-In-Time)编译器把MSIL编译成为本机代码。③在托管的公共语言运行库(CommonLanguageRuntime)环境下运行本机代码。而且.NETFramework可以用来解决编程人员面临的许多问题:①负责处理在创建大型、可靠的应用程序时的大量艰辛工作。②允许程序员统一两种架构,即在本地机器上运行的应用程序和通过Web访问的应用程序。③共36页第37页 减少了与编程框架相关的传统开销,即不需要在用高性能编程语言来编写复杂的代码以获得高速的.NET程序。④允许不同语言的程序员在一个应用程序中协同工作。⑤兼容各种最终用户工具,包括桌面、PDA和手机,最终实现使开发人员能够创建出摆脱硬件束缚的,能够在各种操作系统上运行的应用程序,能够轻松实现互联网连接。总之,.NETFramework提供了一种更简单、更快捷、更廉价的方式,来获得高效的程序。.NET的目标是人们今后无论何时何地,都可以通过任何仪态计算机或手机、掌上电脑等移动设备来处理个人数据、玩游戏或者上网冲浪。通俗地讲,.NET的核心内容之一就是要搭建第三代互联网平台。二、C#语言由于ASP.NET是一个基于.NET的Web开发平台,该Web开发平台使得Web开发人员可以使用.NET编程语言(包括VB.NET、C#和C++托管扩展、Jscript等)开发Web应用程序。在学生信息管理系统中,采用C#语言来实现。因为C#是微软新一代面向对象的语言产品,可用于创建要运行在.NETCLR上的应用语言程序之一。C#具有现代、简单、完全面向对象和类型安全等特点。C#相对于C/C++而言,如果以前学过C/C++,学习会变得很容易,许多C#语句直接借用C/C++的语言,包括表达式和操作符。关于C#最重要的一点是:它是现代的编程语言。在类、命名空间、方法重载和异常处理等领域简化了C/C++,丢弃了C/C++的复杂性,使它更容易使用、减少出错。减少了C/C++的一些特性,不再有宏、模板和多重继承,这样对于开发人员而言,省去了不少麻烦提高了工作效益。总之,C#相对于C/C++等其它语言,具有如下特点:  ①可避免C++中的指针、禁止直接内存操作等,语法更简单、易学。②支持跨平台,可运行在不同类型的客户端。③完全面向对象且避免了多重继承。④支持快速应用开发(RapidApplicationDevelopment,RAD)功能。⑤实现了语言的兼容、协作交互性。综上所述,C#是派生于C/C++语言的一种程序设计语言,它使程序员能够更快速、更容易地为微软.NET平台开发应用程序。C#能编写Windows应用程序、共36页第37页 Web应用程序和Web服务等应用程序,在本系统中主要是用来编写Web应用程序。三、ASP.NETAJAX微软把自己的AJAX实现命名为ASP.NETAJAX。微软已经有了一个开发Web站点的ASP.NET平台,用户可以非常简单的在这个平台上增加AJAX开发环境。今天人们关注AJAX的主要原因有:①用户响应时间短②减少回发数据③丰富的用户体验在传统的Web站点中,用户提交数据后需要等待,直到页面完成后数据回发相应结果。这意味着用户需要等待更长的时间。而在AJAX中,页面的处理从本质上来说是异步的。自然,Web页也就能更快的响应用户的操作。在传统的Web应用程序中,Web页经常要频繁的将数据回发到服务器,即使只是一小部分需要改变也不例外。这样就导致了需要更多的网络流量,以及更长的时间来显示页面。而在AJAX中只是这个页面的一小部分才刷新,从而避免了整个页面的数据都回发至服务器,自然改善了性能和用户体验。所有的ASP.NETAJAX由两部分组成:服务器端组件和客户端组件。服务端组件包括:服务器控件,Web服务,服务器控件扩展。ASP.NETAJAX允许你在你的应用程序中使用服务器控件来完成AJAX的一些功能。ASP.NETAJAX也允许你开发自己的AJAX服务器控件。这些控件也能有客户端行为,也能根据你的需求提供丰富的自定义功能。ASP.NETAJAX客户端组件由JavaScript脚本库组成,这些脚本库全部是面向对象的JavaScript,而且相较于传统的JavaScript功能上有了很大的增强。ASP.NETAJAX客户端组件的另一个好处就是它不依赖于某一种浏览器,而是可以在几乎所有流行的浏览器中工作,如IE,FireFox等。共36页第37页 第三节三层架构进行良好的系统分析和设计是软件项目开发的关键,构架设计的合理与否往往决定了项目的成败。架构设计是软件开发的基础,并往往决定一个项目的成败。三层结构是目前最流行的架构设计模式,它是在Buschmann等提出的“层模式”基础上发展起来的,由表示层、业务逻辑层和数据访问层三个层次结构组成。它通过分解来管理问题的复杂性,同时还可以有效地重复使用业务逻辑并保留与昂贵资源(如数据库)的重要连接。基于ASP.NET能够充分发挥其完全面向对象的技术特点,实现三层结构B/S系统架构,从而提高开发效率,增强系统的可维护性和扩展性。架构设计是非常高级的设计,也是系统设计的关键,主要是定义和说明包(子系统),以及包与包之间的相互依赖与通信机制。系统构架模型的合理与否将决定系统的可维护性、扩展性和开发效率。包通常所需要处理的是要么是一个具体的功能区域(业务逻辑),要么是一个具体的技术区域(技术逻辑)。业务逻辑主要考虑的是对系统业务功能的实现,而技术逻辑则是进一步考虑用户界面、数据库或通信机制等形成的技术方案。把技术逻辑和业务逻辑区分开来是极其重要的,这是为了当修改程序的某一部分时不会对另一部分产生影响,更加便于进行“复用”,同时易于应对来自业务逻辑的变更需求。  三层结构是一种成熟、简单并得到普遍应用的应用程序架构,它将应用程序结构划分三层独立的包,包括用户表示层、业务逻辑层、数据访问层。其中将实现人机界面的所有表单和组件放在表示层,将所有业务规则和逻辑的实现封装在负责业务逻辑组件中,将所有和数据库的交互封装在数据访问组件中。其结构如下图所示:图2-4-1三层结构示意图共36页第37页 第三章 软件可行性研究及其需求分析第一节 可行性研究在实施一个项目之前,首先要对将要实施的项目进行可行性分析,确定项目是否值得进行。并不是所有的问题都有简单明显的解决办法,事实上,许多问题不可能在预定的系统规模之内解决。如果问题没有可行解的话,那么花费在这项工程上的任何时间、资源、人力和经费都是浪费的。可行性分析的目的就是用最小的代价在尽可能短的时间内确定问题能否解决。可行性研究的目的不是解决问题,而是确定问题是否值得去解。如果是正确的就加以肯定。可行性分析的实现,不能靠主观猜想,只能客观分析达到这个目的,所以就必须分析几种方法解决可能的弊端,从而判断原定的系统目标和规模是否实现,系统完成后所能带来的价值是否大于开发这个系统的投资价值。因此,可行性研究实质上是要进行一次大大的压缩简化了系统分析和设计的过程。我们应该给出系统的逻辑模型,然后从系统逻辑模型出发,寻找可供选择的解法,研究每一种解法的可行性。一般说来,应从技术可行性、经济可行性、操作可行性等方面进行研究。一、技术可行性技术可行性是最难决断和最关键的问题。根据客户提出的系统功能、性能及实现系统的各项约束条件,从技术的角度研究系统实现的可行性。本系统采用的是.NET家族的ASP.NET技术和ADO.NET技术。众所周知,.NET现在已经日趋成熟、稳定,被认为是计算机领域最有前途的技术之一。同时数据库采用的是SQLServer2005,继SQLServer2000之后的SQLServer2005更加可视化、稳定化,并且安全化。将ASP.NET,ADO.NET以及SQLServer2005结合起来开发一套学生信息管理系统,必定是可行并且高效的。共36页第37页 二、经济可行性经济可行性研究主要进行成本效益分析,包括估计项目的开发成本,估算开发成本是否会高于项目预期的全部利润。看软件所能带来的经济效益与开发设计所需要的投资相比,是否相适宜,同时还要看此软件能否真正给用户带来足够的经济效益,我们开的这套系统正是考虑为用户提高工作效率,节省工作时间,方便操作与管理而设计。本系统的开发在经济上是完全可行的。开发此软件不需要大量的经费,而且是个人独立设计的,可以节省许多费用,同时也可提高个人的实际动手能力。估算新系统的成本效益分析,其中包括估计项目开发的成本,开发费用和今后的运行、维护费用,估计新系统将获得的效益,估算开发成本是否会高于项目预期的全部经费。①支出:·基础投资:硬件设备:PC机软件设备:WINDOWS2000/XP、VisualStudio2005、SQLServer2005·其它一次性支出:软件设计和开发费用·经常性支出:软件维护费用、软件使用费用。②效益:系统投入运行后可以使学生信息管理实现科学化、规范化。提高了学生信息管理人员的工作效率。三、操作可行性共36页第37页 由于现在的科技的飞速发展,计算机早已普及世界的方方面面,便利的科技条件,给人们带来优越的工作环境,这也使人们对工作效率及可操作性都有了更高的要求。因此,管理形式的计算机是社会发展的必然趋势,各种智能化的软件层出不穷,减少了原来人工操作的费时费力的状况,从而提高了工作效率和准确度。本系统用户平台直接面向管理员和普通用户,界面简单、明了,采用可视化界面,普通用户只需用鼠标和键盘就可以查看信息;多数的数据输入与数据维护是由管理员完成的。由于该系统的操作简便、易懂,对于初次使用此系统的用户,不必经过复杂的培训和学习就可以掌握系统的操作流程。由此可见,开发此软件在操作上是可行的。第二节 需求分析学生信息管理系统的建立,需要进行用户需求调查与分析,以确定系统目标,提出解决问题的详细方案,这是系统建设的重要环节。要想使学生信息管理系统有效的进行,功能上对系统的要求是全面的。下面从四个过程分别对需求分析进行介绍。一、理解需求①系统首先可以根据需求由管理员来管理院系、班级、课程等基础的资料,这是整个系统的基础,因为所有学生的资料管理、课程设置、成绩管理等都是以院系、班级为单位的。②系统在学生踏入学校大门时为学生建立学生资料,学生的资料由学校的管理员完成。学生资料应该包括学生的学号、学生姓名、学生性别、学生民族、学生籍贯、政治面貌、所属班级、入学时间、毕业时间、相片等。③系统还可以根据需求由管理员来管理课程,课程资料应该包括课程ID、课程名称、所属专业、课程性质(如校定必修、院定必修、任选课)、所占学分、开设学期、课程学时,任课教师等。④学生每学期还需进行选课,系统必须提供此项功能,因此选课信息应该包括选课序列号、学生学号以及课程ID等。⑤当每个学期学生考试结束后,教师可以通过系统录入学生的成绩。系统将给出学生的平均分以及在班级和专业的排名等数据统计结果。⑥同时系统还要包括学生惩处信息的管理。⑦系统还应该提供强大数据统计、查询、生成报表等功能。共36页第37页 ⑧系统运行在Windows平台下,系统还应该有一个较好的图形用户界面。⑨系统还应该有很好的可扩展性。二、需求分析需求分析就是描述系统的需求,通过定义系统中的关键域来建立模型。分析的根本目的是在开发者和提出需求的人之间建立一种理解和沟通的机制。①学生对功能的需求分析:查询个人基本信息修改密码查询成绩查询个人所获学分情况查询个人惩处情况②老师对功能的需求分析:查询授课计划查询、打印选择该课程的学生名单录入、修改、删除学生成绩。查询学生基本信息③管理员对功能的需求分析:添加、删除、修改、查询学生信息添加、删除、修改、查询教师信息添加、删除、修改、查询课程信息添加、删除、修改、查询班级信息④学生课程管理因为学生管理系统会对学分进行分析,所以在此会引入以下模板。学生课程信息管理学院必须课选修课的处理系统三、软件需求①MicrosoftVisualStudio.NET2003/2005/2008共36页第37页 ②MicrosoftSQLServer2000/2005四、硬件需求①服务器的配置请参照下表:表3-2-1服务器配置需求表名称最低配置推荐配置 CPU PentiumIII800P41.8硬盘20G空余硬盘空间60G空余硬盘空间 内存256M或更高512M或更高 网卡10/100M 10/100M或更高操作系统WindowsServer2003(SP4)+SQLServer2005WindowsServer2003(SP4)+SQLServer2005 Web服务组件IISIIS②客户端配置表3-2-2客户端配置需求表名称最低赔置推荐配置 CPUPentiumII450PentiumIII800 硬盘20G空余硬盘空间40G空余硬盘空间 内存128M256M共36页第37页 第四章 系统总体设计与实现第一节 系统数据流程分析本系统从总体上分为系统信息管理、学生基本信息管理、课程管理、班级管理和成绩管理五大部分。每个模块有自己的功能,下面的各模块功能流图就是由各功能之间的关系而得出的。1、学籍信息录入数据流图学籍信息包括学生基本信息、教师基本信息、专业信息、班级信息、课程信息、成绩信息、选课信息、学分信息等,学生处信息管理系统正是建立在这些信息的基础上的。只有建立了课程信息以后,学生才能进行选课;学生选了课以后老师要针对该课程对学生打分;只有先建立了学院的基本信息,才能对该学院设立相关专业,进而分班。因此,学籍信息录入是学生信息管理系统的基础。学生数据表学生信息录入数据库系统管理人员成绩数据表成绩信息录入班级数据表班级信息录入课程数据表课程信息录入图4-1-1学籍信息录入数据流2、学生信息查询数据流程图共36页第37页 “查询”是该系统的要实现的一个基本功能,也是提高该系统工作效率的有效途径。学校的信息量是很大的,要想从上万条数据中寻找自己想要的数据,等于是大海捞针。但是系统的查询功能却可以很好的解决这种问题,用户只需提供很有限的已知信息,便可以从上万的数据中筛选出想要得到的信息。查询条件学生数据表学生信息录入成绩数据表成绩信息录入系统管理人员班级数据表班级信息录入查询结果课程数据表课程信息录入图4-1-2学生信息查询数据流3、学籍信息维护数据流程图数据录入数据库后,并不是不可更改的,用户可以根据实际情况维护数据,包括添加新数据、修改原始数据以及删除不需要的数据,系统良好的数据维护功能可以节约数据库的存储空间,延长系统的生命周期。例如,学生进校时系统为共36页第37页 每个学生建立了自己的学生档案,成千上万的学生数据必然要耗费数据库大量的存储空间,学校每年都要为新生建立档案,照此下去数据库存储空间总有枯竭的一天,系统也将面临瘫痪,由此导致的后果是不难想象的。但是,系统维护中的删除功能则很好地解决了这种困难,在学生毕业或者因为其他原因离开学校以后,系统可以删除该学生的信息,使数据库存储空间处于一个动态的平衡当中,延长系统寿命。学生数据表学生信息维护成绩数据表成绩信息维护系统管理人员班级数据表班级信息维护课程数据表课程信息维护信息维护结果图4-1-3学籍信息维护数据流第二节 系统概要设计学生信息管理系统是一个较为复杂的系统。在功能需求方面,它要实现共36页第37页 学生基本信息管理、学生课表管理、学生选课管理、学生成绩管理、学生学分管理以及学生奖惩情况管理等功能;在性能上要求该系统能够方便快捷地完成学生信息管理的各项工作,录入数据合法性的校检程度高,数据查询速度快;为了系统的安全和保密,要求系统对不同权限的用户提供不同的功能模块,对历史数据的更改和新数据的添加只有一定权限的用户才能进行操作,一般的用户只能进行查询操作,对数据库的关键数据应保密;本系统采用客户机/服务器体(C/S)系结构,客户端建立在windowsNT系统上。下面给出系统开发之初设计的系统简图(如图4-2-1)。输入|输出输入|输出输入|输出输入|输出输入|输出退出成绩管理主界面登陆成功专业管理课程管理学生管理班级管理零退出用户登陆SQL数据库学生处信息管理系统图4-2-1系统简图第三节 数据库结构设计数据库在一个信息管理系统中占有非常重要的地位,数据库设计的好坏直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储效率、保证数据的完整和一致。设计数据库时要充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。针对学校管理人员、教师以及学生的需求,通过对学生信息管理工作过程的内容和数据流程分析,设计数据库结构。共36页第37页 1、学生基本信息表学生基本信息表(标识为student)应具备学生的基本信息,是建立学生电子档案的基础。其中学生ID是其主键,不能为空,一个学生只能有一个ID,一个学生ID也只能代表一个学生。学生信息表的基本内容参见表4-3-1。表4-3-1学生基本信息表名称数据类型说明StudentIDnvarchar(36)学生ID(主键)studentnamenvarchar(50)学生姓名telephonevarchar联系电话ClassIDnvarchar(50)所在班级IDSexint性别Nationnvarchar(50)民族NativePlacenvarchar(50)籍贯birthdaydatetime出生日期ru_datedatetime入学时间Pwdnvarchar(50)用户密码addressnvarchar(200)家庭住址remarknvarchar(200)备注为了方便读者更直观地了解学生信息表的基本内容,可参加学生实体E-R图(如图4-3-1)。共36页第37页 图4-3-1学生实体E-R图2、教师信息表教师信息表(标识为teacherinfo)是针对教师登陆以录入学生成绩而设计的。同样,将教师ID设置为主键,不能为空。一个教师只能有一个ID,且一个ID只能带表一个教师。每个教师都有一个自己归属的学院,便于查询和维护信息。教师信息的内容参见表4-3-2。表4-2教师信息表名称数据类型说明teacheridnvarchar(36)教师ID(主键)Sexchar性别teachernamenvarchar(50)教师姓名departmentidnvarchar(36)所属学院IDPwdnvarchar(50)用户密码telephonechar联系电话homeAddrvarchar家庭地址共36页第37页 technicalPostchar职称remarkvarchar备注  以下给出的是教师实体E-R图(如图4-3-2)。图4-3-2教师实体E-R图3、班级信息表班级信息表(标识为classinfo)提供了班级ID、班级编号、班级名称、所属专业、班级人数五项属性,其中班级ID是其主键,具有唯一性。班级信息表可以通过班级ID与学生信息表、专业信息表建立视图,实现更多查询功能。班级详细信息参见表4-3-3。表4-3-3班级信息表名称数据类型说明classidnvarchar(36)班级IDspecialityIDchar所属专业classnamenvarchar(50)班级名称specialityNamevarchar专业名称EntranceYearchar入学年份共36页第37页 MonitorIDchar班长  以下给出的是班级实体E-R图(如图4-3-3)。图4-3-3班级实体E-R图4、课程信息表课程信息表(标识为courseinfo)提供了课程ID、课程名称、课程总学时、课程学分、课程周学时、备注七项属性。学生登陆选课系统进行选课时,系统会自动根据学生ID查找学生所属专业,将本专业的课程筛选出来,再根据学生输入的需要选修课程的学期进一步筛选。课程信息表的详细设计参见表4-3-4。表4-3-4课程信息表名称数据类型说明courseidnvarchar(36)课程ID(主键)coursenamenvarchar(50)课程名称coursetypeIDvarchar课程类别totalperiodtinyint总学时weekperiodtinyint周学时credithourtinyint学分remarkvarchar备注  以下是课程实体的E-R图(如图4-3-4)。共36页第37页 图4-3-4课程实体E-R图五、成绩信息表成绩信息表(标识为resultinfo)提供了成绩ID、学生ID、课程ID以及分数四项属性。其中成绩ID被设置为主键,具有唯一性。成绩信息表通过学生ID、课程ID与学生信息表、课程信息表建立视图,可以实现更多相关信息的查询。成绩信息表的详细设计参见表4-3-5。表4-3-5成绩信息表名称数据类型说明resaltnvarchar(36)成绩(主键)coursenamevarchar课程名称StudentIDvarchar学号Studentnamevarchar学生姓名credithourvarchar已修学分resaltvarchar成绩courseID课程号  下图是成绩实体的E-R图(如图4-3-5)。共36页第37页 图4-3-5成绩实体E-R图共36页第37页 第五章 系统详细设计第一节 用户登陆该系统根据用户的身份实现了不同的功能,用户登陆时需要选择一种登陆方式(默认情况下是学生),系统再根据用户选择的登陆方式到相应的表中去搜索。例如,登陆时选择了教师登陆方式(如图5-1-1),系统将会在教师信息表中搜索是否存在与该用户的输入相符的信息,如果存在则进入教师主页,否则提示用户输入有误,请重新输入。图5-1-1用户管理员登陆共36页第37页 第二节 教师管理界面1、教师资料管理教师资料管理界面,可以查看所有教师的基本信息,可进行查看,编辑,删除,查询操作,详细功能见图5-2-1。图5-2-1教师资料管理2、教师资料添加管理员可以方便的添加任何教师的基本信息,详细功能请参见图5-2-2。图5-2-2教师资料添加共36页第37页 第三节 学生管理界面1、学生资料管理用户可以方便的对所有列表中的学生信息进行操作。界面详细设计参见图5-3-1。图5-3-1学生资料管理2、学生资料添加用户可以直观的对学生信息进行添加。界面详细设计参见图5-3-2。共36页第37页 图5-3-2学生资料添加3、学生所在院系资料图5-3-3学生所在院系资料4、学生所在专业资料共36页第37页 图5-3-4学生所在专业资料共36页第37页 第四节 课程管理界面1、课程资料管理对课程资料的查询、修改、删除操作。界面详细设计参见图5-4-1。图5-4-1课程资料管理2、课程资料添加图5-4-2课程资料添加共36页第37页 3、课程类别资料界面详细设计参见图5-4-3。图5-4-3课程类别资料第五节成绩管理界面1、学生成绩查询学生成绩查询功能模块,把所有学科分类后,然后在进行成绩的查询,分类简单化后,是查询系统更加流畅。图5-5-1学生成绩查询2、成绩资料添加共36页第37页 图5-5-2学生成绩录入第六节班级管理界面1、班级资料管理该模块中实现了所有班级信息的编辑、删除等操作图5-6-1班级资料管理2、班级资料添加共36页第37页 图5-6-1班级资料添加共36页第37页 第六章 总结通过最后两个多月的毕业设计,我对Web服务、数据库软件SQLServer2005、c#、ASP.NET、JavaScript等系列知识都有了一定的了解。使用ASP.NET开发页面的能力也有了很大提高。由于在此之前对于c#和ASP.net知识的了解几乎是一片空白,所以从一开始就碰到许多困难。例如在网页中脚本代码与html代码之间的关系上都遇到过很大的困难,通过在网上寻找有关资料以及同学的帮助最后都得到了解决。在整个设计阶段感受最为深刻的是掌握学习的方式和解决问题的方法。首先是解决问题的方式,虽然面临的信息很多,但是如何从大量的信息中筛选出所需的信息,有用的信息,才是解决问题的关键,另外一个就是解决问题的方法,就像我在解决设计中的很多问题一样,一开始总是在看书,和书上的进行比对,虽然书本上的只是大部分都是有价值,正确的,但实际上每个人编程的思路和对数据处理的方法、思想都是不同的,这就要求我们一定要通过实践才能找到解决问题的方案。在整个毕业设计的过程中,我深刻的体会到了这一点的重要性,也牢记主了这一点,在今后的学习和研究中我也会继续将这种方法延续下去。共36页第37页 致谢在系统开发过程中,我得到了指导教师任学雯教师的细心指导和帮助,并给我们提出许多宝贵意见。任老师严谨的治学态度与深厚的理论知识都让我受意非浅,无论是理论还是实践都使我的知道有很大的提高。借此我深表感谢!同时,也感谢那些对我提供帮助的同学!共36页第37页 参考文献[1]季修峰.ASP.NET开发疑难200问 [M].北京:人民邮电出版社,2004.[2]熊慧芳、陈莉.基于ADO.NET的数据库访问技术研究[J].科技广场,2007,2:122-124.[3]沈军.基于ASP.NET2.0技术的Web数据库多层架构设计与实现[J].电子测量技术,2008,31(2):76-79.[4]张奇、李建松、卫建伟.VisualC#数据库项目案例导航[M].北京:清华大学出版社,2005.[5]余金山、林慧.SQLServer2000/2005数据库开发实例入门与提高[M].北京:电子工业出版社,2005.[6]王静冬、贺涛、谢献平、王博.基于ASP.NET和SQLServer的网络教学平台的设计与实现[J].有线电视技术,2008,15(3):93-94.[7]陈力夫.ASP.NETAJAX程序设计[M].北京:人民邮电出版社,2007.[8]周长发.C#面向对象编程[M].北京:电子工业出版社,2007.[9]朱强、赖云灵.基于B/S结构的二级学院学生信息管理系统[J].现代计算机:下半月版,2007,2:91-93.[10]樊伟、周正国.基于ASP.NET的学生信息管理系统[J].和田师范专科学校学报:汉文综合版,2007,27(1):197-198.[11]RebeccaM.Riordan.MicrosoftADO.NETStepbyStep[M].MicrosoftPress,2004.[12]BipinJoshi.ProfessionalADO.Net[M].MicrosoftPress,2001.[13]Bill Wagner.EffectiveC#:50SpecificWaystoImproveYourC#[M].AddisonWesleyProfessional,2006.[14]BipinJoshi.Pro.NET2.0XML[M].MicrosoftPress,2007.[15]KimWimpsett.BeginningASP.NET2.0inC#2005[M].MatthewMacDonald,2006.共36页第37页 共36页第37页'