徐广翔,韩 亮
(山西大同大学煤炭工程学院,山西大同037003)
煤矿安全评价辅助决策系统 (Coal Mine Safety Evaluation Assistant Decision System,简 称 CMSEADS)是信息管理系统在煤矿安全管理方面的应用,它应用安全系统工程和信息管理系统的原理和方法,对煤矿建设和生产过程中可能存在的各种危险、有害因素进行定性、定量分析和预测,判断其发生事故和职业危害的可能性及其严重程度,提出合理可行的安全对策措施及建议,为制定防范措施和管理决策提供科学依据。煤矿安全评价辅助决策系统也是一种为安全评价提供信息服务和辅助决策的人机系统[1]。
CMSEADS是以煤矿安全主管部门在决策中所需要达到的目标以及职能管理部门所提供的业务处理目标为依据,采用B/S模式开发出了一个内容较全面的具有统一标准和通用性的、结构比较合理、操作更加简便的煤矿安全综合评价系统,使得煤矿安全评价工作更加准确、快速、方便、安全,实现计算机信息化方式下的煤矿安全评价管理。
煤矿安全评价辅助决策系统采用多层B/S体系结构,也就是在传统的三层B/S结构中增加了一个或多个中间层。该层使用中间件技术,由相应的IIS应用服务器来管理,它是多层C/S体系结构的一种改进[2-3]。
在多层B/S体系结构中,WEB服务器主要是接收数据请求,对数据进行加工,将加工后的结果返回以及动态网页生成。如果涉及对数据库的访问和企业的业务规则,则向应用服务器发出请求,应用服务器根据请求向数据库服务器发出请求;数据库服务器响应请求,并将结果或状态返回给应用服务器;应用服务器再依据企业的业务规则对数据进行加工、整理,并将处理后的数据返回给WEB服务器;WEB服务器以动态网页的形式返回给客户浏览器。
从多层B/S体系结构的流程可以看出,WEB服务器不直接访问数据库服务器。而是通过应用服务器,将企业的业务规则以及对数据库的操作封装在应用服务器的组件中,WEB服务器仅仅通过应用服务器中的组件提供的接口实现相应的业务操作,这在很大程度上提高了B/S结构的安全性。
煤矿安全评价管理中,采集信息数据具有多样性和不确定性的特点,为此CMSEADS采用Abstract Factory,Singleton等设计模式,将常用的数据库访问类再作一次封装,建立通用数据库访问接口,实现了中间件DataBase Engine(数据库引擎)与后台数据库无关,这样就屏蔽了后台数据库的复杂性和异质性,消除了不同数据源之间数据模型及其他方面的差异,提供对多种数据源的支持,也大大地提升了自身的扩展性。CMSEADS可以针对不同的数据源对请求进行处理,使之能成为目标数据源所能理解的形式,如图1所示。
CMSEADS中的数据库引擎完成的工作主要包括数据源指定,数据库连接建立,数据录入,数据更新,评价模型确定和运算等方面,限于篇幅只给出DBEngine实例构建过程。从代码中可以看出DBEngine是通过读取配置文件 (web.config)中["typeName"]的枚举值来判断所要进行连接的数据源类型。
public static IDBEngine GetInstance()
{
IDBEngine db=null;/读取配置的程序集名称
string assemblyName = "Common";
/数 据 操 作 对 象 的 类 型 Common.DataAccess.SQLDBOperator
string typeName = ConfigurationSettings.AppSettings["typeName"];
/加载程序集(加载数据访问组件Common)
Assembly ab = Assembly.Load(assembly-Name);
/通过程序集对象,创建数据访问实例对象
db=(IDBOperator)ab.CreateInstance(type-Name);
return db;}
CMSEAD可以辅助煤矿企业建立适合本身的安全检查表。将一个庞大的评价任务根据业务划分成若干小项,再将每一小项进行数据处理,确定评价指标权重,并分析数据结论的可靠性程度及各评价专家的偏离度。实现了定性与定量评价相结合,完成手工无法完成的工作,使安全评价结果更符合实际,评价手段更加现代化,知识应用更为充分,从而改变过去单一固定模式的静态安全管理为适应环境变化的动态安全管理,这是目前安全评价发展的主要趋势[5-6]。
1.3.1 煤矿安全评价辅助决策系统
主要功能有:
1)评价模板的维护功能;
2)安全信息录入、修改、删除功能(支持数据的多样性);
3)实现安全评价信息的存储、修改、删除和查询并提供在线评分、评级功能;
4)通过系统加密方式,限制非权限人员进入系统或限制不同人员实现不同的功能,保证系统安全性及可靠性并提供数据录入及报表输出功能。
1.3.2 煤矿安全评价辅助决策系统
辅助决策系统图DFD见图2。
图1 数据库支持多种数据源
1.3.3 系统模块的实现
如图3所示,为煤矿安全评价主页面,该页面的左边提供煤矿安全管理评价中所涉及到的安全管理评价、开采系统评价、运输提升系统评价等方面的相关评价链接,页面右边提取数据库安全管理评价数据库中的信息,包括:项目、评价规定、标准分、评分方法、项目代码这些与安全管理评价信息相关的内容[7]。
示例代码:
protected void GridView1_RowEditing(object sender,GridViewEditEventArgs e)
{
string strUserName = Session["UserName"].ToString();
string strTExpertID=
Convert.ToString (GridView1.DataKeys [e.NewEditIndex].Values[1].ToString());
Sqlselete sl= new Sqlselete();
int flag = sl.IsEvResults(strUserName,strExpertID,strType);if(flag == 0){
Response.Redirect ("AddEffectEv.aspx?ExpertID="+ strExpertID +"&ExpertID=");
}
else
{/该专家已参与评分
Response.Write("<script language=java script>alert('已评分过!')</script>");
}
}
图3 煤矿安全评价辅助决策系统主页面图
1.3.4 煤矿安全评价辅助决策系统特点
1)建立了专门的数据库管理系统,能快速准确地收集处理安全信息数据;
2)采用多种评价模板,能够处理复杂的评价规则与逻辑;
3)用户界面风格统一,操作简便;
4)针对不同的权限将用户分为基础信息录入员和评价专家两类,前者能够使用系统在本地或远程获得安全评价系统所能提供的评价服务;后者不仅包括使用系统所能提供的评价功能,还要求能够在线维护数据库中的信息[8-9]。
考虑煤矿企业的实际条件,煤矿安全评价辅助决策系统是一基于WEB的应用系统,运行于internet或intranet环境中,客户只要有浏览器即可运行本系统。服务器端采用Windows 2003Server服务器操作系统,除此之外还需要Microsoft Internet信息服务(IIS),SQL Server 2000或者Access等关系数据库系统。
基于ASP.NET的煤矿安全评价辅助决策系统,使得该系统具有现实的通用性和推广性,具有充分的使用价值。对多源数据库的支持使得评价系统的数据存储和数据多样性等问题得到有效解决,对安全评价工作的自动化做了必要的探索,希望能给以后的研究者以帮助。
[1]杨云,王毅.ASP.NET2.0程序开发详解[M].北京:人民邮电出版社,2007.
[2]程卫民,黄元平.煤矿安全评价智能决策支持系统的研究[J].中国安全科学学报.1996,6(增刊):43-47.
[3]谢延红,钱爱增,胡凯,等.ASP.NET AJAX框架及在Web开发中的应用[J].长春工程学院学报:自然科学版,2007,8(2):56-59.
[4]岳国伟,梁永全,陈玉娥.ASP.NET中数据分页技术的研究[J].计算机应用研究,2007(9):14-19.
[5]蔡文纲,蔡鸿明,赵原.ASP商务模式下的分层服务管理模型[J].武汉大学学报:工学版,2006,39(4):58-63.
[6]李勇平.ASP.NET2.0(C#)基础教程[M].北京:清华大学出版社,2008.
[7]王岩.ASP.NET3.5企业级开发[M].北京:人民邮电出版社,2008.
[8]陈则芝,李恒胜.基于B/S模式的在线考试系统设计与实现[J].保定学院学报,2008,21(2):64-69.
[9]韩亮.数字矿山空间数据库引擎的研究[J].煤矿现代化,2008(24):118-119.