1 绪论
1.1 课题研究背景及意义
信息技术在不断发展,尤其是随着2000年后在中国兴起的互联网技术的不断发展,信息技术已经渗透进了商业以及生活的大多数领域,电子商务的普及与广泛应用因此也随之而来,社会的各个部门都逐渐步入了信息化管理的一个新时代。随着企业的生产模式从劳动密集型发展转变为技术密集型模式,企业只有利用现代化的科学管理技术来处理真实数据,才能提高竞争力。企业在这个信息迅速普及的时代,面对海量的信息数据,如何通过利用发达的信息技术快速、高效并且准确地对宝贵的信息资源进行整合,从而实现不仅降低企业的运营成本又能同时提高经济收益、提升服务品质的目标,继而能从根本上提高核心竞争力,已经成为现代化管理的核心所在。市场竞争日益激烈,越来越多的企业已经认识对数据实施信息化管理的必要性。
人们的工作以及生活方式因为计算机技术和数据库技术的不断发展发生了很大的改变。随着网络技术的发展应用,计算机之间互相通信和信息共享已经成为可能。数据库技术的应用发展则提供了数据存储、信息检索和信息分析处理等功能,从而使得人们的工作得以更高效率地进行。
在药品零售行业中,近年来,随着市场发展多元化的趋势,尤其是自动式服务市场的多元化趋势,开发一个运行可靠、能实时对销售药品数据进行采集,相对独立的web方式数据管理系统,并在此基础上探讨智能售药系统中数据的处理与分析,辅助企业经营决策显得尤为必要。
1.2 国内外研究现状
Web是一种典型分布式的应用架构。在Web应用中,每一次的信息交换都要涉及到两个层面,即客户端和服务端,所以,客户端技术和服务端技术这两大类可以称为Web开发技术。
20世纪80年代,Xerox PARC为Smalltalk-80编程语言发明了一种软件设计模式——MVC结构模式。 缑艳阳认为MVC将应用程序分成三个核心模块:模型、视图和控制器,它们分别处理不同的任务,主要目的是分离业务逻辑层和表现层[1]。Teb Husted,Cedric Dumoulin等学者在2003年提出:框架是可重用的半完成的应用程序,可用来产生专门的定制程序。框架一般具有即插即用的可重用性、成熟的稳定性以及良好的团队协作性[2] 。
2008年,刘胜利、寿永熙提出:框架是在设计和开发软件系统过程中的一个概念,强调对已经完成的设计和代码的重复使用。往往框架都是针对特定的应用领域,在对该领域应用层面上进行了深刻的理解之后抽象出该应用领域的概念模型,即形成一个有形或无形的框架。具体的应用根据自身的特点实现对框架中的概念进行抽象化,从而完成该应用的功能。基于J2EE标准的一些框架基本都封装了许多组类,这些类之间进行特定的相互协作,可以利用来解决一些通用的问题[3]。
2008年,北京工业大学的张曦硕士提出,在Web应用系统的开发领域中,竞争日趋激烈。产品寿命周期因为技术的不断进步和客户需求的多样化在不断缩短,给企业带来了缩短产品的开发周期,提高产品质量,降低生产成本和改进产品性能的压力[4]。面对不断变化的市场,这就要求企业能快速做出反应,根据客户的需求制定出个性化的产品,这样才能赢得竞争并且占领市场的一席之地。
北京交通大学的硕士谭欢表示,目前有很多企业采用基于Internet的应用构筑企业信息架构。作为现如今流行的分布式计算平台,J2EE已经成为了基于Web的企业应用的核心部分。Java服务器端的技术开发人员利用基于J2EE的Web企业开发框架提供的可重用的体系结构,可以便捷地使用Web开发技术并且专注于具体的业务逻辑。与此同时,B/S框架已然成为目前企业应用系统的主流开发体系[5]。B/S框架的使用不需要客户端安装任何系统软件,有良好的可扩展性、易用性和通用性。用户利用B/S框架可以实时发布信息,进行动态交互及安全灵活地连接后台系统。开发简便,功能强大且应用灵活的Web应用程序也因此成为了当前Internet技术发展的一个热点。2010年apache的一个开源的项目iBatis由apache software foundation迁移到了google code,并被改名为MyBatis 。
在医药方面,目前国外的数据仓储管理系统已经特别发达,使用电子计算机技术的历史已有30 多年。例如,在60 年代初的时候,美国的麻省总医院就已经研发并开始使用了COSTA 系统。COSTA系统一直沿用至今,管理着庞大的药房仓库信息、用药信息以及患者信息。此后,信息技术迅猛发展,因此美国、欧洲、日本等多个国家和地区的医院和药房都相继研发了自己的信息仓储管理系统,医药仓储管理系统也因此被带入了一个高速发展的新阶段。日本北里大学医院引入了大量的互联网技术,形成了不仅仅限于传统C/S模式的“ordering”模式,研发了新的网络系统,这一网络系统也得到了更加广泛的应用。与此同一时期,欧洲各国在迅速发展着各自的医药仓储管理系统。比如,丹麦的Red Systerm同时管理好几十家医院、诊所和药房,而法国的一体化信息管理系统Grenoble Integrated HIS也有着很好的发展与应用,这些都极大程度地推动了医药行业的发展[6]。
在我国,数据仓库技术随着计算机技术的逐渐发展和不断普及,也在我国也进入了快速发展时期,但是与发达国家相比还是存在着很大的差距[7]。国内的医药市场竞争日益激烈,药品市场的竞争也更为严酷。即使我国有部分企业已经逐步使用信息化仓储管理系统,例如海王星辰、荣华大药房以及长城药店等。但是国内目前还是缺乏足够成熟的数据仓库技术,因而出现了一种情况——“海量数据,信息缺乏”,即无法有效地利用海量的信息数据,这对企业来说无疑是很大的损失[8]。一些国内连锁的零售企业对数据仓库的需求越来越大,完备的信息管理系统和海量的存储数据都为数据仓库的建立创造了条件。有部分企业选择引进国外先进的数据仓库技术,也有部分企业自主研发数据仓库。更多的管理者已经意识到:只有通过建立数据仓库,才能对企业信息进行真正全面的了解,从而做出合理的规划与决策。
1.3 论文研究内容及组织结构
本论文设计并实现了一个基于B/S架构的药房数据管理系统,该系统实现了通过浏览器对药房门店进行简单的数据管理的功能,并尝试对药房数据进行大数据分析。本文共八个章节,各章节内容安排如下:
第一章,绪论。介绍了课题的研究背景及研究意义、目前国内外的研究发展现状、论文的主要研究内容以及文章的组织结构。
第二章:系统总体设计方案。分析了系统的开发目标和开发意义,对系统的实现做了可行性分析,并对药品管数据管理系统进行了需求分析,给出了系统的具体功能图。该项目需要实现对药材信息的管理功能,例如药材信息的增加、删除、查找、修改等。
第三章,数据挖掘的研究。着重研究数据挖掘中关联规则挖掘,分析了Apriori算法的挖掘步骤和具体流程图,给出了Apriori算法的挖掘示例。结合某省中医院的具体数据源,对药品间关联规则进行了仿真,得出结果。
第四章,数据库设计。首先对MySQL数据库以及它的设计原则进行了简要介绍,接着按照系统具体需求画出E-R模型图,对数据库进行了具体分析和设计,包括数据库的创建与表的设计。
第五章,基于B/S架构的功能设计。分别对JDK及环境变量配置,Tomcat服务器,和Eclipes项目开发进行了简要介绍,对系统所采取的框架(控制层框架spring MVC、持久层框架Mybatis、表现层框架EasyUI)进行了介绍,并将被广泛应用的Hibernate框架和Mybatis框架作了比较,并分析了各自的优缺点。接着,给出了系统详细设计。按照系统要求给出了系统结构原理图,并给出了搭建成功后,后台药品管理的基本页面。
2 系统总体设计
2.1 设计目标及意义
本系统把传统模式下人工方式的药材管理和处方管理的工作与现代化的计算机技术相结合相结合,设计并实现了一个对药房数据的管理系统。为了使系统在药材销售管理中发挥更大的作用,使工作过程计算机化,从而提高工作效率和工作质量,现提出以下系统开发目标:
(1)系统应该具有适用性、可靠性和实用性,同时注意到系统的先进性。
(2)系统对数据库能进行动态管理,防止混乱。
(3)能够按照用户提交的要求进行准确的操作。
(4)方便用户操作,尽量减少用户的手动操作。
在目前国内各大中小药房和医院,用计算机管理药房的药品信息的方式已经开始存在。用计算机技术不但可以提高工作效率,而且还节省了许多人力物力,增强了资料的安全性。
2.2 可行性分析
可行性研究的目的是在尽可能短的时间内用最小的代价来确定问题是否能够得到解决。
2.2.1 技术上可行性
使用java编程语言,系统因此可以运行在任何操作系统平台上。系统采用eclipse作为系统的开发工具,它提供完善的控制指令、丰富的数据类型及类与对象的支持,为开发高性能的系统提供了有力保障。它保证了代码的模块化要求,而代码模块化的提高,意味着对新系统的修改与扩展非常有利。综上,系统的设计与开发在硬件设备上和软件技术上的条件都是满足的。因此,本系统在技术上是可行的。
2.2.2 经济上可行性
目前计算机的价格已经十分低廉,计算机的一般操作也较简单,但是计算机的性能却有了长足的进步。而本系统的开发,能很大地提高工作效率,主要表现有以下几个方面:
(1)本系统的运行可以代替人工进行繁杂的记录工作;
(2)本系统的运行可以节省许多资源;
(3)本系统的运行可以提高工作效率;
所以本系统在经济上是可行的。
2.2.3 运行上可行性
本系统为一个中药管理系统,所耗费的资源非常的小,所以本系统在运行上是可行的。
2.3 系统需求分析
中心服务器包括Web服务器和SQL服务器两部分,分别与客户端、用户终端、数据库进行数据通信。用户终端通过PC、手机或平板电脑访问数据库管理系统。
图2.1 系统结构示意图
2.3.1 功能需求
系统由会员管理,管理者管理,药品信息管理及数据处理模块组成,各个模块要实现的功能简要介绍如下:
(1)会员管理模块
会员通过会员名和密码登录验证,可以进入会员管理系统。会员在会员管理系统中可以查询到属于会员的个人资料以及药品购买的历史记录。
(2)管理者管理模块
后台管理者通过管理员名称和相应的密码登录验证,即可以进入管理员管理系统。
(3)药品信息管理模块
后台管理中,需要对药品信息进行增、删、查、改等基本功能。
①添加新药材:管理员添加新的药材信息是用户添加一个数据库中还没有的药材信息。可能输入药材的各种信息,药材名称,价格,销量,库存等,点击保存键完成;
②删除药材信息:在分页显示药材信息的页面点击删除药材就可能删除一个药材信息,删除之前会跳出对话框确认是否删除,点击确认后对话框自动关闭;
③分页查看所有的药材信息:把数据库中的所有的药材信息分页显示出来;
④修改药材信息:在分页显示药材信息的界面上点击修改,就进入了药材修改界面,在这个面上可能对药材的信息改,点击保存更新按钮保存更新到数据库中。更新提交成功跳转到提示更新成功页面,然后会自动关闭该页面。
(4)数据处理模块
通过对大量历史处方数据进行关联规则算法分析,得到处方药品的内在相关性及频繁项集,优化仓库仓位。同时,在畅销药品库存量不足的情况下,提示门店库存信息,方便及时补货。通过关联规则算法的分析,对药品的配仓提出指导方案。
图2.2 系统基本功能图
本系统的主要特点是采用Web技术,借助于Internet互联网广泛应用技术,达到资源共享,提高以往人力资源管理的局限性,缩短人们的时间和提高工作效率,具有较好的交互性,从而实现信息化,规范化,系统化,网络化的平台,使整个管理过程简单、方便、易行。
本系统操作简单。合理的页面布局,使得所有的操作更简便。另外,跟踪出现的提示信息也让管理员随时清楚自己的操作情况。本系统即时可见。对操作的处理在页面的对应栏目显示出来,达到"即时操作、即时见效"的功能。
2.3.2 非功能需求
非功能需求主要分为性能上的需求和环境需求等等,下面就这两方面做一些分析。
① 性能需求:
性能需求的指标比较模糊,难以确切地定量描述,通常是指系统的稳定性、可靠性、无故障下的工作时间和障碍后恢复时间。这些性能指标并非考察系统能否实现某些要求,而是客观度量系统在工作时的及时性和有效性。
1)响应时间。响应时间是指在用户提交申请后系统的反应时间,一般情况下是指系统的所有功能的平均反应时间。通常一个系统的反应时间在1秒左右是不错的,超过5秒响应就比较不灵敏了。由于本系统是通过JSP编写的,对用户和浏览器的要求比较低,响应时间一般比较短,完全符合需求。
2)吞吐量。吞吐量是指在单位的时间内流经系统的数据量,在无并发的系统中,它与系统的响应时间成反比。由于本系统的响应时间很短,因此系统的吞吐量还是比较大的。
3)并发用户数。并发用户是指同时执行一个操作的用户,在不同开发情况下需求不同,在实际的测试中要根据实际情况进行设计。
4)资源利用率。它反映了系统在一段时间内资源占用的情况。数据量为1时,它等于资源被占用的时间与总时间的比值;数据量不为1时,它可以被表示为该段时间内平均被占用的资源数与总资源数目的比值。
② 软件环境
本系统的配置如下:
操作系统:Windows 7
网络协议:TCP/IP
Web服务器:Tomcat
数据库:MySQL
浏览器:Internet Explorer 5.0以上
2.4 本章小结
本章介绍了系统总体的设计方案。分析了系统的开发目标和开发意义,并对系统能否实现做了可行性分析。对药品数据管理系统进行了需求分析,包括系统的功能需求和非功能性需求,并且给出了系统基本功能图。