【上海建桥学院开题报告模板】基于 WEB 的某公司实习生管理系统的设计与实现


说在前面:上海建桥学院每年要写好多,他们的开题报告呢,需要的东西很多,需要写的东西多,比如多了文献综述和外文翻译,放在开题一起,但是内容不需要写的太好太细,容易通过。
课题背景和意义:
如今,根据国家以及学校的政策,大学生都必须在大学四年的时间内,走出校园生活,进入企业公司进 行实习工作。工学结合的培养方式是各大学对学生的培养计划中不可或缺的一环,目的是为了培养大学生运 用校内所学知识技术与企业公司的实际工作需求相结合的能力。 当学生以实习生的身份走进企业公司后,面临的就是相关领导的管理。学生在实习的同时,应该是以实 习生的身份完成既定任务,而不能因为觉得自己还是学生就可以放松对自己要求。因此,企业公司对实习生 的管理系统就应运而生。 基于本人实习的现状,实习生并没有系统的考勤记录,每日工作的日志也仅仅通过微信等工具向相关人 员进行汇报,这样的零散统计容易对实习生的实习表现评估不全。于是基于 WEB 的实习生管理系统可以很好 的完成管理人员与实习生的交互管理。 基于 WEB 的某公司实习生管理系统是根据本人如今实际需求的一个设计。这项设计可以分不同权限的用 户,对实习生进行更科学、更方便的数字化管理,能让实习生更加明确社会工作的需求,更规范化的完成每 日工作。
研究的主要内容:
基于实习单位对于实习生的工作要求及现状,做一个利用 Vue 前端语言,基于 Python 和 MySQL 数据库 的 WEB 类项目,实现应用于用人单位对于实习生的一个交互管理系统。主要面对的用户是实习生和管理人员, 不同用户具有不同的操作功能。 (一) 实习生可以通过管理人员给予的 ID 登录实习生界面,进行通知查询、考勤、信息管理修改: 1) 通知查询可以查看管理人员发布的每日工作任务及咨询等; 2) 考勤可以进行每日工作打卡,点击考勤按钮后有具体的提示信息(是否成功&日期&时间)并且自动记 录。同时分为上班考勤和下班考勤,上班考勤只要登录后点击考勤按钮即可,下班考勤则需要上传当日的工 作日志,可以是 Excel 或者 Word 文件,上传成功后才能点击考勤按钮完成下班考勤; 3) 信息管理修改可以查看自己的账号信息,并进行修改,包括登录密码、手机等信息。 (二) 管理人员可以登录管理人员界面,进行通知发布、文件下载、考勤查看、信息管理修改: 1) 通知发布可以向实习生发送每日工作任务及咨询等; 2) 文件下载可以下载实习生每日上传的工作日志; 3) 考勤查看可以查看实习生的考勤情况(日期&时间); 4) 信息管理修改可以添加、删除、修改、查看所有实习生的账号及信息。
研究方法(或技术路线):
通过需求分析和技术对比,研究相关文献资料,最终决定采用 B/S 结构,基于 Node.js 的 npm 环境下的 Vue.js 前端语言,结合 Python 的 Django 框架和 MySQL 数据库,完成基于 WEB 的某公司实习生管理系统的设 计与实现。 Vue 版本-Vuecli3.11.0;Node.js 版本-10.16.3;Python 版本-3.7.3;Django 版本-2.2.6;MySQL 版本 -8.0.16。
预期结果:
1. 设计开发出基于 WEB 的某公司实习生管理系统
2. 完成系统代码的设计和完善
3. 完成毕业论文的撰写
进度计划:
2019-09-11 至 2019-10-13 教师下达任务书、学生查阅文献资料,对于基于 WEB 的某公司实习生管理系 统进行调研、撰写开题报告
2019-10-14 至 2019-10-18 对基于 WEB 的某公司实习生管理系统毕业课题进行开题答辩 2019-10-19 至 2019-12-08 对基于 WEB 的某公司实习生管理系统进行程序设计及调试
2019-12-09 至 2019-12-31 在教师指导下完成中期检查的准备工作,并进行中期答辩
2020-01-01 至 2020-02-16 根据中期要求完善系统功能,完成毕业设计文档撰写
2020-02-17 至 2020-03-13 完成论文评审、查重,进行毕业设计答辩
2020-03-14 至 2020-04-05 根据毕业设计答辩修改要求完善毕业设计,并定稿
2020-04-06 至 2020-05-17 做好毕业设计文档整理归档工作
阅读文献目录
[1]吴斯聪.基于 Web 的网络管理系统的设计与实现[D].电子科技大学,2011.
[2]吴大刚,肖荣荣.C/S 结构与 B/S 结构的信息系统比较分析[J].情报科学,2014(03):313-315.
[3] 冯 传 波 , 彭 章 友 , 张 钟 浩 . 基 于 Vue.js 的 移 动 应 用 可 视 化 平 台 的 研 究 [J]. 工 业 控 制 计 算 机,2019,32(05):102-103.
[4]叶子平,高远宁,刘聪.Python 实现简单的 Web 服务器[J].电脑编程技巧与维护,2017(01):76+87.
[5]王冉阳.基于 Django 和 Python 的 Web 开发[J].电脑编程技巧与维护,2009(02):56-58.
[6]葛宇航.基于 Django 的留学生信息管理系统设计与实现[J].通讯世界,2019,26(08):35-36.
[7]郑岚.Python 访问 MySQL 数据库[J].电脑编程技巧与维护,2010(06):59-61.
[8] Shuyan SUN,Xiaojuan QI,Yongji YANG.The Design of Scientific Research Project Management System in Universities[J].Management Science and Engineering,2014,8(1).
[9] 黄传禄.基于 Python 的 MYSQL 数据库访问技术[J].现代信息科技,2017,1(04):73-75.
[10] 安彩霞.基于 Python 和 MySQL 的企业营销管理系统[J].电脑编程技巧与维护,2014(16):47-49.
文献综述
实习生管理系统的设计研究分析
一、 课题背景
随着社会科技的发展,网络已经渗透到人们日常生活的方方面面,悄悄地改变着人们的生活方式。由于 电脑和网络的普及,使用网络资源的人越来越多,网站需要更新的信息量也越来越大。如果使用静态页面, 则维护工作将会非常繁琐,管理员每天需要制作大量的网页,从而浪费很多时间和精力,静态网页是由单纯 的 HTML 语言组成,没有交互性。因此为了满足实际需要,许多网页文件的扩展名不再只是 HTML,而是出现 了 PHP,JSP,ASPX 等为扩展名的网页文件,这些都是采用动态网页技术制作出来的。
早期的动态网页主要采用 CGI 技术,CGI 即 Common Gateway Interface (公用网关接口)。可以使用不 同的语言编写适合的 CGI 程序,如 Visual Basic,Delphi 或者 C/C++等。虽然 CGI 技术已发展成熟且功能强 大,但是由于编程困难,效率低下,修改复杂等缺陷,所以逐渐有被其它技术取代的趋势。静态网页和动态 网页各有特点,网站采用动态网页还是静态网页主要取决于网站的功能需求和网站内容的多少,如果网站功 能比较简单,内容更新量不是很大,采用纯静态网页的方式会更简单,反之一般要采用动态网页技术来实现, 静态网页是网站建设的基础,静态网页和动态网页之间也并不矛盾,为了网站适应搜索引擎检索的需要,即 使采用动态网站技术,也可以将网站内容转化为静态网页发布。动态网站也可以采用静动结合的原则,适合 采用动态网页的地方用动态网页,如果必要使用静态网页,则可以考虑用静态网页的方法来实现,在同一个 网站上,动态网页内容和静态网页内容同时存在也是很常见的事情[1]。
目前,根据国家、学校的政策在校学生都要走出校门,进行工作前实习。工学结合的人才培养是学校培 养人才的重要方式。让学生进入企业通过在校学习的知识与企业实际工作相结合,熟练掌握学习的知识。实 习期间如何更好管理实习学生,成为一个有待解决的问题。实习是高校毕业生毕业前对所学习知识的检验, 是高校教育的一个重要的环节。基于 WEB 的毕业生管理系统可以解决在日常工作中,企业公司管理人员对实 习生的系统化管理,符合信息化时代的现在,也切合实际,提高实习生和企业公司之间的交互体验。
二、现状分析
基于计算机网络的飞速发展,我们已经进入一个网络时代。可以说,网络给信息处理、信息传输提供一 个更快捷、更安全的平台。实习管理系统设计要符合广大用户的需求,因而,建立实习管理系统设计具有很 强的现实意义。 通过本系统可以将实习的各项工作预先作好计划,有步骤的去执行,在实习开始后又能掌握各项工作的 动态,适时了解学生的实习情况,并能利用交互平台提出管理意见和建议,并对该项工作形成流程化的管理。
1) 国内现状 目前在国内,对于实习生的管理并不重视,因为实习生还是学生,大部分企业公司都会以一种包容的态 度来对待实习生,因此会对实习生缺乏一种系统管理。企业公司会认为实习生大多只是为了完成学校任务而 进行实习,除非表现优异,不然迟早会离开,因此缺乏对实习生工作的严格审评。现今国内的大多数实习生 管理基本都是传统的方式,定时定期上交纸质的工作记录,容易造成数据的丢失,可能会对审评产生影响。 有些企业公司图便利甚至也会取消这一环节。
固然国内也有一些企业会搭建 C/S 结构的,基于 C++等语言的客户端型的实习生管理系统。这类系统能 保证稳定性,但是缺乏灵活通便。例如实习生因为请假,不能去线下完成工作,这样就不能及时登录客户端 系统进行工作汇报,而若是采用 B/S 结构就可以随时随地完成工作汇报。此外 C/S 结构所应用的数据库一般 都是大型数据库,需要高性能 PC、工作站或小型机,略显不便。
2) 国外现状 基于国外的学制、学生习性不同,国外更注重的是学生的自主能力培养,讲究自我约束。因此国外的实 习生一般都会有很高的自主性,采用传统纸质和数字化系统并用的管理方式。目前国外并没有只针对实习生 的管理系统,一般都是混用正式员工的考勤系统。他们使用较为先进的数据采集,利用生物技术对于人体机 能身份进行识别,例如指纹识别、静脉识别、虹膜识别、视网膜识别、面部识别、手掌几何学识别、DNA 识 别和声音识别等。考情系统的核心在于软件部分,目前依旧使用 C,C++,Java,ASP 等,使用 Visual FoxPro6.0 数据库开发系统作为考勤管理系统。
三、采用的相关技术
通过研究相关资料文献,对当下主流的各项开发技术进行对比分析,决定采用基于 node.js 环境的 Vscode+Vue 前端语言,结合 Python 和 MySQL 数据库的基于 WEB 的某公司实习生管理系统。
1) C/S 结构与 B/S 结构的对比 C/S 结构,即 Client/Server(客户机/服务器)结构,是大家熟知的软件系统体系结构,通过将任务合 理分配到 Client 端和 Server 端,降低了系统的通讯开销,可以充分利用两端硬件环境的优势,早期的软件 系统多以此作为首选设计标准。在 C/S 模式结构中,用户界面、业务功能处理集中在客户端,服务器端只完 成数据处理和维护功能。工作方式是客户端向 server 端发送 SQL 命令编写的请求,server 端经分析、处理 后得到的结果经中间件传回 Client 端。Client 端可用的软件 VB、VFP、DEPTH、PowerBuilder 等。中间件 ADO、DAO、ODBC 等。Server 端可以使用 SQL Server,Oracle,Sybase 等数据库系统。 B/S 结构,即 Browser/Server(浏览器/服务器)结构,是随着 Internet 技术的兴起,对 C/S 结构的一种 变化或者改进的结构。在这种结构下,用户界面完全通过浏览器实现,一部分事务逻辑在前端实现,但是主 要事务逻辑在服务器端实现,形成所谓 3-tier 结构。B/S 结构,主要是利用了不断成熟的浏览器技术,结合 浏览器的多种 Script 语言(VBScript、JavaScript)和 ActiveX 技术,用通用浏览器就实现了原来需要复杂 专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。随着Win98以及Win2000 将浏览器技术植入操作系统内部,这种结构更成为当今应用软件的首选体系结构。 B/S 结构界面统一、使用简单,易于维护并且拥有良好的扩展性,能够有效的保护企业投资。此外 B/S 结构信息共享度高,有良好的广域网支持和较高的安全性。 B/S 结构的最大优势在于它可以在任何时间、任何地点(没有局域、广域之分)、以任何接入方式(有线或 无线连接)实现跨平台的网络实时操作。不限定用户使用人数,开发和使用成本都非常低突出的易用性,客 户端采用国际标准化的浏览器(如 IE),因此基本上不需要进行用户培训,无论是决策层还是操作层的人员都 无需培训就可以直接使用。客户端免维护、免安装、免开发,节省了内存和存储空间,也节省了开发时间, 降低了成本,给应用系统的安装、调试、日常维护和升级都带来极大的便利 [2]。
2) Vue 前端语言
Vue.js 是一个轻量级的框架,具有性能高、灵活性强的特点。数据的绑定在前端领域是个大问题。现在 我们更专注于数据,而不是像使用 jQuery 一样对 DOM 进行微观的管理。Vue 通过双向响应数据绑定系统巧妙 地处理了这个问题。为实现这种响应性,Vue 为状态中的每个变量添加了许多 getter 和 setter,以便它可 以跟踪更改并自动更新 DOM。Vue 允许将一个网页分割成可复用的组件,每个组件都包含属于自己的 HTML、 CSS、JavaScript 以用来渲染到网页中相应的地方,从而提高了代码的复用性,有利于进行后续界面的扩展。 此外,Vue 的文档也很容易阅读,学习成本较低,所以选择了这款比较流行的前端框架[3]。
3) Python Python 这一脚本语言,虽然目前只有近 20 年的发展历史[4],但是由于其优越的特性,比如开源、面向 对象、内存管理、跨平台、可扩展、解释性强、易学易读等,赢得了众多软件开发人员的青睐。在 GUI(Graphical User Interface,图形用户界面)开发方面,Python 作为一种胶水型语言,其最大的优势就是它的快发开发 功能。 Django 是使用 Python 开发的 Web 框架。它的架构成为 MTV (Model-Template-View),Model 用于数据库 处理,Template 是模板系统,用于显示处理,View 是控制部分用于 Model 的处理、数据的加工和模板的调 用等工作。由于 Django 是使用 Python 开发的,所以如果用 Django 开发站点,则用 Django 库写 Python 代 码。Django 是一种十分高效的敏捷 Web 框架,从 2005 年发布到现在已经出现了大量基于 Python 和 Django 开发的站点[5]。 Django 的 MTV 设计模式分为四个模块,Models.py 用于创建数据库模型,是对数据库的上层封装,大大 简化了编码过程中对数据库的增删改查操作,与 MVC 中的 Model 功能类似;Views.py 是主要的功能模块,负 责业务逻辑处理,与 Template 进行数据交换,与 MVC 中的 Control 功能类似;Tem-plates 文件夹中的保存 的模版文件,用于生成最终 HTML 页面;url.py 则用于定义整个系统或某个子模块的路由表,指定了 URL 与 views.py 的映射关系。urls.py 根据用户发起的请求,调用 Views.py 中对应的函数,与数据模型以及模版 进行将来网络演进需要,网络功能虚拟化依据其优势变成了 5G 关键技术,在安防系统中有效运用[6]。
4) MySQL
MySQL 是一个小型关系型数据库管理系统[7],开发者为瑞典 MySQL AB 公司。在 2008 年 1 月 16 号被 Sun 公司收购。目前 MySQL 被广泛地应用在 Internet 上的中小型网站中。由于其体积小、速度快、总体拥有成 本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了 MySQL 作为网站数据 库。MySQL 的特点是使用 C 和 C++编写,并使用了多种编译器进行测试,保证源代码的可移植性,同时支持 AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell NetWare、OpenBSD、OS/2 Wrap、Solaris、Windows 等多种 操作系统,并多种编程语言包括 C、C++、Eiffel、Java、Perl、PHP、Python、Ruby 和 TCL 等提供了 API[8]。 此外 MySQL 支持多线程,充分利用 CPU 资源,优化的 SQL 查询算法,有效地提高查询速度,既能够作为一个 单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支 持,常见的编码如中文的 GB2312、Big5,日文的 Shift_JIS 等都可以用作数据表名和数据列名。 在没有 Python DB-API 之前,Python 开发的应用程序中包含 SQL 语句来对数据库中的数据进行查询等操 作,但 Python 应用程序可以选用的数据库可以是 MySQL、SQL Server、Oracle 等数据库,当 Python 应用程 序要访问数据库时,各数据库厂商针对 Python 语言制定了不同的接口程序来实现对自己数据的访问,比如 Python 访问 MySQL 的接口程序、Python 访问 SQL Server 的接口程序、Python 访问 Oracle 的接口程序,这样就导致了接口程序的混乱,同时对于开发者来说必须精通不同数据库的接口程序,增加了开发者的负担和 开发的成本[9]。 Python DB-API 是 Python 访问数据库的统一接口规范[10],通过 Python 官网可以查看相关的接口,主要 接口有模块接口 Module Interface、数据库连接对象 Connection Objects、游标对象 Cursor Objects 等。 Python DB-API 为不同的数据库提供了一致的访问接口,Python 应用程序就可以轻松通过 Python DB-API 实 现对不同数据库的访问,这样就解决了数据库访问接口混乱的问题。通过 Python 访问数据库的流程如图 1 所示。

四、 课题的主要内容
系统的总体目标是要提高实习生管理人员的工作效率和管理水平,方便实习生能更更好、更高效的投入 到日常工作中,达到将实习生管理工作纳入科学化、规范化的轨道目的。 为了实现系统设计的总目标,基于 WEB 的某公司实习生管理系统应具备以下功能目标,主要包括: 1) 系统登录:该模块负责将登录成员分为实习生用户和企业管理用户。实习生用户登录成功后,进入实 习生用户界面;企业管理人员用户登录成功后,进入管理人员用户界面。登录界面有供用户输入的 ID、密码 和身份选择文本框以及登录、清空按钮。 2) 考勤:此模块只针对实习生用户,分为上班考勤和下班考勤。上班考勤只需要点击上班考勤按钮,成 功后会跳出对应提示框,显示考勤成功及日期、时间信息,并且自动记录于表格内供管理人员查看;下班考 勤则需要提交当日的工作日志,可以是 Word/Excel 文件,若不上传就点击下班考勤会跳出对应提示框,提 示考勤失败,上传成功后方能点击下班考勤按钮,同时跳出对应提示框,显示考勤成功及日期、时间信息, 并且自动记录于表格内供管理人员查看。 3) 讯息、文件发布:此模块供管理人员在相应板块发布讯息或者是文件,实习生用户可以在此板块查看 并下载。 4) 工作查看:此模块可以让管理人员查看实习生用户的考勤信息,并且下载工作日志文件。 5) 信息查看:此模块主要负责信息的增删改查。实习生用户只能查看自己的个人信息,并可以对信息进 行修改,例如登录密码;管理人员用户可以查看所有实习生信息,并进行增加、删除、修改。
五、 实施的意义
目前,普遍企业公司的实习生管理使用的仍是一套传统的管理方法,其迫切需要系统化、规范化、科学 化、高效化。随着计算机技术和网络技术的发展,计算机和网络的应用已经渗透到了我们的学习、工作和生 活,为了使学校对实习管理工作更加科学、有效和安全,开发一套实习生管理系统设计成为必然趋势。实习 生管理系统设计要提高管理的效率以及质量,实现对高校学生实习过程的有效管理以及交流。系统建设和实 施后,将大大提高高校学生实习管理工作的信息化水平,提高工作效率。