转自:http://www.cnblogs.com/gaoxiang/articles/352534.html

广州市环境监测中心站

发布日期: 2004-09-27
 

*

 
* *
 

解决方案概述

用户档案

环保行业

商业背景

解决方案

广州市环境监测中心站

收益

分层构架提高开发效率,提高代码的可维护性

.NET技术使得快速高质量的开发成为可能

运用用户控件技术轻松地定义自己的控件

软件和服务

SQL Server 2000

Windows Server 2003

Visual Studio.NET

合作伙伴

广州正道科技有限公司

* *

公司概述

广州正道科技有限公司 成立于1992年 ,注册资本 500 万元,现有员工 280 多 人 。主要包括业务软件开发、硬件及嵌入式软件产品研发、系统集成、用户培训与技术服务等业务。业务对象包括企事业单位管理信息化、环保行业信息化、远程视频监控、业务流程系统、家居、家电产品嵌入式软件的研发。面向新世纪的2004年,公司将专注于中国行业信息化应用,致力于为客户提供以应用为核心的信息技术产品、应用方案及服务,全面构建互联网时代客户所需的核心业务系统及电子商务平台,成为中国企业、政府等走向数字化时代的倡导者和服务者。正道将继续秉承“和谐、参与、创新”的风格,与客户一起成长,客户的成功就是正道的成功!

商业挑战

监测站原有的信息系统都是单机版,无法实现各科室之间的数据共享,不能为监测站的决策层提供信息支持,从而在中心站内形成了一个个信息孤岛。为了实现站内所有数据的共享,在各部门之间提供协作服务、消息服务及流程控制,实现业务集成,大幅度的提高业务办公效率,广州市环境监测中心和正道科技联合开发了广州市环境监测中心站监测业务管理系统。

广州市环境监测中心站环境监测业务任务管理系统将建设成一个将先进管理理念(自定义工作流)与先进软件技术(组件架构设计)相集成的工作流管理系统,系统能够因应环境监测业务的发展,在人员流动与变更、机构改革等情况下能作相应调整,体现“自定义工作流”设计思想,丰富工作流的设计理念。

解决方案

监测业务管理系统负责广州市环境质量监测、污染源监督监测、竣工验收监测、委托监测、仲裁纠纷监测、污染事故应急监测、样品委托监测等监测核心业务的管理。解决方案按功能可以分为以下10多个主要模块

计划管理:统筹安排并分配于各区级环境监测站与网络站(计14个监测站机构)的污染源年检计划任务;

合同管理:针对不同类型的委托监测单,进行合同信息的管理,将以前的系统对应的历史数据进行平滑的移植;

任务管理:针对不同的监测项目进行任务信息的管理,选取不同的监测项目进行不同的委托监测任务登记表的录入,并按照当前的经办人生成记录;

现场信息管理:在进行现场监测前,有关监测人员可从客户机按任务编号,打印现场监测记录表,表中的受检单位、监测类别、样品类别等信息由系统自动生成;现场采样完成后,对现场监测的结果进行录入,以核实任务登记表被落实的情况;

样品管理:进行样品交样、接样、分析、解码的管理,以保证样品的合法性及有效性

流程定义:对不同的监测类别建立工作流名称与工作流说明等相关资料,为每个工作流程设定启动人、审核人和核准人,即分配任务。系统将会根据登录者有无启动、审核、核准权限来限制登录者的行动;

监测报告管理:针对不同类型监测项目类别(如水、气、声),进行不同的工作流程选择,并最终得出监测结果的汇总并进行监测报告的打印;

质量信息管理:针对监测业务流程存在不合格的情况进行记录并且及时通知质控人员,以进行有效的质量控制和管理;

授权签发管理:在监测项目类别授权签发界面内分别设定各科室所负责的监测报告的签发权限;

系统管理:定义拥有相关执行权限的角色, 定义操作此系统的用户,并设定用户的角色,以控制各个用户读、写页面的权限。

 

 

系统采用三层架构设计,分为Web层,应用服务层和数据库层。其中应用服务层又可以细分为业务外观层、业务规则层、数据访问层、数据实体层和系统配置层。

 

 

Web 层为客户端提供对应用程序的访问。这一层是作为“监测业务管理系统”中的 Web 项目实现的。Web 层由 ASP.NET Web 窗体和代码隐藏文件组成。Web 窗体只是用 HTML 提供用户操作,而代码隐藏文件实现各种控件的事件处理。WEB层对应使用者接口 (UI) 组件显露界面。Web层向用户提供服务,接受用户的工作流参数设置,合同管理、现场监测管理、样品管理等的输入,调用质量信息管理、任务管理信息等完成用户的需求。在这个层次里面没有业务逻辑的处理,而只是调用业务层面提供的服务。

业务外观层用作隔离层,它将用户界面与各种业务功能的实现隔离开来。除了低级系统和支持功能之外,对数据库服务器的所有调用都是通过此程序集进行的。包括流程管理接口 (UI) 元件、事件接口(UI) 元件和用户、组织结构、权限管理接口(UI) 元件,以及其它接口(UI) 元件。

业务规则层包含各种业务规则和逻辑的实现。主要包含两个方面功能:按照《极限数值的表示方法和判断方法》(GB12580-89)、《数据修约规则》(GB8170-87)、上级管理部门对数据考核的格式要求和计算机技术规范,对数据精度和格式进行逻辑处理;对该用户权限范围内所能读、处理、跟踪或删除的数据进行逻辑处理。

数据访问层提供对数据库访问的服务。在这个框架上构建的应用元件,不直接操纵数据库,而是通过类库提供的数据访问服务访问实体层(工作流模型资料、工作流实例清单、用户应用数据资料封装实体)。数据库访问服务作为应用程序同数据库之间的中介者,能够有效防止对数据库的不安全操作。在系统架构中,对数据库进行操作的SQL语句不在是程序中的硬编码,而是同数据实体层的实体类结构一样在XML文件中描述,其结构符合JIXML规范。这样,在系统的便于修改性和灵活性上能够得到很大的提高。

数据实体层包含用于在各层间传递信息的数据集,如ASP.NET中的 DataSet、DataReader 或XML。在应用程序的设计中,数据库的访问安全是非常重要的,我们需要将对工作流模型资料、工作流实例清单、用户应用数据资料的访问集中起来,放在数据实体层以保证良好的封装性和可维护性。

系统配置层,系统配置参数统一放在 Web.config 文件中 ,给应用的部署和移植带来非常大的方便。系统配置层提供统一的出错信息提示, 用友好界面的方式说明每种可能的出错或故障情况时的形式、含意及处理方法。并提供可管理的操作及记录授权机制,通过此机制处理系统方面安全问题。系统同时提供应用日志记录相关操作情况。

解决方案的技术特点

广州市环境监测站监测业务管理系统方案基于分布式架构的思想进行设计,利用面向对象分析设计建模技术,采用 .NET技术和规范实现。

自定义工作流

“工作流”实际上就是事务处理的“程序”与“规则”, “程序”对应于“流程”,而“规则”则体现了“权限”,所以“工作流”系统的实现,绝不仅仅是对流程的定义,而必须是同时定义相应的“规则”,即规定流程每一个环节的执行人能看什么和能做什么(约束其权限),这种“规则”的定义和流程的定义环环相扣、密不可分。因此,我们说,一个真正的“工作流”系统应是一个实现了“流程”与“权限”结合自定义的系统。

基于Microsoft .NET平台上最新开发的独特的、先进的“正道流程与权限自定义工具”来完成自定义工作流,该工具不但大大缩短了系统开发周期,而且大大提高了系统的自适应性和可扩展性,为用户提供了最大程度的灵活性和自主性。

分布式架构设计

应用系统的设计,必须遵循的最重要的原则就是高内聚和低耦合。软件分层的本来目的,就是提高软件的可维护性和可重用性,而高内聚和低耦合正是达成这一目标必须遵循的原则。尽量降低系统各个部分之间的耦合度,是在监测业务管理系统分布式架构设计中重点考虑的问题。

灵活的报表管理

应用系统自身有相应的报表管理,可实现初步的报表功能,同时对复杂的报表,系统采用水晶报表Crystal Reports方法实现。Crystal Reports是高效能报表系统的世界标准。可从任何数据来源创建丰富、交互式的内容,并将它集成到应用程序。开发简单灵活的设计环境技术并充分使用Web的优势,实现快速和交互式的报表系统。Crystal Reports可根据管理体制和业务需求的改变,对相应报表格式和内容的进行改变。允许用户按需自定义统计查询条件,能够自定义报表输出模板,实现报表的灵活、高效。另外,系统可将查询结果数据保存到EXCEL中,通过EXCEL操作进行报表的输出。

可视化的流程设计定义工具

可视化的流程设计引擎可以大大降低流程设计的时间和难度。该流程设计工具可以设计比较复杂的工作流程:并行流程,串行流程,回退流程等。每个节点的入口参数和出口参数可以灵活设置。能够满足监测站业务的流程要求。

MAIL系统集成

处理过程中相应信息会自动通过公司的 MAIL 服务器(如:Exchange Server)通知相应的处理者。

环境监测是国家环境保护政策制定,落实和监督的重要数据来源。随着广州市环境监测管理工作日趋复杂繁重,广州市环境监测站环境监测管理工作量不断增加。原有的监测工作信息管理手段愈来愈不能满足环境监测管理、政府环境管理与决策、社会客户的需求。广州市环境监测中心站监测业务管理系统则通过实现工作流程的信息化管理,提高监测站对监测任务的管理和跟踪,最大程度的减少任务处理过程中等待,闲置等时间浪费。提高跟踪效率。通过使用信息管理减少文件处理和管理的繁重工作,做到部分管理工作的无纸化办公。通过使用信息管理系统强大的数据统计和分析功能,获得具有巨大价值的统计数据,为监测中心站和上级有关部门提供决策依据。

商业收益

分层构架提高开发效率,提高代码的可维护性

一个好的系统架构,不仅仅只是从技术的角度来看,而且,它还应该适用于团队开发模型,可以方便一个开发团队中各个不同角色的互相协作。我们在监测业务管理系统的开发过程中,采用分布式架构将Web页面和业务逻辑组件分开,可使页面设计人员和程序员的工作分开来同步进行而不会互相影响。 有利于项目团队的分工协作。业务外观层作为一个访问接口,将界面设计人员和逻辑设计人员分开,使得系统的开发可以实现纵向的分工,不同的开发人员可以关注自己的领域而不会受到干扰,大幅度提高开发效率。

.NET技术使得快速高质量的开发成为可能

.NET 框架提供的统一的编程模式,使得开发人员可以在不同类型的开发任务间自如的转换。强大的基本类库的支持使得开发的强度大大减轻。Visual Studio.NET提供的开发调试环境,使得应用的开发和调试的效率得到极大的提高。

运用用户控件技术轻松地定义自己的控件

应用ASP.NET自定义控件技术定制可重用组件减少代码开发量。ASP.NET 提供的许多内置服务器控件,如日期选择控件,DropDownList控件、Datagrid控件等,这些控件使用方便,减少应用的开发的工作量。除了 ASP.NET 提供的内置服务器控件外,在监测业务管理系统开发的过程中,针对监测报告格式的多样性(有32种样式),定义了4个用户控件,只需做少量的修改,便可呈现不同类别的监测报告,大幅度提高程式员开发的效率

版权声明:本文为ADTL原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/ADTL/articles/3009018.html