【课程管理系统的设计与实现(论文)】_第1页
【课程管理系统的设计与实现(论文)】_第2页
【课程管理系统的设计与实现(论文)】_第3页
【课程管理系统的设计与实现(论文)】_第4页
【课程管理系统的设计与实现(论文)】_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGE课程管理系统的设计与实现目录TOC\o"1-3"\h\u7271概述 127631.1研究背景 1245041.2研究现状 163391.3研究内容 129712开发技术介绍 2186522.1B/S架构 2165622.2Python技术介绍 2142272.3mysql数据库介绍 2123422.4Django框架 313223需求分析 314433.1寻找用户 347143.2寻找用例 3237953.2.1管理员用例图 462493.2.2教师用例图 430143.2.3学生用例图 570793.3业务流程分析 6236884数据库设计 8320064.1系统数据库设计 851484.1.1数据库E-R图 8162174.1.2逻辑设计 1075764.1.3数据表字段设计 1137494.2系统界面实现 12217745系统实现 13159545.1登录 13290525.2管理员功能界面 14240145.2.1学生管理 14203095.2.2教师管理 14162535.2.3课程管理 15103075.2.4选课管理 15276195.2.5公告管理 15271595.3教师功能界面 1529295.3.1课程管理 16117675.4学生功能界面 16254305.4.1学生信息 1667385.4.2课程管理 1697975.4.3学生中心 1733626系统测试 1882166.1程序调试 1865266.2程序的测试 18152706.3测试分析 19313776.3测试结论 207253结论 221概述1.1研究背景随着现代网络的高速发展,课程管理系统的网络化也正处于高速发展的的新兴期,所以一个功能完善的,从系统功能以及实际操作需求出发的,依靠飞速发展的新兴技术等多方面技术结合的课程管理系统可以帮助教师管理课程,学生也可以通过该系统实现选课管理、查询资料等操作。在如今线上教育高速发展的大环境下,我国的线上教育这一产业也发展起来了。在这样的大环境下开设计一个用户操作简单、选课过程便捷,方便人们进行网络选课的课程管理系统是具有非常好的发展前景的。本人设计的课程管理系统是典型的课程管理软件系统,在该系统的课程设计中包括了管理数据库的结构设计、功能设计实现以及管理系统维护和针对管理员,老师,学生的正确使用操作管理方式,对于以上问题我根据不同用户的情况进行了分析,并以此设计了典型的专业课程资源档案和管理系统平台,在原先已有的技术上首先保证了系统的功能完整性和安全性,其次整个系统的功能要保证用户操作简洁,使用方便。随着技术发展以及网络技术意识的提高,网络的强大的功能早已为人们接受,以本课程管理系统为例,其后期维护非常高,且软件所需要的环境也是在提高。对于该课程管理系统而言,它已经满足了现代化管理的潮流。因此,课程信息的管理网络化已经是大势所趋,开发相应的课程管理系统是非常有必要的。1.2研究现状本系统针对管理员、老师以及学生的不同需求做出分析,以满足不同用户的需求,例如学生可以在线选课,管理员可以通过后台实时管理系统数据。从该系统的具体功能来看,管理员需要对课程管理系统能够进行实时的管理,而设计该系统最初的目的就是为了通过网络化的实时操作来减少人力和财力的投入,提高工作效率。最终希望通过课程管理系统可以达到以下目的:提高课程管理的效率,使得课程管理有秩序。实现用户能够通过该系统平台可以及时更新课程的信息,更好的对课程信息进行管理等。尽量解决以往传统的管理系统响应慢,无法实时操作等弊端。1.3研究内容在设计该系统的初始阶期,主要是从整体对该系统进行描述,并且进行了系统分析。分析主要目的是为了更好、更完善的去设计系统,同时根据相关的基础,对系统进行了功能方面的分析。最后根据前面分析的结论进行系统设计,选用了Python技术对系统进行设计,选用mysql数据库和Django结构进行设计。其中所选的Python和mysql都是非常成熟的技术,可靠性强,具有一定的实用性。在完成功能设计,进行测试,最后发布系统。2开发技术介绍该课程管理系统系统采用Django、b/s模型这两种数据库结构,选用python语言对系统进行设计开发,其中Django模型相较python其他多种的web模型框架,框架本身已经集成了ytorm、模板搜索引擎、session等诸多核心功能,最大的特点体系大且功能全。2.1B/S架构b/s结构主要用于安装和自动维护软件服务器,其中的客户端的主要功能是通过使用浏览器的接口来自动运行这些软件以及完成自动维护。随着互联网技术的飞速发展,传统的C/S结构已经逐渐再满足用户的正常需求。所以现在大都采用了B/S结构,而这一选择极大的减少了日常工作的维护。2.2Python技术介绍python语言是一种程序开发的通用语言,由GuidovanRossum上世纪末研发出来,并且同期公开发行使用。Python有非常多的特点,比如该语言有着非常简洁的语法,十分清晰的语句,以及极其丰富的类库。基于这些特点,使得它能够很好的与其他编程语言相结合,继而实现预期的功能。2.3mysql数据库介绍mysql数据库最大的优点就是该数据库让初学者也可以非常简便的完成相关操作。如果在已使用mysql数据库的前提下想将其功能按照需求再重新编写其代码。只需要非常容易的改写一小部分代码就可轻松完成。mysql作为一款以及运用非常成熟的的企业数据库管理系统,其功能很完善、数据的存储规模也非常大。正是因为MYSQL的这些优点所以才选用其作为本系统的数据库。2.4Django框架Python现有的WEB框架有Django、Tornado等多种,django与其他web模型框架相比其优势在于:体系大且功能全,不仅框架本身已经集成了大部分的核心功能。并且Django框架高度透明化,不论数据库是否相同,但该框架的具体使用方法大致是相同的,所以在我们在根据自身需求去改变数据库类型的时候就只需要改变配置就可以了。3需求分析课程管理系统的功能模块的设计原理是通过对单个设计项目中的各种元素进行组合、分解和针对需求进行相应更换后做出一个对应的设计单元,最后根据各个系统模块来做一个简单的原则。为了提供给用户更好的使用体验,功能模块整体设计时是需要根据不用用户的不同要求来设计的。并且在设计与实现上要做到相应的功能模块和内部信息要保持联系一致要尽可能避免不同功能模块之间代码的重复或代码出现耦合。需求有功能需求和非功能性需求,这里采用用例图和用例模型。用例用于描述系统的功能,从外部用户的角度观察系统,系统应具备哪些功能。它是对系统功能的宏观描述。3.1寻找用户用户是可交互的实体,在下面会分析用户有哪些?使用系统功能的参与者是谁?需要借助系统功能才完成工作即使用用户是谁?保证系统正常工作,管理系统的管理员是谁?3.2寻找用例针对使用用户(1)不同的用户需要系统为其提供什么样的功能;该用户可以通过该功能完成哪些工作?(2)不同的用户能否对系统进行正常的增删改查的操作?针对课程管理系统(1)该系统可以为不同的用户提供哪些不同的功能?(2)系统改进方向是什么?编号参与者用例名称用例说明1管理员学生管理添加、删除、修改学生信息2教师管理添加、删除、修改教师信息3课程管理添加、删除、修改课程信息4选课管理添加、删除、修改选课信息5公告管理添加、删除、修改公告信息6系统管理管理维护系统7教师学生管理查看已经完成选课的学生信息8教师管理添加、删除、修改、查看教师信息9课程管理添加、删除、修改、查看课程信息10教师选课管理添加、删除、修改、查看课程信息11公告管理添加、删除、修改、查看公告信息12学生学生管理添加、删除、修改、查看学生信息13教师管理选择教师并查看教师信息14课程管理选择课程并查看课程信息15选课管理选择课程16公告管理查看、修改公告信息3.2.1管理员用例图任何一个系统的核心用户都是其系统管理员,管理员可以控制所有的系统功能模块,并且所有系统中的信息管理员都可以统一进行增删改查等操作,以便其可以对整个系统中的信息进行实时管理和更新。图3-1管理员用例图3.2.2教师用例图相比与管理员,教师需要先使用相应账号登录系统教师端之后才可以管理课程等,教师用例图如图3-2所示:图3-2教师用例图3.2.3学生用例图相比与教师和管理员,学生在登录系统之后就可以在线完成选师选课等操作,但无法对教师信息和课程信息进行修改。学生用例图如图3-3所示:图3-3学生用例图3.3业务流程分析业务流程分析在调查分析中占比很大,因为这一环节涉及到了每个不同用户已经不同功能模块的业务流程,所以在系统的整体设计上要保证信息输入输出时的正确无误和数据储存的安全性即完整无丢失,这里我结合系统开发的实际操作步骤绘制具体流程图,如下图3-3所示:图3-3

4数据库设计4.1系统数据库设计4.1.1数据库E-R图E-R图是针对不同用户的不同操作通过数据需求分析建立的,用模型来展现数据之间的关联,并对不同用户进行不同的处理,建立相对应的E-R图来表示实体、属性和他们之间的关系,下面展示了不同实体的关系图:1、实体为管理员,如图4-1:图4-1管理员实体图2、实体为公告,如图4-2:图4-2公告实体图3、实体为选课操作,如图4-3:图4-3选课实体图4、实体为课程,如图4-4:图4-4课程实体图5、实体为学生,如图4-5:图4-5学生实体图4.1.2逻辑设计(1)用户账号(id,用户名,密码)(2)用户账号(id,用户名,密码,是否为教师)(3)管理员(主键id,用户名,密码,是否是超级管理员)(4)课程信息(id,课程编号,主图路径,课程类型,课程状态)(5)选课(主键id,路径,所属类型)(6)查看选课(id,已选课程,选课时间)4.1.3数据表字段设计不同功能模块之间的数据库都是隔开的,当数据库运行时,会根据有关协议进行通讯。然后自动连接数据。如需对单个的数据库进行了解,则应选择相对应的桥段,会有自动讲解。在点击完成后对话框内会弹出数据源的名称,再进行相应的操作,如通过账号和密码登录登录。根据不同的系统功能模块的种类的划分,中间的系统设计和功能实现涉及多个数据表。下面针对不同数据库列表的结构设计和主要功能建立了相应的数据表如下所示:表4-1userinfo管理员信息表列名idnamepwd备注序号账号密码长度16150160是否可空否否否类型整型字符串字符串Primary是否否表4-2t_sjxingtai公告信息表列名reportnamelinkcourse备注序号公告内容发布日期操作长度1110010011是否可空否否否否类型整型字符串字符串整型Primary是否否否表4-3stu选课信息信息表列名idnonamesexteldeptteam备注序号学号姓名班级课程名称授课教师操作类型整型字符串字符串字符串字符串字符串字符串是否可空否否否否否否否长度11100100100100100100主键是否否否否否否表4-4course课程信息表列名idnameperiodbeizhuteacher_idteam备注序号课程名称课程课时课程简介授课教师操作类型整型字符串字符串字符串整型整型是否可空否否否否否否长度111001002001111主键是否否否否否表4-5auth_user学生信息表列名idpasswordlast_loginis_superuserusername备注序号学号姓名性别院系类型整型字符串日期TINYINT字符串是否可空否否否否否长度1112861150主键是否否否否列名idpasswordlast_loginis_superuserusername备注序号学号姓名性别院系4.2系统界面实现用户通过在浏览器访问选课系统主页来完成登录,选课等操作,同时管理员登录后台系统对课程信息和用户信息进行管理,具体访问页面及介绍如表5.1所示功能名称页面文件命名页码主页登录功能学生选课功能教师管理功能管理员管理功能5系统实现5.1登录为了保证系统的安全,用户要想进入课程管理系统必须进行登录操作,必须首先进行用户登录认证操作,用户进行登录操作流程如下图所示如如下图所示管理员进入系统可以通过账号以及密码进行登录,其界面如图5-1所示。图5-2登录界面5.2管理员功能界面管理员登录系统操作有学生管理、教师管理、课程管理、选课管理、公告管理、系统管理等功能。其界面如图5-2所示。图5-3管理员功能界面图5.2.1学生管理管理员进入系统可以查看、添加、修改、删除学生信息等操作,其界面如图5-3所示。图5-4学生管理界面图5.2.2教师管理管理员进入系统后可以进行查看、添加、修改、删除教师信息等操作,其界面如图5-4所示。图5-5教师管理界面图5.2.3课程管理管理员进入系统后可以进行查看、添加、修改、删除课程信息等操作。其界面如图5-5所示。图5-6课程管理界面图5.2.4选课管理管理员进入系统后可以进行查看、添加、修改、删除选课信息等操作。其界面如图5-6所示。图5-7选课管理界面图5.2.5公告管理管理员进入系统可以查看、添加、修改、删除公告信息等操作,其界面如图5-7所示。图5-8公告管理界面图5.3教师功能界面教师登录系统主要操作功能有学生管理、教师管理、课程管理、选课管理、公告管理等功能。其界面如图5-8所示。图5-9教师功能界面图5.3.1课程管理管理员进入系统后可以对课程信息进行添加、修改、查看、删除等操作,其界面如图5-9所示。图5-10课程管理界面图5.4学生功能界面5.4.1学生信息学生进入系统后可以随时查看学生信息,其界面如图5-10所示图5-11学生信息界面图5.4.2课程管理学生进入系统后可以随时查看课程信息,其界面如图5-11所示。图5-12课程管理界面图5.4.3学生中心学生登录系统主要操作功能有学生管理、教师管理、课程管理、选课管理、公告管理等功能。其界面如图5-12所示。图5-13学生中心界面图6系统测试6.1程序调试根据以往系统测试的结果来看,如果在系统设计初期就能够找出那些可能出现的问题,并及时做出改正,那么在后期就能大量减少修改所需的精力,反之在初期如果不进行测试,那么在后期出现问题时修改起来就会变得十分苦难,甚至推倒重来,从而大大影响系统进度。测试流程作是软件开发过程中不可缺少的重要组成部分,据有关统计,系统测试工作占据了系统开发近一半的的工作量。测试过程中,任何程序都可能会出现一些以前从未出现的错误。所以在测试的过程中当中,如果单靠人工的方式去找BUG是一项非常繁琐的工作,所以借助测试工具进行测试是非常有必要的。在程序设计的流程中,出现错误是很常见的。如果是语法出现了错误,那么程序执行时系统就会提示,如果错误是由计算而产生的,那么这样的错误隐藏姓就非常强,需要我们去进行反复测试,所以解决这一类的错误是非常麻烦的。6.2程序的测试(1)测试的重要性课程管理系统最初的设计目的是给用户更好的使用体验,所以需要更多的从用户的角度出发去进行测试,同时我们在编写测试用例时,需要将不同用户不同功能需求都罗列出,完成了这样的前置工作,那么测试时,就能做到有的放矢。作为系统的开发者,原则希望课程管理系统在测试中表明他是一个完善的系统,并符合之前规划的各种功能。(2)测试的步骤系统的测试过程需要分多步骤进行,每个步骤在逻辑上都需要是延续的的,并且因为软件的完整程序都是由多个不同的子程序模块组成。所以测试的流程由以下3步骤组成的:(1)第一步模块测试在这一步骤中是测试是否存在设计和代码上的错误。(2)第二步课程管理系统测试主要是测试系统在运行过程中能否正常运行,是否是发生错误。(3)最后一步验收测试,是为了测试预期功能是否实现。6.3测试分析经过上述测试的三个步骤,经过分析得知课程管理系统设计与实现主要是通过下面几个方面来完成的,这里我们通过举例说明。用例名称:不同用户的登录测试基本描述:不同用户通过登录拥有系统不同的的课程权限测试方案:使用不同的登录入口进行登录,用户是否拥有相关权限,系统是否有相应的提示。这里选取了管理员端的几个模块进行测试,测试用例如下:(1)多用户登录测试:表6-1登录测试用例表编号TEST006测试名称多用户登录测试前提操作打开首页页面并未登录步骤具体操作描述数据预期结果1点击登录无跳转到登录页面2填写用户名和验证码,点击登录用户名输入框清空内容并提示“请输入用户名和密码”3填写密码和验证码,点击登录密码 输入框清空内容并提示“请输入用户名和密码”4填写用户名和密码,点击登录用户名、密码输入框清空内容并提示“验证码输入错误”5填写错误的或不存在的用户名密码用户名、密码输入框清空内容并提示“用户名或密码错误”6填写正确的用户名密码用户名、密码跳转到首页,右上角显示用户姓名说明无结果成功删除课程管理测试:表6-3删除课程测试用例表用例编号TEST024测试名称删除课程前提条件管理员已登录且已为课程管理员后台页面步骤操作描述数据期望结果1点击课程管理无页面切换到课程管理模块2勾选要删除的课程无课程被勾选3点击删除无弹出框提示课程不能删除4点击查询无页面切换到课程管理模块5勾选该课程的所有信息无信息被勾选6点击删除无弹出框提示信息不能删除7点击删除无弹出框提示操作成功8重复步骤4、5、6无弹出框提示操作成功9重复步骤1、2、3无弹出框提示操作成功测试说明必须勾选,不能直接单击选中测试结果成功(3)课程管理测试:表6-3课程管理测试用例表用例编号TEST023测试名称课程管理前提条件管理员管理系统课程信息步骤操作描述数据期望结果1点击课程查看详情无跳转到课程详情2点击添加无跳转到添加页面3选中添加无跳转到课程页面测试说明用户未登录时到步骤3跳转到登录页面测试结果成功6.3测试结论测试流程与步骤在初期设计时一定要严密,否则测试效果不佳。只有逻辑性强,设计严密,用例覆盖多的测试才是高水平的测试。在测试的时候,发现了很多错误都是编程前期没有对系统有一个整体的认知,只修改了部分出错的程序,但没有注意到修改的同时还影响到了其他的功能模块。同时,测试所用的文档也应妥善保存,方便以后再次进行测试或查询错误时用到。经过测试,新设计的课程管理系统满足预期的功能要求和需求。基本功能齐全,操作流程简洁,可以满足多用户增删改查的需求。且系统运行稳定,是可以投入正常使用的程序在测试阶段,本系统的测试是针对以下几个方面进行的:(1)功能测试:先对单个的功能模块测试能否正常运行,再对整个软件的功能进行整体测试。观察系统能否正常运行。(2)性能测试:该测试的目的是测试系统是否达到了预期的水平,是否提高了人们的使用体验(3)安全测试:该测试的目的是测试该系统是否能够做到随时随地的使用和运行。还有数据方面的安全问题

结论

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论