基于数据关联规则的医药管理系统的分析与设计.docx
《基于数据关联规则的医药管理系统的分析与设计.docx》由会员分享,可在线阅读,更多相关《基于数据关联规则的医药管理系统的分析与设计.docx(51页珍藏版)》请在冰豆网上搜索。
基于数据关联规则的医药管理系统的分析与设计
1.概述...........................................................1
1.1课题的研究意义...............................................1
1.2课题的研究背景...............................................1
1.2.1我国医药零售企业的发展现状..............................1
1.2.2关联规则技术在数据挖掘中的应用现状.....................2
1.2.3电子信息技术在医药零售企业中的应用现状................3
1.3课题的研究内容...............................................3
2.系统分析......................................................4
2.1医药管理信息系统分析........................................4
2.1.1医药管理信息系统需求分析.................................4
2.1.2数据流程分析...............................................5
2.1.3数据字典...................................................7
2.2基于关联规则的医药零售数据挖掘方法分析...................9
2.2.1数据挖掘流程...............................................9
2.2.2基于关联规则的数据挖掘算法..............................9
2.2.3数据关联规则在医药零售数据中的应用分析...............13
3.系统设计.....................................................15
3.1医药信息管理系统开发平台设计.............................16
3.1.1系统开发软件平台.........................................16
3.1.2系统开发硬件平台.........................................16
3.2医药信息管理系统功能模块设计.............................16
3.2.1功能结构设计..............................................16
3.2.2功能模块说明..............................................17
3.3数据库设计..................................................18
3.3.1逻辑设计..................................................19
3.3.2数据库表设计..............................................19
3.3.3数据库连接代码设计.......................................23
3.4代码设计.....................................................23
3.5系统界面设计................................................24
3.6安全性设计..................................................27
4.系统实现.....................................................28
4.1程序设计.....................................................28
4.2系统测试.....................................................33
5.总结..........................................................33
1概述
1.1课题的研究意义
许多医药零售企业因为不能记录药品销往单位,无需填制销售凭证,在手工管理下无法分类统计客户群。
另外还有些大型零售医药公司的药品销售,由于品种种类较多,库存数量及结构变动性较强,在手工操作条件下,营业员不仅经销药品,同时经营货款,极容易出现款货黑洞[1]。
针对以上手工管理医药零售企业普遍存在的问题,课题开发的腾龙医药管理系统可分类统计客户群,可对某类客户做一标识。
对大流量的数据进行收集,既可收款迅速准确,又强化了前后台管理;同时收款机作为销售前哨,可为后台提供准确无误的信息;后台软件进行加工、处理、分析、统计,从而实现人、财、物、购、销、存一体化管理。
医药零售企业对于销售品种、货源单位的选择极为重视,腾龙医药管理系统将每种药品的经营状况与货源单位对应,将每笔业务各环节的处理对应到各岗位的每位员工。
腾龙医药管理系统提供的不仅仅是一套收款系统,同时也是一套智能考核货源单位和员工业绩的管理型软件。
在企业引入管理信息系统的背景下,我们同时也意识到企业信息化的最大效益来自信息的最广泛共享、最快捷的流通和对信息进行深层次的挖掘。
因此,信息化建设中的根本性问题,不是通信网络、计算机选型、建设网站等问题,而是如何将分散、孤立的各类信息变成网络化的信息资源并进行整合,实现信息的快捷流通和共享[2]。
信息资源是企业最重要的资源之一,开发信息资源既是企业信息化的出发点,又是企业信息化的归宿。
在信息化建设过程中,建设高质量的数据体系,是开发企业信息资源、建立全面支持企业信息化运行的IT资源平台的基本工作。
因此数据分析技术已经成为企业应用关注的一个焦点,但由于历史原因,大部分人对传统的统计分析和新的数据挖掘技术都不太了解,存在着许多模糊认识[3]。
数据体系的设计目标是规范、标准、可控、支持高效数据处理和深层数据分析的数据结构以及稳定、统一的数据应用体系及管理架构。
近年来,随着信息产业的急剧发展,数据大量地产生和被搜集,使得传统的数据管理方法不能有效地使用这些数据为企业服务。
因此本课题基于腾龙医药管理系统介绍的关联规则的数据挖掘技术将会启发更多的医药零售企业利用已有数据为自己服务。
1.2课题的研究背景
1.2.1我国医药零售企业的发展现状
长期以来,由于药品的特殊性,我国医药流通领域一直采用“统购包销、逐级调拨”的流通管理模式,严格控制药品的流通。
医疗体制僵化使医院成为药品销售的终端[4]。
进入20世纪90年代末以后,随着改革开放的进一步深化,医药零售行业的严格管制开始松动,这些为国内医药零售业带来了难得的发展机遇。
2000年以来,我国针对医药零售业出台了几大政策:
《处方药和非处方药分类管理办法》的出台,百姓的用药消费从医院向药店分流,使得在药品零售中,医院所占市场份额约85%,药店所占市场份额约为15%;我国对外资放开医药分销服务业,外商可以在我国从事采购、仓储、配送、批发、零售及售后服务;国家有关部门首次取消了对跨省市办医药连锁店的限制,连锁药店成为众多医药零售企业开展服务的基本途径;药店定址“零距离”的规定,药店之间可以紧挨着开,有实力的药店可以凭借其服务质量等优势开展平等竞争[5]。
时代在进步,社会在发展,居民生活水平不断提高的同时健康意识也有了十足的进步,人们开始追求健康、便利、实惠。
公费医疗并不能全民普及的今天,自费医疗的公众更愿意在大中型药店、连锁店,他们认为在医院购买除了要交纳药品费用之外,还要交纳其他的费用,如:
挂号费、处方费、处置费等,附加费用较高。
为了了解目前公众购买药品的场所及考虑的因素,中国消费报社和中国社会调查所在全国范围内联合进行了一项全国药品销售的调查,发现人们对药品的售后服务也提出了更高的要求:
送药上门、健康讲座、家庭医生等[6]。
药品零售市场作为我国医药健康产业中,市场化程度最高的板块,十多年来发展迅速。
医院已不再是人们购买药品的首选,这为医药零售企业提供了前所未有的机遇与挑战,改革开放的逐步推进,同时也给我国医药零售企业带来了来自全世界的挑战,信息化不足,经营理念落后,利润太低等[7]。
1.2.2关联规则技术在数据挖掘中的应用现状
数据挖掘就是从大量的数据中提取或挖掘知识,就是应用一系列技术从大型数据库或数据仓库中提取人们感兴趣的信息和知识。
这些知识或信息是隐含的,事先未知而潜在有用的,提取的知识表示为概念、规则、规律、模式等形式[8]。
也可以说,数据挖掘是一类深层次的数据分析,数据挖掘应该更正确地命名为从数据中挖掘知识。
关联规则是如下形式的逻辑蕴涵:
A→B,其中A.B是项集,A∈I,B∈I,A∩B=Ф。
一般用两个参数描述关联规则的属性。
关联规则数据挖掘的一个典型例子是购物篮分析。
市场分析员要从大量的数据中发现顾客放入其购物篮中的不同商品之间的关系。
如果顾客买牛奶,他也购买面包的可能性有多大?
什么商品组或集合顾客多半会在一次购物时同时购买?
例如,买牛奶的顾客有80%也同时买面包,或买铁锤的顾客中有70%的人同时也买铁钉,这就是从购物篮数据中提取的关联规则。
关联规则挖掘是数据挖掘研究的一个重要分支,关联规则是数据挖掘的众多知识类型中最为典型的一种[9]。
自从提出关联规则挖掘的概念之后,人们对它的研究从来没有停止过,不但在理论上对它进行了卓有成效的分析和研究,而且在实践上也提出了不少有效的算法,为关联规则挖掘的理论和应用奠定了基础。
主要研究的关联规则算法有:
搜索算法、多循环力式的挖掘算法、深度优先算法,其中最为经典的算法是Apriori算法[10]。
关联规则挖掘在数据挖掘中是一个重要的课题,从大量商务事务中发现有趣的相关联系,有助于许多商务决策的制定,如分类设计、交叉销售和顾客购买习惯分析等。
近几年随着电子信息技术的广泛应用,关联规则挖掘已经广泛应用于如:
企业销售管理系统,通过一定的关联规则制定营销策略;超级市场销售管理系统,进行商品货架设计、货存安排以及根据购买模式对用户进行分类;图书管理系统,从读者的大量借阅信息中挖掘出各学科之间的关联程度,从而科学地进行建议借阅和图书推荐等服务,在一定程度上可以辅助图书馆的购书工作、教师的教学工作以及优化图书馆藏布局[11]。
1.2.3电子信息技术在医药零售企业中的应用现状
“创造在市场竞争中不可取代位置”的企业才能够生存下来。
而企业要建立不可取代的位置,很重要的一点就是要有比别人更快获取和处理资讯的能力[12]。
正是意识到这一点,在竞争如此激烈的医药零售业中,不少医药零售企业采用了电子信息技术。
电子商务成为企业展开竞争的一种手段与竞争优势,医药产业作为国民经济的支柱产业,与互联网经济相结合,即开展电子商务已是必不可挡的趋势。
全球最大的20家制药业现已开展电子商务,通过电子商务医药零售企业可以减少其在采购、销售环节中的交易层次,减少寻找交易信息的时间,大幅度降低交易成本[13]。
例如,我国成功的民生医药电子商务网,通过这种方式企业拓宽了销售渠道。
同时,传统的制药企业面对电子商务的滚滚大潮,发展企业自身信息化是首要任务。
在中国有这样一个特点,电子商务名词概念先于电子商务的应用和发展,是先进的网络和电子技术推动企业电子商务的应用与发展。
实际上,企业的电子商务的发展程度很大一部分取决于企业自身信息化的程度,有相应的信息化水平,才能应用相应的电子商务。
信息化水平并不取决于企业拥有多少台计算机,而是企业通过计算机能够得到多少有用的信息[14]。
因此很多医药零售企业内部也采用了管理信息系统,来进行药品、人员、客户信息管理。
1.3课题的研究内容
在本课题中主要探讨的内容是医药零售企业内部管理信息系统的设计与实现以及基于数据关联规则的数据挖掘技术在此医药管理系统中的应用分析。
通过分析医药零售企业独特的营销特点来设计出合适的管理信息系统。
本课题为腾龙企业设计实用的管理系统,完成销售管理、进货管理、库房管理、财务管理、客户信息管理、企业人员信息管理、药品信息管理、供应商信息管理。
以设计出来的腾龙医药管理系统的事务数据库为基本,应用关联规则的数据挖掘算法,通过数据预处理、设置数据源等有序步骤,得到概率和正确性较高的一些关联规则,帮助医药零售企业进行合适的药品货架设计、货存安排以及根据购买信息对用户进行分类。
2系统分析
2.1医药管理信息系统分析
2.1.1医药管理信息系统需求分析
医药零售企业分为两种形式,一是纯正的零售药店,另外一种是连锁企业下属的零售分店[15],医药零售企业的业务流程如图2-1所示。
图2-1业务流程图
顾客购货顾客选中所要购买的商品后,由柜台营业员开出小票,顾客持单到收款处交款。
计算机系统记录下此次销售信息。
顾客凭POS机上打印出的交款单到柜台取货。
顾客购货过程结束。
如果柜台上的同一种药品具有两个不同的批号,营业员在售货时应该严格按照批次在先的药品先销售的原则。
顾客退货一般情况下,退货时,顾客要声明退货原因并出示POS机上打出的“收款单”,凭此“收款单”查找历史销售记录,确认货物是本店售出的,并对药品进行质量检查。
同意退货后,在计算机系统中做一笔负销售。
对退回来的货,无论其质量情况如何,均按负出库处理,有质量问题的再作报废或退货处理。
通过对以上两种医药零售企业形式的销售业务流程考察后,需要了解企业的应用需求,表2-1列出了医药零售企业主要的功能需求。
表2-1主要功能需求
序号
名称
主要内容
输入数据
输出数据
1
药品管理
药品名称、标识、产地等其他相关的信息;
药品进、销、存明细账;
药品在后库的上下限控制;
药品在货架的补货临界;
药品消费对象的采集、管理;
药品销售以及入库记录;等等
查询关键字
药品列表
2
供应商的管理
药品供应商单位的档案信息;
从各供应单位购进药品的销售、库存情况;
供应单位的应付款及结算明细账;等等。
查询关键字
供应商信息列表
3
员工管理
各员工的档案资料维护与管理;
各员工定岗、定责与系统处理权限的对应关系;
各员工在组织机构中的隶属关系;
各员工工作业绩的统计、考核;等等。
查询关键字
员工信息列表
4
财务管理
药品销售总额;
药品退货总额;
药品入库总额;
核算报表制作与打印;
药品销售支出
财务报表
2.1.2数据流程分析
销售药品
提供药品
回执
回执
图2-2腾龙医药管理信息系统顶层DFD
医药管理
信息系统
客户
X
供应商
由以上的业务流程分析得出医药管理信息系统的顶层数据流程图如图2-2:
腾龙医药管理信息系统第一层DFD如图2-3:
客户
供应商
腾龙医药管理信息系统第二层DFD—库房管理DFD如图2-4:
药品
订购药品
X1.1
X1.2
仓库名称
订单处理
D6
库存管理
供应商
入库单
D7
客户
D8
出库单
库存
D9
X1.3
订单
D10
结算管理
报表
D11
图2-4腾龙医药管理信息系统第二层DFD
腾龙医药管理信息系统底层DFD如图2-5:
X1.1.1
入库管理
供应商
反馈
X1.1.2
仓位查询
仓库名称
D6
X1.1.4
入库单
D7
库存查询
X1.1.3
库存盘点
出库单
D8
D9
X1.1.5
库存
入库退货管理
图2-5腾龙医药管理信息系统底层DFD
2.1.3数据字典
数据字典是关于数据的信息集合,也就是对数据流程图中包含所有元素定义的集合。
具体来讲,它是对数据流程图中的数据项、数据结构、数据流、数据存储、处理逻辑的定义和描述。
数据项的描述:
数据项是数据的最小单位,具有逻辑不可再分性。
表2-2表示对数据元素“仓库名称”的描述。
表2-2仓库名称描述
编号
dm-01
标识符
SPDJ
名称
仓库名称
别名
库名
含义
存储药品的仓库识别标志
类型
数值型
长度
20
值域
0~99999999999.9
数据结构的描述:
数据元素在系统中以满足某种应用的要求组合在一起,构成了一定的数据结构。
例如将药品信息的组合以“药品标识”来命名,表2-3表示“药品标识”的数据结构。
表2-3药品标识描述
编号
S-01
名称
药品标识
含义
标识药品实体
组成
药品名称+药品编号+简称+单位
相关数据流
药品入库单、药品出库单、药品销售信息
相关处理逻辑
药品信息管理、药品销售管理、财务统计
数据流描述:
在数据字典中,可以对数据流程图中由外部项输入到系统中的数据流和从系统输入到外部项的数据流进行描述,表2-4表示对“药品入库单”的描述。
表2-4药品入库单描述
编号
L-01
名称
药品入库单
含义
仓库药品的入库信息
数据流来源
库房管理模块
数据流去向
药品入库单
组成
仓库名称、药品名称、数量、金额
流通量
2份/天
高峰流通量
10份/天
数据存储描述:
在数据字典中,只描述数据存储的逻辑存储结构,而不涉及其物理结构。
表2-5表示对“药品信息”的描述。
表2-5商品信息描述
编号
C-01
名称
药品信息
含义
存储药品的基本信息
组成
药品基本信息、药品入库日期
关键字
入库日期、药品编号、药品名称
备注
填表人:
杨江涛日期:
2006年5月18日
处理逻辑的定义与描述:
数据字典对数据流程图中的处理逻辑进行了简单的描述。
表2-6表示对“库房管理”的描述。
表2-6订单管理描述
编号
XS02.1
名称
库房管理
简述
管理库房药品情况,包括库存药品查询、库房盘点、库房报表
输入
出入库药品信息与出入库药品数量、库房名称
处理
1)根据输入库房名称进行库房盘点
2)根据输入的药品名称进行各仓库内药品查询,进行采购与销售决策
3)管理员可以根据库房盘点生成库房报表
输出
库存药品信息、库房报表
2.2基于关联规则的医药零售数据挖掘方法分析
2.2.1数据挖掘流程
数据挖掘是指从存放在数据库、数据仓库或其他信息库中的大量数据中挖掘有用知识的过程。
对数据挖掘的理论研究主要在以下六个方面:
OLAP技术、面向属性的归纳法、关联规则、分类和预测、聚类和与数据仓库的集成技术[16]。
数据挖掘分为描述性和预测性两类。
描述性数据挖掘提供数据的一般规律;预测性数据挖掘产生关于数据的预测。
数据挖掘的五项主要内容有[17]:
关联分析:
寻找数据项之间的关联关系[18]。
演变分析:
描述时间序列数据随时间变化的数据的规律或趋势,并对其建模。
包括时间序列趋势分析、周期模式匹配等。
聚类分析:
根据最大化类内的相似性、最小化类间的相似性的原则将数据对象聚类或分组。
分类分析:
找出描述并区分数据类的模型,以便能够使用模型预测给定数据所属的数据类。
异常分析:
一个数据集中往往包含一些特别的数据,其行为和模式与一般的数据不同,这些数据称为“异常”。
对“异常”数据的分析称为“异常分析”。
数据挖掘的过程一般由五个步骤组成[19],具体过程如图2-6所示。
数据
图2-6数据挖掘过程
2.2.2基于关联规则的数据挖掘算法
关联规则作为数据挖掘中的一种技术,描述了交易数据集DB中两组不同项目之间存在的某种关联关系[20]。
关联规则定义的形式化描述如下:
给定一个交易数据库DB,I={I1,I2,…Im}为DB中m个不同交易事务集合,其中每个事务T是项的集合,使得T∈I。
每一个交易事务有一个唯一的标识,记作TID。
定义1k项集定义为项集中包含的项的个数,集合{A1,A2,…,Ak}称为k项集。
定义2若A,B为项集,A∈I,B∈I,并且A∩B=Φ。
则形如A→B的表达式称为关联规则。
定义3支持度S。
即任务相关的事务占总交易事务的百分比,表达为:
S(A→B)=P(A∪B)。
定义4规则A→B具有可信度C,即在DB中包含A的事务同时也包含B的百分比,表达为C(A→B)=P(B/A)=P(AB)/P(A)。
如买面包又买牛奶的顾客占买面包顾客中的90%,可信度C为90%。
定义5设最小支持度为Smin,k频繁模式集和k非频繁模式集分别定义为:
Lk={A1∩,A2∩…∩Ak|Ai∈i,(i=1,2,□,k),S(A1∩A2∩□∩Ak/DB)≥Smin};Lk={Al∩A2∩□∩Ak|Ai∈i,(i=1,2,□,k),S(A1∩A2∩□∩Ak/DB)为了在DB中挖掘有效的关联规则,必须首先定义最小支持度Smin和最小可信度Cmin,关联规则的挖掘就是在DB中寻找满足S(A∪B/DB)≥Smin和C(A→B/DB)≥Cmin的所有关联规则A→B。
挖掘关联规则关键在于寻找频繁项集。
关联规则挖掘是数据挖掘研究的一个重要分支,是数据挖掘的众多知识类型中最为典型的一种。
关联规则挖掘研究成为数据挖掘中的一个热点,并被广泛应用于市场营销、事务分析等应用领域。
关联规则挖掘算法是关联规则挖掘研究的主要内容,迄今为止已提出了许多高效的关联规则挖掘算法[21]。
发现关联规则的任务就是要找出满足预先指定的频率和精度标准的所有规则。
关联规则挖掘的一个经典算法是Apriori算法[22],Apriori算法的核心思想是把发现关联规则的工作分为两步:
第一步通过迭代检索出事物数据库中的所有频繁项集,即满足支持度大于或等于最低支持度的项集;第二步从频繁项集中构造出满足信任度大于或等于用户最低信任度的规则。
挖掘或识别所有频繁项集是Apriori算法的核心,占整个计算量的大部分。
为了生成所有频繁项集,使用了递推的方法。
项的集合,称为项集(itemsets)。
项集中所包含的项的个数称为项集的长度,长度为k的项集称为k-项集。
包含项集的事务数,称为项集的频率或支持计数。
当项集的支持计数≥min_sup×n时,称为频繁项集;当项集的支持计数可能≥min_sup×n时,称为候选顶集。
(n为D中事务总数)。
所有频繁k-项集的集合记作Lk,所有候选k-项集的集合记作Ck,显然Lk∈Ck。
其核心思想简要描述如下[23]:
即挖掘频繁项集
L1={find-frequent-1-itemsets};//挖掘1-频繁项集
for(k=2;Lk-1≠φ;k++)dobegin
Ck=apriori-gen(Lk-1);//调用apriori-gen方法生成候选k-项集
foralltransactionst∈Ddobegin//扫描事物数据库D
Ct=subset(Ck,t);//事务t中包含的候选集
forallcandidatesc∈Ckdo
c.count++;//统