企业信息系统建设中的思考与实践

2021-11-20 08:29胡天明罗晓林李晶
电子技术与软件工程 2021年17期
关键词:信息系统架构我院

胡天明 罗晓林 李晶

(1.中机国际工程设计研究院有限责任公司 湖南省长沙市 410021 2.湖南女子学院 湖南省长沙市 410021)

我院是大型的国有综合业务设计院,随之国家大力传统基建转向向新基建,公司业务有了迫切转型的需求;为此我院提出了加快从传统设计院向以发展EPC 总承包业务的科技型工程公司转型的战略,对外积极拓展国内和国际市场,扩大在全国市场的占有率和提升知名度,跟随国机集团的全球化脚步,协同开拓国际市场;对内大力提倡科技创新,完善技能传承,持续发力经营管理;为达成战略目标,助力公司稳健发展,强大的信息系统支撑能力倍加重要,全面信息化建设势在必行。为此公司在2020年同时启动五大系统平台的建设:办公平台(OA 平台)、电子采购系统平台、知识管理系统平台、项目管理系统平台与人力资源系统平台,结合母公司的财务系统,以期实现业财一体化,为业务转型提供强有力的支撑;实现全流程线上化、移动化。

根据我院实际情况和近几年信息系统建设的经验,设计企业在全面信息化建设时需要重点考虑以下几个问题:系统软件技术架构、系统集成、数据治理,选择适合的信息系统。

1 系统软件的技术架构

信息技术飞速发展,硬件、软件及理念日益月异,在不同的技术发展阶段演变出了不同技术架构。总体来讲,技术架构经历了三个阶段:单体应用架构、SOA 架构和微服务架构。

1.1 单体应用架构

一个归档包(例如war 格式或者Jar 格式)包含了所有功能的应用程序,我们通常称之为单体应用,这是一种比较传统的架构风格。

这种架构的优点是在开发团队规模比较小时,开发效率高,访问流量很小时,部署方便。

它的缺点是显而易见的,单体应用架构,其特点是紧耦合,模块的边界模糊,依赖关系不清晰,系统复杂、错综交互,牵一发而动全身,是完全封闭的架构,扩展能力受限,无法按需伸缩。

1.2 SOA架构

SOA 是Service-OrientedArchitecture 的英文缩写,就是面向服务的架构。一个企业应用一般包含多个不同功能单元,比如我院的电子采购平台,它有组织架构、有台账、有流程、有权限等单元模块;SOA 架构是将单个应用按一定功能类别来拆分成不同单元(称为服务),这些被拆分的不同单元通过的接口和协议联系起来,它是一种粗粒度、泛耦合服务架构。与单一架构相比SOA 架构优势明显。

1.2.1 易维护性

服务和服务之间是松散耦合关系,基于SOA 架构构造的信息系统,当需求发生变化的时候,只需修改该需求对应服务模块的流程或代码,不需要其它与之耦合的服务做流程或代码级别的修改,整个应用系统维护起来更轻松,更容易,出错概率低。

1.2.2 高可用性

SOA 架构各服务之间是松散耦合关系,相互之间无需了解对方的具体实现细节,做到各司其职,专心关注自己分内之事,可用性更高。

1.2.3 好伸缩性

正如前所述,SOA 架构是将应用按一定功能类别来拆分成不同单元,不同的单元组合来满足不同的应用需求,当这些需求变化了只需将单元组合再拆分、调整、编辑、组合接口,这种模块化的方式非常方便业务的伸缩。

SOA 架构的缺点:

(1)系统的性能有待提高。

(2)在事务传送及事务撤回等方面的标准还不够成熟。

(3)跨系统集成难度大。

(4)开发不够敏捷。

1.3 微服务架构

微服务架构更像是在SOA 架构上更近一步的拆分;SOA 架构是基于重型总线ESB、集中管控的架构,而微服务架构的颗粒度小,只关注一件事情,每个微服务有单独的进程,微服务之间轻量级通信机制,松耦合,可独立编译,独立部署,独立运行,可以说是将应用骨灰级的拆分;

微服务架构具有如下优势:

(1)微服务架构颗粒度小,服务功能明确单一化,可组件化,业务功能可通过组件搭建,实施业务的快速部署。

(2)业务与技术最佳匹配,支持JAVA、PHP、Nodejs、.NET等多种开发语言,跨平台。

(3)微服务的解耦性支持小团队,快周期,多并行的开发。

(4)版本发布周期短,实现系统的在线升级,扩容,业务不中断。

微服务带来的好处显而易见,一是业务上线快,组件化、零代码的特点使得运维变得简单敏捷,通过拖拉配置方式可搭建业务;二是支持三独(独立编译、独立部署、独立运行),无二进制接口依赖、无部署顺序依赖、无启动顺序依赖;三是开放包容,支持技术多样性,跨平台,多语言,样样拿来,样样行。

微服务架构亦存在一些不足之处:

(1)微服务架构可能带来过多的操作。

(2)问题跟踪难度增加,数据的一致性问题对开发者提出更大的挑战。

总体来说目前很少有单体应用,主要推行的SOA 架构和微服务架构,大家可以根据业务场景的不同来选择;如需要经常快速新建或修改的流程类系统,就选择微服务架构,如我院的办公平台再招标时就明确要求是微服务架构;而对于项目管理或采购系统更注重集中管理和大块业务逻辑的就可选自SOA 架构。

系统尽可能是国内外先进、成熟的软件开发平台开发,并考虑业务未来的发展的需要,功能模块间耦合度小,支持各种主流的通信标准和接口标准,使系统能够最大限度的适应技术发展的需求,以确保系统的先进性,延长系统的生命周期,提高投资效益。

2 系统集成

企业信息系统需求是多方面,包括普通办公、人资管理、财务管理、项目管理等,所以企业会不可避免的引入多种的信息系统,为了避免形成信息孤岛,多个系统之间存在信息传递和数据交换,软件系统之间的集成和整合就势在必行;同时各个系统的数据和信息都有重叠,也要求各系统通过集成来调用解决个系统数据的一致性,实时性。

集成从方式上来说一般可以分为以下三种:

(1)浅度集成:整合现有业务系统入口,实现单点登录,多系统认证。

(2)深度集成:支持企业拓展与业务场景紧密结合的H5 轻量化App 开发。

(3)整体集成:基于消息,场景化解决既有业务系统关键决策环节的BYOD。

这三种方式,浅度集成实现起来最容易,整体集成最难,深度次之;大多数的设计企业信息部门人力资源有限,软件开发人员偏少,没有足够的资源和能力来对各系统进行深度集成;比较好的全系统浅度集成,少量业务深度集成。我院的各系统中,OA 系统使用得是微服务架构,组件化、接口化做得比较好,自然被用来作为系统集成平台,其它信息系统通过接口与其对接通信,实现集成任务待办、统一入口、统一门户,用户在一个界面处理各类流程或任务;将各个分离子系统连接成为一个完整、可靠、经济和有效的整体,并使之能彼此协调工作,发挥整体效益,达到整体优化的目的。

此外为满足业务流程的全面线上化,信息系统必须移动化,而移动智能终端千万种,主要的操作系统有IOS 和Android;如果每个系统都开发APP,就需要有IOS 和Android 版本,而后续随之它们的版本升级,可能也面临要升级来适配不同的操作系统版本,显然不是很好的途径。我院的做法是利用公有云的企业微信产品来做各系统的连接器,在企业微信工作台中集成信息系统,各系统通过H5 轻量化页面即可实现移动端的登录。

软件系统之间的接口是实现一个系统跟另外系统进行信息交互的桥梁, 接口的通常分为两类:webservice 接口和http api 接口;对接常用的接口协议:OPC 协议,ODBC,WebService 协议,Http Restful 协议等;在信息系统选择时,要统一考虑各系统支持的接口及协议情况,为最终的集成提供方便。

3 数据治理

现代企业,数据已成为企业的核心资产,做好数据的积累和分析;既能帮助企业进行经营管理,又能帮助企业进行基因和技能的传承。

企业数据标准主要包括元数据标准和主数据标准。

3.1 元数据概念

元数据是关于数据的数据,有的也称非结构化数据,来自于多个业务、管理过程中产生的例如合同等文本信息,描述文件特征的系统数据,诸如文件拥有者、访问权限以及文件数据块的分布信息等等,它描述一条数据包含哪些属性信息,不同的业务会有不同的元数据。

3.2 主数据概念

主数据也称结构化数据,是企业核心业务实体的数据,比如员工工号、职务、公司组织架构、供应商、客户、合作伙伴、合同、物料单、账户等;它是具有高业务价值的、可以在企业内跨越各个业务部门被重复使用和分析的数据,也可以在系统中被调用,并且可以当做企业核心资产用来指导企业经营。

简单来说,主数据就是用户在系统使用过程中输入的数据,建议只能由某一系统定义或修改,其它系统调用使用。一般来说企业的人力资源系统的数据是作为企业的主数据系统。

3.3 企业数据梳理的标准

(1)对企业业务域进行定义,并对每个业务域中的业务活动进行梳理,同时需要收集各类业务单据、用户视图,梳理每个单据和用户视图的数据对象。

(2)针对数据对象的进行分析,明确每个数据实体所包含的数据项,同时,梳理并确定出该业务域中所涉及的数据指标和指标项。分析并定义每个数据实体或指标的数据项标准,包括:数据项的名称、编码、类型、长度、业务含义、数据来源、质量规则、安全级别、域值范围、管理部门等。

(3)梳理和明确所有数据实体、数据指标的关联关系,并对数据之间的关系进行标准化定义。数据关系也是数据标准管理的内容。

(4)通过以上梳理、分析和定义,确定出主数据标准管理的范围。

各业务部门需要的数据是不同,信息化建设,需要前面考虑各系统数据的关系,并根据上述梳理标准,来进行数据治理,建立企业数据标准数据库,通过不断的实践最终能建立企业数据中台,这个需要激励全员参与,集思广益,对数据不断更新完善,发挥数据在企业经营中的价值。同时也是一项复杂的、长期的、需要企业高层推动的工作。我司原综合信息管理系统已正式运行了近5年,产生了海量的数据,旧系统可以淘汰,但是旧系统中的数据是企业的核心资产,我们通过一系列数据治理使之与新的信息系统整合利用起来。

4 结束语

随着这些的年信息化建设逐步深入,我们从开始关注应用到关注系统后台的架构以及集成、扩展等方面:

4.1 高性能

提供快速的访问体验。系统采用前后端分离;“前端性能”:前端采用单页化设计,在一个页面上集成多种功能,甚至整个系统就只有一个页面,所有的业务功能都是它的子模块,通过特定的方式挂接到主界面上,接口轻量化,页面性能大量提高;“后端性能”:页面请求只运行一次,减少大量静态资源请求,提高服务器并发能力。

4.2 易扩展

方便地通过新增/移除方式,增加/减少新的功能/模块;软件模块化、组件化、接口化,快速敏捷的二次开发;同时版本方便迭代和升级,适应业务发展的需求。

4.3 大开放

软件使用跨平台的编程语言,兼容开源的数据库和中间件,灵活适配不同的操作系统和X86、ARM 各类架构的硬件。

4.4 稳可靠

采用成熟稳定软件技术,保证系统长期可靠运行,具备容错机制和冗余机制,提供安全访问和数据加密、安全存储等策略。

全面信息化建设是一个复杂且长期的工作,建设之初要做好顶层设计,统一规划,协调推进。

建设中一方面系统开发者要深入分析用户需求,使开发的产品尽量符合要求,另一方面用户也要以开放的心态,摒弃落后的思维方式和习惯,积极适应IT 技术的发展。

猜你喜欢
信息系统架构我院
基于FPGA的RNN硬件加速架构
企业信息系统安全防护
功能架构在电子电气架构开发中的应用和实践
我院隆重举行2020届毕业典礼
基于区块链的通航维护信息系统研究
信息系统审计中计算机审计的应用
LSN DCI EVPN VxLAN组网架构研究及实现
我院顺利迎来2016级新生
基于SG-I6000的信息系统运检自动化诊断实践
一种基于FPGA+ARM架构的μPMU实现