《软件架构设计过程实例PPT课件》由会员分享,可在线阅读,更多相关《软件架构设计过程实例PPT课件(26页珍藏版)》请在金锄头文库上搜索。
1、大型信息系统项目架构设计实例 郭树行 博士2009-11-52021/6/7一、背景二、信息分布和共享的模式选择三、分布式层次型的信息结构模式四、共享和互操作设计五、统一的数据采集、交换平台2021/6/7一、背景 案例项目:上海交通大学信息系统建设情况 学校从2000年6月起系统性地组织建设管理信息系统,经历难度大、耗时长的建设过程,已建成了十多个应用系统和数十个基本信息资源库,并相继投入实际运行。基于校园网的管理信息系统涉及到内部公文、教学管理、学生事务、人事、财务、固定资产、档案、校友以及基金管理等诸多环节和部门,涵盖了学校日常教学管理和业务活动的许多方面。学校各部门通过几年来业务信息化
2、的建设,取得了许多很好的实际应用效果,同时也结累了一定数量的数字化资源,各类管理信息系统具有近100个子系统、数百个基本信息资源库,上千万条的管理信息记录, 现在,各类应用已进入数据快速增长期。 所建设的信息系统涉及学校管理的重要环节和部门,已成为学校不可或缺的关键业务系统,许多部处在不同程度上已经必须依靠应用系统完成其业务工作,应用系统建设提高了许多部处的管理水平和业务工作效率,改善了学校学生、教职员工的学习、教学、工作和生活环境,为学校“数字校园”建设和发展打下了扎实的基础。2021/6/7上海交通大学数字校园主要建设情况l 万兆校园网连接各校区,全校学生免费上国际互联网;l 十多个综合应
3、用投入实际运行,应用系统发挥重要作用;l 网络教育从校内走向西部,以优质教育资源支持西部大学;l 建有丰富的网上信息资源,引领健康的数字大学生活。上海交通大学数字校园建设阶段情况 网络基础层 网络基本服务层 应用支撑层 难度大、耗时长。数字校园的核心支持系统l 信息共享和服务层l 数字校园门户2021/6/7上海交通大学数字校园建设当前阶段特点:随着学校数字校园建设的推进和信息系统的广泛使用,学校信息化进入新的发展阶段:学校教学、科研、管理等对信息系统的依赖性不断增强。对信息服务质量要求大大提高。信息化工作环境也进一步促进了学校管理流程的深化,学校许多业务应用模式已经开始从面向本部门、本业务的
4、局部应用向跨部门、跨业务的全局应用发展,各类应用对全局数据的共享和互操作需求不断增长,全局业务应用系统和服务模式逐渐呈现。由于信息化发展各个阶段的需求和环境的不同,现有的应用系统,大多主要解决本部门的业务处理和信息共享,尚未开展跨部门、跨业务、跨应用之间的信息共享和集成,存在着不同业务系统之间数据不一致、共享程度不高等问题,也难以面向各应用层面的管理工作和校领导的管理决策提供综合性的全局信息服务。 为了适应局部业务应用向全局业务应用发展的需要,实现全校数据信息共享,支持跨部门、跨业务的实时信息沟通和协同工作,需要面向全局业务流程,建立全校性的共享信息和业务互操作平台。本文以上海交通大学综合信息
5、资源服务平台建设(下称本项目)为例,就大家共同关心的信息共享和互操作的设计进行讨论。 2021/6/7二、信息分布和共享的模式选择 信息资源整合和共享,是目前学校数字校园建设的一个热门话题,思路活跃,在信息分布和共享模式的选择和做法上也各异。1、以应用和数据的集中达到信息共享 目前较流行的一些做法。通过购置大服务器和相应的数据库,将学校各类应用和数据集中到该数据库,这种类似中央主机集中处理的做法,是在当前硬件服务器和软件数据库处理能力的快速提高的背景下,出现的分布处理转向集中处理的一种“回归式”的技术选择。其优点是由于应用和数据集中,各类应用间是紧耦合的,资源利用率高,信息共享方便,实现也较简
6、单。 需要考虑解决的问题是:首先是各类应用的运行都集中在单一的系统上,对系统性能、可靠性、运行风险是很大的考验。其次,从业务应用系统建设层面上看,由于学校各业务间的差异很大,专业性强,单一环境对吸纳成熟的商品化的业务应用系统软件带来了限制。再有,从基本硬件软件设施来说,业务系统建设和应用也有一个渐进的过程,正如美国可用性研究中心在“数据中心统筹设计技术”白皮书中指出的那样:“大量的资金用于最初的容量建设,以满足多年以后才会出现的情况”,”在使用了全部电源容量的同时,数据中心仍有大量空闲,瞬息万变的IT设备技术使这种情况变得更糟”。集中模式下应考虑如何避免过度的顶层设计带来的资源闲置。2021/
7、6/72、采用面向服务的SOA架构,整合现有的和将建的各种应用和服务 考虑到上海交通大学各应用系统运行情况良好,为了不影响学校各关键业务应用的正常运行,充分地利用和发现现有资源,综合信息资源共享服务平台采用面向服务的SOA架构,应用间是松耦合的,全校各业务处理和业务信息存储不会集中在单一的服务器和数据库上,而是采用分布式层次型的处理和信息结构,各应用系统拥有其独立的业务数据(资源)库和业务处理,通过信息采集交换平台和信息共享、互操作平台,实现跨部门、跨应用的共享互联互通,既能保证信息的全校共享,又符合各业务系统处理分布、信息分布的特性。灵活性和扩充性体现在:包容和整合现有的和将建的各种应用和服
8、务所采用的不同的技术平台、技术路线。上海交通大学数字校园建设根据应用需要和实际效果确定技术平台,一切从应用需要出发,从应用定平台,以先进、适用的技术更好地为学校教学、科研、管理、校园生活等服务。可以按实际需求,分阶段逐步进行数字校园的建设、开发和投资。对资金宽裕的学校可避免一次过度采购带来的资源浪费和流失,对资金不太宽裕的学校可用不多的投资也可快速达到应用效果。面向服务的架构与现在的主流技术相符合,但技术较复杂,实施难度高。2021/6/7三、分布式层次型的信息结构模式 在SOA架构下,以国办秘函(2004)79 号文件 ( 即电子政务信息共享互联互通平台总体框架技术指南(试行) )指导的国家
9、电子政务信息共享互联互通建设的基础架构为参考,建立上海交通大学信息资源共享服务平台的分层功能处理结构,本项目按建设内容和功能分为:应用业务层、共享数据层、信息服务层、服务展现层,分层次进行建设。见图1上海交通大学综合信息资源服务平台层次结构。2021/6/72021/6/7(1)应用业务层。 由学校各部处和院系现有的的各种业务处理应用系统(例如教务、科研、人事、财务等应用系统)等组成,是学校信息化工作环境。在这一层面上各类应用为了完成业务处理建立了为本部门工作所需的业务资源数据库,各业务系统依赖各自的业务资源数据库完成其业务处理,业务资源数据库沉淀了大量的信息,形成各种可供全校共享的源数据。本
10、项目不开发业务系统。(2)共享数据层。 建立在应用业务层之上,对应用业务层的数据进行抽取、综合、归类和抽象。这一层的目标是集成全校性、全局性信息、支持全校性的共享、分析和互操作。 处于共享数据层的中心数据库或共享数据库是支持集成共享和互操作的共享数据实体,共享数据库以物化方式集成共享信息,它的数据可以是冗余的,但不是业务应用系统数据的完整拷贝,它是为面向全校的信息共享、互操作和分析决策服务的。它不再是业务处理的流水帐,而是由经过综合的全局共享信息、互操作信息、综合性信息、学校的各种指标体系和可比较分析的外部数据组成。 2021/6/7(3)信息和应用服务层 实现并提供各项信息资源和业务应用服务
11、。根据学校全局性的信息共享、查询、统计、报表和全局业务需求建立全局服务模型。建立一批面向学生、教职员工、管理人员、校领导、校友、学生家长、国内外公众等以人为中心的全局服务模型,一批面向学校教学、科研、管理、校园生活等应用业务和数字资源服务等以业务为中心的全局服务模型,以及统一用户管理、统一身份认证等基础性的全局服务模型。 全局服务模型描述全局业务和信息流程、描述全局服务模型所需的全局共享和互操作元数据,以及共享和互操作元数据间的关系和操作。全局服务模型提供信息资源综合共享服务的内容和形式;而全局元数据模型提供了共享数据库的基本数据结构;全局服务模型又决定了为了完成该服务数据采集、交换和同步中间
12、件的工作模式,因此全局服务模型、全局元数据模型的设计是共享和互操作平台设计的核心工作。(4) 服务展现层 在上述信息资源建设和服务功能建设的基础上展现平台的服务,主要通过建设上海交通大学信息资源综合服务平台的门户网站来体现和实施。门户网站提供浏览、查询、搜索、互动等一站式的服务,门户网站是平台的统一服务门户,实现单点登录、统一身份认证,体现平台共享、个性化、交互式的特点。2021/6/7四、共享和互操作设计1、对共享数据库和数据仓库的功能定位 为了支持信息共享、互操作和在线分析(OLAP),在上海交通大学综合信息资源服务平台共享数据层应分别部署具有ODS功能的共享数据库和专事分析的数据仓库,在
13、共享数据层建立支持共享、互操作和分析的信息架构。见图2上海交通大学信息资源服务平台共享和互操作信息架构。2021/6/7 数据仓库(Data Warehouse),提起信息的集成共享和分析,往往会想到数据仓库。数据仓库,以物化方式集成信息,实现全局查询和分析。数据仓库一般使用ETL工具,一次成批大量采集数据,主要用于查询统计和分析。其特点是面向持久性数据,数据单向流动,不支持实时更新,不支持互操作,主要用于主题查询、报表、分析。 共享数据库, 为了提供跨业务跨应用的互操作机制,要对共享数据库的作用进行扩充:共享数据库除了保留以物化方式集成共享信息外,还使其作为操作数据存储(Operationa
14、l data stores)ODS。ODS设计成支持对源业务的修改,支持数据双向流动,支持实时更新。由于ODS的互操作元数据可通过数据同步平台对互操作相关业务的局部数据库进行实时修改,因此本项目全局互操作机制以不修改或少修改现有的应用系统为前提,主要通过具有ODS功能的共享数据库实现跨应用间的互操作数据的同步更新。2021/6/7 2、对建立共享数据层的设计考虑建立共享数据库,首先应确定学校教学、科研、管理、校园生活等方面的全局业务需求,分析应用业务从局部处理向全局处理发展所需要的全局信息,然后对这些全局信息从采集、处理、传输到使用各环节中的形态、作用进行全面规划和设计。通过梳理全局业务流程,
15、搞清各业务部门的信息需求,建立面向全校、各业务部门和院系的共享信息实体和互操作机制共享数据库的建设是一个渐进的过程,不需要也不必要一蹴而就解决所有的问题,可按全局业务需求逐步扩充。首先在全局业务需求分析的基础上,建立全局服务模型,然后依据全局服务模型建立全局元数据模型,由全局元数据模型确定共享数据库的基本数据结构。共享数据层还包括引用共享各种非结构化的数字资源,如流媒体、视频、图片、声音、电子文档、多媒体课件等。全局服务模型提供综合信息资源服务的内容和形式;而全局元数据模型提供了共享数据库的基本数据结构;全局服务模型又决定了数据采集、交换和同步中间件的工作模式,因此全局服务模型、全局元数据模型
16、的设计是共享和互操作平台设计的核心工作。为了可灵活的组织、扩充、维护共享和互操作数据,应提供共享数据库全局元数据模型或全局数据视图的设计和管理工具,该工具应直观、易用、功能完备。2021/6/7建立上海交通大学统一的信息资源标准。遵循国际标准、国家标准和行业标准,开展上海交通大学信息资源编码标准化和规范化工作,形成科学、实用、完善的上海交通大学共享信息集和统计指标体系。现有应用系统的信息项和代码要按标准化进行梳理,转换,为数据共享和信息交换提供基础条件。新建业务信息系统除可引用标准信息集外,可增加信息项,因此信息代码编码标准能够根据需要,进行新的拓展和完善。建立学校全局互操作信息框架。对全局业
17、务流程进行分析,通过梳理业务流程,搞清各业务部门信息需求,制定面向全局业务流程的互操作交换信息集、信息交换标准和信息交换机制。互操作交换信息集,信息交换标准和信息交换机制构成学校全局信息互操作框架,该框架提供的信息共享机制和全局业务互操作机制,既能支持现有的应用系统实现不同部门间、不同应用系统间数据交换和互操作,也能支持新建的全局业务系统,如学生缴费注册系统、一卡通系统、OA系统等,使每个业务部门内部,业务部门之间,业务部门与院系之间的频繁、复杂的信息畅通流转,实现协同工作环境。2021/6/73、全局服务模型(1)、全局服务模型的作用和组成 全局服务模型的作用就是按照全局业务需求:l描述全局
18、业务和信息流程、l描述全局服务模型所需的全局共享和互操作元数据,l以及共享和互操作元数据间的关系和操作。 全局服务模型主要由下面元素组成:全局服务模型名称、版本、建立和修改时间。全局业务描述、全局业务信息流程图、全局业务信息处理场景。涉及的其他业务系统和业务部门名称。服务模型建立的元数据模型名称,建立的元数据名称、建立的元数据源业务系统名称和源数据名称以及数据采集方式、服务模型引用的元数据模型和元数据名称、互操作元数据名称、互操作输入数据的源业务系统名称和源数据名称以及数据采集处理方式、互操作输出数据的目标业务系统名称和目标数据名称以及数据更新处理方式2021/6/7(2)、全局服务模型确定互
19、操作数据对象 对于跨应用的全局互操作,以不修改或少修改现有的应用系统为主,主要通过跨应用间的互操作数据的同步更新实现。因此由全局服务模型确定互操作数据对象、数据流向和交换更新方式。可以定义实时/定期/主动/被动的数据的交换更新方式,定义数据采集、交换、更新时对数据的处理要求,如清洗、变换、映射等。由全局服务模型确定互操作元数据并将其置于ODS,通过ODS提供的互操作数据和全局服务模型确定的互操作方式,支持数据交换平台最终完成跨应用的互操作。(3)、全局服务模型的对象化 全局服务模型也是全局服务单元,一个信息资源综合服务可以是由一个或多个全局服务模型组成,比如要完成一个教职工考核信息服务,除了考
20、核信息是该服务模型采集的元数据外,还需要其他相关的信息如教职工基本情况、科研、论文情况,可以引用教职工基本信息服务、教职工科研信息服务、教职工论文信息服务等全局服务模型的元数据。全局服务模型也是可复用的,如教职工基本信息服务同时可被教职工教学情况服务引用。全局服务模型还可支持嵌套,可以作为另一个全局服务模型业务流程的功能结点,完成更复杂的全局业务。 通过建立服务框架对全局服务模型进行管理,维护和扩充。服务框架的可扩展性保证了共享数据平台和共享数据库可按需求逐步建设和完善。2021/6/7(4)、信息资源综合服务和应用服务的全局服务模型 设计并实现各项信息资源和业务应用的服务。根据学校全局性的信
21、息共享、查询、统计、报表和全局业务需求建立全局服务模型。设计并实现的全局服务模型至少包括:面向学生、教职员工、管理人员、校领导、校友、学生家长、国内外公众等以人为中心的全局服务模型面向学校教学、科研、管理、校园生活等以业务为中心的全局服务模型,包括基于共享数据平台的各类查询、统计、报表等。面向各类数字资源服务的全局服务模型统一用户管理、统一身份认证等基础性的全局服务模型 在现有应用系统的基础上实现下列全局业务系统 :1.本科生、研究生收费、注册联动业务系统。(跨部门、跨应用的全局业务)2.面向各应用系统(教学、科研、一卡通、统一用户管理和身份认证、设备与实验室、档案、学生就业等系统)教职工、学
22、生信息的同步服务。(应用间数据同步互操作)3.基于共享数据平台的业务档案归档系统。(业务数据交换服务)4.基于共享数据平台的各类查询、统计、报表等。(跨应用的信息综合服务)5.学生离校系统。(跨部门、跨应用的全局业务)2021/6/74、全局元数据模型 全局元数据是全局共享和互操作数据集,由全局服务模型指定并为全局业务服务的数据。是按全局服务模型所需对源业务物化集成的数据进行组织关联,供全局服务模型使用。 在上海交通大学信息资源服务体系中对全局元数据的定义是:全局元数据是经整合提炼的数据,它与学校的业务应用模型和全局服务模型密切相关,是实现综合信息资源服务所需的信息,也是共享数据平台的基本的数
23、据结构。 上海交通大学信息资源服务共享数据库的全局元数据模型有以下几种:权威数据模型、业务视图模型、互操作数据模型、主题数据模型、统计数据模型、公共服务数据模型、资源数据模型等。(1)权威数据模型。源数据由唯一业务源产生和维护,采集到共享数据库供其他业务共享和引用的数据为权威数据。如教职工基本信息是典型的权威数据模型,它是由人事信息系统产生和维护,采集到共享数据库供教务、科研、研究生、资产等众多的全局服务模型所引用。权威数据模型如教职员工、学生、成绩、学生缴费、设备、 财务、科研成果、科研项目等数据模型。(2)业务视图模型。按业务应用需要集成的数据,可针对某项业务提供查询和报表展现。如课表(学
24、生课表、教师课表)、教学资源(教学楼/教室使用视图,教师上课视图、)学籍变动、各类业务报表等。2021/6/7(3)互操作数据模型。由全局服务模型指定的互操作数据,通过数据交互平台对互操作相关业务的局部业务资源数据库进行实时修改,完成全局互操作。互操作数据也可以是权威数据的子集,互操作也会修改权威数据。(4)主题数据模型。将来自于不同应用的数据按主题整合组织的数据,便于按全局服务模型主题进行展现。(5)统计数据模型。学校历年统计数据、面向院系部处的统计数据、面向领导的统计报表数据等(6)公共服务数据模型。主要是支持跨业务、跨应用的全局查询和数据传递服务。如基于共享数据平台的业务档案归档系统,将
25、来自于本科生系统、研究生系统、成教系统、网络教育系统等不同应用的学生成绩信息通过共享数据平台,向档案系统的业务档案的在线归档。(7)资源数据模型。支持多种形式的资源数据。如OA、数字博物馆、流媒体等数据的集成。 2021/6/7全局元数据形成共享数据库和ODS的数据结构1.设计全局元数据方案,要详细、规范、完备。2.为了可灵活的组织、扩充、维护共享和互操作数据,应提供共享数据库全局元数据模型或全局数据视图的设计和管理工具,该工具用于共享数据实体的建模,应直观、易用、功能完备。3.共享和互操作信息标准应遵循国际标准、国家标准和行业标准。应在开展全校信息资源编码标准化和规范化工作上,形成科学、实用
26、、完善的全校信息和统计指标体系。全局元数据由于来自不同的应用,要对源业务、源应用系统的信息项和代码按标准化进行梳理,转换,为数据共享和信息交换提供基础条件。2021/6/7五、统一的数据采集、交换平台 基于全局业务需求的全局服务模型定义了全局业务处理的数据、流程和操作,由全局元数据组成的共享数据库和ODS提供了共享和互操作数据载体,统一的数据采集和交换平台将具体实施全局数据的采集,同步、更新,最终实现全局业务的信息共享和互操作。 随着技术的发展,目前国内外数据采集和交换平台软件都已有较成熟的产品,本项目主要考虑选择现有产品并在其上进行应用性开发。数据采集和交换平台软件的选择和开发应结合学校现有
27、的应用情况和数据交换互操作要求,在此基础上还应考虑以下几点:(1)具有支持面向服务、流程驱动的体系结构。 可按全局服务模型,进行全局业务流程的建模和实现。具有面向服务的结构,支持流程控制、流程嵌套和全局服务组件的引用,通过全局流程将现有不同应用系统和新应用系统协同起来。为了满足不同层次、不同阶段的信息共享互联互通需求,既可以直接通过应用适配器实现简单的信息共享互联互通,也可以通过共享数据平台实现复杂的信息共享互联互通,系统具有灵活的业务流程设置、调整、管理功能。支持长事务处理、异常处理等。 (2)图形化开发和管理工具。 可以对全局业务流程及各流程节点对应的服务,进行设计、修改、监控与管理,以适
28、应学校全局业务需求的变化,为建立面向服务、松耦合与高可扩展性的全局业务应用提供适用的图形化开发和管理工具。 2021/6/7(3)高性能数据采集和交换功能。 不同应用系统之间形成松耦合连接,对于交换的数据应具备路由、分发、转换、映射、处理等功能,以满足数据交换过程中各种不同的数据处理要求。采用XML 技术为信息描述语言和交换标准,利用XML对消息进行封装和解析,支持基于证书的身份验证签名、数据校验,实现消息的编码/解码、加密/解密等,实现可信的消息发送和接收。消息传输支持:MQ、MSMQ、SOAP、HTTP、FTP、SMTP、FILE等多种传输协议消息格式支持:Flatfile(定长、分隔符)
29、、DB(Oracle、DB2、SQL、Sybase)、DBF、Excel、Binary、XML电子表单等数据格式消息转换:提供图形化的界面,可以方便地在任意数据格式间进行转换,保证各个系统可以以自己理解的方式接收数据,内置丰富的用于数据转换的控件库,能自动进行字符串、科学运算、逻辑、字符编码、循环等方式消息路由:实现应用系统间要交换数据的正确路由,保证安全可靠的消息传送信息交换平台在架构上必须具有可伸缩性,在大数据量交换情况下其技术架构能通过负载均衡进行有效的扩展。2021/6/7(4)提供灵活方便地实现应用间集成的技术环境。 提供应用开发的框架,可设置和自定义应用适配器与应用系统连接,实现实时/定期的数据交换。支持数据库层面的事件触发,以适应实时的数据同步和互操作。(5)安全可靠。保证消息交换的安全性,防止非法篡改、非法访问, 实现消息发送人和接收人多种方式的身份认证,提供消息的可靠交换机制,保证消息交换过程中消息的准确性、可靠性、完整性。(6)管理与监控系统。 管理与监控系统提供基于 B/S 结构的管理与监控功能,具备远程部署、维护和管理各个系统组件的生命周期、状态、日志、异常监测等功能。2021/6/7结束语 本文建设实例表明,首先抓住这些问题理清思路,加以解决,对项目的顺利实施具有重要作用。谢 谢2021/6/7部分资料从网络收集整理而来,供大家参考,感谢您的关注!