1、电子病历管理系统的设计秦武华1112020年4月19日文档仅供参考本科毕业设计(论文)题目名称: 医院电子病历系统的设计 专业年级: 计算机科学与技术(工) 10级 学生姓名: 秦武华 班级学号: 1班17 号 指导教师: 孙海 二一四 年 六 月 六 日摘 要本文介绍了一个基于B/S结构开发的电子病历管理系统,该系统能够实现计算机对病历的录入和管理,采用了面向对象的分析方法和设计思想,使用JavaWeb技术实现系统的功能。开发工具采用MyEclipse 和Tomcat6.0,后台选用Oracle数据库,比较完整的实现了一个电子病历管理系统所具备的功能。该系统采用MVC模式开发,首先从用户界面
2、中获取数据,然后经过逻辑请求调用实体类、业务类以及DAO类中相关的业务方法来进行数据处理,最后将数据返回给用户界面层。用户界面层在该系统中以JSP和HTML来予以实现,用户能够在界面上进行相应的输入输出操作;实体类、业务类和DAO类组成系统的模型层,该层主要负责实现用户的业务需求;而所有的控制器在该系统中以Servlet来予以实现。整个系统分为医务人员和管理员两大模块,医务人员模块实现了对病人和病历的相关管理功能;管理员模块实现了对医生、科室和密码的相关管理功能。关键词:JavaWeb;MVC;Tomcat6.0;Oracle;电子病历AbstractThis paper introduces
3、 a electronic medical record management system based on B/S structure, the system can realize the input and management of medical record by computer, the analysis method and object oriented design, using technology of JavaWeb to realize the function of system. Using MyEclipse and Tomcat6.0 as the de
4、velopment tools, and choosing the Oracle database as thebackstage, the function of electronic medical records management system can be realized. The system adopts MVC model development, first get the data from the user interface, and then through the logical request call entity class, business class
5、 and the DAO class related business methods for data processing, the data is returned to the user interface layer. Using the JSP and HTML as the User interface layerin the system, the interface for input and output operation can be used by users; the entity class, business class and the DAO class ar
6、e collectively referred to as the systems model layer, the layer is mainly responsible for the implementation of the business needs of users; and all the controller in the system with Servlet to realize. The whole system is divided into medical personnel module and administrator module two big modul
7、es, medical personnel module for the patient and the medical record management function; administrator module for the doctors, departments and password management functions.Key words: JavaWeb;MVC;Tomcat6.0;Oracle;medical record目 录摘 要IABSTRACTII目 录I第1章 绪论11.1 选题背景11.2 选题目的11.3 选题意义21.4 课题应解决的主要问题21.5
8、 指导思想21.6 国内外动态4第2章 方案论证52.1 系统可行性分析52.1.1 经济可行性分析52.1.2 技术可行性分析52.1.3 法律可行性62.1.4 运行、操作可行性分析62.2 方案分析62.2.1 方案分类62.2.2方案比较62.2.3 方案选择8第3章 需求分析93.1 系统用户分析93.2 功能需求分析103.2.1 系统的用例图设计103.2.2 系统类图分析113.3 运行环境规定133.3.1 用户界面133.3.2 设备要求133.4 性能需求133.4.1 性能143.4.2 可扩展性143.4.3 可用性143.4.4 易用性143.4.5 安全性14第4
9、章 过程论述154.1 系统概要设计154.1.1 功能的独立性和模块化154.1.2 三层结构设计思想154.1.3 系统模块的功能设计164.1.4 数据库设计174.2 详细设计及实现224.2.1 设计视图层224.2.2 设计控制层234.2.3 设计对象模型244.2.4 设计数据访问层244.2.5 创立数据库与连接数据库254.2.6 登录模块284.2.7 管理员模块314.2.8 医务人员模块344.2.9 强制登录验证404.2.10 安全退出41第5章 系统测试425.1 白盒测试425.1.1 安全测试425.1.2 白盒测试过程425.2 黑盒测试445.3 测试结
10、果45结 论46致 谢47参考文献48附 录49第1章 绪论1.1 选题背景随着中国医疗卫生事业的迅速发展,医学科学的不断进步,医学模式的转变和群众医疗观念的逐步改变,中国的医疗管理的难度加大,对医疗管理的要求更高。而且当今计算机信息和网络通信技术的深入发展为提高医院管理水平创造了良好的条件,医院信息管理网络系统也因此逐渐在中国各级医院中逐步推广应用。过去开发医院信息系统,往往是从各个子系统的不同角度来管理病人信息的不同部分。随着系统规模的扩大,功能越来越复杂,要从整体把系统的集成与数据的共享,同时兼顾未来的扩充与发展,从而对系统的设计要求也越来越高。为了避免新开发的系统不断修修补补甚至推到重
11、来,必须将病历信息作为一个独立与具体应用系统的整体来研究,以实现计算机化的病历也就是电子病历。因此,电子病历是从更深层次上保证医院信息系统长期稳定发展的基础。电子病历管理系统的设计能够实现用计算机来对病历的管理,给医生、病人以及医院的管理员提供了便捷。同时,医生能够根据自己的角色操作不同的权限,简化了患者的看病流程,方便了各个科室医务人员的相互协作与信息共享。由此可见,设计一个电子病历的管理系统,能够加强医院的一些医疗制度的管理,使其变得更加规范化和智能化。因此,本次毕业设计中我选择的题目是“医院电子病历系统的设计”。1.2 选题目的伴随着时代的步伐,我们踏进了21世纪这个高度信息化的互联网时
12、代,这句话毫不夸张的说明了互联网在我们日常生活中作用。当然,医院的管理方面也讲大量运用到互联网技术,而且当今计算机信息和网络通信技术的深入发展为提高医院管理水平创造了良好的条件,医院信息管理网络系统也因此逐渐在中国各级医院中逐步推广应用。因此,电子病历管理系统的设计能够为医院的管理提供更良好的服务。本系统主要采用JavaWeb技术,主要包括JSP、Servlet等技术的开发,同时加入了MYBATIS框架技术。系统主要模拟的是软件工程的设计思想,严格按照各个步骤完成系统的各个方面的设计,研究内容主要包括:病人、医生、科室、病历和用户等。各个用户能够根据自己的角色操作不同的功能来实现对病历的管理。
13、四年的大学生活,学习了很多的专业知识,为了能够将这些专业知识运用到实际生活中来,毕业之后能够更好地适应社会的需要,因此本次设计选题考虑的题目更接近于社会,让自己的综合素质得到提高,从而使自己能够和社会顺利接轨。1.3 选题意义电子病历设计具有重大的社会、经济意义。第一,电子病历的应用是势在必行的。从中国的现实情况看,医疗体制改革目的是降低医疗成本,提高医疗质量。电子病历(EMR)在近几年来受到空前的关注,很多地方开始争先恐后的建设以电子病历为核心的卫生信息平台。相关研究认为,当前EMR软件正处于成长期。而且传统的病历模式所发挥的作用是有限的,因此应用电子病历势在必行。第二,电子病历能够为社会带
14、来更优质的服务。传统病历内容是自由文本形式,字迹可能不清,内容可能不完整,意思可能模糊不清;同时保存分散,难以查找,容易丢失;而且,科学分析时需要转抄,容易出现潜在错误。电子病历有关病人的健康和医护情况完整的、集成的信息体现形式。它的内容更加充分,病历的书写更加规范,不易出错,减轻书写强度,在效率方面有很大的提高。同时电子病历保存更加简单,而且查询方便。能够协助医院提高工作效率,从而为社会带来更优质的服务。1.4 课题应解决的主要问题本系统主要使用了JSP、Servlet等相关技术,开发了一个基于中小型医院的电子病历管理系统。后台数据库采用Oracle,以Windows为操作平台,能够有效的对
15、医院的病历进行管理。同时界面简洁友好、快速实用且查询方便。用户方面主要分为管理员和医务人员,根据自己所具备的不同权限来实现相关的操作。承担其自己的工作职责。 管理员方面主要负责医院内部的相关管理,主要包括对医生的管理以及对科室的管理操作。同时,为了提高医院管理的安全性,管理员能够对医院内部进行加密管理,而且定期更新,为医院提供一个更安全的管理环境。医务人员方面根据自己不同的科室进行不同的操作,能够实现对病人个人信息的管理,主要包括信息录入,以及对录入完的信息修改、查询和删除操作。同时能够给信息录入完成的病人填写病历,而且实现对病历的修改、查询和归档操作。如果需要,能够根据不同条件查询相应的病历
16、,对病历进行打印操作。医院门诊病历一般保存年限为15-20年,因此,医务人员需要对这些达到年限的病历进行删除。1.5 指导思想 本次毕业设计的电子病历管理系统具有以下特点:(1) 系统采用B/S结构开发B/S(Browser/Server)结构即浏览器和服务器结构1。它是随着Internet技术的兴起而对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面经过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。经过这种结构开发,能够使系统变得更加方便、快捷和高效。(2) 系统采用MVC设计模式MV
17、C设计模式,对应的分别是模型层(Model),负责实现业务和数据;视图层(View),负责实现输入/输出界面;控制层(Controller),主要负责从视图层获取数据,调用模型层来实现业务和数据,最后跳转到视图层2。因此,在整个MVC模式中,Web 用户向服务器提交的所有请求都由控制器接管。接受到请求之后,控制器负责决定应该调用哪个模型来进行处理;然后模型根据用户请求进行相应的业务逻辑处理,并返回数据;最后控制器调用相应的视图来格式化模型返回的数据,并经过视图呈现给用户。运用MVC模式,能够将业务处理和显示分离,强迫将应用分为模型、视图和控制器,使开发者必须考虑应用的额外复杂度,因此用这样的模
18、式开发出来一个电子病历管理系统更具有可扩展性2。(3) 安全性设计系统中设计了一个医院密码,该密码由管理员进行更新管理。而医院内部的医务人员登陆时需要提供该医院密码加上自己的登录用户名和登录密码才能登录获取自己的操作权限,这样就能够保证该系统是医院内部人员在使用,进一步的提高了该系统的安全性能。(4) 面向对象设计系统中将医生、科室、病人、病历等都封装成了java中的实体类,而且实体类之间具有相互的关联关系,如:一个科室对应多个病人,她们的关系属于一对多的关系;而一个病人对应一张病历,她们就属于一对一的关系。同时每个实体类都有对应的数据访问类,能够直接访问数据库中的数据,从而提高了对数据库操作
19、的安全性和程序的可扩展性。(5) 系统前台采用JavaWeb技术系统的前台主要采用JavaWeb技术。首先,用户经过访问客户端(IE、谷歌、火狐等浏览器)访问JSP页面,选择自己要实现的某项业务,将其提交给服务器;然后,服务器接受到请求之后,经过Servlet实现逻辑判断,调用具体的业务方法来实现具体的业务;最后,服务器将这些业务的数据响应给客户端,经过JSP页面反馈给用户1。如:管理员经过浏览器客户端在地址栏输入相应的访问该系统的管理员登录地址(http:/localhost:8888/EMRManager/login/login.jsp)。登录成功后,选择自己需要操作的业务来实现具体的功能
20、。同时医务人员也需要通在浏览器地址栏输入相应的访问该系统的医务人员登录地址(http:/localhost:8888/EMRManager/login/doctorlogin.jsp)。登录成功后,选择自己需要操作的业务来实现具体的功能。工作原理图如图1-1:管理员医务人员客户端服务器数据库 图1-1 工作原理图1.6 国内外动态国外动态:美国是全世界医疗信息技术最发达的国家,她们研究的电子病历架构是根据HIMSS的电子病历模型,主要由临床数据仓库(CDR)、临床决策支持系统(CDSS)、受控医学词汇表(CMV)、计算机化的医嘱系统(CPOE)、药品管理系统(EMAR)、临床文档应用程序、以及
21、企业级的病人主索引(Enterprise Master Patient Index, EMPI)等组成;在国外的一些做法是:比如,美国,由医疗对应的政府部门牵头,统一制定电子病历认证标准,必须符合标准的厂商才允许从事医疗机构的电子病历实施,同时,对实施符合“有效性应用”(meaningful use)的医院进行奖励和补贴,基于HL7标准的电子病历系统得到了非常广泛的应用。国内动态:当前电子病历在国内兴起,EMR软件正处于成长期。电子病历有这样一些基本的进化过程,从传统的纸质病历、病历的电子化、结构化电子病历、具有安全的医疗过程管理能力的电子病历3。当前国内医院使用电子病历主要用来电子贮存、查询
22、、统计、数据交换等管理。当前区域性病历数据交换和共享仍是一个未解决的问题。电子病历在国内的应用层次依然较低,主要由于缺少法律和政策支持、安全管理不到位,电子病历市场有待更进一步开发。业内人士认为,当前电子病历产品不够成熟,当前的产品只满足基本业务,尚没有大规模、成熟的临床路径、决策支持的高级应用,对应产品也在完善和开发中。第2章 方案论证2.1 系统可行性分析开发任何一个基于计算机的系统都会受到时间和资源的限制。因此,开发方在接受客户的项目之前,必须根据客户可能提供的时间和资源等条件进行可行性研究。可行性研究工作要在初步的需求定义之后进行。其主要任务不是研究如何解决问题,而是用最小的代价在最短
23、的时间内确定该项目是否值得去解决,是否存在可行性研究方案,即在系统层面上论证系统开发的可行性。2.1.1 经济可行性分析开发一个基于计算机的系统主要是为了获取较好的经济效益和社会效益。因此对待开发系统的经济可行性论证是很重要的内容。首先,本次毕业设计的系统是由学生自己研究开发,所选用开发工具为MyEclipse ,语言为面向对象的Java语言。数据库方面选用的是系统自带的Oracle,因此不存在软件上的经费,同时由于是个人开发,没有地点环境的限制,设备方面为自己的笔记本电脑,因此也不存在环境和设备方面的开发费用。而当软件开发成功后,能够给医院的管理方面提供很大的便捷,能够带来很大的经济效益,因
24、此经济上是可行的。2.1.2 技术可行性分析技术可行性是可行性研究的关键内容。由于系统分析和定义过程与系统技术可行性评估过程同时进行,此时系统的功能、性能和目标的不确定性会给技术可行性论证带来许多困难。因此,技术可行性研究室非常重要的内容。为了弥补我技术上的不足,在假期我参加了一次java方面的实训,主要研究的课程有J2SE、J2EE、Oracle、JSP、Servlet、HTML和JS等方面的内容。下面简单介绍下这些技术的作用。(1) J2SE是Java语言的基础部分,基础是做好每一件事情的开始,毕业设计需要用一种专业的语言来进行开发,因为我选择了Java语言作为开发语言,因此我巩固了J2S
25、E这部分基础知识。(2) J2EE是Java语言的企业版,主要用于分布式网络程序的开发,对WEB开发很有用。(3) Oracle是以高级结构化查询语言(SQL)为基础的大型关系数据库,通俗地讲它是用方便逻辑管理的语言操纵大量有规律数据的集合。是当前最流行的客户端/服务器CLIENT/SERVER)体系结构的数据库之一4。而我也准备毕业以后从事相关的开发,因此选择Oracle作为本次毕业设计的数据库。(4) HTML是一种超文本标记语言,经过网页的形式将内容显示给用户5。经过该技术能够将其与JSP技术结合,从而做成界面,提供用户输入输出。(5) JS是一种基于对象和事件驱动而且具有安全性能的脚本
26、语言,能够用来向HTML页面添加交互行为,比如登录的安全验证等。该种语言一般被直接嵌入HTML页面中,这样能够加强系统界面的交互6。(6) Servlet技术则是实现逻辑判断,经过界面的输入等操作,对其进行逻辑处理,然后调用相关的数据处理方法,然后实现判断,最后跳转到相应的界面显示给用户。因此该技术对业务的逻辑判断是不可缺少的。经过学习这些内容,加上大学期间的专业知识,以及上网查询相关的资料,那么开发一个基于中小型医院的电子病历管理系统是完全可行的。2.1.3 法律可行性本系统的开发和使用不会侵犯她人的合法权益,严格参照中华人民共和国计算机软件保护条例的有关条款进行开发,因此也不会触犯到国家的
27、法律法规。经过这两方面的论述能够确定本系统属于合法软件,因此该系统的开发在法律上是可行的。2.1.4 运行、操作可行性分析本系统的运行操作在中小型医院能够的到有效的实施,能够为医生管理病历方面提高很大的便捷,而且本系统不会与原有的其它系统相互矛盾,系统的操作规程和医院的常规操作流程完全符合,因此在运行、操作方面也是可行的。2.2 方案分析2.2.1 方案分类方案一:开发技术选用JavaWeb技术,JSP+Servlet+Oracle10g技术,结构采用B/S模式。方案二:开发技术选用微软的ASP技术+SqlServer ,结构采用B/S模式。方案三:开发技术选java+ SqlServer ,
28、结构采用C/S模式。2.2.2 方案比较1JSP和ASP技术比较从结构上来看,JSP和ASP在结构上类似,都是以双引号作为标记符,不同的是标记符里面代码。ASP为JavaScript或VBScript脚本,而JSP为Java代码。JSP将网页的表现形式和服务器端的代码逻辑分开7。作为服务器进程的JSP页面,首先被转换成Servlet(一种在服务器上运行的java程序)。Servlet支持HTTP协议的请求和响应。当JSP被转换成纯Java代码,多个用户同时请求一个JSP页面时,应用实例化线程来响应请求。这些线程由WEB服务器进程来管理,和ASP的线程管理器功能类似。同CGI为每个请求创立一个进
29、程的模式比较,这种方式效率高的多。从性能和平台无关性来看,与C+、VB等语言比较,Java被看作是个效率不太高的语言,但它以牺牲效率换来了平台无关性使Java能够在大多数操作系统上运行而不需要重新编译-许多人愿意为此而付出代价。Java的编译代码是一种字节代码,在运行时由操作系统上的一个JavaVirtual Machine(JVM)虚拟机解释。字节代码能够在所有平台上迁移,而不需要任何改动。交叉平台编程倾向于采用所有操作系统的“最小公分母”,特别是使用图形化界面时(Servlet不需要任何图形界面)。Servlet比传统的java程序(Applets,java app)要快,因为它们在服务器
30、端运行,不需要加载沉重的GUI(HTML的GUI是非常少的)。另外,Servlet的字节代码只有在客户请求时才执行,因此尽管当首次调用Servlet时会有几秒钟的加载时间,但后续的请求相应非常迅速,因为服务器已经缓存了运行的Servlet。当前的JSP服务器,都带有java即时编译器(JIT),因此,JSP的执行比每次都要解释执行的ASP代码要快,特别是在代码中存在循环操作时,JSP的速度要快1到2个数量级。再从连接数据库方面来看,ASP使用ODBC经过ADO连接数据库,而Java经过一个叫JDBC的技术联接数据库。目标数据库需要一个JDBC驱动程序-一个数据库与Java的接口,使得Java能
31、够用标准的方式访问数据库。JDBC不使用服务器端的数据源。只要有JDBC驱动程序,Java就能够访问数据库了。如果一个特定的数据库没有JDBC驱动程序,而只有ODBC驱动程序,Java提供一个JDBC-ODBC桥来将JDBC调用转化为ODBC调用。所有的Java编译器都带有一个免费的JDBC-ODBC桥。理论上,桥能够访问任何常见的数据库产品。综上所述,采用JSP技术优越性上会更好。2Oracle数据库和SQL Server数据库比较随着信息技术的飞速发展,数据处理不但在数量上要求越来越大,而且在质量上也要求越来越高。Oracle数据库在大多数企业中受到广泛使用,而SQL Server数据库也
32、因为和Windows的联系,在企业中的使用也是非常广泛。操作系统的稳定对数据库来说是十分紧要的,在数据库可操作平台上,Oracle可在所有主流平台上运行,Oracle数据库采用开放的策略目标,它使得客户能够选择一种最适合她们特定需要的解决方案。客户能够利用很多种第三方应用程序、工具。对开发商来说是很大的支持。而SQL Server却只能在Windows上运行了,这个就显得比较单调了,但SQL Sever在Window平台上的表现,和Windows操作系统的整体结合程度,使用方便性,和Microsoft开发平台的整合性都比Oracle强的很多。但Windows操作系统的稳定性及可靠性大家是有目共
33、睹的,再说Microsoft公司的策略目标是将客户都锁定到Windows平台的环境当中,只有随着Windows性能的改进,SQL Server才能进一步提高。从操作平台这点上Oracle是完全优胜于SQL Server的了。SQL Server 是一个具备完全Web支持的数据库产品,提供了可扩展标记语言核心支持以及Internet上和防火墙外进行查询的能力,具有可伸缩性、灵活性、扩充性好,而且价格便宜等特点,而Oracle则有着可靠安全性,速度比SQL Server快上百倍,但其价格在实施中却比SQL Server它高出了几百倍。综上所述,Oracle和SQL Server各自有自己的优势,也
34、有各自的不足。但Oracle除了在价格上比较昂贵之外,别的优势都比SQL Server更明显。3B/S和C/S模式比较 (1) C/S模式是一种两层结构的系统,第一层在客户机上安装了客户机应用程序,第二层在服务器上安装服务器管理程序。在C/S模式的工作过程中,客户机程序发出请求,服务器程序接收而且处理客户机程序提出的请求,然后返回结果。C/S模式具有以下特点:1) C/S模式将应用与服务分离,系统具有稳定性和灵活性;2) C/S模式配备的是点对点的结构模式,适用于局域网,有可靠的安全性;3) 由于客户端实现与服务器端的直接连接,没有中间环节,因此响应速度快;4) 在C/S模式中,作为客户机的计
35、算机都要安装客户机程序,一旦软件系统升级,每台客户机都要安装客户机程序,系统升级和维护较为复杂。(2) B/S模式,即浏览器/服务器模式,是一种从传统的两层C/S模式发展起来的新的网络结构模式,其本质是三层结构的C/S模式。在用户的计算机上安装浏览器软件,在服务器上存放数据而且安装服务应用程序,服务器有WWW服务器和文件服务器等。用户经过浏览器访问服务器,进行信息浏览、文件传输和电子邮件等服务。B/S模式具有以下特点:1) 系统开发、维护、升级方便,每当服务器应用程序升级时,只要在服务器上升级服务应用程序即可,用户计算机上的浏览器软件不需要修改,系统开发和升级维护方便;2) B/S模式具有很强
36、的开放性,在B/S模式下,用户经过通用的浏览器进行访问,系统开放性好;3) B/S模式的结构易于扩展,由于Web的平台无关性,B/S模式的结构能够任意扩展,能够从包含一台服务器和几个用户的小型系统扩展成为拥有成千上万个用户的大型系统;4) 用户使用方便,B/S模式的应用软件都是基于Web浏览器的,而Web浏览器的界面是类似的。因此,用户使用起来就更加方便。从开发模式上来看B/S模式更加灵活,更加方便,因此开发上选用B/S模式会给用户带来更方便的体验。2.2.3 方案选择经过以上资料的对比,方案一中的JSP技术比ASP技术更加优越,同时B/S模式的开发也能更加方便、灵活,而数据库方面,Oracl
37、e数据库除了在价格上比较昂贵之外,别的优势都比较明显,经过这些资料的显示结果,并结合实际的开发现状和掌握的相关知识掌,最终选择方案一作为本次毕业设计的开发方案。第3章 需求分析3.1 系统用户分析在系统中根据用户不同的操作权限分为了管理员和医务人员两大类,同时医务人员又细分为门诊医生和前台医生。而对于系统的参与者还有一个病人,整个系统就是围绕病人,对其进行写病历,到病历的一些管理,而且能够对需要输出的病历进行打印输出。整个系统的顶级流图如图3.1所示。病人信息维护操作命令病历信息病历信息图3-1 顶级数据流图管理员医务人员电子病历管理系统 病人病历文档病历管理员: 负责科室管理、医生管理和以及
38、医院的密码管理操作。科室的管理包括科室的创立以及对已有科室的更新和删除操作;医生管理包括医生注册,以及医生信息的更新操作。而密码管理包括整个医院的医院密码的查询与更新,同时管理自己的管理员密码的更新操作。门诊医生: 负责给病人写病历,以及对本科室的病历的查询和修改操作,同时,对信息无误的病历进行归档操作。前台医生: 负责录入病人的信息,并对病人信息进行管理,包括查询、修改和删除操作,同时,对归档完成的病历,能够进行查询和打印的操作,而且,如果病历年限大于 ,能够对这些病历进行删除操作。3.2 功能需求分析3.2.1 系统的用例图设计首先管理员登录系统,然后能够进行医生管理、科室管理和密码管理三
39、种操作。医生管理是对本医院相关的医生进行查询修改,以及信息录入的操作;科室管理是对医院已有的科室进行查看和管理,包括修改信息,新建科室和删除科室等功能;密码管理是对整个医院的密码进行查询和定期更新操作,同时也能够修改自己的管理员密码。操作用例图如图3-2所示。图3-2 管理员操作用例图图3-3 门诊医生操作用例图门诊医生登录系统后,能够选择病人管理、病历管理和密码管理操作。病人管理是给该科室就诊的病人填写病历;病历管理是对填写好的病历进行修改、查看操作,而且对没有错误的病历进行归档操作;密码管理是对自己的登录密码进行修改操作。操作用例图如图3-3所示。如图3-4所示,前台医生登录系统后,能够选
40、择病人管理、病历管理和密码管理操作。病人管理包括将病人信息录入并选择科别,而且能够信息录入完成的病人信息进行查询、修改和删除;病历管理是对已经归档的病历进行查询,能够根据不同的条件选择不同的查询方式,同时对查询出来的病历进行打印输出操作,如果病历年限超过了 ,那么能够对这些病历进行删除操作;密码管理是将自己的登录密码进行修改操作。操作用例图如图3-5所示。图3-3 前台医生操作用例图3.2.2 系统类图分析实体类中分为医生、科室、病人和病历四类,医生和科室之间的关联关系是1个科室对应0到多个医生,病人和科室的关联关系是1个科室对应0到多个病人,而医生和病历间的管理关系是1个医生对应1张病历,病
41、人和病历的关系是1个病人对应1张病历,医生和病人间就经过病历联系在一起,1个医生能够对应0到多个病人,而1个病人只能对应1个医生,经过病历,能够更好的将这种关系实现出来,实体类之间的类图如图3-4所示。图3-4 实体类之间的类图同时系统采用的是JDBC项目开发的分层步骤,分为数据访问层(DAO)、业务层(service)和表示层(view),表示层调用业务层的方法实现某个功能,而业务层调用数据访问层的方法实现具体业务,数据访问层则是负责访问数据库,实现数据的添加、删除、修改和查询。其中的数据访问层和业务层的类图如图3-5所示。图3-5 业务调用时的类图3.3 运行环境规定3.3.1 用户界面该
42、系统采用JavaWeb技术的开发,用JSP作为用户界面,提供给用户的是以浏览器方式访问的客户端,界面风格简洁友好,适合大多数用浏览器上网操作的人群,以大众操作的方式给以用户操作,同时能够方便用户对病历的查询,给用户提供快捷使用的界面。3.3.2 设备要求该系统采用B/S结构开发,以MVC模式来实现界面,模型和控制器之间的跳转,同时以MyEclipse 作为开发工具,TOMCAT6.0作为服务器,数据库采用Oracle,因此,环境需求必须满足这些软件的需求。(1) 硬件环境根据当前的开发环境,拟定该系统采用PC机一台作为终端机(客户端和服务器在同一台计算机上)。PC机的基本要求如下:处理器(CP
43、U):酷睿i5 3500 3.40GHz主板:NEC L4A-3芯片组:英特尔 i915PM/GM 03内存:2 GB ( 尔必达 DDR2 800MHz )硬盘:西数 WDC WD2500BEVT-22ZCT0 ( 500 GB / 5400 转/分 )显卡:ATI Mobility Radeon HD 4500/5100 Series ( 512 MB / 精英 )(2) 软件环境该系统的开发为JavaWeb开发,因此会运用到相关的开发工具和对应的数据库来予以实现具体软件环境需求如下:操作系统:Windows XP/Windows 7Java编译环境:JDK1.6.0.10Web服务器:T
44、omcat6.0开发工具:MyEclipse 数据库:Oracle 10g3.4 性能需求该系统作为医院电子病历管理系统,负责提供给医院一个简单快捷的管理病历的系统软件。那么,在性能上就必须满足一定的用户需求才能达到该系统的特点。3.4.1 性能系统是面向用户所开发的,用户在使用时,必须达到相应的效率才能体现出该系统的优越性。首先,该系统能够使用局域网来进行访问,这样就不会因网络信号的质量来限制用户的访问传输率;其次,系统中采用分页查询技术,考虑到医院的信息量比较大,那么如果从总表中查询数据,访问那么速率将会受到极大的限制,而采用分页查询,的话每次取出的数据就是固定的条数,这样就减少了查询的时
45、间,从而提高了服务器的响应效率;最后,该系统采用连接池技术,就是在访问数据库时不许要创立连接,直接从连接池里取出连接对象进行连接操作,这样能够减少创立连接的时间,这时加上一个ThreadLocal对象将访问用户的线程和对应的连接绑定到一起,使多用户并发访问互不影响,这样就实现了医院里多个医生同时访问该系统的功能,而且数据互不影响,同时数据还能实现共享。3.4.2 可扩展性该系统是一个电子病历管理系统,着重突出了病历的管理方面,而门诊,配药等功能只是简单的实现或者没有予以实现,那么这些地方就能够和门诊系统和药品管理系统等系统结合,加以扩展,实现为一个完整的医院管理系统。因此该系统具备有效的扩展空
46、间,具有可扩展性。3.4.3 可用性在正常使用该系统的情况下,能够确保使用过程正确有效的执行,而且经过事务控制,把一套完整的操作作为一个事务,如果某个操作遇到突发事件,如断电等导致操作失败,那么事务将回滚到操作前,保证数据的完整性,避免在使用过程中发生各种异常情况而造成重大的损失。3.4.4 易用性该系统是以网页客户端的形式予以访问,只要用户会浏览网页就会操作该系统,界面简洁而且友好,能够为查询等相关操作提供方便,对于医院来说,运用该系统管理病历比传统方式管理病历更加优越,能够为医务人员节省大量的时间,因此该系统是非常实用的。3.4.5 安全性该系统采用密码验证登录功能,同时,设定了一条医院密码,该密码有管理员负责管理,能够定期更新,该医院的医务人员登录时需要提供该密码才能够登录。该系统加入了强制登录验证,如果用户登录后半小时内没有操作,那么该用户请求服务器的Session Id会失效,那么这时该用户还要操作里面的内容时,会自动跳转到登录界面,如果用户退出
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100