王仲昭/上海市纺织科学研究院
实验室信息管理系统的产生是随着分析测试仪器自动化程度的提高、实验室规模与处理能力的扩大而逐步出现的。20世纪80年代初,大规模集成电路的普及使得仪器的自动化水平大大增强,进而实验室单位时间内所能完成的测试任务大大增加,这就对实验室的管理提出了新的要求。同时随着计算机数据处理能力及数据吞吐量的极大提高,采用计算机信息系统来自动管理实验室成为可能。
通过近几年的信息化建设,国内大部分实验室都配备了自己的局域网系统,各种计算机设备的配置也都是很高档的。但是运行于网上的软件系统却没有。这就形成了这样一种局面:实验室花大量经费建好局域网后却不知道拿它来干什么。随着全球经济一体化进程的加快,国家在大力提倡、资助各行业的信息化进程,可以说目前国内实验室信息管理系统市场处于一种天时、地利、人和的最佳时机。
实验室信息管理系统就是利用计算机网络、数据存储、快速数据处理等来对实验室进行全方位管理的计算机软、硬件系统。通过它,实验室可以达到自动化运行、信息化管理和无纸化办公的目的,做到检测申请管理、实验室检测管理、后勤管理以及检测报告的自动生成、管理。实验室信息管理系统在取代传统的实验室管理后,对实验室提高工作效率、降低运行成本起到至关重要的作用。
西方发达国家的实验室信息管理系统市场在20世纪90年代就已经完全打开,现在实验室信息管理系统已经成为一个标准词汇被广为接受。国内实验室信息管理系统在20世纪90年代开始为人们所知晓,并在石油化工等行业得到了一些初步推广,但总的来说还远没有达到普及的程度。这当然也受到了各种条件的制约:体制、观念、经费等。
目前市场上主要的实验室信息管理系统软件是英国实验室系统公司(LabSystems)开发的,其软件被公认为是世界上功能较强大,也是应用最广泛的实验室信息管理系统软件。其主要特点是操作方便,新的软件版本都使用了人性化的IE界面,可与Oracle 数据库等多种数据库捆绑销售,时时数据管理,并提供数据的安全保证和在线技术支持。这类软件在功能性能各方面都具有很大的优势,不过价格不菲。许多大型仪器供应商都与他们合作开发了可与其仪器配套的管理系统。近几年国内的一些软件开发商也注意到了这个巨大的市场,各自开发出了不少信息管理软件。主要使用VB与C/S架构。虽然价格很具诱惑性,但功能和兼容性与进口软件相比还有些不足。
本文所讨论的系统主要以检测信息的分析、数据的传递和汇总、报告的生成及仓库的管理作为重点。其他人员管理、质量管理可在将来的升级版本中加入。为了解决数据库的集成和方便的可视化界面的问题,在软件技术上决定采用VB+ACCESS的组合,不仅兼容性好,对硬件的要求比较低,而且由于对网络带宽的要求不高,可以做到信息的高速传输。在硬件技术上,决定统一使用HP品牌的服务器和商用机,和家用机相比,商用机稳定性和兼容性都能经受考验。网络方面使用CISCO的路由器和支持VLAN的交换机,其可靠的硬件防火墙可以将网络风险降到最低,VLAN技术可以将管理部门和实验室划分在不同的广播域,能确保网络的流畅不中断。
不少市场上的实验室信息管理系统仅仅软件部分就需要几万元来购买,且不算上软件日后升级的费用,包括硬件的总花费超过20万元以上。本系统由于采用VB+ACCESS的组合,软件上几乎将费用降到了最低,所以在硬件上更考虑了稳定和兼容性,采用知名品牌公司的设备,服务器G5 1台,商用机10台,激光打印机4台,企业级路由器1台,交换机4台,内部网线插座已经布好。总经费控制在10万以内。考虑到以上因素,实验室自行开发小型经济实用简单的信息管理系统也是可行的。
主业务流程包括:申请管理,检测管理,采购管理。
本系统的主要功能是实验室信息化管理。客户先将检测申请提交给申请管理。申请管理将检测项目汇总给检测管理进行分类统计,检测管理对一系列客户的申请进行分类后,将每个项目所需要用到的试剂和所有信息提交给实验员。
实验员按系统显示的信息到试剂仓库领取试剂,并对来样进行分析。检测完成后将信息传送给检测管理进行汇总和审查,将最终结果信息传送给申请管理,提交客户。
试剂由试剂仓库统一管理,若有缺货,自动通知采购部去供应商处采购。
图1 实验室的信息管理系统
图2 检测申请管理1.0
图3 检测管理2.0
实体:客户,项目,实验员,试剂 ,供应商,采购员。
1)各自属性
客户:客户编号,客户姓名,联系地址,联系电话 ;
项目:项目编号,测试项目名称,项目状态,建立日期,接收日期,完成日期,备注;
实验员:工号,姓名,职称;
试剂:试剂编号,试剂名,规格,数量;
供应商:供应商编号,供应商名称,联系地址,联系电话;
采购员:工号,姓名,职称。
2)实体间的联系
1对N:客户与项目;
N对M:项目与实验员,项目与试剂,实验员与试剂,试剂与供应商,试剂与采购员,采购员与供应商。
图4 E-R关联
1)客户(客户编号,客户姓名,联系地址,联系电话);
2)项目(项目编号,客户编号#,测试项目名称,项目状态,建立日期,接收日期,完成日期,备注);
说明:客户编号是项目引入的外键,表示申请关系。
3)实验员(工号,姓名,职称);
4)检测(项目编号#,工号#,项目状态,接收日期,完成日期,备注);
说明:两个外键作为主键,表示多对多的检测关系。
5)试剂(试剂编号,试剂名,规格,数量);
6)领用(项目编号#,工号#,试剂编号#,规格,数量);
说明:三个外键作为主键,表示多对多的三元领用关系。
7)采购员(工号,姓名,职称);
8)供应商(供应商编号,供应商名称,联系地址,联系电话);
9)采购(工号#,供应商编号#,试剂编号#,规格,数量);
说明:三个外键作为主键,表示多对多的三元采购关系。
软件开发环境:VB6.0 ACCESS 2003
VISUAL BASIC是由MICROSOFT公司开发的程序设计软件,是一种高级编程语言,可以设计用户界面和编写程序代码。VISUAL BASIC向程序员提供图形对象和控件进行应用程序的界面设计和程序设计,提供了很大的方便。
ACCESS是MICROSOFT公司的另外一款软件,是OFFICE中的重要组成部分,能与OFFICE中其他软件和SOL SERVER进行无障碍的沟通。相对其他数据库软件,ACCESS的使用简单明了。
软硬件要求:PIII以上微机,256MB内存,VGA显示器,40G 硬盘,WINDOWS 2000/XP,IE6.0。
表1 程序间的联系
5.3.1 登陆模块
由于不同部门的用户有着不同的权限,本系统在设计时将注册的用户自动分配到其所在的部门,先将注册好的用户名和密码的字段存放在数据库中,用户登陆时输入的用户名和密码放在两个缓存中,从数据库中把与输入的用户名相匹配的取出,没有则显示“无此用户”;若有则比较输入的密码,错误则显示“密码错误”;若正确则根据其在数据库中已分配好的权限显示内容和可操作内容。
5.3.2 检测申请管理模块
这部分模块以录入表的形式将客户的信息、检测的项目进行汇总,并在设计时考虑了输入错误和输入不完整的情况,因此添加了判别语句,只有全部输入完整才能保存,并且联系电话一栏中用ASCII码限制了只能输入数字。本模块也设计为自动显示仓库里试剂的情况,使销售及时知道此检测项目能否立即实施。录入完整后客户信息自动保存在客户数据库中。
5.3.3 检测管理模块
实验员登陆系统后可以选择接收菜单接收所有项目列表,包括未接收的和已经完成的,也可以选择管理菜单管理实验员。点击项目列表中的项目后可查看其详细内容。打开未接收项目可以通过按接收按钮将此项目接收并开始测试,并根据提示领取必要的试剂。若试剂短缺,则暂不能接收,在接收并测试完成后录入测试结论并提交。
5.3.4 试剂管理模块
试剂管理根据仓库情况更改试剂状态并发送缺货单通知采购管理,更改的结果会同步显示在销售部门和实验室的界面上。
5.3.5 采购管理模块
采购管理模块可以接收来自试剂管理的缺货单进行采购,也可以对采购员和供应商进行管理。
考虑到此系统将来的扩展性,局域网部分使用VLAN分割为三个广播域,分别分配给市场客服部(192.168.0.1 网段 ),实验室(192.168.1.1 网段),仓库(192.168.2.1网段),防止广播风暴和不必要的冲突。
本测试使用了单元测试(表2)。对软件规格说明、设计和编码进行最后的复审,尽可能发现软件中潜在的错误。
经过多次详细的系统测试,发现并改正了一些系统BUG,并通过测试提高了稳定性和易用性。
本系统是在对各类LIMS的理解基础上,着重设计了实验室测试与采购的整个过程,由于有多年实验室工作的经验,更增加了许多人性化设计并尽量简化一些不常用的功能。整个系统有效、简单、不易出错。但此系统毕竟是在VB+ACCESS的基础上开发的,功能性和扩展性相对比较差,因此增加其可升级性和功能拓展性是未来必须面对和解决的问题。
表2 单元测试
[1] 张虹主编. 软件工程与软件开发工具[M]. 北京:清华大学出版社,2004.
[2] 齐治昌,谭庆平,宁洪. 软件工程,2版[M]. 北京:高等教育出版社,2004.
[3] 元莱滨. VISUAL BASIC程序设计[M]. 北京:清华大学出版社,2006.