论文总字数:29449字
摘 要
Abstract 5
第一章 选题背景 6
1.1社会背景 6
1.2技术背景 6
1.2.1管理系统软件的模式 6
1.2.2管理系统软件的演进 7
第二章 需求分析 8
2.1通用功能需求分析 8
2.1.1用户设置 8
2.1.2项目设置 8
2.1.3论文设置 9
2.1.4数据输入设置 10
2.2学生用户需求分析 10
2.2.1学生信息设置 10
2.2.2学生就业设置 11
2.3教师用户需求分析 11
2.3.1教师信息设置 11
2.3.2 学生培养信息设置 12
第三章 软件总体设计 13
3.1前端设计 13
3.1.1前端技术选型 13
3.1.2前端架构设计 14
3.1.3前端优化方案 15
3.2后台设计 15
3.2.1后台技术选型 15
3.2.2后台架构设计 16
3.3数据库设计 16
3.3.1数据库选型 16
3.3.2数据库框架选型 17
3.3.3数据库设计 17
3.3.4数据库操作 19
第四章 软件详细设计与开发方案 22
4.1通用功能实现 22
4.1.1移动端与PC端的适配 22
4.1.2展示型组件 23
4.1.3用户注册 28
4.1.4用户登录 29
4.2用户功能实现 29
4.2.1学生信息 29
4.2.1教师信息 30
第五章 软件成果 31
第六章 总结 37
参考文献 38
致 谢 39
摘要
此次毕业设计就是基于B/S结构,使用当前主流的web开发技术,开发一款web应用软件。能够满足实验室管理人员对学校的教职人员、博士生、硕士生以及优秀本科生和其他人员的高效管理。
网站支持完善的登录注册机制,并且要求对应不同的用户(老师/学生)有着不同的界面,对于教师,可以完善个人信息,对项目和论文进行增删改查,可以添加负责的学生并且对学生的表现进行评估。对于学生,可以完善个人资料,对项目和论文信息进行增删改差,可以添加就业信息。同时网站可以响应PC端和移动端,具有美观流畅的前端界面与交互。并且对于表单输入有严格的格式校验和报错机制。
在技术上,前端使用了React技术栈(React,React-Router,ant-design)来实现单页面应用(Single Page Application),将网站组件化,增强项目的可复用性。后端使用了非关系型数据库MongoDB与对象关系映射框架Mongoose,服务框架采用node的单线程异步框架Express。前后端通过HTTP协议进行通讯。
关键字:单页面应用,组件化,React,Node,HTTP,MongoDB
Abstract
The graduation design is based on Browser/Server structure, the use of the current mainstream web development technology, the development of a web application software. Able to meet the laboratory management staff of the school faculty, doctoral students, graduate students and outstanding undergraduate and other personnel of the efficient management.
The website supports a complete login registration mechanism and requires a different interface for different users.For teachers, you can improve your personal information, add and delete items and papers, add students and evaluate students' performance.For students, you can improve the personal information, the project and the information on the addition and deletion, you can add employment information.At the same time,the website can respond to PC and mobile, with a beautiful and smooth front-end interface and interaction.And for the form of a strict format verification and error reporting mechanism.
Technically, the front-end uses the React technology stack (React, React-Router, ant-design) to implement a single page application (Single Page Application).The back-end uses the non-relational database MongoDB with the object relational mapping framework Mongoose, which uses a single-threaded asynchronous framework for node Express. The front and back are communicated via the HTTP protocol.
Keywords: Single-Page-Application,Web Components,React,Node,HTTP,MongoDB
第一章 选题背景
1.1社会背景
在管理系统相关方面,由于有大量表格,信息等数据需要汇总,计算,使用人力进行统计,不仅在用纸笔记录时十分麻烦,耗费时间,还难以查询,在统计或者运算时也有可能出现纰漏。另外,使用纸质存储可能会遇到时间太久字迹模糊,纸质资料被毁坏等问题。
从上世纪60年代开始,出现了管理信息科学(Management Information System,MIS)。顾名思义,可以分为管理,信息,系统三个部分:通过计算机设计系统,在系统中通过信息的传递实现资源的共享。而这个系统就是一个人机系统,它包含了管理科学的经验和理论,又通过计算机技术,对信息进行加工,处理,存储,统计等操作,从而实现整个系统。实验室人员管理系统是在这个系统之上,定制具体的功能,比如教师用户和学生用户的区分,项目信息和论文信息的统计,成员的管理。它要求多用户可同时使用,这就必须要借助互联网的相关技术,最终形成了科研管理信息系统(Research Management Information System,RMIS)的概念。高校实验室拥有一套完整的实验室人员管理解决方案可以很大程度对人员的管理提供高效的服务。
使用计算机软件代替人力进行数据处理和存储,在处理方面,在输入模块,设计方便可用并且具有高交互性的界面,可以大大缩短用户的输入时间。也方便进行表单验证,能够立即得知输入数据的格式是否正确。在数据展示模块,通过图表等动态直观的数据展示,可以方便管理人员对用户的各种信息进行统计和展示。也可以配合当前火热的大数据算法来对数据库中的数据进行统计,对数据的各种相关信息进行统计。同时在后台模块,通过计算机对用户输入的数据进行处理,免去了人力运算的时间和纰漏。在存储方面,通过数据库的备份就可以防止数据被毁坏,将服务器部署到网络上可以使很多人共享一份数据。设计管理系统的软件的任务就是减少人力,降低成本。但是计算机技术是日新月异的,对于这一目标是殊途同归的,我们要不断使用更新的技术来重新设计软件,让它具有更强的可用性。
1.2技术背景
1.2.1管理系统软件的模式
目前主流的管理系统软件的模式有两种,分别是C/S(Client/Server)和B/S(Browser/Server)架构。C/S架构主要是PC端的离线软件以及手机移动端的APP,该架构的优点是封闭性和安全性,直接运行在操作系统中可以充分发挥内存的性能,速度快,软件稳定,在针对具有专人管理的人员管理系统中发挥了较大作用,缺点是不便于多用户之间的信息交流,软件需要安装无法做到开箱即用,也必须在安装了软件的电脑上使用。B/S架构主要是在浏览器上运行的网页,网页和服务器通过HTTP等协议进行通信,所有数据和服务在专有的一台服务器上进行。该架构的优点是基于网络通信协议,能够实现多用户之间的信息交流,只要申请了域名,用户输入网址就可以访问,无需下载。缺点是由于网速的限制,访问网页不能像离线应用一样顺畅,使用通信协议进行数据传输,就难免遇到安全问题,比如DNS劫持,SQL注入等。但是随着web开发技术的更新,这些问题都在被逐渐解决,Web应用软件的概念和单页面应用(SPA)的概念被提出,过去在PC上运行软件已经逐渐迁移到Web上。
1.2.2管理系统软件的演进
十几年前,我们使用MFC(Microsoft Foundation Classes 一个微软提供的搭建GUI界面的类库)来设计软件,他功能强大,但是UI无法定制,并且无法跨平台只能设计在Windows系统上运行的软件,类库学习使用起来较为复杂,学习成本较高,随后还有Java Swing,QT等新的类库出现,使用它们可以开发出UI美观,跨平台的软件。使用以上的类库框架开发的均是离线的应用程序,他们占用一定体积,需要安装,若不编写支持网络的模块,就是一个在本地计算机上运行的程序,不支持多用户同时使用。
剩余内容已隐藏,请支付后下载全文,论文总字数:29449字
该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;