门诊管理信息系统

目 录

摘要

Abstract

1、引言

1.1 研究现状

1.2 主要研究的目的及内容

1.3 研究方法及设计思路

1.3.1 研究方法

1.3.2 设计思路

2、应用需求分析与可行性分析

2.1 应用需求分析

2.2 运行需求分析

2.3 其他需求分析

2.4 可行性分析

2.4.1经济可行性

2.4.2技术可行性

2.4.3 运行可行性

2.4.4 时间可行性

2.4.5 法律可行性:

2.5 系统开发步骤

3、相关技术简介

3.1 JSP

3.2 SQLServer2000数据库

3.3 JDBC

3.4 B/S模式分析

4、系统分析

4.1 系统实现目标

4.2 系统体系结构

4.3 主控流程图

4.4 系统ER

5、系统设计

5.1 概要设计

5.2 系统结构设计

5.3 详细设计

5.3.1 管理员登录界面

5.3.2 管理员设置

5.3.3 患者挂号

5.3.4 门诊看病页面

5.3.6 诊断处方页面

5.3.7 付费、取药页面

5.3.6 药房管理页面

6系统调试与测试

6.1 程序调试

6.2 程序的测试

6.2.1 测试的重要性及目的

6.2.2 测试的步骤

6.2.3 测试的主要内容

结束语

致谢

参考文献

摘要

当今社会己进入信息社会时代,信息己经受到社会的广泛关注,被看作社会和科学技术发展的三大支柱(材料、能源、信息)之一。信息是管理的基础,是进行决策的的基本依据。在一个组织里,信息己作为人力、物力、财力之外的第四种能源,占有重要的地位。然而,信息是一种非物质的,有别于基本资源的新形式的资源。信息也是管理的对象,必须进行管理和控制。

医院门诊管理信息系统是将IT技术用于医院门诊信息的管理, 它能够收集与存储医院门诊的病人信息档案,提供更新与检索医院门诊信息档案的接口;协助医院提高工作效率。

系统采用JSP为编程语言。论文主要介绍了本课题的开发背景,所要完成的功能和开发的过程。重点的说明了系统设计的重点、设计思想、难点技术和解决方案。

关键词:医院  门诊管理信息系统  JSP   系统开发

Abstract

Today's society has entered the era of the Information Society. Information has been subject to widespread concern in the community, be seen as social and scientific and technological development of the three pillars of the (materials, energy, information). Information management is the basis for decision-making is a fundamental basis. In an organization, has information as human, material and financial resources outside of the fourth energy, played an important role. However, the information is a non-material, which is different from the basic resources in the form of new resources. Information management is also the target must be to manage and control.

   Out-patient hospital management information system is to IT technology for hospital out-patient information management, it can collect and store information on the patient's hospital out-patient files, and provide updated information on the file retrieval of the out-patient interface; to help hospitals improve efficiency.

   JSP system for the programming language. The main thesis describes the development background of this issue, to be completed by the function and development. Note the key focus of system design, design ideas, technical difficulties and solutions.

Key words: hospital Out-patient management information system

 JSP  System Developmen

1、引言

1.1 研究现状

随着科技发展和社会进步,尤其是计算机大范围的普及,计算机应用逐渐由大规模科学计算的海量数据处理转向大规模的事务处理和对工作流的管理,这就产生了以台式计算机为核心,以数据库管理系统为开发环境的管理信息系统在大规模的事务处理和对工作流的管理等方面的应用,特别是在医院门诊信息管理之中的应用日益收到人们的关注。

近年来我国医疗事业发展迅速,手工管理方式在医院门诊信息管理等需要大量事务处理的应用中已显得不相适应,采用IT技术提高服务质量和管理水平势在必行。目前,对外开放必然趋势使医疗行业直面外国同行单位的直接挑战,因此,医院必须提高其工作效率,改善其工作环境。这样,医院门诊信息管理的信息化势在必行。

在传统的医院门诊信息管理中,其过程往往是很复杂的,繁琐的,医院门诊信息管理以患者挂号、诊治、开药为核心,在此过程中又需要经过若干道手续,因为整个过程都需要手工操作,效率十分低下,且由于他们之间关联复杂,统计和查询的方式各不相同;且会出现信息的重复传递问题,因此该过程必须实现信息化。

我们的系统开发的整体任务是实现医院门诊信息管理的系统化、规范化、自动化和智能化,从而达到提高医疗单位管理效率的目的。

1.2 主要研究的目的及内容

本课题的目的是使医院门诊信息管理清晰化,透明化,便于操作,易于管理。通过功能模块的优化组合实现不同的管理细节,使管理过程实现最大程度的自动化与信息化,并能自动对人工操作环节进行复查,使医院门诊管理信息系统出错率降至最低。在传统的医院门诊信息管理中,各种管理工作往往是很复杂烦琐的。医院门诊信息管理的特点是信息处理量比较大,所管理的种类比较繁多,而且由于挂号、开药等单据发生量特别大,关联信息多,查询和统计的方式不尽相同。在管理过程中经常会出现信息的重复传递,因此医院门诊信息管理必须实现计算机化处理。我们系统开发的总体任务是实现医院门诊信息管理的系统化、规范化、自动化、信息化与智能化,从而达到提高医院门诊信息管理效率的目的。

1.3 研究方法及设计思路

1.3.1 研究方法

医院门诊信息管理是医院业务流程过程中十分重要且必备的环节之一,在医院业务流程当中起着承上启下的作用,其重要性不言而喻。但是,目前许多医院在具体的业务流程处理过程中仍然使用手工操作的方式来实施,不仅费时、费力,效率低下,而且无法达到理想的效果。针对上述问题,采用软件工程的开发原理,依据软件流程过程规范,按照需求分析、概要设计、详细设计、程序编码、测试、软件应用、软件维护等过程开发了一个医院门诊管理信息系统。采用JSP作为开发工具,结合微软公司的sqlserver2000数据库,数据库设计遵循3范式,主要设计了患者基本信息表、医生基本信息表、药品基本信息表、管理系统的用户口令表等数据表。解决了医院门诊管理信息系统中存在的数据安全性、数据一致性以及系统运行速度等问题。

1.3.2 设计思路

(1)系统应符合医院门诊信息管理的规定,满足医院相关人员日常使用的需要,并达到操作过程中的直观,方便,实用,安全等要求;

(2)系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充,维护; 

(3)系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改、备份等操作; 

(4)尽量采用现有软件环境及先进的管理系统开方案,从而达到充分利用现有资源,提高系统开发水平和应用效果的目的。

2、应用需求分析与可行性分析

伴随着医疗事业的蓬勃发展和人们对保健意识的增强,医院门诊部门的的工作也越来越繁重,原来的医院门诊管理信息系统已经不能完全满足相关人员使用的需要。为了协助医院开展门诊工作,提高工作效率,充分利用医院的现有资源,开发更好的医院门诊管理信息系统势在必行。

医院门诊管理信息系统是将IT技术用于医院门诊信息的管理, 它能够收集与存储患者信息,提供更新与检索病例的接口;协助医院开展门诊医疗工作提高工作效率。

医院门诊管理信息系统采用B/S结构、结合网络数据库开发技术来设计本系统。开发语言采用JSP,数据库使用Microsoft公司的SQLServer2000数据库。完成以下基本功能:患者挂号,门诊看病,处方,付费,取药管理、数据增加、删除、修改和保存、查询等功能

医院门诊管理信息系统具有标准医院门诊管理信息系统所具有的现实中完整的门诊医疗步骤,完全的虚拟现实实现。真正实现节约资源、提高效率、业务处理的同时真正实现医院门诊管理信息系统的功能作用。

1) 挂号:需要登录验证(登录一次就可进行多次操作,除非注销登录),可挂专家号,普通号或急诊,填写病人信息后存储并发送到病人要求看病的科室,其中有些字段应该是自动生成,比如挂号序号,挂号操作人员姓名,挂号费,挂号日期。

2门诊看病与处方:需要登录验证(登录一次就可进行多次操作,除非注销登录),接收到从挂号处发送的病人信息(如果病人是第二次看病,需要显示病人第一次的信息,病例,第二次的信息也要显示),看病后医生写下病例存储起来,然后开药存储并发送到药房。

3付费与取药:需要登录验证(登录一次就可进行多次操作,除非注销登录),药房收到医生开处药品的信息,显示药品的相关信息,结算各金额,总金额,记录药品销售信息,对药品每天销售信息汇总,列出销售前十的药品信息,药品出入库记录。

4 后台数据维护功能后台管理主要是对患者的信息管理,通过对数据库的更新来修改用户密码等。

2.1 应用需求分析

服务器

硬件

处理器:Intel 酷睿

内 存:512M 或更大

硬 盘:120G 或更大

软件

Microsoft Windows XP

Microsoft ACCESS

Microsoft IIS 6.0 或更高版本

Microsoft Office 2003

客户机

硬件

无特殊要求,只要能上连接互联网即可

软件

Microsoft Windows XP 

Microsoft IE 6.0 或更高版本

系统的性能要求通常指系统需要的存储容量以及后援存储,重新启动和安全性,运行效率等方面的考虑。

硬件系统环境:Core 5600、1G MB(RAM)、120GB(HD)。系统运行时对数据的保密性要求不高对一般的数据不要求进行加密。此外,对其它软件几乎没有依赖性,程序健壮性较好

2.2 运行需求分析

硬件条件:酷睿 CPU、1G RAM、10G硬盘以上的PC机;打印机;局域网。

软件条件:Windows XP  IE6.0以上

2.3 其他需求分析

本系统有较好的可维护性、可靠性、可理解性、效率。易于用户理解和操作。可维护性包括了可读性、可测试性等含义。可靠性通常包括正确性和健壮性。开发过程中,在各种矛盾的目标之间作权衡,并在一定的限制的条件下(经费、时间、可用的软、硬件资源等),使上述各方面最大限度的得到满足。

2.4 可行性分析

2.4.1经济可行性

经济可行性研究是对组织的经济现状和投资能力进行分析,对系统建设运行和维护费用进行估算,对系统建成后可能取得的社会和经济效益进行估计。由于本系统是作为毕业设计由我们自己开发的,在经济上的投入甚微,系统建成之后将为今后医院门诊信息管理提供很大的方便,估算新系统的开发费用和今后的运行、维护费用,估计新系统将获得的效益,并将费用与效益进行比较,看是否有利。开发、运行和维护费用主要包括:

购买和安装设备的费用:计算机硬件、系统软件、 机房、电源、空调等;

软件开发费用:若由实习单位的技术人员开发,则该项费用可以计入下面的人员费用一项;人员费用:系统开发人员、操作人员和维护人员的工资、培训费用等;消耗品费用:系统开发所用材料、系统正常运行所用消耗品,例如水、电费,打印纸、软盘、色带等开支。所有开支都不大,所以经济上是可行的。

2.4.2技术可行性

技术可行性要考虑现有的技术条件是否能够顺利完成开发工作,软硬件配置是否满足开发的需求等。医院门诊管理信息系统用的是JSP开发语言,调试相对简单,当前的计算机硬件配置也完全能满足开发的需求,因此在技术上是绝对可行的。软件方面:由于目前BS模式软件相对发展成熟,故软件的开发平台成熟可行,它们速度快、容量大、可靠性能高、价格低,完全能满足系统的需求。

2.4.3 运行可行性

对新系统运行后给现行系统带来的影响(包括组织机构、管理方式、工作环境等)和后果进行估计和评价。同时还应考虑现有管理人员的培训、补充,分析在给定时间里能否完成预定的系统开发任务等。

运行可行性是对组织结构的影响,现有人员和机构和环境对系统的适应性及人员培训补充计划的可行性。当前我国信息化技术已经相当普及,各类操作人员水平都有相当的高度,所以在运行上是可行性的。

本系统的开发,是典型的Mis开发,主要是对数据的处理,包括数据的收集,数据的变换,及数据的各种报表形式的输出。采用流行的JSP+sqlserver2000体系,已无技术上的问题。

2.4.4 时间可行性

从时间上看,在两个月的时间里学习相关知识,并开发医院门诊信息管理系统,时间上是有点紧,但是不是不可能实现,通过两个多月的努力功能应该基本实现。

2.4.5 法律可行性:

① 所有技术资料都为合法。

② 开发过程中不存在知识产权问题。

③ 未抄袭任何已存在的医院门诊信息管理系统,不存在侵犯版权问题。

④ 开发过程中未涉及任何法律责任。

综上所述,本系统的开发从技术上、从经济上、从法律上都是完全可靠的。

2.5 系统开发步骤

一般说来,管理信息系统的建立与应用可以划分成总体规划、系统开发和系统运行三个阶段,其中系统开发阶段还可进一步分为系统分析、系统设计和系统实施等工作环节。上述各个阶段排列成一个严格的线性开发序列,在每个工作阶段均产生完整的技术文档作为下一阶段工作的指导和依据,每一阶段都应对文档进行评审,确信该阶段工作已完成并达到要求后才能进入下一阶段,同时在以后的工作中不能轻易改变前面经过评审的成果。

上述开发方式的主要优点是便于开发工作的组织和管理,并且可大大降低管理信息系统开发的复杂性。国内外许多系统开发的实例都证明这是一种行之有效的开发方式。

国外曾有人对一些软件项目开发各阶段的工作量进行了统计,结果表明,在开发过程中各工作阶段所占全部工作量的比重分别达到系统分析:系统设计:编程:模块调试:系统调试=20%:15%:20%:25%:20%。由此可见,程序编写在开发工作中只占很小比例,而调试工作却占整个开发工作量的一半左右,因此“系统开发就是编程”的习惯说法显然是片面的。另据统计,在建立管理信息系统的三个阶段中,总体规划和系统开发阶段的工作量约占整个工作量的2/3,而运行、维护阶段要占1/3,这说明一个管理信息系统开发后,仍应十分重视它的维护工作,以便使系统不断完善并充分发挥其作用。

3、相关技术简介

3.1 JSP

JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。 用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。 JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。

JSP主要优先如下:

1)一次编写,到处运行。在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改。

(2)系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比JSP/PHP的局限性是显而易见的。

(3)强大的可伸缩性。从只有一个小的war文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。

(4)多样化和功能强大的开发工具支持。这一点与JSP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。

3.2 SQLServer2000数据库

SQLServer2000最初的开发者的意图是用SQLServer2000和他们自己的快速低级例程(ISAM)去连接表格。不管怎样,在经过一些测试后,开发者得出结论:SQLServer2000并没有他们需要的那么快和灵活。这导致了一个使用几乎和SQLServer2000一样的API接口的用于他们的数据库的新的SQL接口的产生,这样,这个API被设计成允许为用于SQLServer2000而写的第三方代码更容易移植到SQLServer2000。

SQLServer2000的概述

SQLServer2000是一个关系型数据库管理系统,开发者为美国Microsoft公司。目前SQLServer2000被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了SQLServer2000作为网站数据库。

SQLServer2000的特性

1.使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性

2.支持Mac OS、Windows等多种操作系统

3.为多种编程语言提供了API。这些编程语言包括C、C++、Eiffel、Java、Perl、Python、Ruby和Tcl等。

4.支持多线程,充分利用CPU资源

5.优化的SQL查询算法,有效地提高查询速度

6.既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名

7.提供TCP/IP、JDBC和JDBC等多种数据库连接途径

8.提供用于管理、检查、优化数据库操作的管理工具

9.可以处理拥有上千万条记录的大型数据库

SQLServer2000的应用

与其他的大型数据库例如Oracle、DB2等相比,SQLServer2000自有它的不足之处,如规模小、功能有限等,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,SQLServer2000提供的功能已经绰绰有余。

SQLServer2000管理

可以使用命令行工具管理SQLServer2000数据库,也可以使用sqlserver自带的企业管理器来进行管理,界面友好,操作简单。

SQLServer2000存储引擎

master      SQLServer2000的默认数据库,最为常用。拥有较高的插入,查询速度,但不支持事务

InnoDB      事务型数据库的首选引擎,支持ACID事务,支持行级锁定

BDB         源自Berkeley DB,事务型数据库的另一种选择,支持COMMI和ROLLBACK等其他事务特性

Memory      所有数据置于内存的存储引擎,拥有极高的插入,更新和查询效率。但是会占用和数据量成正比的内存空间。并且其内容会在SQLServer2000重新启动时丢失

Merge       将一定数量的MyISAM表联合而成一个整体,在超大规模数据存储时很有用

Archive     非常适合存储大量的独立的,作为历史记录的数据。因为它们不经常被读取。Archive拥有高效的插入速度,但其对查询的支持相对较差

Federated   将不同的SQLServer2000服务器联合起来,逻辑上组成一个完整的数据库。非常适合分布式应用

Cluster/NDB 高冗余的存储引擎,用多台数据机器联合提供服务以提高整体性能和安全性。适合数据量大,安全和性能要求高的应用

CSV         逻辑上由逗号分割数据的存储引擎

BlackHole   黑洞引擎,写入的任何数据都会消失

另外,SQLServer2000的存储引擎接口定义良好。有兴趣的开发者通过阅读文档编写自己的存储引擎。

SQLServer2000最常见的应用架构

单点(Single),适合小规模应用

复制(Replication),适合中小规模应用

集群(Cluster),适合大规模应用。

3.3 JDBC

JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯 Java API 编写数据库应用程序,同时,JDBC也是个商标名。

有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBC ,就不必为访问access数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBC写一个程序就够了,它可向相应数据库发送SQL调用。同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。

Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法。JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据库连接标准,如JDBC之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。

3.4 B/S模式分析 

C/S模式主要由客户应用程序(Client)、服务器管理程序(Server)和中间件(middleware)三个部件组成。客户应用程序是系统中用户与数据进行交互的部件。服务器程序负责有效地管理系统资源,如管理一个信息数据库,其主要工作是当多个客户并发地请求服务器上的相同资源时,对这些资源进行最优化管理。中间件负责联结客户应用程序与服务器管理程序,协同完成一个作业,以满足用户查询管理数据的要求。

B/S模式是一种以Web技术为基础的新型的MIS系统平台模式。把传统C/S模式中的服务器部分分解为一个数据服务器与一个或多个应用服务器(Web服务器),从而构成一个三层结构的客户服务器体系。

第一层客户机是用户与整个系统的接口。客户的应用程序精简到一个通用的浏览器软件,如Netscape Navigator,微软公司的IE等。浏览器将HTML代码转化成图文并茂的网页。网页还具备一定的交互功能,允许用户在网页提供的申请表上输入信息提交给后台,并提出处理请求。这个后台就是第二层的Web服务器。

第二层Web服务器将启动相应的进程来响应这一请求,并动态生成一串HTML代码,其中嵌入处理的结果,返回给客户机的浏览器。如果客户机提交的请求包括数据的存取,Web服务器还需与数据库服务器协同完成这一处理工作。

  第三层数据库服务器的任务类似于C/S模式,负责协调不同的Web服务器发出的SQ请求,管理数据库。

B/S模式首先简化了客户端。它无需象C/S模式那样在不同的客户机上安装不同的客户应用程序,而只需安装通用的浏览器软件。这样不但可以节省客户机的硬盘空间与内存,而且使安装过程更加简便、网络结构更加灵活。假设一个企业的决策层要开一个讨论库存问题的会议,他们只需从会议室的计算机上直接通过浏览器查询数据,然后显示给大家看就可以了。甚至与会者还可以把笔记本电脑联上会议室的网络插口,自己来查询相关的数据。其次,它简化了系统的开发和维护。系统的开发者无须再为不同级别的用户设计开发不同的客户应用程序了,只需把所有的功能都实现在Web服务器上,并就不同的功能为各个组别的用户设置权限就可以了。各个用户通过HTTP请求在权限范围内调用Web服务器上不同处理程序,从而完成对数据的查询或修改。现代企业面临着日新月异的竞争环境,对企业内部运作机制的更新与调整也变得逐渐频繁。相对于C/S,B/S的维护具有更大的灵活性。当形势变化时,它无须再为每一个现有的客户应用程序升级,而只需对Web服务器上的服务处理程序进行修订。这样不但可以提高公司的运作效率,还省去了维护时协调工作的不少麻烦。如果一个公司有上千台客户机,并且分布在不同的地点,那么便于维护将会显得更加重要。

再次,它使用户的操作变得更简单。对于C/S模式,客户应用程序有自己特定的规格,使用者需要接受专门培训。而采用B/S模式时,客户端只是一个简单易用的浏览器软件。无论是决策层还是操作层的人员都无需培训,就可以直接使用。B/S模式的这种特性,还使 MIS系统维护的限制因素更少。

最后,B/S特别适用于网上信息发布,使得传统的MIS的功能有所扩展。这是C/S所无法实现的。而这种新增的网上信息发布功能恰是现代企业所需的。这使得企业的大部分书面文件可以被电子文件取代,从而提高了企业的工作效率,使企业行政手续简化,节省人力物力。

鉴于B/S相对于C/S的先进性,B/S逐渐成为一种流行的MIS系统平台。各软件公司纷纷推出自己的Internet方案,基于Web的财务系统、基于Web的ERP。一些企业已经领先一步开始使用它,并且收到了一定的成效。 B/S模式的新颖与流行,和在某些方面相对于C/S的巨大改进,使B/S成了MIS系统平台的首选。本系统也采用B/S结构开发。

4、系统分析

4.1 系统实现目标

系统主要实现:挂号,门诊看病,处方,付费,取药等功能,

挂号:需要登录验证(登录一次就可进行多次操作,除非注销登录),可挂专家号,普通号或急诊,填写病人信息后存储并发送到病人要求看病的科室,其中有些字段应该是自动生成,比如挂号序号,挂号操作人员姓名,挂号费,挂号日期。

门诊看病与处方:需要登录验证(登录一次就可进行多次操作,除非注销登录),接收到从挂号处发送的病人信息(如果病人是第二次看病,需要显示病人第一次的信息,病例,第二次的信息也要显示),看病后医生写下病例存储起来,然后开药存储并发送到药房。

付费与取药:需要登录验证(登录一次就可进行多次操作,除非注销登录),药房收到医生开处药品的信息,显示药品的相关信息,结算各金额,总金额,记录药品销售信息,对药品每天销售信息汇总,列出销售前十的药品信息,药品出入库记录。

信息管理:需要登录验证(登录一次就可进行多次操作,除非注销登录),挂号操作人员信息的增删改查,病人信息的管理,病人病例的管理,医生信息的增删改查,科室信息的增删改查,药品信息的增删改查,病人取药信息的管理等。

4.2 系统体系结构

在系统功能分析的基础上,做系统功能模块图如下: 

4.3 主控流程图

            

  

                     

      

    

4.4 系统ER

5、系统设计

本系统不仅要求功能完善,而且还要界面友好,因此,对于一个成功的系统设计,功能模块的设计是关键。

5.1 概要设计

在系统需求分析阶段,搞清楚了软件“做什么”的问题,形成了目标系统的逻辑模型。现在我们所要做的就是要把软件“做什么”的逻辑模型变换为“怎么做”的物理模型,即着手实现系统的需求。首先,我们需要描述的是系统的总的体系结构。

5.2 系统结构设计

系统的概要设计中最重要的就是系统的模块化。模块化是指解决一个复杂问题时自项向下逐层把软件系统划分成若干个模块的过程。每个模块完成一个特定的功能,所有的模块按某种方法组织起来,成为一个整体,完成整个系统所要求的功能。

将系统划分为多个模块是为了降低软件系统的复杂性,提高可读性、可维护性,但模块的划分不能是任意的,应尽量保持其独立性。也就是说,每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单,即尽量做到高内聚低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。

在系统的概要设计中采用结构化设计以需求分析阶段产生的数据流图为基础,按一定的步骤映射成软件结构。首先将整个系统化分为几个小问题,小模块,在系统中,设计了挂号、门诊看病、开药、付费取药以及药品管理等管理模块。然后,进一步细分模块,添加细节。

5.3 详细设计

5.3.1 管理员登录界面

对于一个完整的医院门诊管理信息系统,不仅要求功能强大、操作简单,还要有良好的设计风格和另人爽目的界面。登录界面对于整个系统来说是非常重要的,因为它设置了进入本系统的用户和口令,防止非法用户进入系统,破坏系统安全和所保存的数据,只有合法的管理员在输入正确的密码后方可进入系统,否则将提示密码或用户名输入错误,并询问用户是否重新输入。这样就对使用者有了限制,增加了系统的安全性和保密性,便于控制和管理,有利于系统的维护。

主要代码如下:

<table border="1" width="400" style="background-color: #B7C1EE; top: 146px; height: 165px; color: #333;" cellspacing="0" cellpadding="0">

<tr>

<td width="17%" align="right">用户名:</td>

<td width="23%">   <input class="input7" type="text" name="name" size="18"/></td>

</tr>

<tr>

<td width="17%" align="right">密  码:</td>

<td width="23%">   <input class="input7" type="password" name="pwd" size="20"/></td>

</tr>

<tr>

<td colspan="2" align="center"><input class=buttonlog type=submit value="登 录" name=submit>  <a href="qiantai/reg.jsp">注 册</a></td>

</tr>

</table>

5.3.2 管理员设置

系统管理模块是本系统中一个基础的部分,在本模块中包括管理员对自身密码的重新设置,可以定时更换密码,确保资料的安全。增加了系统的安全性和保密性,便于控制和管理。

主要代码如下:

<table border="0" width="800" align="center" background="img/MainBg.gif" height="494">

<tr>

<td valign="top">

<table id="table2" style="width: 100%; border-left: 1px solid #7BD676; border-right: 1px solid #7BD676; border-top: 11px solid #7bd676; border-bottom: 1px solid #7BD676; margin: 0; padding: 0" cellSpacing="1" cellPadding="0">

<tbody style="margin: 0; padding: 0">

<tr class="rb">

<td class="pl" width="726" align="center" colspan="2" height="40">

<a href="admin/modifypwd.jsp">修改密码</a>   

<a href="admin/modifyname.jsp">修改用户名</a>   

<a href="admin/adduser.jsp">添加系统用户</a>   

<a href="admin/adminlist.jsp">系统用户管理</a>

</td>

</tr>

<tr class="ry">

<td class="pl" width="335" align="right">

<span style="color: #874604">用 户 名:</span></td>

<td style="font-size: 13px; line-height: 24px !important; font-style: normal; font-variant: normal; font-weight: normal; font-family: 宋体; border: 0 none; margin: 0; padding: 0" width="456" align="left">

<input type="text" name="name" size="20"></td>

</tr>

<tr class="rb">

<td class="pl" width="335" align="right">

<span style="color: #874604">密    码:</span></td>

<td style="font-size: 13px; line-height: 24px !important; font-style: normal; font-variant: normal; font-weight: normal; font-family: 宋体; border: 0 none; margin: 0; padding: 0" width="456" align="left">

<input type="password" name="pwd" size="20"></td>

</tr>

<tr class="ry">

<td class="pl" width="335" align="right">

<span style="color: #874604">重复密码:</span></td>

<td style="font-size: 13px; line-height: 24px !important; font-style: normal; font-variant: normal; font-weight: normal; font-family: 宋体; border: 0 none; margin: 0; padding: 0" width="456" align="left">

<input type="password" name="cpwd" size="20"></td>

</tr>

<tr><td colspan="2" align="center"><input type="submit" value="添加"/></td></tr>

</table>

</td>

</tr>

</table>

5.3.3 患者挂号

本模块主要实现患者挂号功能,只有挂号后才可以进行其他如门诊看病等操作。如下图所示:

5.3.4 门诊看病页面

本模块主要实现在医生登录后对病人门诊看病功能。如下图所示:

5.3.6 诊断处方页面

主要实现医生登录后在线开处方、开药功能,如下图所示:

代码略。

5.3.7 付费、取药页面

本模块主要实现患者付费、药房付药功能。如下图所示:

5.3.6 药房管理页面

本模块主要实现医院对药房药品信息的管理,包括药品信息的出库、入库、增删改查等操作。如下图所示:

6、系统调试与测试

6.1 程序调试

在设计系统的过程中,存在一些错误是必然的。对于语句的语法错误,在程序运行时自动提示,并请求立即纠正,因此,这类错误比较容易发现和纠正。但另一类错误是在程序执行时由于不正确的操作或对某些数据的计算公式的逻辑错误导致的错误结果。这类错误隐蔽性强,有时会出现,有时又不出现,因此,对这一类动态发生的错误的排查是耗时费力的。

6.2 程序的测试

6.2.1 测试的重要性及目的

(1)测试的重要性

对于软件来讲,不论采用什么技术和什么方法,软件中仍然会有错。采用新的语言、先进的开发方式、完善的开发过程,可以减少错误的引入,但是不可能完全杜绝软件中的错误,这些引入的错误需要测试来找出,软件中的错误密度也需要测试来进行估计。测试是所有工程学科的基本组成单元,是软件开发的重要部分。自有程序设计的那天起测试就一直伴随着。统计表明,在典型的软件开发项目中,软件测试工作量往往占软件开发总工作量的40%以上。而在软件开发的总成本中,用在测试上的开销要占30%到50%。如果把维护阶段也考虑在内,讨论整个软件生存期时,测试的成本比例也许会有所降低,但实际上维护工作相当于二次开发,乃至多次开发,其中必定还包含有许多测试工作。

在实践中,软件测试的困难常常使人望而却步或敷衍了事,这是由于对测试仍然存在一些不正确的看法和错误的态度,这包括:

① 认为测试工作不如设计和编码那样容易取得进展难以给测试人员某种成就感;

② 以发现软件错误为目标的测试是非建设性的,甚至是破坏性的,测试中发现错位是对责任者工作的一种否定;

③ 测试工作枯燥无味,不能引起人们的兴趣;

④ 测试工作是艰苦而细致的工作;

⑤ 对自己编写的程序盲目自信,在发现错误后,顾虑别人对自己的开发能力的看法。

这些观点对软件测试工作是极为不利的,必须澄清认识、端正态度,才可能提高软件产品的质量。

(2)测试的目的

如果测试的目的是为了尽可能多地找出错误,那么测试就应该直接针对软件比较复杂的部分或是以前出错比较多的位置。

① 软件测试是为了发现错误而执行程序的过程;

② 测试是为了证明程序有错,而不是证明程序无错误;

③ 一个好的测试用例是在于它能发现至今未发现的错误;

④ 一个成功的测试是发现了至今未发现的错误的测试。

这种观点可以提醒人们测试要以查找错误为中心,而不是为了演示软件的正确功能。但是仅凭字面意思理解这一观点可能会产生误导,认为发现错误是软件测试的唯一目,查找不出错误的测试就是没有价值的,事实并非如此。

首先,测试并不仅仅是为了要找出错误。通过分析错误产生的原因和错误的分布特征,可以帮助项目管理者发现当前所采用的软件过程的缺陷,以便改进。同时,这种分析也能帮助我们设计出有针对性地检测方法,改善测试的有效性。其次,没有发现错误的测试也是有价值的,完整的测试是评定测试质量的一种方法。

6.2.2 测试的步骤

与开发过程类似,测试过程也必须分步骤进行,每个步骤在逻辑上是前一个步骤的继续。大型软件系统通常由若干个子系统组成,每个子系统又由若干个模块组成。因此,大型软件系统的测试基本上由下述几个步骤组成:

(1)模块测试 在这个测试步骤中所发现的往往是编码和详细设计的错误。

(2)系统测试 在这个测试步骤中发现的往往是软件设计中的错误,也可能发现需求说明中的错误。

(3)验收测试 在这个测试步骤中发现的往往是系统需求说明书中的错误。

6.2.3 测试的主要内容

为了保证测试的质量,将测试过程分成几个阶段,即:代码审查、单元测试、集成测试、确认测试和系统测试。

(1)单元测试

单元测试集中在检查软件设计的最小单位—模块上,通过测试发现实现该模块的实际功能与定义该模块的功能说明不符合的情况,以及编码的错误。

(2)集成测试

集成测试是将模块按照设计要求组装起来同时进行测试,主要目标是发现与接口有关的问题。如一个模块与另一个模块可能有由于疏忽的问题而造成有害影响;把子功能组合起来可能不产生预期的主功能;个别看起来是可以接受的误差可能积累到不能接受的程度;全程数据结构可能有错误等。

(3)确认测试

确认测试的目的是向未来的用户表明系统能够像预定要求那样工作。经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是确认测试的任务,即软件的功能和性能如同用户所合理期待的那样。

(4)系统测试

软件开发完成以后,最终还要与系统中其他部分配套运行,进行系统测试。包括恢复测试、安全测试、强度测试和性能测试等。

单独对系统的测试主要从以下几方面入手:

① 功能测试:测试是否满足开发要求,是否提供设计所描述的功能,是否用户的需求都得到满足。功能测试是系统测试最常用和必须的测试,通常还会以正式的软件说明书为测试标准。

② 强度测试及性能测试:测试系统能力最高实际限度,即软件在一些超负荷情况下功能实现的情况。

③ 安全测试:验证安装在系统内的保护机构确实能够对系统进行保护,使之不受各种非常的干扰。针对本系统主要是对权限系统的测试和对无效数据、错数据、和非法数据干扰的能力的测试。

(1)  测试案例的内容

周期:测试时间域。

层次:测试的层面。

类型:测试的分类。

系统:测试何系统。

分系统: 测试何分系统。

模块: 测试何模块。

平台: 测试的环境。

描述: 对测试问题说明与叙述。

目的: 测试的目标与期望。

此外,还包括测试文档号、测试设置、输入条件、测试结果和期望结果。

(2) 测试案例与脚本

1)测试案例与脚本设计主要包括以下内容:

检查集成测试策略

制定测试数据目的和性能目标

找出关键测试条件

检查已有的在线测试脚本

输入或抓取在线测试脚本

检查已有的用于测试的数据

生成测试数据

检查重要的数据

执行测试数据和测试脚本

2)本系统测试案例如下:

只有系统的测试工作在用户的协助下,不断的修改,才能达到完善的预期目标。本医院门诊信息管理系统系统经过初步测试,基本上达到目标。

结束语

几个月来忙碌紧张而又有条不紊的毕业设计,使我有机会对本专业的基本理论、专业知识和基本技术有了更深入的了解和体会,使我在四年中所学到的知识得到了系统和升华,真正达到了学以致用。

对管理信息系统的体会

管理信息系统是一门融管理科学、信息科学、系统科学、计算机科学与现代通信技术为一体的一门综合性边缘学科。它是运用系统的方法以计算机和现代通信技术为基本信息处理手段和工具的,能为管理决策提供信息服务的人—机系统.它可以实现数据处理功能、预测功能、计划功能、控制功能和辅助决策功能。管理信息系统的开发是一项复杂的系统工程,必须严格的按照系统规划、系统分析、系统设计、系统实施、系统运行与评价的开发步骤来进行。

在系统开发之前,必须了解该系统的特点、适用范围以及使用者需要一个什么样的系统,以此作为基础为开发系统准确定位,然后对使用者所需实现的功能进行分析总结,根据使用者的实际要求来给系统设计一个初步方案。系统的开发不仅是要实现对数据处理的及时与正确,而且要考虑系统是否具有控制功能,及时将数据反馈给操作者,以进行监测和协调,保证系统的正常运行;也要考虑是否具有预测功能,运用一定的数学方法利用历史的数据对未来进行预测的工作。

设计实践上的体会

在设计的过程中,我掌握了很多JSP的编程知识,并对这种成熟并广泛应用的技术进行了深入的学习。设计的过程也是一个再学习的过程,在遇到问题的时候我尽量自己想办法解决,这在很大程度上激发了我们的自学能力;在没有办法解决的情况下,认真的向老师请教,从老师那里我学到了很多的知识,老师对我的指导起到了画龙点睛的作用。

以往我们曾经有过多次设计的体会,但只是设计一个模块或一个小系统,而这一次毕业设计是综合所学的管理和计算机的知识来设计一个适合运行管理的门诊信息管理系统。要想设计使用户满意,就需要我们付出更多的努力。我在设计中经常出现一些问题不知该如何解决,在此时许多同学给予了我们帮助。在设计的过程中增加了于实际接触的机会,不仅培养了我的自学和编程能力,让我在即将离开学校进入社会之前有了一定的资本,提高了我与人沟通的能力。

程序设计中的体会

在我的程序设计过程中,我充分的体会到了“实践出真知”这一点,书本上的知识是不够的,只有把理论与实践相结合才能够真正的学到知识。一个管理信息系统的设计,不可能一步到位,还需要不断的完善和补充。同时,系统中还存在许多问题,有待在日后的使用中发现和解决。编程前的深思熟虑是减少程序调试工作量的重要方法,只有进行充分考虑,才会减少调试过程中的工作量。虽然在开始写程序之前我们做了多的准备工作,但在真正的写程序时仍然发现许多问题,有些问题是分析时的疏漏,有些则是如果不做无论如何也想不到的。

致谢

在本次毕业设计过程中,得到了指导老师的指导与支持。在此特别感谢指导老师的大力帮助。指导老师的悉心指导和大力支持,在总体结构、功能的把握上给予了非常大的帮助,同时根我们提供了非常优越的设计环境,并对我在编程、数据库设计等细节工作上给予了耐心的指导,对于我们小组顺利完成这次毕业设计起到了关键性的作用。

另外和我同组同学大家始终团结协作,努力拼搏,增强了我的团队意识,并且我们接下了深厚的友谊,我们自始至终在一种愉快的气氛中学习工作。此次毕业设计对提高我的编程技术、协调团队成员的关系等方面都由许多益处。在此我一并向他们表示感谢。我还要感谢我的母校,以及在大学四年生活中给予我关心和帮助的老师和同学,是他们教会了我专业的知识和做人的道理。通过这次毕业设计我还明白了作为一名计算机专业的大学毕业生,我们要会的不仅仅是编写代码,更重要的是要有整体把握系统设计的能力。我会在以后的工作和学习中不断完善自己,为我最热爱的母校争光,为自己翻开辉煌的新篇章。

转眼间,大学生活即将结束,回首过去四年的大学生活,真是有苦也有乐,然而更多的则是收获,感谢母校的各位老师不但无私地传授给我们知识,也教会了我们如何做人。管理信息系统专业的毕业设计任务繁重,但正是在这几个月紧张而充实的设计中,我感到自己的知识得到了一次升华,我相信:我的毕业设计会给我的四年大学画上一个圆满的句号。

21世纪已经到来了,在新的世纪里,人们自然对未来有许多美好的愿望和设想。现代科学技术的飞速发展,改变了世界,也改变了世界的生活。作为新世纪的大学生,应当站在世界的发展前列,掌握现代科学技术知识,调整自己的知识结构和能力结构,以适应社会发展的要求。新世纪需要具有丰富现代科学知识、能够独立解决面临任务、有创新意识的新型人才。

参考文献

[1]孙卫琴,李洪成.《Tomcat 与 Java Web 开发技术详解》.电子工业出版社,2003年6月:1-205

[2]BruceEckel.《Java编程思想》. 机械工业出版社,2003年10月:1-378

[3]FLANAGAN.《Java技术手册》. 中国电力出版社,2002年6月:1-465

[4]孙一林,彭波.《Java数据库编程实例》. 清华大学出版社,2002年8月:30-210

[5]LEE ANNE PHILLIPS.《巧学活用HTML4》.电子工业出版社,2004年8月:1-319

[6]飞思科技产品研发中心.《JSP应用开发详解》.电子工业出版社,2003年9月:32-300

[7]耿祥义,张跃平.《JSP实用教程》. 清华大学出版社,2003年5月1日:1-354

[8]孙涌.《现代软件工程》.北京希望电子出版社,2003年8月:1-246

[9]萨师煊,王珊.《数据库系统概论》.高等教育出版社,2002年2月:3-460

[10]Brown等.《JSP编程指南(第二版)》. 电子工业出版社 ,2003年3月:1-268     

[11]清宏计算机工作室.《JSP编程技巧》. 机械工业出版社, 2004年5月:1-410   

[12]朱红,司光亚.《JSP Web编程指南》.电子工业出版社, 2001年9月:34-307      

[13]赛奎春.《JSP工程应用与项目实践》. 机械工业出版社, 2002年8月:23-294

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

等天晴i

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值