资源描述
57基于J2EE体系的连锁企业供应链管理系统(SCM)分析与设计目 录1引言11.1连锁企业SCM系统现状以及存在的问题11.2J2EE体系的国内外最新研究与应用31.3基于J2EE的连锁企业SCM系统研究现状41.4论文的主要工作和研究思路62连锁企业SCM系统分析72.1连锁企业SCM系统的特点72.2连锁企业SCM系统的需求分析92.3连锁企业SCM系统业务逻辑112.4运用J2EE技术设计SCM系统113连锁企业SCM系统设计133.1多个独立MIS系统的信息集成与发布133.2系统实现原理和拓扑图设计153.3基于中间件的多层系统结构183.4SCM系统模块分析223.5数据库的逻辑设计和物理设计304 SCM系统软件结构设计334.1多类型用户界面Java程序的一般设计模式及存在的问题34MVC模型的引入354.3结合J2EE对MVC模型的改进364.4模型的建立384.5新模型在SCM系统结构设计中的应用395系统的开发和部署415.1J2EE小组开发模式415.2EJB组件的开发和部署435.3Web应用的集成和发布436结论446.1本文的主要工作与成果456.2尚待解决的问题的讨论46参考文献47附录一50附录二541 引言 1.1 连锁企业SCM系统现状以及存在的问题经过十几年的发展,我国连锁经营取得长足的进步,目前全国连锁企业达家,店铺数达万个,年销售总额达亿元。尤其是近年来发展迅猛,全国连锁企业数、店铺数均增加了倍多,连锁企业销售额的增长速度已远远高于社会商品零售总额的增长速度,占社会商品零售总额的比重已从年的.增加到目前的.。1一个行业的高速而健康发展,必然离不开现代化技术和管理的支持。连锁行业以规模优势取胜,它的高速增长,急需配套管理制度和信息技术的强劲支持,尤为急缺的是建立在现代信息技术基础之上的统一采购和配送技术。2连锁企业通常要对90%以上的商品选择中央采购制度,由总部的采购部门或授权的配送中心负责整个企业大部分商品的采购,商品的引入与淘汰、价格制定及促销计划也完全由连锁企业总部统一规划实施。各店铺的销售信息及库存资料需及时、准确、分类地向总部传递,总部必须对商品的购、销、存、退、调等信息进行连续分析,以便使总部采购商品的品种、结构、数量符合各店铺的销售需要。由此看到,虽然中央采购制度带来了集中议价、降低商品采购成本的好处,但对企业的业务配合、信息传递、商品配送提出了更高的要求。 连锁企业集中采购后的商品质检、计量、储运、分拣是在总店的仓储环节中进行的,一般由配送中心负责。而配送中心的中心库存和配送能力必须与店铺的销售相适应,既要保证不出现断货,又要尽可能减少各店铺和中心的库存。减少库存不仅是出于财务管理上减少资金占压的需要,而且也是为了降低配送成本,提高仓库库容利用效率。据调查,我国连锁企业普遍采用单店经营时的仓库作业流程,配送成本较高,影响作业的效率。这是我国连锁企业目前亟待解决的另一个难题4-6。这些难题的解决方案都集中在供应链管理(SCM)系统之上,拥有一个高效的、先进的、稳定安全的供应链管理系统是国内连锁企业在与国外连锁巨头们竞争中发展、取胜的基石。目前国内连锁企业SCM系统的现状是:各连锁企业门店不同程度实现了基于Intranet的POS/MIS系统,但门店和门店之间、门店和总部之间,总部和供应商之间基本上还处于信息孤岛状态。无法实现信息共享,统一采购和统一配送技术也相当落后,而且,各连锁企业对SCM系统的认识和利用水平有限,大多数企业并没有自身独立的SCM系统,而只是依据MIS系统提供的部分信息来决定自己的采购计划。既耗费了大量的人力时间成本,更不用谈实现真正意义上的实时经营,有效降低库存成本。这种经营模式必然产生以下问题:71) 信息孤岛。总部与分店、分店与分店之间无法实现信息实时交换,企业集团化管理困难。2) 业务重复、力量分散。每个分店都需要一批人与供应商洽谈业务,造成人力资源浪费,同时企业无法充分发挥集团采购的优势,享受最大折扣率。3) 商场与供应商之间信息渠道不畅通,供应量效率低。一方面供应商无法及时获取商品销售、库存情况;另一方面,商场无法获取最新最全的商品供应信息,在一定程度上影响双方的经营效率。加入WTO后,面对国外连锁巨头们也已成熟的全球化供应链管理系统,国内连锁企业也可以说处于技术上的竞争劣势。国内连锁企业最终要实现商务的信息化、电子化,实现实网和虚网、外网和内网的统一。POS和MIS相对是封闭的,只有走向外网,通过互联网走向社会,才能与供应商和客户真正携起手来。这就是供应链管理系统的意义所在。将来的便利店就是网络公司,只有与网络完全融为一体,才会降低成本,快捷准确地实现交易,未来的连锁企业将成为冲破传统观念的高科技企业8-9。综上所述,对构建连锁企业供应链管理系统的研究有其现实意义和巨大的经济意义。名词解释:连锁企业:(Chain Store)经营若干同行业或同业态的店铺,以同一商号、统一管理或授予特许经营权方式组织起来,共享规模效益的经营组织。10供应链(Supply Chain):供应链是围绕核心企业,相互间通过提供原材料、零部件、产品、服务的厂家、供应商、零售商等组成的网络10。供应链管理 (Supply Chain Management) SCM:供应链管理是以同步化、集成化生产计划为指导,以各种技术为支持,尤其以Internet/Intranet 为依托,对供应链中的信息流、物流和资金流进行设计、规划和控制,从而增强竞争实力,提高供应链中各成员的效率和效益。111.2 J2EE体系的国内外最新研究与应用J2EE是由SUN引导,各厂商共同发起的,并得到广泛认可的工业标准。业内企业计算领域的大企业如:IBM , BEA Systems, Oracle等都有参与。现在已经超过25个不同的服务器端平台支持J2EE 规范。12最新研究概述:2000年3月23日 Sun Microsystems发表了Java 2 Platform- Enterprise 表1.1Edition(J2EE)的最新版本“1.2”。J2EE规范和核心应用程序接口标准基本成型。如表1.1:13-20 2001年9月24日 J2EE “1.3”推出。该版本简化了业务集成操作、提高了面向企业的WWW服务开发和导入的功能。2002年1月 31日 J2EE最新版本1.3.1 发布,进一步加强Web Service功能并加大对XML的支持力度。其新增主要内容如下:12 Java连接器体系(Java Connector Architecture ,JCA)1.0。提供了一个新的、简化了的元件库,将简化与包含Enterprise Resource Planning(ERP)和Customer Resource Management(CRM)等应用程序在内的原来的系统的综合。预计JCA将会发展出一个更易于构建的适配器新类,使应用服务器能承担更多的负荷,而这些负荷目前由价格昂贵的企业应用集成软件来担负。 Java消息服务(Java Messaging Serivce,JMS)1.0.2。最新引入了消息驱动MDB(Message-Driven Bean)的JMS,该组件与其它应用程序或组件以异步消息方式通信。MDB的松散交互对现存的系统的继续使用非常理想。 20 “Enterprise JavaBeans(EJB)2.0”:简化分散的应用程序的开发,融入了与面向对象协议Inter-ORB Protocol(IIOP)间的互操作性。13 提高XML的综合功能:可以提高与“Java API for XML Processing(JAXP)”的综合性能,以XML记述“JavaServer Pages(JSP)”。 14 “JSP 1.2”的框架及Servlet。15J2EE体系结构提供中间层集成框架高可用性、高可靠性以及可扩展性的应用的需求。通过提供统一的开发平台,J2EE降低了开发多层应用的费用和复杂性,同时提供对现有应用程序集成强有力支持,完全支持Enterprise JavaBeans,有良好的向导支持打包和部署应用,添加目录支持,增强了安全机制,提高了性能。由于采用开放的协作制定规范,J2EE体现了众多企业计算领域供应商的知识和专业技术。这意味着产品解决方案能够满足任何商业需求。由于有大量的厂商支持,所以用户的选择范围会更广泛(与此相比,WINDOWS DNA架构是由微软单独制定并完成的。)。12二十一世纪,随着Internet日益成为主要的商业交易平台,具有可伸缩性、灵活性、易维护性的商务系统是人们关注的焦点。而J2EE恰好提供了这样一个机制。在企业级商务应用领域,J2EE技术越来越受到企业的青睐,基于J2EE架构的新应用不断涌现,从电子商店到网上交易市场,从MIS系统到CRM、ERP、SCM, 而应用J2EE的行业也越来越多,从新兴的信息产业、电信到传统的银行业、保险业,纷纷将J2EE技术作为大型BtoB市场和海量交易处理的安全稳定的端到端平台。从J2EE应用的发展势头来看,J2EE技术将成为未来十年企业级应用的主流技术21-22。1.3 基于J2EE的连锁企业SCM系统研究现状基于传统EDI(Electronic Data Interchange)的供应链系统传统企业往往在EDI平台上建立供应链系统,EDI是为支持事务处理而在异构的平台或应用间用电子格式进行数据交换。这种交换无需手工介入,而由计算机系统自动处理。为了实现数据交换的自动化,EDI将企业的业务规则包含在固定事务集中。也就是说传统EDI是以固定事务集合的传递为基础的,事务集合种定义了字段的长度、顺序和一定的商业规则。通过EDI可以将数据信息规范化、格式化,有利于通过网络互联处理,便于企业与供应商之间的数据交流和交换。但EDI的自身特点也是其在企业间供应链集成方面存在许多缺陷23: 模式僵化,不同的商业伙伴需要不同的接口和方案 成本昂贵,数据通过VAN传输 维护困难,难以增加新的产品和应用基于J2EE技术的企业应用系统随着J2EE平台的日益成熟,利用J2EE技术构建SCM系统,象构建其它企业商务应用系统如ERP、CRM、E_MarketPlace、E_Channel一样,越来越受到人们的重视,各大机构和应用服务提供商陆续推出自己基于J2EE的行业解决方案,较有代表性的又Oracle、IBM、SAP等。国外大型IT厂商如IBM、DELL、Araba等开始逐步建立和完善自己的SCM系统,并在有效降低生产、运营成本等方面显示出越来越大的作用。传统行业的代表如GE、Ford也已经在J2EE平台上构建了自己的采购系统24。基于J2EE技术连锁企业的SCM系统连锁行业是传统行业,由于其行业要求统一采购、统一配送、统一结算的特点,连锁企业的发展与壮大对先进信息技术的要求特别迫切,建立在传统EDI技术之上的供应链系统已不能适应业务高速膨胀的需要。连锁企业已开始认识到建立一个安全、高效的供应链平台对于自身至关重要的战略意义。也因为行业特点,它的SCM系统的业务逻辑和其它行业的SCM系统业务逻辑有很大不同,也就是说,SCM的J2EE通用解决方案并不适合于连锁行业。目前,国内对基于J2EE的连锁企业SCM系统的理论研究才刚刚开始,而对构建基于J2EE的连锁企业SCM系统的应用研究还是一片空白。1.4 论文的主要工作和研究思路 本文依据一个典型项目(某跨国连锁集团中国公司SCM系统)实施成功的经历,试图在运用J2EE技术,对连锁企业SCM系统的分析和设计,并提出一个可行的解决方案。 论文首先分析了连锁企业的SCM系统业务逻辑和需求,并对现有MIS的利用、数据集中与分析、订单汇总、统一配送等问题提出合理的解决方案。接下来,运用J2EE技术设计系统,给出拓扑图和实现原理,并细化到多层模型设计、模块分析、数据库逻辑设计、物理设计等。重点针对系统为多类型用户界面的特点,提出基于J2EE的MVC新模式,并运用于SCM软件逻辑结构设计中。然后文章对系统在开发、部署过程中的关键步骤做了简要说明。 最后,文章简要介绍了依据上述方法设计开发的供应链管理系统在运行中为连锁企业带来的实际效果,以及系统的性能特点。研究思路如下图1.1:文献资料搜集基础理论研究J2EE技术规范与体系结构研究连锁企业SCM信息系统需求分析系统开发、测试、部署系统概要设计完成论文J2EE应用模型和开发方法研究系统详细设计开发总结和模式探索图1.1 论文工作图2 连锁企业SCM系统分析 2.1 连锁企业SCM系统的特点连锁企业的单位构成如下图所示:连锁总部分店A分店B分店C分店X分店F分店D城市甲城市乙城市甲图2.1 连锁企业组织结构图.图2.2 分店MIS系统图2.1.1 在现有MIS基础上开发连锁企业以分店为基本运营单位,每个分店拥有自己相对独立的MIS系统。在系统所属局域网内,前端以电子扫描仪、POS机为商品售卖工具,后端为数据库服务器和MIS服务器,配以财务、仓库、采购等客户机、构成日常商品的进、销、存作业系统。如图2.2所示:MIS系统一般采用客户端/服务器(C/S)结构, 所有的商品信息、采购信息、库存信息、销售信息均存于服务器端的数据库中。这些数据是连锁企业SCM系统的基础数据。在选择SCM的构建方式时,一方面因为C/S模式在局域网内仍有自身速度快、稳定等优势,另一方面出于保护已有IT投资的需要,SCM系统必须构建在各分店现有的MIS系统基础之上。如何融合已有MIS系统是在设计SCM系统是要解决的第一个问题25-27。2.1.2 数据分布连锁企业的各分店一般处于不同的城市或同一城市的不同地方,彼此相距较远,不可能用局域网的方式将他们与总部都连起来。因而,各自MIS系统的数据库基本上是分布各地的,而SCM系统的基础数据来源与各分店,自然要解决分布数据的集中问题。2.1.3 统一采购统一采购使连锁企业实现低价策略的有效保障。对于采购商品的品种、结构、型号、范围、数量,每个分店都会根据库存和预测提出自己的采购订单,只有将各店订单汇总,实施大批量采购才是经济的。面对种类庞大的商品类目,即便总部拿到各店的订单,依靠人工也很难完成手工汇总,更不用说准确地完成筛选供应商与商品、对比采购价格等实际问题。2.1.4 统一配送统一配送既是连锁企业降低成本的手段,也是总部有效调节商品、加强控制的手段。在统一配送过程中,对商品的挑选、储存、整理、拆零、再包装检测和贴标签、拼配是连锁企业实现商品增值的手段。目前,连锁企业存在的问题是:尚缺乏现代物流与配送的观念。物流作业缺乏规范,各种编码缺乏标准,商品盘点作业缺乏电子扫描装置,配送中心内部缺乏必要的计算机设备,计算机软件不完善,数据有时需要多次重复录入等。所以,集中采购虽然能减少采购成本,但如果配送管理落后所加大的成本抵消掉了集中采购的好处,这对企业来讲是绝对不合算的27-28。所以,制定合理的统一配送策略是SCM系统业务设计的难点2.1.5 统一结算统一采购必然带来统一结算,统一结算增强了连锁企业与供应商谈判的能力,也加快了资金的流动。随着网上支付平台日益成熟、安全,统一结算的方式会部分通过网上银行进行。SCM系统要预留此项功能的接口。2.1.6 与供应商之间的数据交换供应链是连接连锁企业和供应商之间的一条纽带,不论是商品信息还是销售分析数据,读要通过合理的通用的数据交换格式来促进交易,基于XML的Web Services 是SCM系统的另一项特点。2.2 连锁企业SCM系统的需求分析连锁企业的SCM系统除了上述6点需要解决外,还包含如下需求:供应商管理、连锁店管理、商品管理、采购管理、库存管理、退货管理、换货管理、用户权限管理、信息发布,结算管理和综合查询。供应商管理通过供应商管理,为实现商品发布、集中采购、统一结算准备了条件。企业可以发挥网上招商的优势,供应商通过SCM 系统申请,经总部审批后取得资格。连锁店管理管理连锁店的加盟,为处理连锁店的经销数据、订单、用户等准备条件。商品管理供应商商品信息的发布和更新功能,提供商品的对比采购分析,统一编码,为采购库存准备条件。采购管理各分店订单汇总,按分类商品分解订单,下单、跟单并在SCM系统内完成商品采购流程,为入库和结算做准备。库存管理入库、出库、配送计划、库存分析、库存预警等功能。退货/换货管理分店与总店之间的退换货,总部与供应商之间的退换货。用户权限管理按用户、组、角色、权限进行管理,精确控制用户能做的事、不能做的事。信息发布内部新闻、促销信息、分店、经销商反馈信息的发布与管理。结算管理即统一结算,提供线下、网上多种方式与供应商结算功能。综合查询基于SCM数据得报表分析功能,提供给总部、分店和供应商用于辅助经营和决策。SCM系统涉及大笔的商务交易信息,安全功能始终应放在第一位。系统的安全功能虽然没有包含在这些功能之中,但上述功能的实现处处需要安全功能的支持。除了权限控制外,SCM 系统还通过硬件防火墙、网络安全协议、数字签名等策略保证交易的安全性。2.3 连锁企业SCM系统业务逻辑总店把收集到的数据分为两种情况处理:对供应商.可以提供配送服务的,直接向供应商提出每日的补货与配送计划;对需要由自己配送的商品,先进行库存检索,可用库存量满足补货需求直接计算配送计划,否则,向供应商发出定单补货2,4,6。 供应商接到中央采购计划和独立采购计划后,向总店配送中心配送,或者根据要求,直接向门店配送。 总店的配送中心接到配送计划后,完成配货准备,并规划配送路线,完成装车作业和运输。 门店负责对接收的商品进行计数、计量、质检、贴标签、商品上架;配送人员负责将需要退、换、残、次商品拉回配送中心集中处理。 门店定期将销售的货款存入总店银行帐户或与总店结算货款;总店与供应商定期结算应付货款。对销售滞缓的商品定期考虑是否予以淘汰。 从上面所描述的流程看到:由DRP系统收集、传递各门店的业务数据是整个系统的起点与关键点,它最有意义的功用是将前端所反映的需求信息集中起来,并依此带动其他工作系统来满足前端的需求,这就实现了大家所盼望的“拉式”连续补货计划。而在此基础上的采购、库存、配送系统不过是用来满足、执行该计划的工作流程。2.4 运用J2EE技术设计SCM系统基于连锁企业对于SCM应用系统的实际需求以及考虑到系统的未来拓展性、可维护性,SCM应用系统各个模块中分店MIS可以做成客户/服务器(C/S)体系模式之外,其他部分都应该做成瘦客户端(浏览器)/服务器(B/S)模式。经过了反复的论证并且通过与别的技术方式的比较,我们最终确定采用在J2EE平台上开发SCM应用系统的技术方案。一方面是因为作为一种比较成熟的技术规范,相对于微软的.NET来说,它的开发要更加安全、成本更低,另一方面,在于其优异的性能。2.4.1 传统ASP、CGI、PHP编程方式的缺点 在J2EE结构出现以前,基于Web的应用系统多数使用ASP、CGI、PHP等编写。随着电子商务的迅速发展,这些传统编程方式的缺点越来越突出,这些传统编程方式正在被业界淘汰。主要的缺点包括29-34: 1、不适合企业级应用 2、系统稳定性差 3、维护困难4、升级困难 5、系统响应缓慢 6、没有规范的安全体系 7、不能跨平台、分布式应用 2.4.2 运用J2EE技术设计SCM系统 J2EE是一种利用Java 2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。J2EE技术的基础就是核心Java平台或Java 2平台的标准版,J2EE不仅巩固了标准版中的许多优点,例如编写一次、随处运行的特性、方便存取数据库的JDBC API、CORBA技术以及能够在Internet应用中保护数据的安全模式等等,同时还提供了对 EJB(Enterprise JavaBeans)、Java Servlets API、JSP(Java Server Pages)以及XML技术的全面支持。其最终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的体系结构。J2EE体系结构提供中间层集成框架用来满足无需太多费用而又需要高可用性、高可靠性以及可扩展性的应用的需求。通过提供统一的开发平台,J2EE降低了开发多层应用的费用和复杂性,同时提供对现有应用程序集成强有力支持,完全支持Enterprise JavaBeans,有良好的向导支持打包和部署应用,添加目录支持,增强了安全机制,提高了性能21。连锁企业SCM系统对于安全性、可扩展性、快速开发等要求非常高,另外还要求对和供应商之间的标准数据交换格式XML提供支持,并希望成本/性能比非常合理,而J2EE恰好非常吻合这些条件。所以在J2EE平台基础上构建系统有广泛地应用前景。用J2EE技术设计的SCM系统的开发模式是:从集团化管理出发,整合各分店现有MIS系统,设计总部SCM数据库模式,规范总部与各分店现有MIS的数据接口、传输流程;利用Visual Age for Java开发JavaBean,把数据库连接、后台处理、商业逻辑等系统需要重复使用的功能封装成独立组件,一共JSP页面、Servlet调用;利用Servlet服务器端编程能力强的优点,控制系统流程和处理后台事务;优点有四:1) SCM数据库模式面向全组织,具有完整性、稳定性,容易与各分店业务系统实现数据交换,为web程序开发打下良好的数据结构基础。2) 利用面向组件程序设计的思想,提高软件的重用性,节省了开发时间。3) 表现逻辑和商业逻辑、系统流程、后台处理分开、增加程序的可读性、健壮性。4) 由于用户界面采用JSP,Servlet等开发,系统维护修改都很方便。3 连锁企业SCM系统设计3.1 多个独立MIS系统的信息集成与发布上面提到,融合已有MIS系统是在设计SCM系统是要解决的第一个问题。同时,还有分布数据的集中问题。因为各分店的局域网并没有互相联通,所以解决数据集中问题首先要解决局域网的互连。 局域网的互联不外乎如下几种方式(表3.1):1 采用DDN数据专线数字数据网络(Digital Data Network),DDN即数字数据网。它是利用光纤(数字微波和卫星)数字传输通道和数字交叉复用节点组成的数字数据传输网,可以为用户提供各种速率的高质量数字专用电路和其它新业务,以满足用户多媒体通信和组建中高速计算机通信网的需要。DDN业务区别是于传统模拟电话专线的显著特点是数字电路传输质量高,时延小,通信速率可根据需要选择;电路可以自动迂回,可靠性高;一线可以 多用,即可以通话、传真、传送数据,或组建自己的虚拟专网,设立网管中心,自己管理自己的网络35。2 采用VPN虚拟专用网 虚拟专用网(VPN-VirtualPrivateNetwork)指的是在公用网络上建立专用网络的技术。之所以称为虚拟网主要是因为整个VPN网络的任意两个节点之间的连接并没有传统专网所需的端到端的物理链路,而是架构在公用网络服务商所提供的网络平台(如INTERNET,ATM,FRAMERELAY等)之上的逻辑网络,用户数据在逻辑链路中传输。目前VPN主要采用四项技术来保证安全,这四项技术分别是隧道技术(Tunneling)、加解密技术(Encryption & Decryption)、密钥管理技术(Key Management)、使用者与设备身份认证技术(Authentication)36。 3 拨号互联即用电话拨号的方式接入互联网。表3.1名称优点缺点方式一DDN专线1. 安全2. 实时1. 费用高2. 维护较难方式二VPN(虚拟专用网)1. 技术成熟2. 容易扩展3. 节省费用21%-45%1. 安全风险较大2. 管理工作量大方式三拨号互联1费用低廉1安全风险极大2管理工作量大3维护困难由表3.1分析可以得出结论:在用于网络连接的费用充足时,方式一由于其安全、快速性无疑是最好的选择;而从性价比考虑,采用方式二即VPN最好,VPN是一项成熟的技术,目前已得到广泛的商业应用,我们可通过完善的安全策略,严格的管理有效规避安全风险;至于方式三,由于其安全性太差,且极不稳定,并不适合商业用途。图3.1 连锁企业MIS互联原理图本方案采用VPN技术作为各分店局域网与总部的互联方案,如图3.1所示:3.2 系统实现原理和拓扑图设计SCM系统针对连锁企业具体应用,采用C/S与B/S相结合的混合体系结构。即对各分店原有的MIS系统仍采用C/S计算模式。而对于供应商信息管理、与供应商交换经销存信息等新应用,则更多的采用B/S计算结构。这种混合计算模式的优越性在于:1) 采用C/S计算模式,保证了各分店原有MIS系统不变,使用方法不变,保护了企业的前期投资;2) 采用B/S模式,客户端仅需一个浏览器,就可随时随地登陆网站,进入系统,操作使用都很方便;3) B/S模式中,所有的网页和程序都存放在web服务器上,应用系统的设计、维护都只需在web服务器上进行。C/SC/SC/S.B/S 多层体系结构连锁企业SCM信息系统分店MIS图3.2 连锁企业SCM系统逻辑结构图连锁企业SCM系统的总体设计思想是:通过在连锁总部构建电子商务网站,每天从现有各分店MIS系统采集当天的经销存业务数据汇总到总部的数据仓库,保证总部数据仓库的实时更新。利用Java开发Web应用程序,实现总部、分店、供应商之间的信息畅通,经销存数据共享,业务流程网络自动化。SCM系统的逻辑结构如图3.2 所示。分布数据集中流程设计如下:SCM系统需要从各分店收集数据,其数据仓库与各个数据采集点之间的数据传输采用文本文件传输方式。即由各分店的MIS系统定期生成SCM需要的业务数据,以事先约定的规则和格式保存为文本文件,经加密、压缩、打包后以电子邮件的形式通过VPN发送到总部的邮件服务器,在总部邮件服务器上运行的代理程序定时检测收到的邮件,发现是SCM的数据邮件时,则将该邮件解密解压缩到数据库服务器上的指定目录中。然后由数据库服务器上运行的专用程序定时将相应文件中的数据倒入SCM数据仓库,最终形成SCM业务数据的采集与传输流程为:1) 数据采集开始;2) 分店业务系统当日22:00之前结束本店事务处理;图3.3连锁企业SCM系统拓扑图3) 分店业务系统已事先约定的规则和格式生成当日需要传输的文本文件,并加密、压缩、打包;4) 分店网络通讯机通过Internet以电子邮件的方式将数据文件发送到总部;5) 总部邮件服务器通过代理程序检测到该邮件,并解压缩解密该邮件,然后将数据文件存到预先指定的目录;6) IBM的数据导入工具Visual Warehouse从当日24点开始,从指定的目录检测数据文件,并将数据导入数据仓库;7) 运行专用程序将指定目录中的数据文件复制到备份目录,并删除原始文件;8) 运行专用程序对数据仓库中的数据作预处理,以优化数据库系统性能,提高查询速度;9) 数据采集和传输结束。在SCM数据采集和传输过程中,当各分店同时向总部邮件服务器发送大量数据邮件时,容易给网络和服务器造成压力,因此应结合实际情况给个分店分配不同的邮件发送时间,以缓解网络和服务器的负荷,但所有邮件都应在当日23:30,即数据导入程序Visual Warehouse开始运行前半小时传送结束。考虑到数据采集和数据传输过程中可能产生失败,系统需要做好数据备份和日志纪录。文件压缩可以采用常用的文件压缩程序,如Winzip等,文件加密可以购买第三方的加密算法及产品,也可自行设计加密算法。在SCM系统中,考虑到各分店每天需要传送单品销售(通常有几十万条记录)、入库明细、订单明细和结算费用明细等大量数据到总部SCM数据仓库,为了提高响应性能,系统在每天凌晨利用服务器空闲时间,对数据仓库中的数据作预汇总统计,并把预汇总统计的结果保存在临时数据表中,这样当浏览器查询相应信息时,系统可直接丛临时数据表中读出数据,而不用再处理大量原始记录,从而提高了系统响应速度。SCM系统采用数据文本文件,而不是XML文件来传输交换数据的原因是:1) XML作为数据交换的通用标准,需要在数据文件中添加大量的标记来描述数据,这无疑将使原本庞大的数据文件变得更加庞大,从而增加数据文件的传输时间以及数据文件在传输过程中被破坏的可能性。2) 由于数据文本文件仅限于系统内部使用,系统很容易制订一套统一的数据存储格式,实现系统内部数据交换。3) 由第三方工具Visual Warehouse支持从文本文件数据源导入数据到SCM数据仓库。3.3 基于中间件的多层系统结构 为什么要采用多层体系结构?传统的基于Web的系统结构图如图3.4所示:Web服务器 服务器Internet表达逻辑(动态网页生成)业务逻辑(“复杂的处理在此完成”)遗留/应用集成 (主机, RDBMS, 等.)Web 服务 (采用HTTP登录/SSL)并由 HTML 提供服务)数据库服务器图3.4 传统的基于Web的信息系统结构图XMLResults J打包,编译 .JarSPs此系统结构固然能满足企业的信息发布、数据访问等需要,但是,在SCM系统的地方业务系统的设计、实现和部署上,存在严重的缺陷24,37。1) 服务器端简单的层次结构使应用系统中的页面生成与业务逻辑互相交织,没有相应的分离手段,当页面表示逻辑或业务逻辑发生变化时,往往需要调整整个应用系统,增加系统维护的困难。2) 传统层次结构的服务器端实现使应用的扩展变得相应复杂,SCM系统应用的瓶颈可能出现在在WWW服务上,也可能在页面生成上,当然更可能出现在业务逻辑、数据访问以及与其他系统的集成上,当应用系统要增加投资扩充应用系统负载能力时,由于设计、实现方式等技术上的限制使宝贵的投资不能集中在系统的瓶颈上,造成投资的浪费。3) 对访问、业务处理等负载压力的承受能力的提高过于集中在昂贵的硬件投资上,由于软件实现的欠缺,使SCM系统在面对用户高并发访问请求时占用系统过多的进程资源,打开过多的数据库通道,造成系统资源的急剧紧张和数据访问性能的迅速下降。4) 连锁企业的SCM系统平台往往缺乏与其它供应商信息系统互联的有效手段,也无法将不同网站的资源结合在一起以便提供使用者更丰富更有效的服务。SCM系统平台必须具备方便、安全和快速的与异构系统集成的能力, 5) 系统的高可用性往往沿用传统的、单一的硬件思路解决,不能利用当今Internet领域流行的分布组件概念实现SCM系统的高可用性,系统平台设计的不当给企业造成沉重的经济压力。6) 一切从零开始,不善于依靠组件技术,充分利用企业或业界现有的成熟的应用,对SCM系统应用中已经完全成型的业务模型依然完全依赖自己的技术力量开发,或由于在系统设计阶段没有充分利用组件技术的重要性,使得在企业的SCM系统开发中,不能充分利用已有的功能,将企业宝贵的技术人员的大部分精力浪费在开发底层应用的技术细节上,而不是用在突出企业竞争优势的个性化服务上。增加的电子商务系统的开发周期、维护难度和开发成本,降低了开发效率。因此,我们采用多层的体系结构设计,使SCM系统的各个功能层次有相对明确的界限,如图3.5: Web 服务器应用服务器网页生成器InternetPDA电话浏览器 HTTP应用集成服务器Web 服务 (采用HTTP登录/SSL)并由 HTML 提供服务)表达逻辑 (动态网页生成)业务逻辑(“复杂的处理在此完成”)MIS系统/数据库 (主机, RDBMS, 等.)图 3.5 多层体系结构系统原理图系统工作原理如下37:服务器:处理Internet客户提出的请求,调用后台的网页生成服务,并将网页生成服务所生成的动态页面通过协议返回给Internet客户。网页生成器:通过符合业界标准的程序接收服务提交的服务请求,访问后台提供的业务逻辑服务,提取业务数据,生成动态页面,返回给服务。(有时网页生成器层需要通过应用集成服务层访问业务数据)应用服务器:通过运行由组件或高效的中间件上的应用程序,执行电子商务的业务逻辑并进而访问数据库,更新或提取业务数据,并将结果返回给表达逻辑层。(有时应用服务器层需要通过应用集成服务层访问业务数据)MIS系统/数据库集成:接收来自表达逻辑层或业务逻辑层的请求访问同构或异构(此时需要遗留/应用集成层能自动执行协议转换)资源,并将业务数据返回给服务调用者。采用多层标准体系结构设计连锁企业SCM系统,为连锁企业用户在其业务系统中从平台的选型到业务的设计、实现、扩展、安全和维护上都带来了很大的好处:1) 在SCM系统的各个实现层次上应当完全遵循业界相关标准,使得连锁企业用户的业务系统具备充分的平台无关性,当其应用从一家产品转换到另一家产品时,其业务系统的程序代码不需任何改动或只须做极少的必要调整,以最大限度地保护用户的投资。2) 多层的结构设计使SCM系统在设计和实现上可以分别实现,各个功能层次相互之间相对独立,其设计、实现和维护的工作可以分步和独立完成,不会出现互相干扰的现象,简化SCM系统的设计、开发和维护。3) SCM系统由于业务模式和发展周期的不同,系统可能出现运行瓶颈,而瓶颈的出现可能发生在多层结构中的任一层。这时企业可以根据实际情况,在发生瓶颈的位置增加投资(扩充硬件资源:,内存或者增加新的服务器),实现整个系统性能的提升,将有限的资金用在关键的位置,充分提高企业投资的利用率。4) 随着技术的不断进步,各个从事系统平台开发的厂商之间的竞争不断加剧,在多层结构的各个方面可能出现不同厂商各领风骚的局面,这对连锁企业的用户来讲当然是件好事,但传统的实现模式无法充分利用这一有利条件优化其系统性能,而多层的体系结构允许企业在SCM系统的各个层次选择不同厂商的产品,使自己的SCM系统平台达到尽可能完美的组合,而不是只能捆绑在一家厂商的产品之上。5) 多层的体系结构允许企业灵活地部署其SCM系统应用,在系统的各个层次之间安装安全产品,提高整个SCM系统应用系统的安全性。3.4 SCM系统模块分析连锁企业的SCM系统通过有效的供应链管理系统解决方案,能更有效地评估和确定供货商,以便建立长期战略资源合作关系。通过高效的企业内部和企业之间运作,连锁企业可以为供应商和顾客提供全新的、协作式的服务,从而减少日常开销,增加市场流水,降低采购成本和营销成本。供应链管理系统的主要管理功能包括:供应商管理、连锁店管理、商品管理、采购管理、库存管理、退货管理、换货管理、用户权限管理、信息发布,结算管理和综合查询等。如图3.6:3.4.1 供应商管理通过供应商管理,商场可随时获取整个集团的供应商信息,为实现集中采购、统一结算准备了条件。同时商场还可以发挥网上招商的优势,供应商通过Internet,向商场提交开户申请,商场经过一定审批手续后,接受或拒绝供应商的申请,并把审批结果在晚上发布或以E-mail方式通知供应商。通过网上招商,一方面,商场可以打破供应商选择的地理限制,有利于商场争取信誉好的供应商,从而更好地为顾客提供优质优价的适销商品。另一方面,供应商可以减化开户手续,提高工作效率。如下图:供应商管理供应商信息录入供应商信息查询供应商信息修改供应商信息删除供应商开户申请供应商开户审批、通知供应商目录增删改查图3.7 供应商管理模块图供应商管理详细设计示例:1、 增加一个供应商2、 删除一个供应商3、 修改供应商信息4、 得到一个供应商类5、 供应商目录的显示。6、 供应商list的显示。7、 具体某一个供应商的显示。8、 供应商显示目录的管理 a、目录的增加 b、目录的删除 c、目录的移动 d、将一供应商加入到目录中 e、将一供应商从目录中删除3.4.2 连锁店管理通过连锁店管理,可以处理加盟连锁店信息,指定该店的SCM管理员,为处理连锁店的经销数据、订单、用户等准备条件。如下图3.8:连锁店管理连锁店信息录入连锁店信息查询连锁店信息修改连锁店信息删除连锁店管理员指定图 3.8 连锁店管理模块图3.4.3 商品管理提供商品信息的发布和更新功能,商场可以将所需的商品信息在网上发布。供应商经过身份验证后,不仅可以获取相应数据,而且可以主动向商场发布商品供应信息,例如供应商品的价格、型号、数量等。商场通过比较分析这些信息,有选择地向最合适的供应商发送订单。系统还提供商品的对比采购分析,统一编码,为采购库存准备条件。如图3.9:商品管理商品目录增加商品目录修改商品目录删除商品目录查询商品信息录入商品信息修改商品信息删除商品信息查询图 3.9 商品管理模块图3.4.4 采购管理分店做出采购计划后,通过SCM系统递交订单,总部审核后将订单汇总,并按商品类别分解订单。总部下单后,供应商受到订单,通过SCM系统对订单进行确认。总店能对生效的订单随时查询和跟踪。SCM系统将供应商确认后的订单转化为入库单,下传到相应分店的MIS系统作进一步处理。如图3.10:采购管理订单上传订单下载订单汇总订单分解/下单订单修改/确认订单查询订单审批订单跟踪图 3.10 采购管理模块图3.4.5 库存管理库存管理入库单生成入库单核对出库单生成出库单核对配送计划生成库存分析库存预警库存报表图3.11 库存管理模块图对总部统一配送的商品提供入库、出库、配送计划、库存分析、库存预警等功能。如图3.11:3.4.6 退货/换货管理分店与总店之间的退换货,总部与供应商之间的退换货。如图3.12:退货/换货管理分店与总店之间的退换货总部与供应商之间的退换货分店与供应商之间的退换货退换货统计与分析图3.12 退货/换货管理模块J2EE应用程序的装配3.4.7 用户权限管理按用户、组、角色、权限进行管理。在总部系统管理员角色以下,设分店管理员、分店使用者、经销商管理员、经销商使用者等多个角色,并为每个角色赋予不同的权限。每个用户属于特定的组、特定的角色,自然便拥有指定的权限。用户凭密码登陆后,系统自动识别身份和权限,在会话有效期内,精确控制用户能看到的信息、不能看到的信息,能做的事、不能做的事。如图3.13:用户权限管理用户管理组管理角色管理权限管理会话管理图3.13 用户权限管理模块J2EE应用程序的装配3.4.8 信息发布分店、总部、经销商三者之间的沟通渠道,提供内部新闻、促销信息、分店、经销商反馈信息的发布与管理。如图3.14:信息发布新闻管理促销信息管理分店意见反馈经销商意见反馈总部察看和回复图3.14 信息发布管理模块J2EE应用程序的装配图3.11 退货/换货模块管理J2EE应用程序的装配3.4.9 结算管理SCM系统根据数据仓库中供应商信息和商品经销存信息,在适当时候自动生成结算通知单,通过网站发布或以E-mail方式传给供应商,供应上可通过浏览器进行销售对帐,结算单确认。确认后的结算单经系统审核后,下传到相应分店的MIS系统作进一步确认。如图3.15:结算管理结算单上传总部结算单审核分店结算单审核供应商结算单确认网上销售对帐结算单下载供应商费用核减图3.15 结算管理模块3.4.10 综合查询通过SCM系统,各分店商品销售、库存信息于第二天在晚上发布。总部可对相应信息汇总分析,为企业预测决策提供依据。通过身份验证后的供应商,即可查询自己供应的商品昨天在各分店的销售、库存情况,还可实时下载或邮件订阅各分店在任意时段内的经销存数据。为了方便供应商把这些极为宝贵的数据倒入自己的MIS系统,以便作进一步的分析挖掘,SCM系统采用web上数据交换的标准格式XML来描述这些信息。如图3.16:综合查询分店数据集中分店数据汇总分店数据统计总部数据统计经销商数据交换报表生成报表打印图 3.16 综合查询模块3.5 数据库的逻辑设计和物理设计 3.5.1 逻辑设计3.5.1.1 实体-关系图以最具典型性的用户权限表为例,如图3.17:图3.17 用户权限表实体关系图3.5.1.2 关系模型描述 用户权限数据表的设计见附录一3.5.1.3 数据视图描述 略 3.5.1.4 数据库一致性设计 生成用户权限数据表SQL语句见附录二3.5.2 物理设计数据库服务器采用AS400平台,运用数据库DB2/400, 在QSYS下建立SCM系统自己的library (SCM), 并将数据表的物理文件Object置于其中。赋予数据库的连接者相应Object的所有权。操作系统AIX4.3.3应用服务器WebSphere3.5.3Web服务器Apache V1.3.6操作系统AS/400 V4R5数据库服务器DB2/400 V4R5应用服务器数据库服务器JDBC图4.1 SCM 系统软件平台4 SCM系统软件结构设计SCM系统的软件平台设计为(图4.1):操作系统:IBM AIX4.3.3 AS/400 V4R5数据库:DB2/400 IBM DB2 (通用数据库)是一个可高度扩展的适用于网络的解决方案,它可以管理传统商业资料和电子商务所要求的多媒体内容。它可以提供交易过程和商务智能应用的操作性能处理客户信息。适用于从桌面系统,部门级系统到并行处理的UNIX平台或大型主机。应用服务器:IBM WebSphere应用服务器是一个完整的,开放的Web应用服务器。它是IBM电子商务应用架构的核心。WebSphere应用服务器严格地遵循普遍流行的开放标准,象HTTP,HTML,JSP,JNDI和IIOP。从而支持非常广泛的流行平台。它基于一个JavaServlet引擎,将通常的Web服务器(象Apache服务器,MicrosoftIIS,Netscape企业服务器和LotusDominoGoWebServer)增强为基于Java的Web应用服务器。作为IBM电子商务应用架构的核心,WebSphere应用服务器提供了无限的扩展性,允许用户利用IBM或其它厂商提供的Java类扩展其运行环境38-40。根据对连锁企业SCM系统的应用进行分析,系统属于多类型用户界面Java程序。分店用户,供应商通过基于web的浏览器客户端访问系统;总部内部的管理员采用JFC/GUI独立桌面客户端进行管理和分析;还应给供应商提供XML形式数据交换文件;将来随着无线应用的发展,SCM系统可能会提供基于WAP网关WML形式的应用,因此也要预留接口。4.1 多类型用户界面Java程序的一般设计模式及存在的问题目前采用J2EE技术开发的应用程序,从User Interfaces(用户界面)上看,常见的类型有浏览器客户端的、JFC/Swing独立桌面客户端的、无线客户端的和基于XML的Web Services形式等,如图4.2所示。企业信息系统数据对象JSP/Servlet数据对象JSP/ServletDataSetModelDriver数据对象SOAP典型web用户无线用户系统管理员B2B 供应商HTML视图基于XML的web servicesWML视图JFC /swing视图图4。2 mutli-interface 一般设计模式fig.1 mutli-interface common design pattern其中,以基于web的浏览器客户端最为常见。其实现原理概括如下:JSP调用JavaBean ;JavaBean调用EJB;EJB通过JDBC连结池访问企业信息系统层或关系数据库。或者,省掉EJB层直接用JavaB
展开阅读全文