基于统一建模语言的食品质量追溯系统分析
近年来,食品安全的可追溯工作越来越受到关注和重视,被认为是管理和控制食品质量安全问题的重要手段。我国作为一个农业大国,农产品生产品种繁多、地域广泛、生产环节极其复杂,这使得对农产品的生产和监管更加困难和充满障碍。因此,人们越来越需要借助现代科技,保证农产品在不同形态下、不同物权转移中、不同管理环节内,做到源头可追溯、流向可跟踪、信息可存储、产品可召回[1-6],对农产品的安全生产进行全程跟踪和管理,从而提高生产流程的控制水平,提高产品质量。如何对食品进行有效跟踪和追溯,建立有效的安全机制,从源头上保证食品安全是个很有意义的课题。ISO 标准理解可追溯性系统规定“组织应建立且实施追溯性系统,以确保能够识别产品批次及其与原料批次,生产和交付记录的关系”[7]。食品追溯应与企业质量管理体系相结合,追溯系统首先应该是一个企业的内部质量控制系统。 食品信息可追溯系统作为食品质量安全管理的重要手段,是由欧盟为应对疯牛病问题于1997年开始逐步建立起来的[8]。我国由于信息化等起步较晚,对食品质量信息追溯体系的研究也晚于西方国家。自2000年来,我国有关机构和科研领域在国家科技计划以及各省市的资助下,积极开展食品可追溯技术及系统研究,主要集中在畜禽产品、蔬菜、水果、水产品、粮油产品等方面[9]。2004年6月起,由国家条码推进工程办公室开展的“蔬菜安全追溯系统研究及应用示范工程”在山东淮坊市寿光田苑蔬菜基地和洛城蔬菜基地实施。2005年昝林森等[10]利用事件驱动的面向对象编程技术研发了牛肉安全生产全过程质量跟踪与追溯信息系统。之后,彭霞[11]提出了基于射频识别(radio frequency identification,RFID)技术的海产品供应链溯源系统基本架构,在此基础上,颜波[12]和孙传恒[13]等从物联网角度构建了水产品的追溯平台,设计了分布式水产品追溯系统。2008年,杨信延等[14]结合信息技术,构建了一个以蔬菜安全生产管理为核心的蔬菜质量信息追溯系统。2009年,郑火国等[15]采用信息编码、多平台溯源、硬件研发等技术,建立了多层次、多角色的粮油产品质量安全可追溯系统。结合标准体系,2010年,陈长喜等[16]开发了涵盖肉鸡生产与屠宰加工标准体系,具有第三方认证的肉鸡产业技术体系生产监测与产品质量可追溯平台。2015年,上海市食品药品监督管理局开始执行《上海市食品安全信息追溯管理办法》,对粮食及其制品、畜产品及其制品、禽及其产品、蔬菜、水果、水产品等十大类食品实施强制追溯,开启了我国大范围农产品和食品强制追溯的先河[17]。鉴于此,虽然我国目前对食品质量信息追溯已取得了一定的研究成果,但研究成果多是针对某一具体类别的产品来进行质量追溯系统的分析与设计,涉及到的多是产品种植或生产的某一个或几个环节,没有从食品链的角度系统地分析,适用性不强。因此,需要对食品行业可追溯体系进行进一步深入研究,探索出适合食品行业的可追溯系统,使可追踪体系的实施应用得到规范标准化和普及,降低同行业内其他企业的可追踪系统建设成本。 食品质量追溯系统旨在对食品质量信息进行追踪和溯源,其涉及到食品供应链上不同环节的质量信息数据的采集和传递,需要生产环节、流通环节和销售环节等不同层次用户的协作参与,是一个包含多个以信息系统和嵌入式系统为主的子系统的复杂系统。因此,本文采用面向对象技术的标准建模语言(unified modeling language,UML),它支持需求分析、系统分析、系统设计、系统构造和系统测试等各个软件开发阶段,可以从各个角度透视系统,从各个层面描述系统,从而准确地确定系统功能、结构与行为[18],使系统的分析设计更直观简捷。本文结合我国食品安全现状,在分析国内研究成果的基础上,根据质量追踪体系的特点,分析质量追踪体系的需求,对食品行业质量信息可追溯系统进行了需求分析,对食品生产、流通和最终消费全过程所涉及的要素进行可追溯系统的构建,确定了系统的主要功能模块,并通过UML建模语言对系统有关模块建立了用例模型、动态模型和对象模型。 1 食品质量追溯系统需求分析 为满足对食品质量信息可追踪性的要求,本系统利用信息技术完成食品信息在供应链之间的传输和查询[19],最终达到对问题食品溯源实物,实现对问题食品的定向召回,从而促进食品质量的提高,增强消费者的安全感。经过分析,本系统需要实现的功能模块主要有:综合信息管理、质量监督监管、质量安全监测、记录查询打印和系统管理。系统的具体功能框架如图1所示。 1.1 系统管理 系统管理包括用户管理、系统说明和关于系统,主要以系统管理为主。系统的用户以两种身份进入系统进行操作,分别是系统管理员和一般用户。其中,一般用户包括了监管部门用户、生产企业用户和流通企业用户及其他用户。系统的用户管理由用户信息管理、用户权限管理两部分组成。用户以不同身份登录系统,其相应的权限也将不同。通过对不同用户的分类管理和权限管理,提高了本系统的安全性,从而防止了无关人员获取和执行其权限范围以外的信息和操作。 1.2 综合信息管理 该模块包含了对生产单位管理、生产过程管理和追溯标识监管三部分。在系统中,用户可以根据权限,对相应信息进行增加、修改、删除和查询等基本操作。生产过程管理可以对所在辖区内产品的生产批次、生产日期、原料采购、生产信息、采收和检测的全过程信息进行管理;追溯标识管理包括产品标识的生成、打印和监管。其中,质量信息的获取由生产企业的生产信息采集、流通企业的产品出入库信息采集等子功能模块组成,主要面向生产企业用户和流通企业用户。另外,在对质量信息进行查询时,用户可以按产品名称、产品条码来实时查询产品的相关信息,或通过类别查询某一类产品的相关信息,从而方便快捷地获取所需信息。 1.3 质量监督监管 质量监督监管包括企业信用评价、公众的查询和举报以及在线投诉处理3 个子功能模块。在该模块,质量监管部门的用户可以根据企业日常的质量报表等反映出来的信息对企业的信用等级进行评定,可以对辖区内的名牌企业等进行公布表扬,其他用户可以查看企业信用等级;还可在线及时处理用户对食品的投诉信息。通过质量监管部门、企业和用户的参与对食品企业进行监督,保证食品安全流通。 1.4 质量安全监测 该功能模块主要包括实时检测统计、不合格产品召回和检测综合查询。该模块主要用于监管部门用户对产品的监测,如发现产品存在安全隐患,即可根据产品追溯标识、名称等条件查询对应产品,以召回产品,还可查看已召回产品的详细信息。 1.5 记录查询打印 该模块主要负责系统中产品质量信息的汇总,继而将质量信息生成生产日报表、生产周报表和质量统计月报表,形成质量档案。 1.6 系统管理 系统维护包括用户密码修改、用户权限设置、添加用户等功能。主要对系统的用户进行管理,是保证系统用户有序、系统正常有效运行的基础。 2 UML概述及应用 UML是目前被人们广泛使用的一种面向对象的建模语言,它可以帮助用户对软件系统进行面向对象的描述和建模,对软件开发生命周期的各个过程进行描述。无论在计算机领域、软件行业还是在商业界,UML已经是人们用来对系统进行建模、对系统结构和商业结构进行描述时使用的统一工具[20]。UML为开发人员提供了标准的、易于理解的各种图形来组建整个结构模型,并将这些模型以及它们之间的关系可视化,使模型能更清楚被用户所理解,为用户的使用提供了极大的方便。标准建模语言UML的重要内容可以通过用例视图、逻辑视图、实现视图、进程视图、部署视图五类视图来定义。一般称作为“4+1”视图[21]。 UML建模语言采用图形符号将系统流程分析、系统需求、对象模型化定义到对象设计的整个开发过程完全标准化,以建立一套软件系统从系统分析、流程设计到整体开发的标准表示方法[22]。UML从不同的抽象角度实现系统的可视化[23],应用贯穿于系统开发的5 个阶段[24-26]。 2.1 需求分析 UML的用例视图可以表示客户的需求。通过用例建模,可以对外部的角色以及它们所需要的系统功能建模。角色和用例使用它们之间的关系、通信建模的。每个用例都制定了客户的需求。 2.2 分析 分析阶段主要考虑所要解决的问题,可用UML的逻辑视图和动态视图来描述:类图描述系统的静态结构,协作图、状态图、序列图、活动图和状态图描述系统的动态特征。在分析阶段,只为问题领域的类建模,小定义软件系统地解决方案的细节。 2.3 设计 在设计阶段,把分析阶段的结果扩展成技术解决方案。加入新的类来提供技术基础结构,如用户接口、数据库操作等。分析阶段的领域问题类被嵌入在这个技术基础结构中。设计阶段的结果是构造阶段的详细的规格说明。 2.4 构造 在构造或程序设计阶段,把设计阶段的类别转换成某种面向对象程序设计语言的代码。在对UML表示的分析和设计模型进行转换时,最好要直接把模型转换成代码。因为在早期阶段,模型是理解系统,是对系统进行结构化的手段。 2.5 测试 对系统的测试通常分为单元测试、集成测试、系统测试和接受测试几个小同级别。单元测试是对几个类或一组类的测试,通常由程序员进行;集成测试集成组件和类,确认它们之间是否恰当地协作;系统测试把系统当作一个“黑箱”,验证系统是否满足所有的需求。不同的测试小组使用不同的UML作为他们工作的基础。单元测试使用类图和类的规格说明,集成测试典型地使用组件图和协作图,而系统测试实现用例图来确认系统的行为符合这些图中的定义。 3 基于UML的食品质量追溯系统模型 基于食品质量追溯系统的需求分析,本文将通过用例模型、静态模型、动态模型对系统进行描述、构造和可视化。 3.1 系统用例模型 用例图用以描述系统的外部特性,它主要从系统用户的角度来分析描述系统所需的功能和动态行为。因此,用例图将直接影响用户对最终系统的满意程度[26]。 产品质量信息追踪系统主要包含4 个用例:系统管理员、监管部门用户、生产企业用户、流通企业用户。 3.1.1 系统管理员 由单位指定专人作为系统管理员对系统进行管理维护。系统管理员登录系统后,主要职责是对系统进行用户管理及系统维护,其中,用户管理包括用户权限设置、用户信息管理等,系统管理员可以新建管理员、监管部门用户、生产企业用户和流通企业用户,并为其授予相应的权限。 3.1.2 监管部门用户 监管部门用户进入系统后,主要负责所辖区域的用户管理、读取产品的条码标签信息、产品案件管理、生产企业产品出厂信息查询、流通企业库存情况查询等。监管用户可以对管辖内的企业建立生产类或流通类用户,并对生产企业、流通企业的用户信息进行统计、查询,但不包括数据的增加、删除、更改操作。 3.1.3 生产/流通企业用户 在系统中,生产企业与流通企业用户的操作基本一致。生产企业用户登录系统后,主要负责及时更新、添加最新产品出厂信息,并读取产品的条码信息,以及对历史生产产品信息进行查询。另外,生产企业用户只能对自己的用户信息进行修改,对自己企业的产品信息进行增加、删除、修改、查询等操作。 流通企业用户登录系统后,主要负责添加最新产品出入库信息,并读取产品的条码信息,以及对历史出入库产品信息进行查询。另外,流通企业用户只能对自己的用户信息进行修改,对自己企业的产品信息进行增加、删除、修改、查询等操作。 基于质量追溯系统的功能及业务流程,在系统中,每类参与者由于类型、等级不同,各类用户在系统中担任的角色也不同。系统的用例图如图2所示。 3.2 系统静态模型 在系统分析部分,系统静态模型主要通过建立概念模型来描述现实世界的类与对象以及它们之间的关系[27],在UML中,静态模型主要通过类图表示。食品质量追溯系统类图如图3所示。系统管理员和系统用户联系起来。监管部门用户、流通领域用户和生产领域用户是系统用户的3 种,它们与用户类之间是泛化关系。生产企业产品信息管理和流通企业产品信息管理都依赖于产品条码所携带的产品基本信息。一个系统管理员可以建立多个用户,所以管理员和用户是一对多的关系;一个用户可以查看多个产品的生产、出入库信息,并对其进行管理,同样,某一产品信息可被多个用户同时管理,因此,产品生产信息管理类和产品出入库信息管理类与用户是多对多的关系;管理员和相应用户可以监管零个或多个产品案件,所以,管理员和用户与产品监测之间是多对多的关系。 通过类图分析可知,由这些类构成的系统记录了与产品相关的信息,实现了产品质量信息的管理,是质量追踪的依据。一旦有产品发生质量问题,用户可以依据产品条码对该产品记录进行快速、准确的定位,追踪出产品的流通信息和生产信息,根据产品条码查询出产品的基本信息,对问题产品进行定位。 3.3 系统动态模型 系统动态模型包括交互模型和行为模型[20]。交互模型一般包括时序图和协作图,行为模型一般指活动图和状态图。本文根据需要,在对系统进行动态建模时,主要采用了时序图和活动图来对系统进行分析。 3.3.1 时序图 时序图强调按时间顺序描述系统各元素之间的消息传送[27]。时序图的纵轴从上到下表示时间顺序,横轴从左到右表示有关联的各个相关对象,关系密切的相关对象安排在相邻位置。食品质量追溯系统的时序图主要有5个:1)用户管理模块中系统内各类用户管理的时序图;2)用户进入系统的时序图;3)综合信息管理的时序图;4)质量监督监管的时序图;5)质量安全监测的时序图。其中,综合信息管理的时序图为核心,因此,本文主要以信息采集与查询的时序图为例进行说明,具体如图4所示。 由图4可知,系统中产品信息的采集主要由系统中的生产企业用户和流通企业用户完成。在进行信息采集时,如果是新产品,用户首先要读取产品的条码信息,然后在系统中录入产品的其他必录信息,包括生产单位和生产过程信息。监管部门用户进入系统查看产品信息时,首先要选择输入条件,可以是产品条码、也可以是产品名称,系统数据库会根据查询条件将相应的产品信息返回给监管部门用户。生产企业、流通企业用户查询时,输入查询条件,即可获取并查看企业产品信息。 3.3.2 活动图 活动图是UML中一种用来描述系统动态行为的图,它由一系列的动作组成,主要描述系统各活动之间是如何协同工作的。当一个操作必须以一定的顺序完成一系列活动时,就可以采用活动图来描述相关活动的顺序。 在食品质量信息追踪系统中,有明确活动的有系统管理员、政府监管部门用户、生产企业用户、流通企业用户等,由于生产企业信息是质量追溯的关键,因此,本文以生产企业用户为例建立活动图,具体如图5所示。 系统中产品信息的采集主要来自生产企业用户和流通企业用户。生产企业用户主要负责产品的生产出厂信息的采集,而流通企业用户主要负责产品的出入库信息的采集。生产企业用户首先登录系统,如果为新用户,则需要系统管理员为其授予相应权限方可进入系统操作。进入系统后,生产/流通企业用户可以对企业产品和内部用户进行管理。在实现企业产品管理时,用户查询历史产品信息,如果有新产品,则首先读取新产品的条码信息,并将相关信息录入系统数据库,更新数据库。在用户管理中,生产企业用户可以对企业内的用户进行增加、删除、修改、查询。 4 结 语 “民以食为天,食以安为先”。食品安全关乎每个人。食品安全问题不仅会损害消费者的权益和健康,还会阻碍食品行业的持续发展,进而影响社会稳定和经济发展。为应对食品安全问题,有效提升食品质量水平、提振社会消费信心[28],满足企业与消费者对食品质量信息的需求,将生产和消费联系起来,在保证质量的过程中,亟需运用信息化手段,建立食品质量追溯系统,来有效地标识食品生命周期的各个环节,以保持食品的供应链信息、保障食品质量。本文结合我国食品安全现状,在分析国内外对食品质量追溯研究现状的基础上,对食品质量追溯系统进行需求分析,确定了该系统的五大基本功能模块,分别是综合信息管理、质量监督监管、质量安全监测、记录查询打印和系统管理,每个功能模块下又包括不同的子功能模块,涵盖了食品从生产到销售过程中的各环节,其用户包括生产部门、企业和公众消费者。由于食品质量追溯系统的是一个包含多个以信息系统和嵌入式系统为主的子系统的复杂系统,因此本文采用功能强大且适用性强的UML建模语言,介绍了该系统建模中部分主要的用例模型、静态模型、行为模型和交互模型,通过用例图、类图、时序图和活动图从静态和动态两个方面对系统进行了描述和分析。该食品质量追溯系统从食品链的角度系统地分析了为食品质量追溯系统的需求,为保障食品产业质量安全信息的可追溯性提供了保障,具有普适性。同时,提供了食品链中食品与来源之间的联系,确保食品源的清晰,以实现“从农田到餐桌”的质量监控和追溯。 王新平, 刘萍. 基于统一建模语言的食品质量追溯系统分析[J]. 食品科学, 2016, 37(9): 244-249. DOI:10.7506/spkx1002-6630-. http:// WANG Xinping, LIU Ping. Food quality traceability system based on unified modeling language[J]. Food Science, 2016,37(9): 244-249. (in Chinese with English abstract) DOI:10.7506/spkx1002-6630-. http://
文章来源:《食品与发酵工业》 网址: http://www.spyfjgy.cn/qikandaodu/2020/1121/449.html
上一篇:食品冷链物流配送中心作业流程仿真与优化
下一篇:舰船自给力设计要素分析