首页 学生选课系统需求规格说明书

学生选课系统需求规格说明书

举报
开通vip

学生选课系统需求规格说明书学生选课系统需求规格说明书 软件工程项目报告 学 生 选 课 管 理 系 统 周润生 ,041403018~ 崔灿 ,051401015~ 李志飞 ,051401018~ 邓冰 ,051401021~ 1 / 88 软件工程项目报告 李娟 ,051401030~ 屈锐敏 ,051401031~ 学生选课系统需求规格说明书 (一)引言,或绪论, Internet网是目前全球最大的计算机通信网,它遍及全球几乎所有的国家和地区。www系统是一个大型的分布式超媒体信息数据库,它极大的推动了Inte...

学生选课系统需求规格说明书
学生选课系统需求规格说明书 软件 工程 路基工程安全技术交底工程项目施工成本控制工程量增项单年度零星工程技术标正投影法基本原理 项目 报告 软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载 学 生 选 课 管 理 系 统 周润生 ,041403018~ 崔灿 ,051401015~ 李志飞 ,051401018~ 邓冰 ,051401021~ 1 / 88 软件工程项目报告 李娟 ,051401030~ 屈锐敏 ,051401031~ 学生选课系统需求规格说明书 (一)引言,或绪论, Internet网是目前全球最大的计算机通信网,它遍及全球几乎所有的国家和地区。www系统是一个大型的分布式超媒体信息数据库,它极大的推动了Internet的发展,己经成为Internet中最流行、最主要的信息服务方式。www技术之所以能在全球普及,一个重要的原因就是它与数据库管理系统相互融合,成为一个处理和共享信息的强大工具。一方面,数据库是一种强大的信息管理工具,另一方面,www提供了共享数据的方法。两者强强联合取长补短,发挥各自优势,使用户可以在Web浏览器上方便地检索数据库的内容。 数据库是从60年代初发展起来的计算机技术。经过四十来年的发展,数据库技术己经趋于成熟。Web数据库在新的Internet环境中发生了很大的变化。就数据应用而言呈现出多样化的空间,如数字图书馆、电子出版物、电子商务、远程教育系统等的出现,给web数据库技术提出了更多、更高的要求。同时,随着国内高校校园网的建设,基于互联网的应用系统的开发正在蓬勃发展并发挥着较大的作 2 / 88 软件工程项目报告 用。例如,我国许多高校的网上招生系统,学校的各种管理信息系统,学校选课系统,还有一些医学院校开发出的网上诊所、远程诊断系统等等,都是基于校园网的应用系统。 国外的教学科研软件与国内相比开发的早而且比较成熟。早在七十年代末,美国就建成了NSFNET(国家科学基金网),其课题的申报及课题的进展情况汇报都在网上进行。其网上教学教务管理系统也十分完善,世界各地的学生可以坐在家里通过互联网完成入学报名、选课、考试、毕业论文、取得学位这一学习生活的全过程。目前,国际上已具规模的远程教育学校就有数百所之多,网上教育正在各地发挥着巨大的作用,为世界各国培养出大批人才。所有这些都表明,基于Internet的校园网的应用已深入到校园内的各个方面。 我国不少高校都实行了学分制,它的核心是允许学生自由选课,即把学习的自主权交给学生。在这里,学生选课时的制约因素比较复杂,工作量也很大,而且往往需要在较短的时间内完成。运用计算机辅助选课,即能实时地对大量选课数据进行检验和统计,十分方便地输出选课结果,同时也避免了人工处理时容易产生的错误。 从系统开发的复杂程度来看,计算机辅助排课与选课是高校教务系统中的两个关键子系统,目前不少教务系统尚未很好地解决排课与 3 / 88 软件工程项目报告 选课问题。本文主要对高校教务管理系统中计算机选课子系统的基本功能、设计思想、需求分析以及实现技术进行探讨。 本文档主要包括学生选课系统 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 分析与网络规划,本系统是一个典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。 经过分析,我们使用 MICROSOFT公司的SQL 2000、JSP 作为开发工具, 用Microsoft Windows XP Professional 版本2002 Service Pack 2 简体中文版,Microsoft Offices ACCESS 2003 中文版,Internet Information Services (IIS6) Manager,作为开发平台。 利用其提供的各种面向对象的开发工具,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。 本系统可以方便老师、学生更方便的选课。实现全校学生选课在线查询。还可以对新来的学生信息进行信息录入。由于学生上课情况复杂,可以实现信息修改,及时调整学生的基本情况。 4 / 88 软件工程项目报告 (二)开发意义 学生选课系统是一个学校不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生选课系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。 作为计算机应用的一部分,使用计算机对选课信息进行管理,有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人事劳资管理的效率,也是企业的科学化、正规化管理,与世界接轨的 5 / 88 软件工程项目报告 重要条件。 因此,开发这样一套软件成为很有必要的事情。 在下面的各章中我们将以 开发一套学生选课系统为例,谈谈其开发过程和所涉及到的问题及解决方法。 本文中所做的主要工作如下: (1)介绍了个性化页面的背景及Win2000server+IIS+JSP系统的一般原理; (2) 阐述整个个性化页面生成系统的系统结构及工作原理;分析了系统实现中的特殊性、难点和重点。 (3) 设计实现用户管理、课程管理、选课信息录入管理、新生信息录入管理、课程的浏览和查找、学生查找等JSP页面 。 (4) 分析并解决实现中的若干技术问题。 (5) 建立完整的网上选课,进行测试并分析结果。 6 / 88 软件工程项目报告 ,三,可行性分析 (1) 技术可行性-----本系统仅需要一台装有Office软件的计算机 即可,对机器本身没有太高的要求,以Windows NT/2000 Server/XP作为学生选课管理系统的后台操作系统, 前台开发 软件为JDK工具包、SQL Server 2000, 后台数据库系统采用 SQL Server 2000,一般当前学校或个人电脑完全可满足要求。 对于软件技术要求,现在的程序设计语言已非常成熟,要运用 HTML样式,图形图象制作工具来制作生动活泼的网页及美观的 图形文件或动画文件,数据库使用SQL Server 2000中提供的 数据库桌面工具ODBC。 (2) 经济可行性-----由于本系统是为学生选课管理使用的系统, 装上该应用软件,即可使用系统,系统成本主要集中在系统软 件的开发上,当系统投入运行后可以为学校节约大量的人力, 物力。所带来的效益远远大于系统软件的开发成本。在经济上 完全可行。 7 / 88 软件工程项目报告 (3) 操作可行性-----界面设计时充分考虑管理人员的习惯,使得 操作简单;数据录入迅速、规范、可靠;统计准确;制表灵活; 适应力强;容易扩充。 ,四,需求分析 当今时代是飞速发展的信息时代。在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统的环境。计算机的最大好处在于利用它能够进行信息管理。使用计算机进行信息控制,不仅提高了工作效率,而且大大的提高了其安全性。尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。计算机进行信息管理与信息管理系统的开发密切相关,系统的开发是系统管理的前提。 本系统就是为了管理好选课信息而设计的。学校作为一种信息资源的集散地,学生和课程繁多,包含很多的信息数据的管理,现今,有很多的学校都是初步开始使用,甚至尚未使用计算机进行信息管理。根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于选课情况的统计和查询等往往采用对课程的人工检查进行,对学生的选课权限、以及选课代号等用人工计算、手抄进行。数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统,规范的信息管理手段。尽 8 / 88 软件工程项目报告 管学校都有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发的基本环境。数据处理手工操作,工作量大,出错率高,出错后不易更改。学校采取手工方式对学生选课情况进行人工管理,由于信息比较多,选课信息的管理工作混乱而又复杂;一般选课情况是记录在文件上,课程的数目和代号也记录在文件中,学校的工作人员也只是当时对它比较清楚,时间长了,如再要进行查询,就得在众多的资料中翻阅、查找了,造成查询费时、费力。如要对很长时间以前的选课进行更改就更加困难了. 基于这些问题,我认为有必要建立一个学生选课系统,使选课管理工作规范化,系统化,程序化,避免选课管理的随意性,提高信息处理的速度和准确性,能够及时、准确、有效的查询和修改选课情况。 学生选课系统需求规格说明 8书6 学软 生/件 选 工 8课 程6管 理 项 系目 统报 周告润 生,041,4 崔03 灿,0015814, 0谁1楚0晶15浦敖齐喀寺蚂绚倾予棚侮鲁冕仅恕财诅恿浩崭投舞掳炙秩锚尤故宵迁咕细劣谊茧遇错锐序辉挛沛苦铆沪凌肖骂捣擎孪惨薪具从砸技趁恭削点MIS系统的产生和发展情况 MIS系统的产生和发展情况 所谓MIS(管理信息系统--Management Information System)系统 ,是一个由人、计算机及其他外围设备等组成的能进行信息的收集、传递、存贮、加工、维护和使用的系统,是一门新兴的科学,其主要任务是最大限度的利用现代计算机及网络通讯技术加强企业的信息管理,通过对企业拥有的人力、物力、财力、设备、技术等资源的调查了解,建立正确的数据,加工处理并编制成各种信息资料及 9 / 88 软件工程项目报告 时提供给管理人员,以便进行正确的决策,不断提高企业的管理水平和经济效益。目前,企业的计算机网络已成为企业进行技术改造及提高企业管理水平的重要手段。随着我国与世界信息高速公路的接轨,企业通过计算机网络获得信息必将为企业带来巨大的经济效益和社会效益,企业的办公及管理都将朝着高效、快速、无纸化的方向发展。MIS系统通常用于系统决策,例如,可以利用MIS系统找出目前迫切需要解决的问题,并将信息及时反馈给上层管理人员,使他们了解当前工作发展的进展或不足。换句话说,MIS系统的最终目的是使管理人员及时了解公司现状,把握将来的发展路径。与传统的管理系统相比,在MIS中,处理的对象是抽象成数据的信息,因此,MIS有着自己的巨大优势: 1、 解决结构化问题。 2、 以高速度低成本完成数据的处理业务,追求系统处理问题的效 率。 3、 实现一个相对稳定的、协调的工作环境。 4、 应用科学的、客观的处理方法,符合实际情况。 传统的MIS系统的核心是CS(Client/Server——客户端/服务器)架构,而基于Internet的MIS系统的核心是BS(Browser/Server ——浏览器/服务器)架构。BS架构比起CS架构有着很大的优越性,传统的MIS系统依赖于专门的操作环境,这意味着操作者的活动空间 10 / 88 软件工程项目报告 受到极大限制;而BS架构则不需要专门的操作环境,在任何地方,只要能上网,就能够操作MIS系统。这也就给交互式信息的产生创造了先决条件。使得通过互联网的信息传递更加的便捷。 MIS系统的飞速发展,技术的成熟以及应用领域的不断扩大,为网上信息的交互提供了一个良好的平台和方便的操作界面。由于MIS系统基于用户需求的设计方法,使得该系统的使用更加的人性化、个人化、更贴近用户。网上选课系统是针对在校学生和教师使用,从学生的角度来说,由于学校教学制度的改革,现在大部分高等院校开始实行的是学生的自主选课模式,传统的教学模式——学生按照学校安排好的课程上课——已经不能适应新型的教学手段,如果仍然通过纸上的方式选课,一方面浪费的大量的人力、物力资源,另一方面浪费时间以及在人为的统计过程中不可避免出现的差错等情况。随着高校人数的增多,这种弊端会越来越多的暴露出来。因此,利用网络,使学生只要在计算机前输入自己的个人选课信息即可完成原来几倍的作业量。从教师的角度来说,同样是节省了大量的工作量,由于教师提出代课申请完成课程发布的工作较学生选课而言更加的复杂,因此通过网上进行课程发布能大幅度的减少教师的工作量,减少错误的发生几率。作为教师,也只要通过自己的电脑来操作即可,不用再奔波于教务处和办公室之间。以MIS系统的构建思想来实现网上选课系统可以最大程度的做到实用性,可扩展性和可维护性相结合,安全性以及规范化原则。 11 / 88 软件工程项目报告 Dreamweave简介 Dreamweaver是美国MACROMEDIA公司开发的集网页制作和网站管理于一身的所见即所得网页编辑器, 是一种可视化网页制作工具,利用它可以轻松地制作出跨越平台限制和跨越浏览器限制的动态网页。 Dreamweaver 可以开发HTML、XHTML、ColdFusion、ASP、ASP.NET、JSP或PHP网站。通过平面设计工具以及代码提示、标签编辑器、可扩展色彩代码、标签选择器、片段和代码检验这类编码特性来实现对代码和设计的管理。新集成的工作空间可以与Macromedia Flash MX 和Fireworks MX共享,其中包括了标示签的文档窗口、可放到dock中的画板组、可定制的工具条和集成的文件浏览。Dreamweaver 还包括有预建的布局和代码,其中有网站结构、表格、可访问的模板以及为客户端交互应用而提供的JavaScript。 为翻新现有网站以及创建下一代应用程序,Dreamweaver 还支持新 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 和新的网页技术,带有对XML、网页服务和增强可访问性的支持。Dreamweaver MX为新的ColdFusion MX特性提供全套的支持,包括增强的代码编辑和开发功能、集成的调试功能、可视化布局功能和照片打印功能。 HTML(Hyper Text Markup Language) 12 / 88 软件工程项目报告 HTML的英文全称是"Hypertext Markup Language",中文译为“超文本标记语言”。“超文本”就是指页面内可以包含图片,联接,甚至音乐,程序等非文字的元素。在几年前作为SGML的一个子集开发的。 一个HTML文件中包含了所有将显示在网页上的文字信息,其中也包括对浏览器的一些指示,如哪些文字应放置在何处,显示模式是什么样的等。如果你还有一些图片、动画、声音或是任何其它形式的资源,HTML文件也会告诉浏览器到哪里去查找这些资源,以及这些资源将放置在网页的什么位置。浏览的网页就是由HTML语言编写出来的。虽然HTML是一种语言,但HTML不是程序语言,如 C++ 和 Java 之类,它只是标示语言,你只要明白了各种标记的用法便算学会了HTML.HTML 的格式非常简单,只是由文字及标记组合而成,因此任何文本编辑器都可以制作HTML页面。 在编辑器中输入html代码即可完成对网页的设计,如果在其中加入VB,JAVA等脚本文件以及数据库连接有关的语句指令,便可对已知数据进行查询,从而生成动态网页的一部分。 (一) 客户/服务器(C /S)模式:是指由一个或多个客户和一个或多 个服务与下层的操作系统和网络系统所形成的一种允许分布式 13 / 88 软件工程项目报告 计算、分析和表不的复合系统。C /S结构具有以下优点: 1. 交互性强:在C /S中,客户端有一套完整的应用程序,在出错处 理、在线帮助等力一而有强大的功能,并且可以在子程序间自由 切换。 2. 可靠性高:由十C /S采用的是点对点的结构模式,各种应用逻辑 必须通过相应的前端应用程序来完成,系统安全性,可靠性强。 3. 事务数据处#}能力强:由十C /S模式卞要由客户应用程序C lient、 服务器管理程序Se rve环日中间件M iddleware3个部件组成, 在逻辑结构上比B /S少一层,对十相同的任务,C /S完成的速度 总比B/S快,这使得C /S处理大量信息的能力是B/S所无法比拟 的,另外,C /S结构目前己经非常成熟,有大量的优秀开发工具 支持。 (二) 浏览器/服务器(B/S)模式:是一种以Web技术为基础的新型的 信息化环境平台模式,它以浏览器作为标准前端进行信息交互。 B/S结构具有以下优点: 14 / 88 软件工程项目报告 1. 简化了客户端:在基十B/S结构的系统中,用户只需通过浏览器便 可进行各种信息处理, 2. 简化了系统的开发和维护:系统的开发者无须为不同级别的用户 设计开发不同的客户应用程序了,只需把所有的功能都实现在W eb 服务器上,也无须为每一个现有的客户应用程序升级,只需对W eb 服务器的服务处理程序进行修订。 3. 用户操作变得简单:对十C /S模式,客户应用程序有自己的应用 界而,使用者需要专门培训,而B/S仅有一简单易用的浏览器软 件,操作层人员无需培训,直接使用。 4. B/S特别适用十网上信息发布,这使得传统的M 1S的功能有所扩 展。鉴十C /S和B/S各自的优点,对系统安全性和交互性要求高、 专业性强、数据处理量大的子系统采用C /S结构,而对应应用范 围广、功能变动频繁、信息交互量要求相对弱的子系统则使用B/S 结构。 数据库应用系统开发简介 在数据库应用系统开发之前,对开发数据库的基本概念应当了解,对数据库的结构、开发数据库应用程序的步骤、开发体系及方法 15 / 88 软件工程项目报告 都应当有相当清晰的了解和认识。数据库应用系统开发的目标是建立一个满足用户长期需求的产品。开发的主要过程为:理解用户的需求,然后,把它们转变为有效的数据库设计。把设计转变为实际的数据库,并且这些数据库带有功能完备、高效能的应用。数据库技术在计算机软件邻域研究中一直是非常重要的主题,产生于60年代,30多年来数据库技术得到了迅速发展,并已形成较为完整的理论体系和一大批实用系统。并且,近年来,随着World Wide Web(WWW)的猛增及Internet技术的迅速发展,使得数据库技术之时成为最热门技术之一。用户数据目前表明,大多数主流数据库管理系统把用户数据表示为关系。现在把关系看作数据表。表的列包含域或属性,表的行包含对应业务环境中的实体的记录。并非所有的关系都同样符合要求,有些关系比其它关系更结构化一些。 MS SQL Server 简介 SQL Server 是一个后台数据库管理系统,它功能强大操作简便,日益为广大数据库用户所喜爱。越来越多的开发工具提供了与SQL Server的接口。SQL Server 是一个关系数据库管理系统,它最初是由Microsoft、Sybase 和Ashton-Tate三家公司共同开发的。于1988 年推出了第一个OS/2 版本,在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的 16 / 88 软件工程项目报告 Windows NT 版本。SQL Server 2000 是Microsoft 公司推出的SQL Server 数据库管理系统的最新版本,该版本继承了SQL Server 7.0 版本的优点,同时又比它增加了许多更先进的功能、具有使用方便、可伸缩性好与相关软件集成程度高等优点。 MS SQL Server不但可以应用于大中型数据库管理中,建立分布式关系数据库,并且也可以开发桌面数据库。事实上,SQL Server数据库处理的基本结构,采取关系型数据库模式,尽管如此,相信大家都可以轻易的发现,在SQL Server的数据库处理方式,则是使用面向对象的操作方式与精神,也就是说,SQL Server的所有功能,都可以基于系统已经建立好的一些对象来达成,是相当OO(面向对象)的一个系统结构。SQL Server 企业管理器是 SQL Server 的主要管理工具,它提供了一个遵从 MMC 标准的用户界面,使用户得以:定义 SQL Server 实例组。将个别服务器注册到组中。为每个已注册的服务器配置所有 SQL Server 选项。 在每个已注册的服务器中创建并管理所有 SQL Server 数据库、对象、登录、用户和权限。在每个已注册的服务器上定义并执行所有 SQL Server 管理任务。 通过唤醒调用 SQL 查询分析器,交互地设计并测试 SQL 语句、批处理和脚本。 唤醒调用为 SQL Server 定义的各种向导。 JSP(Java Server Page) JSP(Java Server Page)是一种动态网爷技术标准。在传统的HTML 17 / 88 软件工程项目报告 文件(*.html,*.htm)中加入一定规范的Java程序片段(Scriptlet)和Jsp标记(tag)就构成了JSP网页(*.jsp)。 Web服务器在遇到访问JSP网页的请求时,首先执行其中相应的Java程序片段,然后将执行的结果以HTML的格式返回给客户。程序片段可以是数据库操作、重新定向网页以及发送email等建立的动态网页所需要的功能。 由于的这些片段操作都在服务器端执行,通过网络传给客户端的仅仅是程序的片段运行的结果。这使得程序对客户浏览器的要求降到最低,可以实现无Plugin、无ActiveX、无Java Applet甚至无Frame。 应用系统开发工具 对软件和硬件的要求 处理器:Intel PII 450 或更好 服务硬 内 存:256M 或更大 器 件 硬 盘:20G 或更大 18 / 88 软件工程项目报告 Microsoft WindowsNT Server 4.0 或更高版本 Microsoft Sql Server 7.0 或更高版本 软 Microsoft IIS 4.0 或更高版本 件 Microsoft Office 2000 SDK 硬 无特殊要求,只要能上连接互联网即可 件 客户 Microsoft Windows / 95 / 98 或更高版 机 软 本 件 Microsoft IE 4.0 或更高版本 系统的性能要求通常指系统需要的存储容量以及后援存储,重新启动和安全性,运行效率等方面的考虑。 本系统运行环境为单环境,在运算时对系统整体性能要求过高,要求: 软件系统环境 :IIS5.0 + SQL + SDK 硬件系统环境:C600、64MB(RAM)、500MB(HD)。系统运行时对数据的保密性要求不高对一般的数据不要求进行加密。此外,对其它软件几乎没有依赖性,程序健壮性较好 19 / 88 软件工程项目报告 运行需求 硬件条件:586 CPU、32M RAM、3.2G硬盘以上的PC机; 打印机;局域网。 软件条件:Windows 98以及Windows NT操作系统; 服务器。 其他需求 本系统有较好的可维护性、可靠性、可理解性、效率。易于用户理解和操作。可维护性包括了可读性、可修改性、可测试性、等含义。可靠性通常包括正确性和健壮性。开发过程中,在各种矛盾的目标之间作权衡,并在一定的限制的条件下(经费、时间、可用的软、硬件资源等),使上述各方面最大限度的得到满足。 ,五,概要设计 20 / 88 软件工程项目报告 系统分析 系统简要分析 管理员可以通过超级用户身份登录,对系统进行全面的管理,对新用户的添加,删除,对信息进行管理。管理员可以对老师及同学的帐户进行管理,老师、学生不同身份的用户进入不同的界面,进行不同的操作。教师可以发布自己本学期所要教的课程,以及对学生成绩进行管理。同学可以通过查询本学期所开设课程进行选择。 应用需求分析 学生选课系统需要满足来自三方面的需求,这三个方面分别是学生、教师和管理员。学生的需求是查询院系的课程、学生选课情况及学生信息的修改;教师对选课系统学生选课情况进行操作,同时形成学生选课查看确认;选课管理员的功能最为复杂,包括对学生、教师、选课进行管理和统计,及系统状态的查看、维护并生成选课报表。学生可以直接查看选课情况,学生可以根据本人学号和密码登录系统,还可以进行本人学科成绩情况的查询和维护部分个人信息。一般情况下,学生只应该查询和维护本人的选课情况和个人信息,若查询和维护其他学生的选课及成绩查询信息,就要知道其他学生的学号和密码。这些是很难得到的,特别是密码,所以不但满足了学生的要求, 21 / 88 软件工程项目报告 还保护了学生的个人隐私。 学校工作人员有修改学生选课的权限,所以需对工作人员登陆本模块进行更多的考虑。在此系统中,学校工作人员可以为学生加入选课或是登陆记录,并打印生成相应的报表给用户查看和确认院系管理人员功能的信息量大,数据安全性和保密性要求最高。本功能实现对选课信息、教师信息、总体选课情况信息的查询和统计、工作人员和管理人员信息查看及维护。学校管理员可以浏览、查询、修改、统计选课的基本信息;浏览、查询、统计和修改学生选课的基本信息,浏览、查询、统计学生信息,但不能添加删除和修改学生的信息,这部分功能应该由院系工作人员执行,但是,删除某条学生选课基本信息记录时,应实现对该学生选课的级联删除。并且还应具有生成选课报表,并打印输出的功能。设计不同用户的操作权限和登陆方法对所有用户开放的学生选课查询和个人部分信息维护查看个人情况信息维护学生个人密码根据选课情况对数据库进行操作并生成报表根据选课情况对数据库进行操作并生成报表查询及统计各种信息维选课信息维护工作人员和管理员信息维护学生信息处理信息的完整性。 本系统主要实现教师信息管理、学生信息管理、课程信息管理和系信息管理,其中教师信息管理有教师姓名、教师工号、教师职称、教师所属系;学生信息管理有学生姓名、学生学号和学生所在系;课程信息管理有课程名称、学分、上课地点、已选人数、课程性质、开 22 / 88 软件工程项目报告 课系、课程人数;系信息管理有系号和系名。 (1)学生信息模块完成学生的登陆,然后根据各位同学所在的系不同,调用相应的选课模块。其中学生登录模块的功能是验证登录人员确实是本院的学生,学生启动本系统后,系统提示输入学生学号码和密码,验证后进入主控操作界面。 (2)教师信息模块完成教师的登陆,然后根据各位教师所在的系不同,教师所教的课程不同,调用所选的课程.其中教师登陆模块的功能是验证登录人员确实是本院的教师,教师启动本系统后,系统提示输入教师工号和密码,验证后进入主控操作界面。 (3)课程信息管理包括必修课程和选修课程,学生必需先登陆才能进行对课程的选课否则不能进入选课系统. (4)系信息管理中学生必需选重所在的系号和系名才能进行选课,否则并不能进行选课. 业务流分析 学生成绩管理系统的业务流程:首先由教师或系统管理员等有录入权限的用户将各自权限范围内的信息进行录入,然后保存信息到数据库中。有权限的人可以对这些库信息进行修改和删除。所有用户均 23 / 88 软件工程项目报告 可以进行信息查询和统计,有权限用户还可以基于已有信息进行奖学金评定,评定结果可以报表打印。 数据流分析 学生成绩管理系统的数据流程:首先由教师或系统管理员等有录入权限的用户将各自权限范围内的信息进行录入处理,然后保存信息到数据库中。有权限的人可以对这些库信息进行修改和删除处理。所有用户均可以进行信息查询和统计,有权限用户还可以基于已有信息进行奖学金的评定处理过程,评定结果可以报表打印。 系统数据模型设计 24 / 88 软件工程项目报告 E-R图 记录号 成绩 学号 课程号 成绩 25 / 88 软件工程项目报告 工号 班级 姓名 教工 权限 系部 密码 系代 码 系部(班 系名 级) 班级 26 / 88 软件工程项目报告 课程号 上课时间 课程简介 课程名 教师号 课程 上课地点 课程状态 学分 学时 27 / 88 学号 软件工程项目报告 操作方法 登录 首先,点击主页左边的学生选课系统,出现学生选课系统画面,接着,进行新用户注册,就可登录网上选课系统,并在网上选课开放期间,进行增加或删除课程;在网上选课关闭期间,可预览所选课程或查询自己的历史成绩。 课程预览 学生进入网上选课系统,请首先进入课程预览菜单,预览自己的 28 / 88 软件工程项目报告 课程表,学生自行选课后,也可进入课程预览菜单,查看选课结果。课程表中已有的课程为教务处按各班教学计划整班指定上去的,不得自行退选。 选课 当点击增加选课菜单后,可从课程列表框中选择需要的课程,可以一次选多门课。也可以输入课程名称、课程序号、上课时间等进行模糊查询。按添加按钮,可添加选择的课程,按明细可查询该课程的 详细情况。 退课 当需要删除选课时,选中删除选课菜单。可从课程列表框中选择需要删除的课程,可以一次选多门课。按删除按钮,可删除所选择的课程,按明细可查询该课程的详细情况。 密码修改 当选中密码修改菜单时,输入一次旧密码,两次新密码,然后按修改按钮,密码修改成功。请务必记住自己的密码,并注意保密。 29 / 88 软件工程项目报告 管理员登录 管理员初始用户名是admin,密码admin888。用管理员帐号登录可以查看每个人的选课,及退课情况。 退出系统 学生选课完成后必须登录注销退出选课系统,以防他人修改数据。如果还想继续使用,请点击【登录】,重新登录 (六)学生选课系统的总体设计 30 / 88 软件工程项目报告 数据库系统设计 信息系统的主要任务是通过大量的数据获得管理所需要的信息,这就必须存储和管理大量的数据。因此建立一个良好的数据组织结构和数据库,使整个系统都可以迅速、方便、准确地调用和管理所需的数据,是衡量信息系统开发工作好坏的主要指标之一。 数据库系统设计数据库设计主要是进行数据库的逻辑设计,即将数据按一定的分类、分组系统和逻辑层次组织起来,是面向用户的。数据库设计时需要综合企业各个部门的存档数据和数据需求,分析各个数据之间的关系,按照数据库提供的功能和描述工具,设计出规模适当、正确反映数据关系、数据冗余少、存取效率高、能满足多种查询要求的数据模型。为了更好地组织数据和设计出实际应用数据库,应该注意如下问题:规范化地重组数据结构:对数据进行规范化表达,这在后面将会具体讨论。关系数据结构的建立:在进行了数据基本结构的规范化重组后,还必须建立整体数据的关系结构。这一步设计完成后数据库和数据结构设计工作基本完成,只待系统实现时将数据分析和数据字典的内容代入到所设计的数据整体关系结构中,一个规范化数据库系统结构就建立起来了。 建立关系数据结构涉及三方面内容:确定关联的关键指标项并建立关联表;确定单一的父系记录结构;建立整个数据库的关系结构。 31 / 88 软件工程项目报告 定义安全保密性的方法一般有如下几种: a(原则上所有文件都定义为4级,个别优先级特别高的办公室(终端或微机的入网账号)可定义高于4级的级别,反之则定义为低于4的级别。 b(统计文件(表)和数据录入文件一般只对本工作站定义为只写方式,对其它工作站则定义为只读方式 6.1 项目范围以及模块管理 网上选课系统从功能上划分一共有4个主模块,其中信息管理部分包含了4个子模快,具体的结构示意如下列所示: ?身份验证 ?选课 ?信息管理 ?信息浏览 ?信息查询 ?信息修改 ?修改 ?删除 ?信息添加 ?课程发布 32 / 88 软件工程项目报告 从对象上划分一共有教师、学生、管理员三部分,主要操作为课程发布和选课。 ?设计策略 硬件环境: 服务器端/客户端: 处理器:Intel PentiumIII 内存: 512M 硬盘空间:80G 软件环境: 服务器端/客户端: 操作系统:Windows XP 网络 协议 离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载 :TCP/IP 浏览器:Internet Explore 6.0 制作工具:Dreamweave 4.03、SQL Server 2000、 JSP、 HTML(Hyper Text Markup Language) 用Dreamweave网页制作工具完成网上选课系统的界面的设计,用HTML语言设计网页的外观构架,在网页编辑器中嵌入JSP和JAVA语言对网页中提交的数据进行处理,在系统的后台,用SQL Server 2000 作为数据库支持,提供基本的表信息,使用时,打开浏览器(Internet 33 / 88 软件工程项目报告 Explore),在地址栏中输入“127.0.0.1”(由于服务器和客户端都在同一台计算机上),回车后,即可进入网上选课系统的主页,进行操作。 欢 迎 界 面 欢 迎 界 面 34 / 88 主 界 面 主 界 面 软件工程项目报告 帮系查查系 基 相相选 基选 助 统统 本关关课 本课 询询 系 管管 系设链系系系系系 统 理理 统置 接 统 统统统统 信信 息 息 选课系统管理 Apache Tomcat服务器 用户管理 查询当然系统负荷 课程管理 选课模块 Sql server服务器 修改密码 查询近日访问总量 数据库管理 临时存储模块 查询数据库日志 运行参数配 置 个人公告通知 查询系统运行时参置 数 教务通知 置 图6.1.1 系统层次概框图: 6.1.2 模块间的调用关系 系统层次概框图: 首页 学生登录 教师登录 35 / 88 软件工程项目报告 查 询 查查查密已课 询密询询码发程公 码选公修布信共 修课共改 课息信 改 信信程发息 息 息 信布 息 查查查修添添删修 询询询改加加除改 教选课选公公课课 师课程课共共程程 信名信信信信发发 息 单 息 息 息 息 布布 信信 息 息 管理员登录 添修删添修删删 加改除加改除除 教教教学学学公 师师师生生生告 信信信信信信信 息 息 息 息 息 息 息 图6.1.2模块调用图: 1、 登陆模块 包含、 36 / 88 软件工程项目报告 1:学生档案信息数据库其中包括学生的登陆ID(学号),密码,油箱,用户的等级信息; 2:登记信息即用户对系统的操作权限(系统管理员为1,教务管理员为2,院系的教务管理员为3,教师或辅导员为4,学生为5); 3:该模块返回的信息为用户的ID和你等级信息; 4:该模块接收的信息为用户的ID、等级、密码; 2、 数据处理模块 包含、 ? 课程模块 ? 用户详细信息模块 细化课程模块: ?用户对象为:系统管理员 其要实现的功能为: 1:信息浏览:信息浏览包括已选课程浏览、被选课程浏览、公共信息浏览、已发布课程信息浏览。已选课程浏览是为学生提供的查看自 37 / 88 软件工程项目报告 己已经选择的课程信息,根据选择的学期不同而更新页面。被选课程浏览用于学生修改、补选、重新选择课程。公共信息浏览适用于教师和学生查看最近发布的信息(内容、时间)。已发布课程信息浏览用于各代课老师查询自己已经发布的课程信息,主要用于浏览、核对。 2.信息查询:信息查询包括教师个人信息查询、课程查询、选课名单查询。课程查询即通 课程编码(唯一)来查询该课程的相关介绍,包括课程内容、开课学期、地点等内容。教师个人信息是通过教师姓名来查询对应的老师个人信息,包括学历、职称、成果等。通过选课名单的查询可以查看该学期选择某一门课程的学生情况。 4. 信息修改:信息修改包括选课信息的修改,课程发布信息的修改, 密码的修改,学生信息的修改,教师信息的修改。选课信息的修 改用于学生修改自己的选课信息。课程发布信息的修改用于教师 修改已发布的课程信息。密码的修改用于学生和老师对密码进行 修改,后两种修改用于系统管理员对用户信息的修改。 5. 删除:信息的删除功能用于教师删除自己已发布的课程信息,在 管理员功能中,信息删除还包括对教师、学生、公告信息的删除。 6. 添加:信息添加包括学生的选课信息添加即选课功能(以上的选 38 / 88 软件工程项目报告 课功能已介绍过),教师发布新的课程信息即课程发布(在下面的 课程发布功能中介绍),公共留言处新的留言的添加,教师信息的 添加,学生信息的添加。留言处的信息添加用于用户发布新信息, 通过输入发布的主题,内容即可添加新留言,教师信息和学生信 息的添加是由管理员才可以完成。 ?用户对象为:老师 课程发布:课程发布用于教师发布新的课程信息,新信息发布后,当学生选择不同的学期后即可看到发布的信息(以列表的形式同其他课程信息一起列出)。 ?用户对象为:学生 个人基本信息的修改及其密码的修改、课程一选阶段的修改。 说明:在实际处理的时候可能和上面不一样,但基本思想一样。例如:课程发布我们分成了单个独立的模块来进行处理,而学生,教室,管理员修改也采用独立的模块进行处理。 3. 模块间的接口 39 / 88 软件工程项目报告 学生登录,密码修改:学号 学生登录,查询选课信息:学号、学期 查询选课信息,修改选课信息:专业、学期 教师登录,密码修改:身份证号 教师登录,查询已发布课程信息:身份证号 6.3数据库设计 根据系统功能设计的要求以及功能模块的划分,对于系统用户信息数据库,可以列出以下数据项和数据库: 1(名称:课程信息表 标识:Info_course 课程信息表包括 序号、课程编码、课程名称、供选学院、供选专业、老师、身份证号、学期、上课时间、学分、总人数、已选人数、地点、先行课、课程介绍15个字段。 名称 字段名称 类别 主键 非空 Xuhao No Yes 序号 自动编号 Kechengbianma varchar No Yes 课程编码 Kechengmingcheng varchar No No 课程名称 Gongxuanxueyuan varchar No No 供选学院 40 / 88 软件工程项目报告 Gongxuanzhuanye varchar No No 供选专业 Laoshi varchar No No 老师 Shenfenzhenghao varchar No No 身份证号 Xueqi varchar No No 学期 Shangkeshijian varchar No No 上课时间 Xuefen real No No 学分 Zongrenshu int No No 总人数 Yixuanrenshu int No No 已选人数 Didian varchar No No 地点 Xianxingke char No No 先行课 Kechengjieshao text No No 课程介绍 表6.3.1 课程信息表 2(学生信息表 标识:Info_stud 学生信息表包括 学号、姓名、所在学院、所在专业、班级、密码 6 个字段。 名称 字段名称 类别 主键 非空 Xuehao varchar Yes Yes 学号 Xingming varchar No No 姓名 41 / 88 软件工程项目报告 Suozaixueyyuan varchar No No 所在学院 Suozaizhuanye varchar No No 所在专业 Banji varchar No No 班级 Mima varchar No No 密码 表6.3.2 学生信息表 3(教师信息表 标识:Info_teac 教师信息表包括身份证号、姓名、性别、所属学院、学历、职称、个 人简介、密码8个字段。 名称 字段名称 类别 主键 非空 Shenfenzhenghao varchar Yes Yes 身份证号 Xingming varchar No No 姓名 Xingbie char No No 性别 Suoshuxueyuan varchar No No 所属学院 Xueli char No No 学历 Zhicheng char No No 职称 Gerenjianjie text No No 个人简介 Mima varchar No No 密码 表6.3.3教师信息表 42 / 88 软件工程项目报告 4(管理员信息表 标识:Info_mana 管理员信息表包括登录号、姓名、密码3个字段。 名称 字段名称 类别 主键 非空 Dengluhao varchar Yes Yes 登录号 Xingming varchar No No 姓名 Mima varchar No No 密码 表6.3.4管理员信息表 5(学生选课信息表 标识:selected 学生选课信息表包括 学号、姓名、所在学院、所在专业、班级、学期、所选课程、课程编码8个字段。 名称 字段名称 类别 主键 非空 Xuehao varchar No No 学号 Xingming varchar No No 姓名 Suozaixueyuan varchar No No 所在学院 Suozaizhuanye varchar No No 所在专业 43 / 88 软件工程项目报告 Banji varchar No No 班级 Xueqi varchar No No 学期 Suoxuankecheng varchar No No 所选课程 Kechengbianma varchar No No 课程编码 表6.3.5学生选课信息表 6(留言信息表 标识:note 留言信息表包括 序号、标题、内容、时间 4个字段。 名称 字段名称 类别 主键 非空 Xuhaho int Yes Yes 序号 Biaoti varchar No Yes 标题 Neirong text No No 内容 Shijian varchar No No 时间 表6.3.6留言信息表 (七)学生选课管理系统详细设计 44 / 88 软件工程项目报告 学生选课系统管理员模块详细设计: 管理员登录 添修删添修删删 加改除加改除除 教教教学学学公 师师师生生生告 信信信信信信信 息 息 息 息 息 息 息 管理员信息表 标识:Info_mana 信息表包括登录号、姓名、密码3个字段。 名称 字段名称 类别 主键 非空 ID varchar Yes Yes 登录号 Sname varchar No No 姓名 Password varchar No No 密码 表 管理员信息表 管理员登录 管理员输入登陆号及密码就可登陆,对教师学生的信息进行添加,修改,删除等操作。 45 / 88 软件工程项目报告 1.修改教师信息 教师信息的修改由管理员完成,教师无权修改。在管理员登录称工后选择“修改教师信息”即进入教师信息修改页面,输入要修改的教师身份证号后网页列出所要修改的教师的信息,其中不包括教师的身份证号和密码(密码由教师自己修改,管理员只在添加一条新的教师信息时才写入初始密码)。具体的操作是对数据库中的表“Info_teac”查询,在网页相应的的地方显示所要的信息。列出教师信息后,只要对其中信息进行修改提交即可。 实例截图: 修改教师信息 2.添加教师信息 添加教师信息由管理员完成,在添加页面中输入新教师的信息。 46 / 88 软件工程项目报告 具体的操作是对数据表“Info_teac”进行添加操作,生成新记录。 出错及处理:可能输入的教师的身份证号已存在,系统则提示“该教师信息已存在~”避免了新信息对旧的信息的覆盖产生的错误。 实例截图: 添加教师信息 失败: 47 / 88 软件工程项目报告 失败 3.删除教师信息 教师信息的删除也是由管理员完成,输入需要删除的教师身份证号后进行删除。 出错及处理:当输入的教师不存在时,系统提示“无此教师信息~” 实例截图: 删除: 删除教师信息 48 / 88 软件工程项目报告 失败: 失败 4.修改学生信息 学生信息的修改由管理员完成,学生无权修改。在管理员登录成功后选择“修改学生信息”即进入学生信息修改页面,输入要修改的学生学好后网页列出所要修改的学生的信息,其中不包括学生的密码(密码由学生自己修改,管理员只在添加一条新的学生信息时才写入初始密码)。具体的操作是对数据库中的表“Info_stud”查询,在网页相应的的地方显示所要的信息。列出学生信息后,只要对其中信息进行修改提交即可。 5.添加学生信息 49 / 88 软件工程项目报告 添加学生信息由管理员完成,在添加页面中输入新学生能够的信息。具体的操作是对数据表“Info_stud”进行添加操作,生成新记录。出错及处理:可能输入的学生的学号已存在,系统则提示“该学生信息已存在~”避免了新信息对旧的信息的覆盖产生的错误。 6.删除学生信息 学生信息的删除也是由管理员完成,输入需要删除的学生学号后进行删除。出错及处理:当输入的学生不存在时,系统提示“无此学生信息~” 7.删除公告信息 功能与删除教师信息基本相同,不再赘述 教师部分详细设计 教师信息管理系统是一个教育单位不可缺少的部分。一个功能齐全、简单易用的信息管理系统不但能有效地减轻学校各类工作人员的工作负担,它的内容对于学校的决策者和管理者来说都至关重要。 教师管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面.对于前者要求 50 / 88 软件工程项目报告 建立数据一致性和完整性强,数据安全性好的数据库.而对于后者则要求应用程序功能完备,易使用等特点。在学校,教师信息管理包括教师信息、学生信息、成绩信息,显然如果以人工的方式对其管理将耗费大量的人力、物力,本系统以此作为开发的目标,用以减轻教师管理人员的负担。 系统开发采用Microsoft公司的Visual C++ 6.0,利用其强大的可视化界面功能及对数据库的支持,先构造一个原型,逐步增加功能,最终满足需求。系统中大量采用SQL查询语句,界面友好,功能较强。不足的地方是当数据访问量大时,将致使性能的下降,且不利于数据的有效共享,在以后改进的中应考虑采用SQL SERVER作为数据库, 3.4 各个模块功能简介: 本系统分为五个功能模块,它们分别是教师信息录入模块、教师信息修改模块、教师信息查询模块、教师信息打印模块。 下面分别介绍各个模块的功能用途,以及使用。 1.教师信息录入模块 教师信息录入模块,主要是用来记录教师的各种信息主要分为四个部分:基本情况、学历情况、工作成绩、社会兼职等。基本情况需要填写姓名、性别、身份证号、入校时间、出身年月、所学专业、家庭住 51 / 88 软件工程项目报告 址等信息。这些是一个教师的最基本的情况,也是必须填写的。学历情况要求填写三次接受教育的时间,毕业的学校以及所学的专业。工作成绩包括三个部分:教学成果、科研成果、所著的学术著作等。社会兼职分为学术团体和社会团体的兼职。需要填写担任的职务、任职的时间以及团体的名称。备注中可以就其他没有说清楚的问题加以补充。 2.教师信息修改模块 教师信息修改模块主要是对教师的进行修改、删除等操作。此模块以教师的姓名作为关键字对教师的整体信息一一列举。点击修改按钮就会跳到教师信息页面,教师的基本情况、学历情况、工作成绩、社会兼职等信息可以任意做修改和补充。点击删除按钮就会弹出一个对话框让管理员确认是否真的删除,点击是就会删除信息,若选择否则信息不会被删除。此外该模块为了提高管理员修改信息的效率还提供了以姓名为关键字的检索,找到的教师信息会用黄色的长条突出显示出来,这样管理员就不必逐个查找了。 3.教师信息查询模块 信息查询模块与信息修改模块有一些交叉的部分比如说信息查询模块也可以对教师的基本信息进行修改删除等操作,基本方法与修改模块很相似。可以说信息查询模块就是信息修改模块的补充和延伸。但是在在信息查询模块中,查询的能力更加强大,它可以以姓名、入校 52 / 88 软件工程项目报告 时间、所学专业、所在基本单位等为关键字进行查询,查询结果也是以黄色长条的形式显示出来。可以说查询修改模块结合起来使用,可以大大提高管理员管理信息的效率,增强系统的可用性。 4.信息打印模块 信息打印模块就是对教师的基本信息打印输出。基本信息包括基本情况、学历情况、工作成绩、社会兼职等。打印输出就是将这些信息转化为Word文档,然后打印。另外这个模块中也可以查询,其实是为了方便打印某个教师而做的,如果要打印某个教师的信息,只要简单查询一下,用不了多少时间他的信息入口就可以找到很方便的就可以将信息打印出来。 5.帐户管理模块 帐户管理模块就是对各个帐户进行管理。主要有修改账号、添加账号、删除账号等几个功能 教师信息表 标识:Info_teac 教师信息表包括身份证号、姓名、性别、所属学院、学历、职称、个人简介、密码8个字段。 名称 字段名称 类别 主键 非空 53 / 88 软件工程项目报告 ID char Yes Yes 身份证号 Sname char No No 姓名 Sex char No No 性别 Sdept char No No 所属学院 Sgrade char No No 学历 Scareer char No No 职称 Info char No No 个人简介 Password char No No 密码 表4.2.3教师信息表 5.1 教师登录功能 教师在登录页面对应的地方输入用户名、密码、身份证号,确认后登录。在提交后的asp文件中,首先通过身份证号对数据库中的Info_teac表进行检索,若检索到的记录集为空,则说明身份证号错误,从而转到相应的出错处理程序,若记录集不为空,再进行姓名判断,若姓名与表中的姓名不相等,进行出错处理,若相等,进而检查密码是否相等,不相等,作出错处理,相等则转入老师登录成功的操作页面,并将姓名,密码,身份证号以session对象保存起来。 出错及处理:在该模块中可能发生的错误有 ? 用户名错误,系统这时会提醒“无此用户,重新输入~” 54 / 88 软件工程项目报告 ? 姓名错误,系统提示“姓名错误~” ? 密码错误,系统提示“密码错误” 实例截图: 登录: 图5.1.1 登录 错误: 55 / 88 软件工程项目报告 图5.1.2错误 登录成功: 图5..3登录成功 5.2 教师密码管理功能 密码的管理的前提是用户成功登录,选择密码修改后,按照页面上的提示,在相应的文本框中输入原始密码,新密码(两次),确定 56 / 88 软件工程项目报告 后提交。转入执行的asp文件后,首先根据传递的身份证号判断原始密码的正误,若错误,转到相应的处理程序,若正确,再判断两次输入的新密码是否相等,若不等,出错;否则,用新密码代替旧密码,更新数据库表Info_teac中的“密码”字段。 出错及处理: ? 原始密码错误,系统提示“原始密码错误,重新输入~” ? 新密码两次输入不同,系统提示“新密码不一致,重新 输入~” 实例截图: 密码修改: 图5.2.1密码修改 失败: 57 / 88 软件工程项目报告 图5.2.2失败 图5.2.3失败 成功: 58 / 88 软件工程项目报告 图5.2.4成功 5.3教师的信息浏览/查询功能 5.3.1 选课信息查询 从登录成功的下拉菜单中选择一个要查询的学期,确定后进入浏览页面。确定提交页面后,学期的信息以及以session对象传递过来的学号信息作为数据库查询的条件,对表selected进行查询,凡是“学期”等于选择的学期,“学号”等于session(xuehao)的记录均为被选记录,每选出一条记录,选择该记录中的“课程编码”字段为参数,对表Info_course进行查询,将查询到的信息以表格的形式在网页中显示出来,即为该生该学期的已选课信息。将学期作为session对象保存起来。程序脚本中用到两重循环,内循环是对表Info_course进行查询,外循环是对表selected进行查询。 实例截图: 59 / 88 软件工程项目报告 图5.3.1选课信息查询 5.3.2 查询开课信息 在查看已选课程的窗口中点击“我要修改”即可看到学生所在专业在这个学期所开设的课程。其中查询数据库所需要的参数是由session(term),和学生的专业信息传递来的。专业信息的活得是通过session(xuehao)对数据表Info_stud查询得到的。 实例截图: 60 / 88 软件工程项目报告 图5.3.2查询开课信息 5.3.3 查询公告信息 教师登录成功后选择查看公共信息发布即可进入公共信息查询,传递参数为信息编号,对数据库note进行检索,将符合条件的记录列出。 实例截图: 图5.3.3查询公告信息 5.3.4 查询课程信息 61 / 88 软件工程项目报告 在选课信息浏览页面中在“课程介绍”中输入课程编码,点击查询即可。课程信息的查询是通过条件“课程编码”对数据表Info_course 进行查询,将符合条件的信息列出。 实例截图: 图5.3.4 查询课程信息 5.3.5 查询教师信息 在选课信息浏览页面中在“教师介绍”中输入教师姓名,点击查询即可。课程信息的查询是通过条件“教师姓名”对数据表Info_teac进行查询,将符合条件的信息列出。由于教师有重名的情况存在,因此在教师信息中包含了教师在这个学期的所代课程及课程编码,这样学生就可以确定所选老师是不是所选课的代课老师。 实例截图: 62 / 88 软件工程项目报告 图5.3.5 查询教师信息 5.3.6 查询选课名单 在选课信息浏览页面中在“查看选课名单”中输入课程编码,点击查询即可。选课名单的查询是通过条件“课程编码”对数据表selected进行查询,将符合条件的信息列出。 实例截图: 图5.3.6 查询选课名单 5.3.7 课程信息修改 63 / 88 软件工程项目报告 在查看以往发布的信息的页面中点击“我要修改”进入修改页面(实际同信息发布页面),在文本框中输入完整信息后进行覆盖写入,操作与信息发布大致相同。 5.3.8,成绩录入 第一步:选择【成绩录入】查看本学期所教课程,并选择一门课程, 第二步:选择课程后,请输入成绩录入密码, ? 每位教师各门课程均会生成一个成绩录入密码,该密码将用两种途径通知教师: (1)自动发送到每名教师校内登记的邮箱(在个人信息项目中),请查认; (2)将所有课程密码打印放在院教务秘书处; ? 注意输入完密码后请用鼠标单击"确定"按钮而不要按"ENTER" 第三步:录入成绩: 输入完成密码后即进入成绩录入界面, 首先请各位教师核对班级和学生名单; 然后请选择记分制:百分制/五级评分制; 确定"平时"和"期末"的成绩比例.按学校规定默认为30%平时成绩,70%期末成绩,如有特殊情况,请在各学院中申请,可进行修改; 教师只录入平时成绩和期末成绩,按"保存"按钮即自动生成总评成绩; 64 / 88 软件工程项目报告 成绩录入不能有未填部分,若有"旷考,缓考,取消考试资格,作弊,免修"的情况请在"备注"栏中选择; 教师在成绩输入过程中可单击"保存"进行成绩复核,复核无误,最后再单击"提交"按钮,"提交"后成绩即锁定不能修改. 做在成绩提交后有修改成绩情况,请填写成绩修改申请单报所在学院审核后交教务处教务决访问速度及数据共享的问题。该系统性能力求易于使用,具有较高的扩展性和可维护性。 第四步:成绩单和试卷分析打印 成绩提交后,即显示"打印输出"按钮,可打印成绩单和试卷分析 ? 点击"打印输出"按钮 ? 点击"打印"按钮 点击"保存"按钮后即可将成绩单和试卷分析保存到所在计算机上,以后可打开该文件进行打印. 成绩单和分析表一式两份,审核无误后请交至所在学院的教务秘书处,学院审核签字后,交一份成绩至教务处教务科. 【教师个人课表查询】 ? 查询教师个人在各学年,学期个人课表 【选课情况】 选择相关学年,学期,即可查询该学期所带教学班和班级名条, 点击 "输出成绩名单"可输出往年任课班级学生成绩.如图(24)该处 65 / 88 软件工程项目报告 选择图(24)的"打印名条"按钮,可打印名单作为平时分的记分册. ? 选择"保存"按钮后如即存入所在计算机 教师可在这里查看所任课班级的学生名单和相关情况. 【教学质量评价】 ? 显示学生对该门课程的评价情况(该模块暂未开放). 【考试安排】 【培养计划】 ? 查询全校各个专业教学计划 【教室查询】 ? 这里请教师按要求输入具体的信息,可查询出不同时段,不同类型(多媒体,普通教室)教室的使用情况 66 / 88 软件工程项目报告 网上选课系统学生模块详细设计 ,.学生的系统层次概框图: 首 页 学生登录 查查 密询询 码选公 修课共 改 信信 息 息 添查查查修 加询询询改 公教选课选 共师课程课信 信名信信息 息 单 息 息 ,.学生信息数据库: 根据系统功能设计的要求,对于学生信息数据库可以列出以下数据项 和数据库: 1(学生信息表 标识:Info_stud 67 / 88 软件工程项目报告 学生信息表包括 学号、姓名、所在学院、所在专业、班级、密码 6个字段。 名称 字段名称 类别 主键 非空 Sno varchar Yes Yes 学号 Sname varchar No No 姓名 Stemp varchar No No 所在学院 Major varchar No No 所在专业 Class varchar No No 班级 Password varchar No No 密码 表1 学生信息表 2(学生选课信息表 标识:selected 学生选课信息表包括 学号、姓名、所在学院、所在专业、班级、学期、所选课程、课程编码8个字段。 名称 字段名称 类别 主键 非空 Sno varchar No No 学号 Sname varchar No No 姓名 Stemp varchar No No 所在学院 68 / 88 软件工程项目报告 Major varchar No No 所在专业 Class varchar No No 班级 Term varchar No No 学期 Cno varchar No No 所选课程号 表2学生选课信息表 3(留言信息表 标识:note 留言信息表包括 序号、标题、内容、时间 4个字段。 名称 字段名称 类别 主键 非空 Sno int Yes Yes 序号 Title varchar No Yes 标题 Contant text No No 内容 Time varchar No No 时间 表3留言信息表 C(学生登录功能 在登录页面对应的地方输入用户名、密码、学号/身份证号,确认后登录。在提交后的asp文件中,首先通过学号/身份证号对数据库中 69 / 88 软件工程项目报告 的Info_stud/Info_teac表进行检索,若检索到的记录集为空,则说明学号/身份证号错误,从而转到相应的出错处理程序,若记录集不为空,再进行姓名判断,若姓名与表中的姓名不相等,进行出错处理,若相等,进而检查密码是否相等,不相等,作出错处理,相等则转入学生登录成功的操作页面,并将姓名,密码,学号/身份证号以session对象保存起来。 出错及处理:在该模块中可能发生的错误有 ? 学号错误,系统这时会提醒“无此用户,重新输入~” ? 姓名错误,系统提示“姓名错误~” ? 密码错误,系统提示“密码错误” 实例截图: 登录: 70 / 88 软件工程项目报告 图C.1 登录 错误: 图C.2错误 登录成功: 图C.3登录成功 71 / 88 软件工程项目报告 D(学生密码管理功能 密码的管理的前提是用户成功登录,选择密码修改后,按照页面上的提示,在相应的文本框中输入原始密码,新密码(两次),确定后提交。转入执行的asp文件后,首先根据传递的学号/身份证号判断原始密码的正误,若错误,转到相应的处理程序,若正确,再判断两次输入的新密码是否相等,若不等,出错;否则,用新密码代替旧密码,更新数据库表Info_stud/Info_teac中的“密码”字段。 出错及处理: ? 原始密码错误,系统提示“原始密码错误,重新输入~” ? 新密码两次输入不同,系统提示“新密码不一致,重新 输入~” 实例截图: 密码修改: 72 / 88 软件工程项目报告 图D.1密码修改 失败: 图D.2失败 73 / 88 软件工程项目报告 图D.3失败 成功: 图D.4成功 74 / 88 软件工程项目报告 E(学生的信息浏览/查询功能 1(选课信息查询 从登录成功的下拉菜单中选择一个要查询的学期,确定后进入浏览页面。确定提交页面后,学期的信息以及以session对象传递过来的学号信息作为数据库查询的条件,对表selected进行查询,凡是“学期”等于选择的学期,“学号”等于session(xuehao)的记录均为被选记录,每选出一条记录,选择该记录中的“课程编码”字段为参数,对表Info_course进行查询,将查询到的信息以表格的形式在网页中显示出来,即为该生该学期的已选课信息。将学期作为session对象保存起来。程序脚本中用到两重循环,内循环是对表Info_course进行查询,外循环是对表selected进行查询。 实例截图: 75 / 88 软件工程项目报告 图E.1选课信息查询 2(查询开课信息 在查看已选课程的窗口中点击“我要修改”即可看到学生所在专业在这个学期所开设的课程。其中查询数据库所需要的参数是由session(term),和学生的专业信息传递来的。专业信息的活得是通过session(xuehao)对数据表Info_stud查询得到的。 实例截图: 76 / 88 软件工程项目报告 图E.2查询开课信息 3(查询公告信息 在学生登录成功后选择查看公共信息发布即可进入公共信息查询,传递参数为信息编号,对数据库note进行检索,将符合条件的记录列出。 实例截图: 图E.3查询公告信息 77 / 88 软件工程项目报告 4(查询课程信息 在选课信息浏览页面中在“课程介绍”中输入课程编码,点击查询即可。课程信息的查询是通过条件“课程编码”对数据表Info_course 进行查询,将符合条件的信息列出。 实例截图: 图E.4 查询课程信息 5(查询教师信息 在选课信息浏览页面中在“教师介绍”中输入教师姓名,点击查询即可。课程信息的查询是通过条件“教师姓名”对数据表Info_teac进行查询,将符合条件的信息列出。由于教师有重名的情况存在,因此在教师信息中包含了教师在这个学期的所代课程及课程编码,这样学生就可以确定所选老师是不是所选课的代课老师。 78 / 88 软件工程项目报告 实例截图: 图E.5 查询教师信息 6(查询选课名单 在选课信息浏览页面中在“查看选课名单”中输入课程编码,点击查询即可。选课名单的查询是通过条件“课程编码”对数据表selected进行查询,将符合条件的信息列出。 实例截图: 79 / 88 软件工程项目报告 图E.6 查询选课名单 80 / 88 软件工程项目报告 ,七,调和测试 在这一节中,我们主要讨论了两个问题,一个是系统的联机文档,另一个是系统的测试,下面我们分别加以说明。作为一个完整的系统,联机文档是其中不可缺少的部分也是相当重要的部分。好的文档能够使用户快速了解并准确的使用系统的各项功能。减少误操作,减少错误产生的可能,这对用户和开发人员都有很多的好处。所以在开发本系统中,也加入了不少的文档,除了对于四大模块的详细说明外,对于易出错和不易操作的地方(如多条件查询部分)又作了详细的说明。 由于本身能力的局限性,所以做编写的代码,即使经过反复检查也难免出错所以在本阶段力求使用有限的时间找出尽可能多的错误,力求系统尽量正确。我们在本系统的测试中使用了黑盒法(即不关心程序内部的逻辑结构,而是根据程序的功能来设计是检测)请一位不熟悉本系统的人来进行随意性的操作,打破习惯的操作顺序,从中发现错误,在此阶段系统的大量错误得到了改正。 信息管理系统所涉及的数据库设计的重要步骤加载测试。加载测试工作贯穿于程序测试工作的全过程,整个录入、修改、查询、处理工作均可视为对数据库的加载测试工作。要设计出一个好的信息管理系统数据库,除满足系统所要求的功能外,还必须遵守下列原则: 81 / 88 软件工程项目报告 1)基本表的个数越少越好。 2) 主键的个数越少越好。键是表间连接的工具,主键越少,表间的连接就越简单。 3)字段的个数越少越好。 4) 所有基本表的设计均应尽量符合第三范式。数据库的设计中,如何处理多对多的关系和如何设计主键,是两个有着较大难度、需要重点考虑的问题。 设计过程中的问题及解决 1 数据库的连接问题 SQL server 2000与 Access 2000的连接方式有所不同,当更换数据库时,首要的一点就是更换数据库的连接语句,通过查找及实践,完成了数据库的建立和连接。也可以进行转化。步骤如下: 1, 打开“控制面板”下“管理工具”中的“数据库源”; 2, 按“添加”添加一个新的数据源,在选择栏里选“Driver do microsoft Access (*.mdb)”,完成后将出现一个框; 在 82 / 88 软件工程项目报告 “数据库源”里面输入你想写的名称,我取名叫“ABC”,说明 不需要填接着按下面的选择,寻找你的数据库地址和选中(注 意,请先备份自己的ACCESS数据库),然后确定。数据源在这 里建好了,剩下转换了。 3, 打开SQL2000企业管理器,进入数据库,新建一个空的数 据库“ABC”; 4, 选择新建立的数据库,按鼠标右键,选择“所有任务”下 “导入数据”,按“下一步”继续; 5, 在数据库源下拉但中选择“Driver do microsoft Access(*.mdb)”,在“用户系统DSN”中,选种你刚才添加的 “ABC”,按 “下一步”; 6, “目的”不需要修改,选择服务器(一般下为自己的本机 “local”,也 可以选择服务器地址或者局域网地址,确定你 的权限是否可以操作)“使用Windows 身份验证”指用自己的 系统管理员身份操作,“使用SQL身份操作验证”可以用于网 站的操作,推荐用后者; 83 / 88 软件工程项目报告 7, 选上“使用SQL身份操作验证”后,填写你的用户名和密 码,我自己选择的是系统默认帐号“sa”,“****”,数据库选 择刚新建的“ABC”,按“下一步”; 8, 这一步的两个单项选择,“从数据源复制表和视图”与 “用一条查询指令指定要传输的数据”,选择前者,按“下一 步”继续; 9, 这里将出现你自己ACCESS数据库的表,按“全选”后,下 一步; 10, DTS导入/导出向导”,看“立即运行”被选中按“下一 步”,按“完成”继续; 11, 这个步骤你将看到你的数据被导入SQL2000里面,当出现 “已经成功 把XXX个表导入到数据库”的字样,而且所有的表前面都有绿色的勾,就 表示成功导入所有数据,如果中途出现问题或者表前面有红色的 叉的话, 说明该表没有成功导入,这时就要回去查看自己的操作是否正确 84 / 88 软件工程项目报告 了。 2 参数的传递问题 在模块的建立时,很多时候发现功能不能正常运行,在检查完程序语句的结 构之后,发现并没有错误,于是在检查页面与页面交互时发现了问题,很多地方 传递的参数并没有真正的执行,还有些地方没有进行参数的设置,才导致了程序的错误。 3 公共数据问题 由于一开始没有使用session对象,致使很多功能无法实现,在学习了 session的相关内容后才解决了一些具体的问题,包括网页间的参数的传递, 公共信息的保存及提取等。 总结 通过设计,我对WEB服务器、数据库软件SQL ServerJAVA、JSP等系列知识都有了一定的了解。使用ASP开发页面的能力也有了很大提高。 由于在此之前对于JAVA和JSP知识的了解几乎是一片空白,所以从 85 / 88 软件工程项目报告 一开 始就碰到许多困难。例如一开始我使用的是Access2000数据库服务器,由 于性能上与我使用的操作系统Windows XP有很多地方不相容,使得我在很长 一段时间内找不到问题的症结,导致了大量时间在检查代码甚至是对硬件的检查中,后来在看了有关JSP、JAVA编程方面的资料后更换了数据库服务器才将问题解决,另外在进行对循环显示以及网页中脚本代码与html代码之间的关系上都有过很大的困难,通过在网上寻找有关资料以及同学的帮助下最后都得到了解决。同时了解到像SQL Server 这样的数据库管理系统依赖于文件输入/输出操作的及时进行。有故障或配置不当的硬件、固件设置、筛选器驱动程序、压缩、程序错误以及 I/O 路径内的其他情况都可能导致阻塞或延迟 I/O 问题,并且很快对SQL Server 性能产生消极影响。 上述问题对 SQL Server 的影响因问题细节的不同而差异很大,但它们通常导致阻塞、锁存器争用和超时、过长的响应时间以及资源的过度利用。 阻塞 I/O 是指必须进行外部干预才能完成的 I/O 请求(通常是 I/O 请求包(IRP))。这种状况通常需要执行完整的系统重新启动或类似操作才能解决,并且强烈表明硬件有故障或者在 I/O 路径组件中存在序错误。 延迟 I/O 是指无需干预即可完成但所花时间超过预期时间的 I/O 请求(同样)这通常是 IRP)。这种状况的原因通常是硬件配置、固 86 / 88 软件工程项目报告 件设置或筛选器驱动程序干预,需要硬件或软件供应商提供帮助以便跟踪和解决。 在整个设计阶段感受最为深刻的是掌握学习的方式和解决问题的方法。首先我们学到了更多的学习的方式,学习不仅仅是只要掌握了书本上的知识就行了,我们还要通过各种方法去拓展我们的知识面,图书馆是个不错的选择,同时在网络发达的今天,上网查 找资料更加方便我们解决问题。 另外一个就是解决问题的方法,虽然面临的信息很多,但是如何从大量的信息中筛选所需的信息,有用的信息,才是解决问题的关键, 就像我在解决设计中的很多问题一样,一开始总是在看书,和书上的进行比对,虽然书本上的只是大部分都是有价值,正确的,但实际上每个人编程的思路和对数据处理的方法、思想都是不同的,这旧要求我们一定要通过实践才能找到解决问题的方案。同时这次实验让我们更了解使用SQL Server时最容易忽略的许多的问题 如不要使用光标。那样会破坏整个系统的性能。我们初学时都使用光标,而没有意识到它们对性能造成的影响。它们占用内存,还用它们那些不可思议的方式锁定表,另外,它们简直就像蜗牛。而最糟糕的是,它们可以使DBA所能做的一切性能优化等于没做。每执行一次FETCH就等于执行一次SELECT命令,这意味着如果光标有10000条记录,它将执行10000 UPDATE或者DELETE来完成相应次SELECT~如果使用一组SELECT、 的工作,那将有效率的多。规范化资料表,通常我们不规范化资料表,大概有两个借口:出于性能的考虑和纯粹因为懒惰。至于第二点,我们迟早得为此付出代价。而关于性能的问题,不需要优化根本就不慢 87 / 88 软件工程项目报告 的东西。我们经常看到一些程序员“反规范化”数据库,理由是“原来的设计太慢了”,可结果却常常是我们让系统更慢了。DBMS被设计用来处理规范数据库的,因此,我们要按照规范化的要求设计数据库。还有,这次实验让我们了解到了同学们之间合作的必要,在现在的软件行业中做项目不是一个人能解决的。合作的熟练关系着我们的项目的好坏,同时更能完善我们的项目,这为我们以后走出学校走进企业做好心理上的准备,在整个毕业设计的过程中,我们深刻的体会到了这一点的重要性,也牢记主了这一点,在今后的学习和研究中我也会继续将这种方法延续下去。 参 考 文 献 软件工程 主编 赵春刚 陈仲民 数据库系统概论 主编 王珊 88 / 88
本文档为【学生选课系统需求规格说明书】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_105949
暂无简介~
格式:doc
大小:523KB
软件:Word
页数:64
分类:生活休闲
上传时间:2017-09-18
浏览量:116