厉砚磊 董绪琪 林海年
(中车青岛四方机车车辆股份有限公司信息技术部,山东青岛 266111)
基于SOA质量管理系统的开发方法研究
厉砚磊 董绪琪 林海年
(中车青岛四方机车车辆股份有限公司信息技术部,山东青岛 266111)
为了减少各项工作的策划、实施、改进等工作量,质量管理系统因此产生。本文对传统面向对象和基于构建方法在软件开发过程中代码重用方面的不足进行了分析,并且对面向服务的体系结构及其优势进行了分析。最后结合一个关于质量管理系统的实际应用,给出了利用Web服务实现SOA的有效方法。
SOA Web服务 质量管理系统
面向服务的体系结构(Service Oriented Architecture,SOA)是一种充分利用Internet技术,满足企业对不断增长的业务运营模式需求的应用框架。SOA可以解决信息系统之间的“信息孤岛”问题,并能提供随需而变的服务。SOA可以根据需求通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。本文讨论了如何利用SOA提供的这种较面对对象和基于构件更好的软件复用方法去构建出一个松散耦合的分布式系统,使其达到复用度高和扩充性好的目的。
对于SOA的定义有很多定义,因为观察的角度不一样。但是从体系结构方面考虑可以这样给出:SOA是一种松散耦合的软件体系结构,在这种体系结构中,由各自独立可复用的服务去构成系统功能。这些服务向外公布有意义的接口,软件的开发是通过对这些实现透明的接口的调试来完成。
在面向服务的体系结构中主要有三种角色:
(1)服务请求者:可以看作是需要其他服务提供给自己服务的一个服务、一个应用程序或者是一个软件模块。它到服务注册中心去查询自己需要的服务,然后通过传输绑定服务,并且获得执行服务功能。(2)服务提供者:可以看作是能够通过网络寻址找到的应用或服务实体,能够接受和执行来自服务请求者的请求,它把自己的服务和接口契约发布到服务注册中心,为服务请求者发现和访问该服务做好准备。(3)服务注册中心:可以看作是服务发现的中介,通过它里面包含的所有可用服务的存储库,为服务请求者提供查找服务提供者提供的服务接口功能。
图1 系统总体基本框架
与传统开发方法相比,SOA的特点在于具有:基于标准、松散耦合、共享服务和粗粒度等,其优势可表现为:(1)易于集成现有系统:在对现有系统不做修改的前提下,SOA可将现有系统和应用迅速转换为服务。通过封装可以提供服务接口的应用层来访问遗留系统,因此不用修改现有系统体系结构。(2)具有标准化的架构:不论任何时候开发的组件,只要符合标准,都可以合并在一个结构良好的SOA系统中。而且不同的开发者开发出的组件将被作为服务方便的添加部署在现有的基础架构中。(3)提升开发效率:由于SOA在可复用方面的特点,软件在设计、开发、测试和部署时可以充分利用已有服务。因此,其开发周期可以显著缩短。(4)降低开发维护复杂度:通过采用SOA体系结构,在进行二次开发时成本急剧减少。同时,由于系统具有松散耦合的特征,维护成本也大大减少。
系统总体框架图1所示:管理基础平台、业务执行层和外部相关系统集成层构成了项目的总体架构。系统管理基础平台为质量管理系统提供运行的基础,包括任务管理、用户管理、权限管理、流程管理、报表管理等。业务执行层由以下系统构成:设计工艺质量、供方质量、制造过程质量、售后重量等。外部相关系统集成层包括PDM系统、MES系统、ERP系统等。系统的建设基于开放式架构,支持后续相关单位的功能扩展与数据集成。
SOA的关键核心概念是重用。重用强调的是不进行重新编码,使已有的服务、对象和应用来构建一个新的系统。为了方便从不同的数据源获取数据并且分析数据,又结合SOA体系结构的松耦合、分布性、灵活性和可靠性的特点得到解决。具体的设计如下:
(1)管理决策层。管理的仪表盘是质量控制的中心,对采集到的信息进行关联、统计和分析,为企业的各级管理人员提供决策依据。(2)体系管理层。为了实现管理工作的不断提高,质量体系管理需要在质按量目标、质量成本、外审、内审、质量档案等实现提高。(3)产品实现层。产品实现过程质量管理涵盖设计工艺质量改进、供应商质量、进料检验、生产制造过程质量、工装模具管理、测量系统管理、售后质量管理,专注于各个环节质量方法的应用、质量数据的采集、质量活动的执行,实现对产品全寿命周期进行质量控制。(4)归零改进层。异常质量信息与归零管理实现对各环节质量问题报告、分析、处理、验证、举一反三等过程,并促进技术归零、管理归零水平的提升,重复问题不再发生。(5)支持管理层。质量知识管理实现质量管理过程中知识经验的积累传承,有效支撑质量改进过程。包括质量问题库,通过建立质量问题库,实现了问题、原因以及措施的标准化的描述,便于对质量问题进行统计分析。质量经验库,经验库是对异常问题处理和质量改进过程中价值信息的积累和汇总,是企业质量管理的重要成果,是过程控制、修订过程控制标准的依据,是以后同类问题分析诊断的重要参考,也是新产品研发的重要依据。
SOA的提出代表着标准化、松耦合、粗粒度的软件体系结构的出现,不仅如此,它更代表着不拘泥于具体技术实现方式的一种新的软件开发思想。Web服务的技术在SOA达到成熟程度过程中起到了关键的作用。由于SOA自身具有的优势结合了未来软件发展的趋势,它必然会成为成熟的下一代主流开发技术而得到广泛支持和应用。