1. 概述
1.1 选题背景
随着“互联网+”的兴起和信息化的不断发展,多种传统行业被冲击,不得不展现出新的发展形态,互联网与各种行业甚至物品联合,使得生活更加方便有效,资源配置的效率也提高很快,在“互联网+”的大环境下,传统经济形态也不断更新迭代,从而推动社会各方面以前所未有的速度进行改革[1]。李克强总理在2015年政府工作报告中提出“互联网+”的概念,正式将我国的互联网乃至物联网发展推向一个新高度,而在这些改革过程中,医疗行业令人不可忽视[2]。
如今计算机和网络技术发展越来越快,大众普遍接受互联网带来的便捷和有效性,在2015年政府工作报告中,李克强总理也提出了“互联网+”的概念,直接影响了多种行业,其中不容忽视的就是医疗行业。在2016年1月下旬,一则东北女孩在北京某医院门口怒斥号贩子的视频被人们广泛传播,引起了极大热议,甚至会推动医院现场挂号的逐步取消,网上预约挂号系统的建立,可以最大程度避免患者尤其是偏远患者到达医院后无法及时看病又无处可去的现象,同时满足了不同层次患者的需求,抵制了号贩子的存在,合理利用门诊资源,优化门诊服务流程。
而国内外也已经有许多医疗机构与第三方机构联合创建了在线预约挂号系统,但依然有很多人不了解其使用方式,因此,大力推广和优化预约挂号非常重要。
1.2 预约挂号系统的发展现状
1.2.1 国外发展现状
经过对大量相关文献进行查询和阅读,发现国外部分国家的医院预约挂号系统较为成熟,互联网发展相对于更加全面,因此在部分国家网上预约挂号已经是人们日常就诊不可或缺的一部分,在美国,成功的系统有例如:盐湖城LDS医院所使用的HELP系统[3],退伍军人管理局所使用的UHCP系统[4] ,马萨诸塞州总医院的COSTAR系统[5]等,为当地人民提供了一个方便的就诊环境。而美国也经历了从小型化逐渐走向智能化在智能化有所成就之后又开始向集成化的改造所靠近。相对于美国,欧洲起步较晚,丹麦76所医院和诊所使用的Red System[6]在欧洲也逐渐成熟,法国的第八医疗中心技术已经比较先进,实现了一体化信息系统——Grenohle Integrated HIS,该系统已经管理了三家大医院和三所医药学院。
1.2.2 国内发展现状
中国很多医院有自己的挂号和预约服务,也有很多应用和平台把医院资源整合在一起,方便患者选择医院、科室和专家。比如北京市卫生局建立的北京市挂号平台,把北京市各级医院的挂号接口放在一个平台里,患者可以按照医院、按照科室或者按照疾病挂号,患者可自己选择就诊时间和看病的医生[7]。这大大方便了患者对于就诊的选择,也简化了就诊的流程。
有些医院没有接入第三方预约挂号平台,也有些医院没有自己的预约挂号系统。医院信息管理系统不仅包括预约挂号系统,还有电子病历管理信息系统,住院处管理信息系统,护士站信息管理系统等 [8]等,医院需要把这些系统联系在一起,从预约挂号到治愈出院,这些系统中的数据都是统一的。病人就诊的信息需要对外保密,且病人就医的临床数据对于临床医学的发展和进步又有很重大的意义,所以很多医院希望自己建立自己的预约挂号平台[9]。
1.3 研究预约挂号系统的目的及意义
在互联网飞速发展的大环境下,通过互联网来完成自己生活中的需求,例如:购物、订餐、学习、订机票等都慢慢成为时代发展的潮流。而在网络问诊、远程诊疗还未有规范的制度和统一要求的情况下,在线预约挂号服务就成为了人们当下就医的最主要需求[10]。上文提到的医院的信息化建设也是我国目前的重中之重,良好的完整的HIS系统可以大大增加患者就医效率和医院运行效率。一个完整的HIS系统应该包含众多子系统,其中,由于医院和患者都对预约挂号有着强烈的需求,所以预约挂号子系统也就成为HIS子系统中十分重要的部分[11]。
建立自己医院的在线预约挂号系统,能够良好的和本医院己有的HIS系统绑定,也就避免了患者在第三方合作网站上挂号后还要在医院重新排号的情况,并且使患者治疗和数据分析更方便,这也是相当一部分医院的需求也是短期的信息化改革的目标[12]。本文的研究是如何建立一个适合医院自身状况的在线挂号系统。该挂号系统应该能够让用户在预约的过程中选择合适的就诊医生及科室,以及就诊时间。医生能够结合自身情况和医院安排合理规划自己一周内的坐诊任务,科学合理的进行工作。
2. 可行性分析
2.1 系统开发环境
2.1.1 MySQL
数据库是系统开发过程中不可或缺的一部分。 在WEB应用方面,MySQL AB开发了一个具有很大优势的MySQL关系数据库管理系统。 MySQL可以将数据存储在不同的表中,这非常灵活,并且还可以提高系统在实际应用中的速度。 数据库访问最常用于标准SQL语言,MySQL用于SQL语言,因此它具有高度兼容性。数据库的操作是必不可少的,包括对数据库表的增加、删除、修改、查询等功能。现如今,数据库可以分为关系型数据库和非关系型数据库,Mysql属于关系性数据库,Mysql数据库是一款小型的关系型数据库,它以其自身特点:体积小、速度快、成本低等,Mysql数据库是目前最受欢迎的开源数据库。
在WEB应用技术中, Mysql数据库支持不同的操作系统平台,虽然在不同平台下的安装和配置都不相同,但是差别也不是很大,Mysql在Windows平台下两种安装方式,二进制版和免安装版。安装完Mysql数据库之后,需要启动服务进程,相应的客户端就可以连接数据库,客户端可通过命令行或者图形界面工具登录数据库。
2.1.2 JSP简介
Java服务器页面的JSP(Java Server Pages)是基于Java的技术,是用来支持动态的跨平台Web服务器访问的技术[15],JSP和微软的Active Server Pages(ASP)在一定程度上相似,不同的是ASP在网页HTML文件中插入VBScript代码片段,而JSP在HTML文件中插入Java代码片段(Scriptlet)和JSP标记(tag),基于JSP的web应用具有良好的跨平台性 [16]。
与Java Servlet类似,服务器对客户端JSP请求中的Java代码进行处理后, 返回客户端是一个包含处理结果的HTML文档,客户端只要使用浏览器就可以接收处理结果。JSP技术继承了Java技术的独立于平台性且安全可靠,具有面向对象的易于使用的特性 [17]。
2.1.3 JAVA技术
Java主要采用CORBA技术和安全模型,可以在互联网应用的数据保护。它还提供了对EJB(Enterprise JavaBeans)的全面支持,java servlet API,java (java server pages),和XML技术。
JAVA语言功能:
面向对象:面向对象是Java编程语言的标志之一,是一种软件开发方法。最重要的是将所有东西变成对象,然后以某种方式编程。编程时,代码和数据写在每个对象上。 面向对象编程方法的出现使得人们在编程过程中的设计思考和操作变得非常简单,同时也提高了程序的安全性。
跨平台:Java流行的一个关键特性是它的跨平台特性,这使得用Java编程变得容易。您可以用Java编写程序并在其他地方运行它,而无需在编译后更改它。
垃圾回收机制:用来将那些在程序不操作时无用的对象所占用的内存空间释放掉,C ++最被人厌恶的就是因为其不能将在编程的过程中所占用的内存空间进行及时的释放,导致随着编程时间的变长所占用的内存空间越来越多。对于一些编程高手而言,他们会在刚开始编程的时候配置一块内存地址放在堆栈上,然后在不需要的时候会对其进行释放,而一些新手和菜鸟在很多的时候会忘记删除这个内存地址,从而导致程序在运行的过程中会变得十分的不稳定,最终有可能会导致程序崩溃。所以很多C ++的高手在编写程序时往往都会将删除后的指针的值设置为NULL,然后在删除之前确定一个指针的值是否为NULL。
2.1.4 SSM框架
1.Spring的优势:
通过Spring的IOC特性,将对象之间的依赖关系交给了Spring控制,方便解耦,简化了开发。
2.Spring MVC的优势:
SpringMVC是使用了MVC设计思想的轻量级web框架,对web层进行解耦,使我们的开发更简洁。
3.Mybatis的优势:
数据库的操作(sql)采用xml文件配置,解除了sql和代码的耦合,提供映射标签,支持对象和和数据库orm字段关系的映射,支持对象关系映射标签,支持对象关系的组建提供了xml标签,支持动态的sql。
2.1.5微信开发者工具
微信开发者工具现在已经被小程序开发团队开发运行,目前微信开发者工具任然在不断的完善中,在开发小程序时经常要不断的更新。可以使用微信扫码登陆开发者工具,开发者工具将使用这个微信帐号的信息进行小程序的开发和调试。
机型选择:小程序以智能手机的屏幕尺寸为设计标准,进行切图。
预览界面:写好视图布局后点击编译,用来刷新视图界面。
控制台:方便调试打印输出信息。
上传代码:上传到腾讯服务器,提交审核必经步骤。上传代码时可以填写版本号和备注信息。
资源文件:一般可以在资源文件进行对应项目的文件目录的断点调试。
显示远程调试:手机端和PC端开发工具联调对用户而言是非常实用的。
本地数据存储:显示的是本地存储的数据。
视图调试:标组件以子父层级结构呈现,方便调试。
微信限制在2M 以内的代码体积;开发中一般不校验合法域名信息;小程序后台要做配置服务器域名。
以上就是在开发过程中微信开发者工具常用到的功能,微信开发者工具也在不断的完善。
2.1.6 小程序框架以及目录结构介绍
整个小程序框架系统分为两部分:逻辑层和视图层。小程序开发框架的目标是通过尽可能简单、高效的方式让开发者可以在微信中开发具有原生 小程序 体验的服务。小程序在视图层与逻辑层间提供了数据传输和事件系统,提供了自己的视图层以及逻辑层框架,让开发者能够专注于数据与逻辑。框架的核心是一个响应的数据绑定系统,可以让数据与视图非常简单地保持同步。在逻辑层做数据修改,在视图层就会做相应的更新。框架提供了一套基础的组件,这些组件自带微信风格的样式以及特殊的逻辑,开发者可以通过组合基础组件,创建出强大的微信小程序 。
2.2 预约挂号系统开发的可行性分析
2.2.1 管理上的可行性
本系统将预约信息整理成表单上传至数据库当中,医生以及管理员只需要调用数据库内容即可清晰地显示出不同患者的挂号预约需求,一目了然,信息处理速度更快、更方便,大大减少了管理员的工作量,也避免了现场可能出现的由于各地口音不同而产生的交流困难的现象,同时也减少了现场挂号对于现场秩序的维持所付出的人力物力。再者,有挂号需求的都是身体不舒服有疾病的人,现场挂号人流密集,很容易造成细菌繁殖以及交叉感染,而在线预约则可避免这种情况。且系统采用目前主流开发语言和环境,数据库扩充便捷,管理员仅需简单培训即可上岗,因此可读可识别性高,便于日后维护与管理。
2.2.2 技术上的可行性
技术可行性是指开发这个系统时所用的各项技术。结合预约挂号的实际,技术可行性分析主要涉及到以下几点:
1)软硬件需要的可满足性。医院有能力配制在线预约挂号系统所需的所有硬件、软件,例如计算机、SQL、服务器、浏览器等,都是常用的软硬件,即使不开发本系统也需要使用,所以在软硬件方面可行。
2)系统开发人员的技术。使用目前所学的技术及工具,例如JSP、MySQL等都是大学所学过的内容,且技术已经发展成熟,所以可以实现此系统。
3)使用有效性。预约挂号系统开发后由专门人员负责后台管理,且管理方法十分简单,只需略懂电脑知识即可使用。
所以本系统在技术上可行。
2.2.3 经济上的可行性
经济可行性分析是对开发过程中有可能涉及的各项资金使用进行分析,具体包括开发过程中的支出和投入使用后所能带来的经济利益等。根据目前系统情况和实际,实现此系统主要包括以下几个方面费用:
1)域名费:系统正式使用后,需缴纳年费继续使用域名,否则将被终止,但域名费用对于普通医院还是可以负担得起的,所以可行。
2)服务器投入:由于本系统还处于试运营测试的阶段,并不需要大型服务器来支持运行,所以该部分支出费用较低。
3)软件费用:软件部分所需购买金额并不大,且有相当一部分软件的使用都是免费的,而且,像操作系统这样的软件,即使没有挂号系统也需要支出,所以在软件方面也不需要较大金额的支出。
且系统运行后可以带来许多经济效益最直观的可以减少挂号现场维护秩序人员、咨询人员、挂号大厅硬性支出等经济,综上本系统在经济上可行。
3. 系统分析
3.1 预约挂号系统的业务流程分析
3.1.1 用户注册登录业务流程图
当用户注册时,在注册页面上输入用户昵称、密码个人信息进行注册。注册成功后,在登录框使用用户名和用户密码进行登录。如果用户名密码错误,登录时提示用户名密码错误,需注册。该功能流
3.1.3 预约挂号业务流程图
医院挂号系统是医院信息管理系统的不可缺少的一个组成部分,在整个完整医院系统是最重要的一个环节,也是患者在就诊时各项活动的开始。预约挂号系统需要协同其他HIS系统,达到数据交换和资源合理分配的目的。医院在线挂号系统的业务流程如图3-2。
图3-2 预约挂号业务流程图
3.2 预约挂号系统的数据流程分析
对医院信息系统的各项数据流程进行分析,可以使我们知道预约挂号系统业务数据流向的全过程,分析各个管理业务及其关系。数据流程分析主要包含对信息流走向的分析、设计、存储等。
3.2.1 系统整体流程图
从业务功能描述的需求出发,预约挂号系统数据流图总体上分为三层,首先是给出了顶层数据流图,由于系统的工作人员、患者、医生提供的信息都是双向性的,预约挂号系统的顶层数据流如图3-5所示。
4. 系统设计
4.1 系统的平台设计
在硬件方面,考虑到还需要进行一段时间试运行,使用一些入门级的硬件设施就足以。入门级服务器能够满足中小型网络用户的注册、浏览、预约等功能,所以选择入门级服务器作为系统的服务器[24]。在软件环境方面,所用的是MyEclipse软件进行开发,数据库使用MySQL进行链接。综上,建议配置如下表4-1所示。
表4-1 系统的平台设计的建议配置
硬 件 配 置 | 处理器 | 2.50GHz的CPU,拥有3100MHz 三级缓存 |
内存 | DDR3 内存,拥有2个SO-DIMM槽,内存容量为4GB,可扩展至16GB | |
硬盘 | 采用SCSI接口硬盘 | |
内置电源 | 6芯锂电池,100V-240V 90W 自适应交流电源适配器 | |
操作系统 | Windows 7及以上 | |
软件配置 | 数据库 | MySQL |
Web服务器 | Apache Tomcat 7.0 | |
开发工具 | MyEclipse 10.7.1 |
4.2 系统的总体功能结构设计
HIS系统的主要功能模块分为前台操作与后台管理两部分,前台操作又包括:用户预约挂号和医生管理两部分。现在,将每个系统分别展开,来具体展示该系统的整体功能。
4.2.1 功能结构图
进入患者预约挂号系统后,只有在注册登录之后,才能进行医生预约等一系列操作。预约挂号平台的功能结构如图4-1所示。
图4-1 患者平台功能结构图
最后,后台管理平台是系统管理员管理各类医院信息的平台,管理员使用个人账号与密码登录后,可以管理各种信息,例如用户信息、医生信息等。后台管理平台的功能模块如图4-2所示。
图4-2 后台管理平台功能结构图
本系统普通用户即患者登录后主要是进行有关预约挂号等内容,管理员拥有全部权限,可以对医生、用户修改管理,还可以挂号等。
4.2.2 主要模块说明书
1)用户注册及登录模块:用户需要在网上注册预约账号然后登录系统进行预约。账户需要填写的信息,如用户昵称、密码等区别用户的重要信息。
表4-2 用户注册及登录模块说明书
模块标识 | EC-1 | 所属子系统 | 预约挂号平台 |
模块名称 | 用户注册及登录 | ||
主要功能 | 当用户填写了详细个人信息后注册为系统用户,用户信息数据传送到用户表中,登录后可以进行预约挂号等各项功能的使用。 | ||
调用模块 | 用户注册、用户登录 | ||
输 入 | 用户注册信息,用户名,密码 | ||
输 出 | 注册成功、注册失败,登录成功、登录失败 | ||
相关数据表 | 用户信息表 | ||
主要内部变量 | 用户名、密码 | ||
算 法 | 读取文本框信息与数据库信息进行比对,比对信息相同即可以登录,找不到相同信息则显示用户名或密码错误,并提示用户是否注册为新用户。 |
4.5 系统安全设计
4.5.1 网络安全
网络的发展使人们可以足不出户就可以获得最新的消息、购买最合心意的商品、与远方的朋友亲密联系,也可以将自己的资源上传实现共享。与此同时,由于数据的存储的相对集中,当数据泄露时也会给商家给用户带来一定程度的损失。而新闻也会常常爆出类似的消息。所以,网站运行的安全是一个网站至关重要的部分。
系统的运行安全的保证,要从信息处理、信息内容、信息传输入手[26]。
信息内容的安全是指网上传播内容的安全性。因为现在是一个全民上网的时代,大量的信息的涌现和传播速度的提升,如果有不良信息出现会造成很不好的影响。所以一定要从源头上进行管制[27]。
预约挂号系统准备采取的安全措施有:
使用安全、稳定、可靠的Windows操作系统,并为管理员设计密码保护机制,管理员还应及时修复系统漏洞,并定期备份数据。管理员可以接收来自其他用户的报告,然后处理通信器的内容。
系统通过MD5(42位)加密存储管理员信息的数据表,如此一来其他人员无法下载或查看全部数据库内容。
4.5.2 数据安全
对数据库的数据访问设置权限。有的数据用户可以调用,有的只能由管理员输入密码之后才可以使用。
对于不同种类的用户显示的界面不一样,管理员可以连接到后台管理,而用户不可以。
数据存储清晰,容易备份。
为了预防或维护系统,有必要记录故障原因、维修对象、维修内容以及维修前后情况。一旦发生故障,数据可以恢复到备份前自动保存的时刻[29]。
5. 系统实施
5.1 程序实现
5.1.1 登陆
输入用户名、密码,点击登陆即可,如下图所示:
5.1.2 注册
输入用户名、密码,点击注册即可。如下图所示:
5.1.3 首页
左边是菜单栏,右边是具体的展示区域,如下图所示:
5.1.4 医生管理
这里以列表的形式展示所有的医生信息,如下图所示:
5.1.5 医生添加
输入医生名称、科室,点击添加即可,如下图所示:
5.1.6 类型管理
这里以列表的形式展示所有的类型信息,如下图所示:
5.1.7 挂号
选择某个医生然后点击挂号即可,如下图所示:
5.1.8 订单管理
这里以列表的形式展示所有的订单信息,如下图所示:
5.1.9 角色管理
这里以列表的形式展示所有的角色信息,如下图所示:
5.2.10 用户管理
这里以列表的形式展示所有用户,如下图所示:
5.1.11 小程序端
输入 用户名、密码点击登录即可,如下图所示:
5.1.12 注册
输入 用户名、密码点击注册即可,如下图所示:
5.1.13 主页
这里是主页,如下图所示:
5.1.14 医生列表
这类以列表的形式展示所有的医生信息,如下图所示:
5.1.15 挂号预约
选择好某个医生后,点击预约即可,如下图所示:
5.1.16 我的订单
这里可以看到我的订单信息,如下图所示:
6. 结束语
6.1 系统特点
1)架构较为完整。该系统是基于B / S三层架构,并运行在互联网上。该结构可以满足远程挂号和查询信息的要求,还要满足系统管理员对大量数据集中管理的需求,大大提高了数据时效性和准确性,从而提供了一个直观、高效的挂号平台。
2)数据采集方式多样。在过去,现场挂号时由挂号工作人员手动输入,工作量大,容易出错,网上预约挂号只需要医生进行审核,有效的将录入的时间花费分散到患者身上,提高了工作效率,降低出错率。
3)可扩展性较好,本设计采用高聚合低耦合,将功能模块局限在一个局部范围内,因此,系统的基本组成部分相对简单,易于调整,为日后的功能升级留出了更多的空间。
致 谢
本文是在指导教师的悉心指导和关怀下完成的。在完成毕业设计的过程中老师认真地指导,让我受益匪浅。老师渊博的知识、严谨的治学态度和敏捷的思路都让我由衷的敬佩;老师对待学生和蔼亲切,但又不失威严,她坦荡的胸怀和直率的性格深深地吸引了我,从她那里我学到了很多知识和做人的道理。老师对我的严格要求和培养对我未来的学习和工作产生深远的影响。在此,谨对老师表示由衷的敬意和感谢!
感谢同学帮我解决了很多技术性的难题。
非常感谢我的父母和家人,在我的成长道路上他们一直鼓励和支持着我。离家的这四年来,他们在背后一直默默地支持着我,带给我克服困难的勇气和对待生活的乐观态度。
最后,感谢所有曾给予我关心和帮助的人们。我今天能够取得的一切是对他们最好的回报。