通过对本文的开发背景、研究意义以及国内外研究现状和发展趋势的分析,确定本文的研究内容是系统开发的前提。
近年来互联网技术的发展使得互联网产品和网站层出不穷,需求不断提高 [1]。同时,面对过去使用手抄等方式进行记录,工作效率很难得到提高,无法满足现代人们的需求;自从人类进入互联网时代,通过纸质手抄的方式转换成线上无纸化管理,有效的解决了获取信息的渠道,全面提升工作效率。由此,实现一套完整的学生选课系统系统非常必要。
设计和实现了一个基于Django的学生选课系统系统。该系统具有良好的扩展性、稳定性、安全性以及可移植性等特点。为方便用户便捷、快速找到学生选课系统信息,特制定本学生选课系统系统。
在国内,由于历史环境因素的影响和发展的不平衡,学生选课系统管理不完善,这对计算机领域的应用以及外部状态信息在学生选课系统管理中的应用产生了很大的影响。简单的技术可以取代过去的形式或方法,但如果你想设计一个管理计划以更科学的方式重新管理这一环节,你必须放弃传统的管理方法,尽快改变管理方法,改变管理理念以合理运作,使系统更精细,控制成本,提高管理效率。
在国外,系统管理发展迅速。相应的信息系统软件设计和保护的研发也有所增加。随着时代的变化,产品研发得到了推动,系统软件得到了极大的发展。如今,它正朝着智能化、数字化和信息化的方向快速发展。所有大公司都采用了类似的规章制度,促进了公司的快速发展,取得了较好的经济效益。
计算机作为信息科学的媒介和关键,对人类社会的繁荣起着至关重要的作用。政府机构和事业单位将根据工作内容选择一套优秀的通信技术和专业办公设备,并利用这些技术和设备快速收集、解决和存储信息,使管理变得方便快捷,实现科学合理的管理目标。
总而言之,学生选课系统系统的发展呈持续上升发展趋势,现在传统式的手工制作和半手动式管理方法转变为信息化管理的转变历程中,必须使用和融合全新的信息技术性来完成传统的系统设计方法,确保系统的效果和品质。
但是这些学生选课系统系统都是由传统企业开发建设而成的,在学生选课系统信息发布上主要采用人工方式进行管理和维护,这种方法效率低下且容易出错,已经不能满足现在快速多变的社会需求,且大都缺乏有效的安全认证机制和管理机制,用户使用虚假信息注册,使得网站存在大量的虚假信息,无法保证信息的安全性[2]。自1993年美国实施National Information Infrastructure以来,网络普及率大幅提高,互联网用户数量快速增长,专业的学生选课系统系统开始快速增长。
该系统采用PYTHON技术开发,后台使用MySQL数据库进行数据存储。系统主要分为三大模块:即管理员模块、学生模块和教师模块。本文从学生选课系统流程分析入手,分析了其功能性需求和非功能性需求,设计了一个由管理员、学生和教师三部分组成的学生选课系统系统。
在开发系统过程中采用PYTHON语言、MySQL数据库存储数据。系统以B/S为基础,实现管理一体化、规范化,为用户提供一个高效快捷的交流平台[5]。基于wep的学生选课系统系统具有良好的稳定性与安全性,并且操作简单,易于维护。下面介绍一下关键技术。
本系统使用MyEclipse开发工具。系统使用服务器为Tomcat服务器。系统数据库设计使用MySQL。
Python是由荷兰数学和计算机研究学会的吉多·范罗苏姆于20世纪90年代设计的一款高级语言。Python优雅的语法和动态类型,以及解释型语言的本质,使它成为许多领域脚本编写和快速开发应用的首选语言。Python相比与其他高级语言,开发代码量较小,代码风格简洁优雅,拥有丰富的第三方库。Python的代码风格导致其可读性好,便于维护人员阅读维护,程序更加健壮。Python能够轻松地调用其他语言编写的模块,因此也被成为“胶水语言”[3]。
Python的应用场合非常广泛,在科研领域中,可以用Python训练人工智能模型,也可以对实验数据进行数据分析。在生活中,Python提供了很多优秀的、开源的Web开发框架,例如Django、Flask、Pyramid、Tornado等。知乎、豆瓣网、Youtube等知名应用都是由Python为基础进行开发的。相比于其他框架,Django有着更加丰富的插件,作为企业级框架也很好上手,适合本次开发。此次系统是开发一个Web应用,采用Django框架,将在下一节进行具体介绍。本次开发选用的是Python3.6.4版本。
Django被官方称之为“完美主义者框架”,只需要很少的代码就能更快的完成一个优秀的Web应用[4]。Django采用了MTV框架模式,此模式根据MVC进行改进形成了更适于Django的设计模式。M为模型(Model)、T为模板(Template)、V为视图(View)。Django对象关系映射(ORM,Object-Relation-Mapping):ORM的方法论有着三个核心原则:
用于Python之中即是以Python类形式定义数据模型,类中的每一个属性对应着数据库中的一列。引入ORM后,无需编写原生SQL语句,使用基于面向对象的思想去编写类、对象、调用方法等,ORM会将其映射成SQL语句通过pymysql执行。
它以其优秀的性能、强大的功能以及良好的扩展性受到越来越多的关注。目前,国内已经有很多企业采用了该系统进行管理,取得了很好的效果。随着网络技术的发展。MySQL是最流行的关系型数据库管理系统之一,我的SQL是WEB应用应用程序中最好的RDBMS(Relational Database Management System)应用程序之一。MySQL是一个关系型数据库管理系统,在这个系统中,关系数据库将数据存储在不同的表中,而不是全部存储在一个大仓库中,从而提高了速度和灵活性。
在信息管理中,对于数据库的应用也日益广泛,不仅有效对信息管理的质量进行了提升,也进一步提升了信息管理的安全性,让信息管理更加高效[6]。SQL Server是一种关系数据库管理系统,它能提供超大型系统所需的数据库服务。大型服务器可能有成千上万的用户同时连接到 SQL Server实例[7]。
我的SQL使用的SQL语言是访问数据库最常用的标准化语言。它可以通过简单操作实现复杂查询功能,并且具有良好的可扩展性和可维护性等优点。随着网络技术的不断发展,ASP.NET成为目前互联网上最为流行的Web应用之一。MySQL软件采用双授权政策,分为社区版版本和商业版。由于其体积小,速度快,总体拥有成本低,特别是开放源码,MySQL用作中小型网站发展的网站数据库[8]。
B/S结构就是指系统客户端与服务器分离,客户端通过浏览器访问服务端进行操作[10]。
B/S结构目前广泛应用于绝大部分系统搭建中,这种结构摒弃C/S结构客户端服务端不分离的缺点,具有更多的优势:
(1)跨平台性:B/S的标准由标准化组织确立,适用于绝大多数的系统搭建,通用于应用之间[12]。
(2)低维护成本:客户端和服务器端分离,减轻了两端的压力,尤其是客户端,对客户端设备,硬件、软件要求都比较低,并且系统需要升级或维护时,只需要在服务器端升级或维护就可以,使相应的费用减少[13]。
本节作为开发的准备,简要介绍了系统开发所需的开发环境,然后介绍系统开发所需的技术,从而掌握系统开发的总体框架性。
系统分析是软件开发的关键。但在实际工作中却往往容易被人们忽视或误解。其实需求分析在软件开发过程中起着重要作用,它不仅为软件产品提供了一个基本框架和基础结构,而且还能够提高软件开发效率及质量。大多数软件的故障都是由于需求分析错误造成的,因为需求分析可以分析用户的业务,并根据用户的需求进行定制分析[10]。
需求分析,也称为软件需求分析、系统需求分析或需求分析工程,是指开发人员经过充分的研究和分析,准确地理解用户和项目在功能、性能、可靠性等方面的具体需求,并将用户的非正式需求表述转化为确定系统必须执行的需求的完整定义的过程[11]。
功能需求分析是系统设计的前提,它要求开发者和用户定义开发什么样的体系和系统需要什么样的功能。本文主要介绍了学生选课系统系统。该系统为用户找到学生选课系统信息提供了更安全、更高效、更便捷的途径。本系统有三个角色:管理员、学生和教师,要求具备以下功能:
(2)学生登录进入系统可以对首页、课程信息、系统公告、后台管理、个人中心等功能进行操作;
(3)教师登录进入系统可以对首页、课程信息、系统公告、后台管理、个人中心等功能进行操作;
在设计系统的过程中,用例图是系统设计过程中必不可少的模型,用例图可以更为细致的,结合系统中人员的有关分配,能够从细节上描绘出系统中有关功能所完成的具体事件,确切的反映出某个操作以及它们相互之间的内部联系。
其中参与者就是和系统能够发生交互的外在实体,一般可以指系统的某个用户。一个用例图就能对应出系统中的一个功能过程,系统中完整的功能都是由许多不同的用例图所组成的。
用例图如下图所示。
图3-1 管理员用例图
图3-2 学生用例图
可行性分析是指通过比较项目的主要内容和支撑条件,如市场需求、资源供应、环境影响、资金筹措情况、盈利能力等,预测项目建成后可能产生的资金、经济效益、社会和环境影响,为项目决策提供依据的综合性系统分析方法。可行性研究报告编制的质量直接影响着投资决策的成,而可行性研究报告编制程序又决定了可行性研究报告能否得到有效执行。因此,必须重视可行性研究工作,提高其编制水平。可行性分析应当具有预见性、公正性、可靠性和科学性[13]。
本系统是为了为用户寻找学生选课系统信息提供更加安全、高效、便捷的方式,本系统需要运用到PYTHON、MySQL和B/S结构等技术,这些技术在国内外已经非常成熟[14],在大学期间也有所涉及,相关的知识和工具在网络上也可以查到,再加上老师的指导,在技术上的难题可以得到解决。
该系统的主题是学生选课系统系统的设计与实现。开发所需的软件资源是Eclipse。我们可以在它的网站上安装一个免费的版本,这对我们的开发和使用是足够好的。数据库就是MySQL数据库。是开源是免费的,服务器使用Tomcat服务器,浏览器使用日常IE浏览器,PYTHON技术是开源的。经过可行性评估,软件资源支出符合经济可行性[15]。硬件方面,配备齐全的笔记本电脑作为工具在经济上是可行的。
运行可行性也可以说是系统可用性的体现,学生选课系统系统本身具有运行可行性的特点,其界面的设计清晰、功能权限分配合理、操作方便。本论文设计的是学生选课系统系统,通过技术的结合提出一套切实可行的解决方案。不同的用户接入之后不需要经过特殊的训练就可以运行到对应功能模块中。
登录流程是该系统的第一个流程,登录的第一步是输入用户名、密码登录,系统会验证用户名与密码是否正确,正确时系统会判断账号类型再进入不同的后台;不正确时,会返回到登录的第一步,输入用户重新执行登录流程。该流程如图3-4所示。
图3-4登录流程图
添加新用户的流程是先查询新用户名是否已存在,如已有该用户名,需重拟用户名并同时输入新用户的其它信息,添加新用户到数据库时会先验证数据是否完整,信息都正确且完整时,返回并刷新用户列表;信息不正确时,会返回输入信息的那一步。该流程如图3-5所示。
图3-5添加新用户流程图
3.5本章小结
学生选课系统系统从市场、技术、经济、功能等方面分析了系统的功能需求,可以满足用户的学生选课系统管理需求,帮助用户安全、高效地找到需要的学生选课系统信息,因此有必要对其进行课题研究。
系统设计是将被设计对象划分为单个模块进行构建,各个模块相互支持,相互制约,它们的组合是一个完整的系统。通过系统设计,可以最大限度地满足系统的预期目标,明确软件开发的目的。
本次系统采用PYTHON技术进行开发,PYTHON技术是一款企业界主流的软件开发技术,其简化了开发流程,大大缩减了软件开发所需的时间提高了软件的响应速度。系统总体结构图如图4-1所示。
图4-1 系统总体结构图
数据库结构设计的好坏直接影响到学生选课系统系统的效率和实现的效果。本系统的数据库采用MySQL数据库,MySQL是一种开放源代码的关系型数据库管理系统,使用最常见的数据库管理语言SQL进行数据库管理。
E-R图也可称为实体-联系图,其可以清楚的显示实体与实体之间的关系,是描述概念模型的有效方式,通过各实体间的关系方便数据库结构的设计。以下是本系统主要的实体属性图如下所示。
教师实体如图4-2所示。
图4-2教师实体属性图
学生成绩实体如图4-3所示。
图4-3学生成绩实体属性图
学生实体如图4-4所示。
图4-4学生实体属性图
退课信息实体如图4-5所示。
图4-5退课信息实体属性图
系统公告实体如图4-6所示。
图4-6系统公告实体属性图
数据表是用来保存多种数据的表,它是所有数据库的核心对象,且对于软件开发有着不可替代的作用。其相关数据表如下:
表4-1:教师
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
addtime |
timestamp |
创建时间 |
CURRENT_TIMESTAMP |
||
jiaoshigonghao |
varchar |
200 |
教师工号 |
||
jiaoshixingming |
varchar |
200 |
教师姓名 |
||
mima |
varchar |
200 |
密码 |
||
xingbie |
varchar |
200 |
性别 |
||
zhicheng |
varchar |
200 |
职称 |
||
lianxidianhua |
varchar |
200 |
联系电话 |
表4-2:学生成绩
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
addtime |
timestamp |
创建时间 |
CURRENT_TIMESTAMP |
||
kechengbianhao |
varchar |
200 |
课程编号 |
||
kechengmingcheng |
varchar |
200 |
课程名称 |
||
xueshengzhanghao |
varchar |
200 |
学生账号 |
||
xueshengxingming |
varchar |
200 |
学生姓名 |
||
jiaoshigonghao |
varchar |
200 |
教师工号 |
||
jiaoshixingming |
varchar |
200 |
教师姓名 |
||
chengji |
varchar |
200 |
成绩 |
||
pingyu |
longtext |
4294967295 |
评语 |
||
dengjishijian |
datetime |
登记时间 |
表4-3:配置文件
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
name |
varchar |
100 |
配置参数名称 |
||
value |
varchar |
100 |
配置参数值 |
表4-4:学生
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
addtime |
timestamp |
创建时间 |
CURRENT_TIMESTAMP |
||
xueshengzhanghao |
varchar |
200 |
学生账号 |
||
xueshengxingming |
varchar |
200 |
学生姓名 |
||
mima |
varchar |
200 |
密码 |
||
xingbie |
varchar |
200 |
性别 |
||
lianxidianhua |
varchar |
200 |
联系电话 |
||
youxiang |
varchar |
200 |
邮箱 |
||
zhuanye |
varchar |
200 |
专业 |
表4-5:关于我们
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
addtime |
timestamp |
创建时间 |
CURRENT_TIMESTAMP |
||
title |
varchar |
200 |
标题 |
||
subtitle |
varchar |
200 |
副标题 |
||
content |
longtext |
4294967295 |
内容 |
||
picture1 |
longtext |
4294967295 |
图片1 |
||
picture2 |
longtext |
4294967295 |
图片2 |
||
picture3 |
longtext |
4294967295 |
图片3 |
表4-6:选课信息
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
addtime |
timestamp |
创建时间 |
CURRENT_TIMESTAMP |
||
kechenghao |
varchar |
200 |
课程号 |
||
kechengmingcheng |
varchar |
200 |
课程名称 |
||
jiaoshimingcheng |
varchar |
200 |
教室名称 |
||
jiaoxuelou |
varchar |
200 |
教学楼 |
||
jiaoshigonghao |
varchar |
200 |
教师工号 |
||
jiaoshixingming |
varchar |
200 |
教师姓名 |
||
xueshengzhanghao |
varchar |
200 |
学生账号 |
||
xueshengxingming |
varchar |
200 |
学生姓名 |
||
xuankeshijian |
datetime |
选课时间 |
|||
sfsh |
varchar |
200 |
是否审核 |
待审核 |
|
shhf |
longtext |
4294967295 |
审核回复 |
表4-7:用户表
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
username |
varchar |
100 |
用户名 |
||
password |
varchar |
100 |
密码 |
||
role |
varchar |
100 |
角色 |
管理员 |
|
addtime |
timestamp |
新增时间 |
CURRENT_TIMESTAMP |
表4-8:退课信息
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
addtime |
timestamp |
创建时间 |
CURRENT_TIMESTAMP |
||
kechenghao |
varchar |
200 |
课程号 |
||
kechengmingcheng |
varchar |
200 |
课程名称 |
||
jiaoshigonghao |
varchar |
200 |
教师工号 |
||
jiaoshixingming |
varchar |
200 |
教师姓名 |
||
xueshengzhanghao |
varchar |
200 |
学生账号 |
||
xueshengxingming |
varchar |
200 |
学生姓名 |
||
tuikeshijian |
datetime |
退课时间 |
|||
tuikeyuanyin |
longtext |
4294967295 |
退课原因 |
||
sfsh |
varchar |
200 |
是否审核 |
待审核 |
|
shhf |
longtext |
4294967295 |
审核回复 |
表4-9:系统公告
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
addtime |
timestamp |
创建时间 |
CURRENT_TIMESTAMP |
||
title |
varchar |
200 |
标题 |
||
introduction |
longtext |
4294967295 |
简介 |
||
picture |
longtext |
4294967295 |
图片 |
||
content |
longtext |
4294967295 |
内容 |
表4-10:课程信息
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
addtime |
timestamp |
创建时间 |
CURRENT_TIMESTAMP |
||
kechenghao |
varchar |
200 |
课程号 |
||
kechengmingcheng |
varchar |
200 |
课程名称 |
||
jiaoshimingcheng |
varchar |
200 |
教室名称 |
||
jiaoxuelou |
varchar |
200 |
教学楼 |
||
keshi |
varchar |
200 |
课时 |
||
tupian |
longtext |
4294967295 |
图片 |
||
xuefen |
varchar |
200 |
学分 |
||
jiaoshigonghao |
varchar |
200 |
教师工号 |
||
jiaoshixingming |
varchar |
200 |
教师姓名 |
||
kechengxiangqing |
longtext |
4294967295 |
课程详情 |
表4-11:教学楼
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
addtime |
timestamp |
创建时间 |
CURRENT_TIMESTAMP |
||
jiaoxuelou |
varchar |
200 |
教学楼 |
表4-12:教室信息
字段名称 |
类型 |
长度 |
字段说明 |
主键 |
默认值 |
id |
bigint |
主键 |
主键 |
||
addtime |
timestamp |
创建时间 |
CURRENT_TIMESTAMP |
||
jiaoshimingcheng |
varchar |
200 |
教室名称 |
||
jiaoxuelou |
varchar |
200 |
教学楼 |
||
louceng |
varchar |
200 |
楼层 |
||
jiaoshiweizhi |
varchar |
200 |
教室位置 |
4.3本章小结
通过本章针对学生选课系统系统功能的总体结构、E-R属性图和数据表的大概介绍,对在开发系统时所要涉及到的数据库进行简单设计,为下一章系统的实现做好铺垫。
系统实现章节的主要内容主要是将系统分析和系统设计方案进行实现,按照各个系统角色进行功能介绍,系统实现就是一个真正开始编写的阶段,将前面的分析结果以及设计方案进行实现,最终做出一个符合用户需求的软件系统。
当人们打开系统的网址后,首先看到的就是首页界面。在这里,人们能够看到系统的导航条,通过导航条导航进入各功能展示页面进行操作。系统首页界面如图5-1所示:
图5-1 系统首页界面
系统注册:在系统注册页面的输入栏中输入学生/教师注册信息进行注册操作,学生注册页面如图5-2所示:教师注册页面如图5-3所示:
图5-2学生注册页面
图5-3教师注册页面
学生点击课程信息,在课程信息页面输入课程名称、选择教室名称、教学楼、教师工号和教师姓名进行查询,可以查看到课程详情信息,并根据需要进行选课和查看详情等操作;如图5-4所示。
图5-4课程信息详细页面
学生点击系统公告,在系统公告页面输入标题进行查询,可以查看到系统公告详情信息;如图5-5所示。
图5-5系统公告详细页面
学生点击个人中心,在个人中心页面通过填写个人详细信息进行更新操作;如图5-6所示:
图5-6个人中心界面
后台登录,在登录页面选择需要登录的角色,再正确输入用户名和密码后,点击登录进入操作系统进行操作;如图5-7所示。
图5-7后台登录页面
管理员进入主页面,主要功能包括对个人中心、学生管理、教师管理、课程信息管理、选课信息管理、退课信息管理、学生成绩管理、教学楼管理、教室信息管理、系统管理等进行操作。管理员主界面如图5-8所示:
图5-8管理员主界面
管理员点击学生管理。进学生页面输入学生账号和选择性别进行查询、新增或删除学生列表,并根据需要对学生详细信息进行详情、修改或删除等操作。如图5-9所示:
图5-9学生管理界面
管理员点击教师管理。在教师页面输入教师工号、教师姓名和联系电话进行查询、新增或删除教师列表,并根据需要对教师详情信息进行详情、修改或删除操作;如图5-10所示:
图5-10教师管理界面
管理员点击课程信息管理。在课程信息页面输入课程名称、选择教室名称、教学楼、教师工号和教师姓名进行查询、新增或删除课程信息列表,并根据需要对课程详情信息进行详情、修改或删除操作;如图5-11所示:
图5-11课程信息管理界面
管理员点击选课信息管理。在选课信息页面输入课程号、课程名称、教室名称、教学楼、教师工号、学生账号和选择是否通过进行查询或删除选课信息列表,并根据需要对选课详情信息进行详情、修改或删除操作;如图5-12所示:
图5-12选课信息管理界面
管理员点击学生成绩管理。在学生成绩页面输入课程名称、学生账号和教师工号进行查询或删除学生成绩列表,并根据需要对学生成绩详情信息进行详情、修改或删除操作;如图5-13所示:
图5-13学生成绩管理界面
管理员点击教室信息管理。在教室信息页面选择教学楼进行查询、新增或删除教室信息列表,并根据需要对教室详情信息进行详情、修改或删除操作;如图5-14所示:
管理员点击系统管理。在系统公告页面输入标题进行查询、新增或删除系统公告列表,并根据需要对系统公告详细信息进行详情、修改或删除操作,还可以对轮播图管理、关于我们和系统简介进行详细操作。如图5-15所示:
学生进入系统后台可以对个人中心、选课信息管理、退课信息管理、学生成绩管理等功能进行操作。学生主界面如图5-16所示:
图5-16学生主界面
教师进入系统可以对个人中心、课程信息管理、选课信息管理、退课信息管理、学生成绩管理等功能进行操作。教师主界面如图5-17所示:
图5-17教师主界面
第五章主要内容是系统实现,分别实现了对管理员功能的管理,学生功能的管理和对教师功能的管理,完成了系统全部功能设计。
系统测试是检验软件产品是否满足预期需求,确保产品无缺陷的重要手段。系统测试侧重于评估系统是否满足指定的要求,并帮助检查整个系统的功能性需求。通过对系统功能和非功能两个方面的测试用例进行分析与比较可以发现软件存在的问题以及需要改进之处。软件可靠性设计是一项系统性工程,涉及到多个学科领域,因此其难度较大。测试将侧重于功能测试,这是黑盒测试的一部分,黑盒测试的重点是用户提供的要求,而不是系统的实际代码。
系统测试(System Testing)是为了向使用者提供有关被测试产品或服务的质量信息而进行的检查。系统测试还可以提供客观和独立的系统评估,以使运营者能够了解和系统实施所面临的潜在问题。系统测试涉及软件组件或系统组件的执行,以评估一个或多个系统属性。通常这些属性表明被测组件或系统满足系统预期开发需求,在各种预期的时间内,正确响应各种系统输入,在可接受的时间内执行其功能,足够可用,同时可以满足分析设计时要求的程度。在预期的环境中运行,并达到用户期望的总体结果。经过一系列严格功能测试,以发现系统功能方面潜在的问题,保证系统的正常运行。
在系统的功能性测试中,开发人员需要按照操作要求使学生选课系统系统软件的各项功能,并准确记录测试期间的每个功能的运行数据,判定软件系统开发的功能是否符合预期的结果,主要是对MySQL数据库里的数据进行增删改查,从而实现注册登录、个人中心、学生管理、教师管理、课程信息管理、选课信息管理、退课信息管理、学生成绩管理、教学楼管理、教室信息管理、系统管理等功能。
性能测试主要是为了模拟系统在多人使用的运行环境中测试系统的性能最大的承受压力。对关键的技术指标表示支持系统的运行速度,网络顺畅和并发的数量。当多个人使用时,系统不会崩溃。
(1)运行的速度:测试在不同计算机上运行时没有出现死机的情况。
(2)响应的时间:对最快,平均和最大的响应时间。经过测试,局域网应答时限参数能满足用户的需求,属于正常承受范围。
(3)支持并发节点数:系统在并发节点上达到45个时,网络运营的速度波动较大,时间延迟十秒之间,符合客户需求。
本章所做的主要工作是对系统进行功能性测试和性能测试。学生选课系统系统的正确性是网站的不可或缺的因素,系统的功能性测试是其中必不可少的步骤,也是占有很大比重的部分,这个过程中遇到的最多的问题是当界面跳转的时候系统终止运行。使用Eclipse中的Log Cat功能能够实现对程序每一个步骤进行跟踪,且定位出错误的位置十分方便。通过对各功能模块的测试结果和预期结果的比较,发现系统功能满足项目要求。
在设计学生选课系统系统的过程中采用PYTHON技术来呈现给用户,后台数据采用MySQL数据库来进行存储。
此系统为学生选课系统系统,为了达成预期效果该系统拥有管理员、学生和教师三种角色。管理员用户则可以通过对整个系统的信息进行管理。在系统具体实现过程中,先把系统数据库搭建,然后进行功能模块的代码编译,最后将所有模块进行整合,形成完整的学生选课系统系统。最后对系统进行了测试,测试结果符合预期。
学生选课系统系统的设计与实现,基本上把自己在大学生活中学习的大部分知识都融入了进去,但是还不够,在许多方面还没有考虑全面,相信自己在进入工作中会更加努力,做出更加完美的系统。