供应链管理体验式教学

(整期优先)网络出版时间:2012-12-15
/ 2

[摘要]在供应链管理的教学中引入游戏教学,可以充分调动学生的主动性,丰富理论教学。“啤酒游戏”通过模拟供应链中“牛鞭效应”的形成过程,来探究供应链上各成员企业产生缺货和积压的奥秘。本文应用JSP动态网页、Javascipt的动态效果,设计并实现了“啤酒游戏”计算机仿真软件。实践证明,学生们通过此软件对“啤酒游戏”进行模拟,能更好地理解供应链管理中存在的需求放大和信息扭曲问题及其产生的原因。
[关键词]供应链管理 啤酒游戏 仿真软件

一、引言
供应链管理是运营管理主体研究内容之一。当供应链上的信息流从最终客户经零售商、批发商、分销商向原始供应商传递的时候,由于无法有效地实现信息的共享,使得需求信息扭曲而逐渐放大,导致了需求信息出现越来越大的波动,这就是著名的“牛鞭效应”。而啤酒游戏正是模拟“牛鞭效应”的形成过程,探究供应链上各成员企业产生缺货和积压的奥秘。它最早由美国麻省理工学院斯隆商学院设计出来用于供应链管理教学的一个生产和配销单一品牌啤酒的产销模拟系统[1]。啤酒游戏的教学目的在于通过啤酒游戏熟悉供应链系统中的库存管理,比较各种库存管理策略的优劣,学习库存管理策略中各种参数的意义和设定方法,并通过修改参数观察订货量、库存以及成本的变化规律。啤酒游戏能够较好地把学生在专业课学习中获得的知识系统地串联在训练的全过程中。由于该游戏充分反应了牛鞭效应,因此在游戏的基础上也可引导学生分析产生“牛鞭效应”的原因,以及消除或减小“牛鞭效应”的对策。
国外开发的一些单机版的啤酒游戏软件,提高了游戏的仿真程度,缩短了游戏模拟的处理时间。但在单机版的啤酒游戏中,多名用户不能组成一组并通过各自扮演不同的角色构成一条供应链,而只能是每名学生和电脑扮演的其他角色组成供应链。网络版的啤酒游戏解决了单机版软件中的不足,允许多个用户共同参与同一条供应链上的啤酒游戏。但由于主要都是由国外的机构设计开发,用户访问权限有限,且无论是从游戏体验习惯、访问速度、游戏历史数据统计查询等方面都不适合国内的课堂教学应用。国内部分学者对啤酒游戏的模型进行了较深入的分析。刘晓峰等提出了啤酒游戏的仿真模型[2]。袁旭梅等、刘秋生等、廖诺等提出啤酒游戏的系统动力学模型[3-5]。目前国内各高校学生在做啤酒游戏时基本上都是手工完成。为此,教师需要准备大量的道具,如供应链上每个角色的资料卡、订货单;各角色订货和发货的统计表、订单汇总表等;游戏完毕后,教师需要完成基于Excel表格的数据统计和分析工作[6]。而对于学生来说,手工完成订单任务并且人工控制订货提前期,效率低下且容易出错。国内市场上可见到的大部分啤酒游戏软件都仅能演示,而不能操作。国内还很欠缺易用的教学辅助软件产品。
因此,有必要开发啤酒游戏模拟软件,通过角色扮演进行供应链管理中的决策活动,让学生亲临其境,体会供应链管理的理念与运作原理,实现将啤酒游戏的手工操作转变为深刻的计算机仿真体验。
二、啤酒游戏模拟软件的设计与实现
1.软件功能设计
本软件是多角色扮演的游戏软件,需要扮演的角色包括零售商、批发商和制造商。各角色的分工为:零售商每期根据顾客(啤酒市场)需求信息,并结合当前库存,向顾客发货,同时向批发商下订单。批发商既要处理下游零售商的订单,又要向上游制造商发出订单。制造商要处理下游批发商的订单,然后根据库存和下游订单订制生产计划。软件设计目标是实现三个角色的扮演者在线进行啤酒交易和供应链管理。各角色扮演者能够在游戏过程中体会和熟悉物流过程,感受牛鞭效应。软件的工作应包含三个部分:订单与货物的定期传送与自动滚动、库存管理和成本计算(包括库存成本和缺货成本)。该软件包括两类用户,管理员和普通用户。各类用户对应的功能模块以及各模块的详细功能如表1所示。
表1:啤酒游戏模拟软件的功能


2.软件体系设计
结合啤酒游戏模拟软件设计与应用的现状,该软件技术方面的需求为:(1)支持多人同时并发式参与游戏;(2)支持Windows系统和Linux系统应用,网络版支持Microsoft IE、Mozilla Firefox等主流浏览器访问;(3)为保证访问速度,网络版需采用预编译的JSP动态网页,Javascipt动态效果以及结果图形生成技术。
针对上述需求,网络版软件采用符合J2EE(Java 2 Enterprise Edition)标准的可重用四层B/S体系结构。本软件将啤酒游戏所体现的供应链业务流程封装到系统应用层,并采用构件方式实现。构件在设计上符合J2EE标准接口,在逻辑上可以针对不同供应链业务模式进行封装。通过构件接口,在软件中可以集成不同类型的供应链模式。在游戏中可以选择某一类型供应链供学生体验,也可以设置多种供应链同时运行,便于学生在体验中对不同供应链模式的特点进行比较。
在软件设计模式上采用了通用的MVC模式,MVC是Model(模型)-View(视图)-Controller(控制器)模式。在这种设计模式下,一个应用被分为三个部分:model,view和controller,每个部分负责不同的功能,如图1所示。


图1:啤酒游戏软件应用MVC模式的示意图
(1)控制器:在将单独的servlet用作控制器时(single-servlet-as-controller),servlet需要一些传递到请求中的信息来确定要执行的商业规则。这个信息或者作为查询字符串的一个参数来传递,或者,更多情况下,作为URL的一部分来传递。一旦完全确定了请求,servlet就委派一个bean或beans来执行商业逻辑。一旦beans完成执行任务,控制器将把持有数据的beans存储在适当的范围内。在啤酒游戏软件中,控制器的作用是接收用户的操作请求,处理各种请求参数,把请求分配给合适的供应链业务模型组件,并负责把处理后的结果提交给显示视图。
(2)逻辑模型(Model):在一个MVC Web应用程序中,模型的任务是由JavaBeans执行的,通常运用两个beans:执行逻辑的beans和存储数据的beans。这就意味着一个控制器将运用一个“逻辑”的bean来执行商业规则。这个逻辑的bean通常返回一个包含执行结果的“数据”bean。这个数据bean将被存储起来,以便JSP运用。这样就有利于我们所谈到的分离。在本软件中,逻辑模型主要用来负责处理供应链业务逻辑。
(3)视图(View):视图的角色是由JSP完成的。控制器将控制提交给JSP,使beans可以用于适当的范围。JSP可以根据需要安排响应的格式呈现给软件用户,如HTML或XML。
本软件的体系设计具有以下一些优点:
(1)采用系统控制器,通过一个状态机跟踪和处理面向操作的用户事件。这允许控制器在必要时创建和破坏来自模型的对象,并且将面向操作的拓扑结构与面向对象的设计隔离开来。这个隔离有助于防止面向对象的设计走向反面。
(2)利用MVC模型将用户接口与面向对象的模型分开。这允许同样的模型不用修改就可使用许多不同的界面显示方式。即学生在使用软件中可以通过图形、表格等多种形式查看软件结果。除此之外,如果模型更新由控制器完成,那么界面就可以跨应用再使用。
(3)允许软件的用户接口进行大的变化而不影响模型。每个用户接口的变化将只需要对控制器进行修改,但是既然控制器包含很少的实际行为,它是很容易修改的。 这为将来在软件中引入逻辑复杂的供应链模式提供了适当的灵活性。
三、结论
体验式教学方法往往比老师课堂讲授要深刻得多。通过对啤酒游戏的亲身体验,学生可以体验牛鞭效应的现状以及产生的原因,学会如何做好需求预测、缩短提前期,如何减少库存、提高库存周转率。体验式教学的方式对学生掌握供应链管理的理论知识也有很大帮助,并有利于培养团队协作能力。
[参考文献]
[1]http://beergame.mit.edu/guide.htm#CreateGame
[2]刘晓峰,宗蓓华.物流运作中啤酒游戏的Matlab仿真[J].交通运输工程学报,2003,3(4):73-77
[3]袁旭梅,史丽君.啤酒游戏的系统动力学分析[J].价值工程,2007(4):79-82
[4]刘秋生,蒋国耀.基于系统动力学的供应链中牛鞭效应的研究[J].中国管理信息化,2009,12(6):72-75
[5]廖诺,吴菊华.多级供应链系统动力学建模与仿真研究[J].管理学刊, 2010, 23(4):53-55
[6]孙鸿.啤酒游戏在物流管理专业综合训练中的应用实践[J].职业教育研究,2009(1),72-74
(作者单位:华北电力大学经济与管理学院 北京)