CN101876943B - 识别大型机环境中多个相关应用之间的关系的系统和方法 - Google Patents

识别大型机环境中多个相关应用之间的关系的系统和方法 Download PDF

Info

Publication number
CN101876943B
CN101876943B CN201010170538.9A CN201010170538A CN101876943B CN 101876943 B CN101876943 B CN 101876943B CN 201010170538 A CN201010170538 A CN 201010170538A CN 101876943 B CN101876943 B CN 101876943B
Authority
CN
China
Prior art keywords
application
relation
storage vault
information
fault
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201010170538.9A
Other languages
English (en)
Other versions
CN101876943A (zh
Inventor
吴宏辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Accenture Global Services GmbH
Original Assignee
Accenture Global Services GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Accenture Global Services GmbH filed Critical Accenture Global Services GmbH
Publication of CN101876943A publication Critical patent/CN101876943A/zh
Application granted granted Critical
Publication of CN101876943B publication Critical patent/CN101876943B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/327Alarm or error message display
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供了用于识别在大型机环境中运行的多个相关应用之间关系的系统和方法。创建储存库以存储描述来自大型机环境的多个相关应用的信息。识别多个相关应用中的目标应用,并且确定该应用和多个相关应用之间的频率和依赖关系。该关系经由用户界面被显示。所述关系可以用来识别大型机环境中的故障原因。

Description

识别大型机环境中多个相关应用之间的关系的系统和方法
版权公告
此处所包含的资料是受版权保护的。因为在美国专利和商标局的专利文件或记录中发表,所以版权所有人不反对任何人复制本专利文献或专利公开,但除此之外,版权所有人保留任何对于本版权的全部权利。下列公告适用于在下文和对此的附图中所描述的软件、截屏和数据:Copyright2006-2009,Accenture Global Services GmbH,保留所有权利。
技术领域
本公开涉及用于开发大型机环境中的应用并对其进行维护的系统和方法,更具体地说,涉及用于识别大型机环境中多个相关应用之间的关系的系统和方法。
背景技术
经常要在大型机环境中开发供大型机构(诸如,核心银行、保险,和/或航空系统)使用的应用,然后维护这些应用。大型机构经常将大型机环境中的应用用于大量数据处理,诸如人口调查、工业和消费者统计、企业资源规划、金融交易处理,等等。在开发、调试和使用这种应用期间,编程人员和分析人员使用为数众多的工具来识别由应用产生的错误和/或与应用相关联的问题区域。例如,分析人员在开发或故障排除过程期间可以使用工具来检查一个或多个应用的源代码,以找出问题的原因。该识别过程可能是复杂和困难的,因为大型机应用经常依靠于并且关联于其他的应用、程序、copybook、批作业、例程,和/或调用,等等。另外,各种相关应用可以利用不同的数据库和/或程序库。
有一些工具可用来协助用户对大型机环境中的应用进行开发和故障排除,并且在应用开发过程中的开发、测试、操作和维护阶段,这些工具通常是很有用的。典型地,为了定位大型机环境中的问题,用户首先要在大型机环境中创建将运行搜索例程的作业(例如,程序),以找到导致大型机中问题的应用。所述搜索例程可以或可以不检索实际上导致了大型机环境中问题的应用。在典型的情况下,用户继而需要检索与通过搜索找到的第一应用相关的若干其他应用,并且用户需要检查每个应用以便隔离并且识别导致问题的确切应用。要做到这一点,典型地,用户需要使用多个屏幕来显示来自大型机环境的应用数据,以便正确地识别受这些问题的影响并且与这些问题有关的不同例程和/或作业。因为所述搜索可能要很长时间来运行,可能要求人工调整,并且在多个隔离屏幕或窗口上的多个应用的显示不提供可协助理解问题的上下文或有关数据,所以这种识别过程是低效率的。
在应用开发和维护过程期间可能发生的另一个问题是,当不同的相关应用利用了在结构上变化的不同数据库时,许多现有的通用组件可能要求进行重新开发。为了开发对于这种预期环境能正常工作的应用,典型地,开发人员必须定制通用组件以满足不同数据库的需要。通用组件的定制是遭受常规应用开发和维护过程损害的另一个低效率问题。
过去曾经做出一些努力来改进应用开发过程和故障排除过程的效率。例如,来自CA公司的AllFusion Endevor Change Manager是用于大型机软件开发的工具,其提供源代码搜索功能。然而,AllFusionEndevor Change Manager有一些缺点,因为其经常很难正常安装和设立,并且简单的搜索经常要用很长时间。另外,用户可能被要求使用为数众多的不同工具和小程序和/或作业,以便执行简单的搜索。因此,如果用户不熟悉AllFusion Endevor Change Manager的不同功能,则该用户可能无法获得被寻找的信息。
本公开的系统和方法改进了用于对大型机应用进行开发、维护和故障排除的现有技术。
发明内容
在一个实施方式中,本公开涉及一种用于以有组织的方式识别大型机环境中故障的根本原因的方法,所述大型机环境运行多个相关应用。该方法可以使用计算机系统来实现。该方法可以包括:使用计算机系统来创建储存库,所述储存库存储了描述来自所述大型机环境的多个相关应用的信息;以及识别包括在所述多个相关应用中、与所述大型机环境中的故障相关联的应用。所述方法还可以包括:确定所述应用和多个相关应用之间的关系;以及经由用户界面显示该关系。所述方法还可以包括根据所述关系来识别所述故障的根本原因。
因此,符合本申请原理的实施方式提供了一种为用户提供信息(其也可以被称为信息数据)的先进和直观的方式,以检测会招致大型机环境中故障的一个或多个应用。在一些实施方式中,正如可以在图8至15中所看到的,以允许用户更容易和全面地理解系统内部状态的方式显示了所需信息数据。换句话说,作为一些实施方式的部分,可以建立改进的图形用户界面,其以协助用户管理和/或配置系统(特别是大型机环境中系统)的方式,来为用户提供认知内容。
在另一个实施方式中,本公开涉及一种用于以有组织的方式识别大型机环境中故障的根本原因的系统,所述大型机环境运行多个相关应用。该系统可以包括存储器和耦合到该存储器的处理器。该处理器可以被配置成:创建储存库,其用于存储描述了来自所述大型机环境的多个相关应用的信息;以及识别包括在所述多个相关应用中、与所述大型机环境中的故障相关联的应用。所述处理器还可以被配置成:确定所述应用和多个相关应用之间的关系;以及显示该关系。所述处理器还可以被配置成根据所述关系识别所述故障的根本原因。
在另一个实施方式中,本公开涉及一种用于以有组织的方式识别大型机环境中多个相关应用之间的关系的方法。该方法可以使用计算机系统来实现。所述方法可以包括:使用计算机系统来创建储存库,所述储存库存储了描述来自所述大型机环境的多个相关应用的信息。所述方法还可以包括:识别包括在所述大型机环境中的多个相关应用中的目标应用;以及使用所述储存库中的信息,确定所述应用和所述多个相关应用之间的频率和依赖关系。所述方法还可以包括经由用户界面显示该关系。
应当理解,先前的描述和下列描述都仅仅是示例性和说明性的,并且没有限制被要求的发明。
被并入且组成了此说明书一部分的附图示出了本发明的示例性实施方式,并且和描述一起用来解释本发明的原理。
附图说明
图1示出了识别大型机环境中故障的根本原因的示例性过程;
图2是示出了web集成框架的示例性实施方式的框图;
图3是示出了各种组件可以包括在web集成框架的示例性实施方式的第一层中的框图;
图4是示出了各种组件可以包括在web集成框架的示例性实施方式的第二层中的框图;
图5是示出了web集成框架的另一个示例性实施方式的各种组件之间关系的框图;
图6示出了web集成框架的用户界面的示例性实施方式;
图7示出了示例性信息,其可以包括在web集成框架的用户界面的示例性实施方式中;
图8示出了示例性搜索结果,其可以包括在web集成框架的用户界面的示例性实施方式中;
图9示出了搜索结果的示例性子视图,其可以包括在web集成框架的用户界面的示例性实施方式中;
图10示出了搜索结果的示例性派生视图,其可以包括在web集成框架的用户界面的示例性实施方式中;
图11示出了搜索结果的示例性(前向的)树形视图,其可以包括在web集成框架的用户界面的示例性实施方式中;
图12示出了搜索结果的示例性父视图,其可以包括在web集成框架的用户界面的示例性实施方式中;
图13示出了搜索结果的示例性祖先视图,其可以包括在web集成框架的用户界面的示例性实施方式中;
图14示出了搜索结果的示例性(反向的)树形视图,其可以包括在web集成框架的用户界面的示例性实施方式中;
图15示出了认证界面的示例性实施方式,其用于web集成框架的示例性实施方式;以及
图16示出了适用于实现符合本发明的实施方式的示例性计算系统。
具体实施方式
现在将详细参考本发明的示例性实施方式,其示例将在附图中示出。在方便的地方,贯穿附图,将使用相同的参考编号来指示相同或相似的部分。
图1示出了示例性过程10,其用于识别运行了若干相关应用的大型机环境中的故障。应当理解,在本申请中,根据一个或多个实施方式,术语“web集成框架”可以指大型机环境的特定例子。换句话说,大型机环境可以包括web集成框架,或者大型机环境可以就是web集成框架。在所示实施方式中,在阶段20,该过程创建储存库220(参考图2、图4和图5中的例子),以存储与相关应用有关的信息。在一些实施方式中,储存库220可以存储对相关应用中的每一个应用的描述,该描述可以包括识别在相关应用之中的依赖性、共享数据、关系等等的信息。例如,如果第一应用的执行是由第二应用的执行所发起的,则第一应用可以是第二应用的从属应用(例如,孩子)。换句话说,第二应用是第一应用的父应用。在一些实施方式中,术语“应用”可以用来指示程序、应用、批作业、交易、copybook、数据库表格、可以在示例性大型机环境中运行的软件程序的一部分,和/或以上任何项的组合,等等。
在一些实施方式中,描述还可以包括描述频率关系的信息,例如应用多久会被其父应用使用一次,应用多久会使用其从属应用一次,和/或应用多久被更新一次,包括与调度的更新有关的信息。
在一些实施方式中,本描述还可以包括描述其他资源的信息,所述资源在相关应用(诸如,程序库和/或数据库表格等等)的每一个的执行中使用。
在一些实施方式中,储存库220可以包括用于一些或全部相关应用的源代码。可预期的是,任何相关应用的更新或修改可以导致对储存库220中所存储信息的相应更新或修改。
在阶段30,该过程收集或接收错误信息,其表示多个相关应用中故障的特征。在一些实施方式中,该过程可以从正运行相关应用的大型计算机接收故障日志或事故报告。在其他实施方式中,该过程可以收集错误代码、错误消息、存储器转储、寄存器转储、状态标志,和/或描述了故障和/或其原因的其他数据。在一些实施方式中,该过程可以从事故报告数据库(未示出)接收故障日志或事故报告,所述事故报告数据库可以用来存储可能在大型计算机的相关应用的运行期间发生的任何故障或事故。
如所示,在阶段40,如果多个相关应用中的一个或多个应用发生故障,则该过程通过对存储在储存库220中的信息进行处理来识别与所述故障相关联的一个或多个应用。在一个实施方式中,该过程使用来自阶段30的错误信息来识别与故障相关联的应用。例如,该过程可以识别在故障发生时正在运行(例如,未闲置)的、与该故障相关联的应用。在另一个实施方式中,该过程可以识别源代码含有或产生来自阶段30的错误代码或表示故障特征的其他数据的应用。
例如,当大型机批作业失败时,可以产生错误消息。所述错误消息的示例可以是“ACCOUNTING SESSION CHANGED,EXECUTETRANSACTION‘QG30’OR‘QG37’(记账会话改变,执行交易‘QG30’或‘QG37’)”。该过程可以使用该错误消息或该错误消息中的一部分来找到源代码,并且由此找到产生错误消息的应用和环境。在一个实施方式中,用户可以向web集成框架100中的搜索功能提交错误消息,并且web集成框架100可以找到能输出错误消息的应用。在另一个实施方式中,错误消息可以自动地从大型机向web集成框架100传递。
在阶段50,可以对储存库220中所存储的信息进行处理,以确定与故障相关联的应用与多个相关应用之间的关系。在一些实施方式中,该过程可以确定在与故障相关联的应用和它们的从属应用(例如,失败的应用所使用的应用)之间的任何关系,与故障相关联的应用所从属的任何应用(例如,使用失败应用的应用)之间的关系,以及关于多个相关应用或者在与故障相关联的应用和其他应用之间被共享的数据的频率信息。
在阶段60,所述关系可以被显示在例如用户界面130上,使得用户可以观察并容易地领会所述关系。例如,一旦含有或产生了错误消息“ACCOUNTING SESSION CHANGED,EXECUTE TRANSACTION‘QG30’OR‘QG37’”的应用被定位,则用户界面130可以显示源代码信息和与输出错误消息的应用和该应用的环境有关的其他相关信息,例如,如图8中所示。换句话说,用户界面130可以显示所述应用的环境的内部状态。在一些实施方式中,用户界面130可以显示所述应用的环境中故障的细节。在一些实施方式中,如图9至14中所示出的,所述应用之间的关系可以被显示。在这个示例中,例如,如图9至图14中所示,用户可以选择不同的视图以形象化失败的批作业的信息和上下文。
在阶段70,可以从所述关系中识别故障的根本原因,使得该根本原因可以被解决。在一些实施方式中,用户可以利用如图9到图14中所示的不同视图来观察与输出所述错误消息的应用相关的应用,并且利用这些视图来识别导致了故障的实际应用。
在识别了根本原因之后,用户可以修改应用以修复所述问题。在一些实施方式中,用户可以按现状对应用进行仿真,或者仿真任何相关应用的任何更新或修改,以及可以使用报告模块180来生成这种仿真的报告。这种仿真的结果可以协助用户更新或修改相关应用,并且还可以协助用户解决该根本原因。换句话说,根据本申请中的至少一个实施方式,例如,可提供计算机辅助工具,其允许用户看到和/或验证可能的变化对于系统的影响,而不必安装和/或执行特定应用和/或经受特定配置的应用。
图2是示出了web集成框架100的示例性实施方式的框图。在一些实施方式中,web集成框架100可以用来实现过程10。例如,web集成框架100可以包括第一层110、第二层120,以及第三层125。在一些实施方式中,第一层110、第二层120以及第三层125可以被可操作地连接,这使得信息(例如,数据)可以在第一层110、第二层120和第三层125之间传输。第一层110可以包括与示例性大型机环境相关联的信息,例如在示例性大型机环境上运行的应用。在一些实施方式中,应用可能是相关的,使得一个应用的性能可以影响其它应用的性能。
参考图2,例如,第一层110可以包括大型机信息模块140、关系型数据库管理模块150、指令集模块160和/或人工定义模块170。在一些实施方式中,第一层110可以包括描述多个相关应用的信息,其可以通过过程10在阶段20被存储。例如,第一层110还可以包括表示多个相关应用中故障的特征的错误信息,其可以通过过程10在阶段30被收集。第一层110可以协助用户收集示例性大型机环境中的可用信息,其在开发和调试在示例性大型机环境中运行的应用时很有用。
在图2所示的实施方式中,第二层120可以包括报告模块180、编译模块190、调度模块200、自动化库模块210以及储存库220。在一些实施方式中,储存库220可以通过过程10在阶段20被创建。第二层120对于处理示例性大型机环境中的可用信息可以是很有用的。在一些实施方式中,自动化库模块210可以包括用于Windows和/或IBM大型机的自动化库。可预期的是,自动化库模块210可以包括用于其它大型机环境的库。
如所示,第三层125可以包括用户界面130和认证模块135。通过仅当用户的身份和/或访问权由认证模块135认证之后才允许用户进行访问,认证模块135可以限制对web集成框架100的访问。在一些实施方式中,用户的认证可以要求用户名和密码。第三层125可以提供有效的和高效率的方法,其允许用户经由单个界面访问示例性大型机环境中可用的信息。
在一些实施方式中,web集成框架100可以使用不同的开发工具来实现,例如编程语言Ruby、编程语言PHP、在Rails web框架上的Ruby、Subversion版本的控制系统、SQLite关系型数据库管理系统、Ferret全文本搜索引擎、用于批处理任务的Rake软件构建工具、用于生成超文本标记语言(HTML)、结构化查询语言(SQL)、作业控制语言(JCL)以及系统控制语言(SCL)等等的erb模板系统、用于大型机终端自动化的WRQ Relection IBM 3270终端OLE、用于Windows自动化的AutoIt,以及用于Windows自动化和与Excel、Word和Reflection IBM交互的win32ole和Win32 Utils,等等,来执行各种开发任务。可预期的是,其他开发工具可以用来附加到,和/或取代任何上面所识别的开发工具,以实现web集成框架100。
图3是示出了各种示例性组件可以被包括在的第一层110中的框图。例如,如所示,大型机信息模块140可以包括程序源代码模块230、批作业模块240、copybook模块250,以及批作业调度模块260。在一些实施方式中,程序源代码模块230、批作业模块240以及copybook模块250可以是大型机库的形式。在一些实施方式中,第一层110还可以包括其他大型机库(未示出)。
在一些实施方式中,程序源代码模块230可以包括用于批处理程序、在线交易程序和/或例程的源代码。来自程序源代码模块230的程序可以选择、插入、删除或者更新示例性大型机环境的数据库表格。在一些实施方式中,程序可以包括带有通用数据结构的一个或多个copybook。例如,该程序还可以在执行其功能时调用例程。
在一些实施方式中,批作业模块240可以包括一个或多个批作业。批作业可以调用一个或多个批处理程序。该批作业还可以选择、插入、删除、更新、加载或卸载示例性大型机环境的数据库表格。
在一些实施方式中,copybook模块250可以包括一个或多个copybook。copybook可以是用于程序的源代码的一部分。例如,copybook可以定义程序数据的实际布局,其可以包括文件、数据库表格、交易格式和程序通信区,等等。
在一些实施方式中,批作业调度模块260可以包括能用来定义批作业的序列和/或依赖性的信息。例如,批作业调度软件(诸如,Control-M批流)可以用来定义序列,以执行可以被包括在批作业模块240中的多个批作业。
还是参考图3,在一些实施方式中,关系型数据库管理模块150可以包括系统目录模块270和定义模块280。系统目录模块270可以包括与系统对象的定义相关联的元数据。在一些实施方式中,系统目录模块270可以包括DB2系统目录,其可以定义示例性大型机环境中所使用的多个DB2表格的列表。在一些实施方式中,定义模块280可以包括交易定义,诸如交易名称、交易的描述,以及可以用来引用(例如,调用)交易的在线交易程序,等等。关系型数据库管理模块150还可以包括用于让用户访问示例性大型机环境的关系型数据库(例如,DB2)中数据的装置(未示出)。
例如,指令集模块160可以包括用于协助编译模块190处理大型机环境中可用的信息(例如,数据)的字节码。在一些实施方式中,人工定义模块170可以包括由web集成框架100的用户设置的定义,诸如数据库触发器、触发表格、作业与功能之间的映射,等等。在一些实施方式中,第一层110可以包括用于存储版本信息的版本信息模块290,所述版本信息(例如,数据)与大型机环境中所使用的应用相关。当相关表格在大型机环境中被更新和/或修改时,web集成框架100的用户可以包括用以更新和/或修改表格的定义。该用户还可以包括用以收集各种表格和其功能的描述的定义。
可以被包括在第一层110的各种示例性组件中的信息的上述描述可以包括在通过过程10在阶段20中存储的信息中,和/或可以包括在通过过程10在阶段30收集的信息中。在一些实施方式中,可以被包括在第一层110的各种示例性组件中的信息可以被包括在储存库220中。
图4是示出了各种示例性组件可以被包括在符合一些实施方式的第二层120中的框图。如图4中所示,报告模块180可以包括分析模块300、仿真模块310以及支持库模块320。由此,仿真模块310可以为用户定义计算机辅助工具,其允许用户避免进行大量应用的配置、安装和/或执行。例如,分析模块300可以协助用户分析从第一层110接收的信息。仿真模块310可以允许用户仿真可以存在于大型机环境中的不同批作业的执行,以及不同批作业的执行的调度,等等。
在一些实施方式中,编译模块190可以包括多个语法分析器330-370。例如,语法分析器330-370可以协助用户对信息进行语法分析,所述信息是经由大型机信息模块140、关系型数据库管理模块150、指令集模块160、人工定义模块170以及第一层110的其他组件从第一层110接收的。虽然编译模块190被描述为包括多个语法分析器330-370,但是在一些实施方式中,编译模块190可包括其他组件,其可以促进对从第一层110所接收信息进行的编译。
还是参考图4,在一些实施方式中,语法分析器330可以协助用户对从大型机信息模块140接收的信息进行语法分析,语法分析器340可以协助用户对从关系型数据库管理模块150接收的信息进行语法分析,语法分析器350可以协助用户对从指令集模块160接收的信息进行语法分析,并且语法分析器360可以协助用户对从人工定义模块170接收的信息进行语法分析。在其他实施方式中,语法分析器370可以协助用户对经由包括在第一层110中的一个或多个模块从第一层110接收的信息进行语法分析。例如,第一层110可以包括来自不同数据结构的信息。在一些实施方式中,语法分析器330-370中的每一个可具有关于数据结构的模式,这使得它们能够识别它们正在进行语法分析的信息的意义。在一些实施方式中,语法分析器330-370可以处理信息,这使得从第一层110接收的信息可以用统一的数据结构存储在储存库220中。可预期的是,可使用或多或少的组件来组装第一层110。类似地,可使用或多或少的组件来组装第二层120。
在一些实施方式中,调度模块200可以包括以预定时间周期来执行的任务,以便从示例性大型机环境检索信息以例如更新储存库220。这些任务可以被调度成每天或以不同频率在适当的时候执行。在一些实施方式中,调度模块200可以包括任务来:下载用于程序和作业的源代码、批作业调度器和/或表格定义,等等;对源代码和表格定义等等进行语法分析;将程序和作业信息的关系信息向相关数据库输入,该数据库可以是储存库220的实现;构建带有全文本索引的、用于关键字搜索的信息检索库;导入示例性大型机环境中多个应用的版本信息;导入关系型数据库管理系统目录;导入数据库触发器信息;改正与触发表格相关的关系信息;将关系型数据库向存储器加载并且将该存储器转储为二进制文件以用于更快启动服务器;转移新更新的数据以向储存库220传输;终止服务器缓存并且重新加载更新的数据;生成报告;以及执行其他维护任务,等等。
图5是示出了web集成框架100的另一个示例性实施方式中的各种组件之间的关系的框图。图5中所示箭头可以指示数据(例如,信息)在web集成框架100中可传输的方向。例如,双箭头可以指示数据(例如,信息)可以在两个方向上传输。如图5中所示,web集成框架100可以包括第一层110、第二层120以及第三层125。例如,第二层120可以包括报告模块180、编译模块190、调度模块200、自动化库模块210以及储存库220。在所示实施方式中,第一层110可与第二层120链接,这使得将示例性大型机环境中可用的信息向第二层120传送,或由第二层120收集。在一些实施方式中,示例性大型机环境中可用的信息可以经由第一层110向编译模块190传输,这使得所述信息可以被处理。在一些实施方式中,编译模块190可以包括语法分析模块。
如图5中所示,来自编译模块190的被处理信息可以向报告模块180传输。用户可以利用报告模块180生成关于多个应用的报告,所述多个应用是在示例性大型机环境中被开发和维护的。报告模块180可以生成报告,所述报告显示了通过分析模块300和/或仿真模块310产生的结果。这些报告可以从报告模块180向储存库220传输。在一些实施方式中,报告模块180可以向编译模块190传输通过分析模块300和/或仿真模块310所产生的结果。在这些实施方式中,编译模块190可以利用通过分析模块300和/或仿真模块310所产生的结果来进一步处理从第一层110接收的信息。例如,将来自不同批作业和/或应用的调度信息与来自不同批作业和/或应用的执行日志信息相结合,这可以用来在修改不同批作业和/或应用的现有调度顺序之后,仿真或计划新执行长度。对于批作业和/或应用的性能进行调整是很有用的。换句话说,本申请提供了改进的数据处理,其导致识别带来故障的应用的改进的方式,和/或导致识别带来故障的应用之间的依赖性的改进的方式。在其他实施方式中,来自支持库模块320的支持库可以向编译模块190传输,以便协助编译模块190处理从第一层110接收的数据。
在一些实施方式中,支持库模块320和自动化库模块210可包括的库能用于:大型机登录凭证管理,其可以存储登录大型计算机所需要的登录凭证;带有并行处理支持的可靠文件传输协议(FTP)客户端;可基于FTP客户端的大型机批作业提交,其增加功能以处理批作业提交,诸如,等候作业结束并且对作业结果进行语法分析;用于对带有大小写字母的句子进行格式调整的英语工具;以及任何其他适合的支持和/或自动化库。
还是参考图5,来自编译模块190的被处理信息可以向调度模块200传输。调度模块200可以每天维护被调度的、与web集成框架100相关联的任务和/或更新。例如,在一个实施方式中,调度模块200可以维护关于示例性大型机环境中多个应用的更新。在一些实施方式中,调度模块200可以维护由web集成框架100的用户所执行的任务的列表。在一些实施方式中,调度模块200可以向自动化库模块210提供任务,所述自动化库模块210继而可以从第一层110检索所需信息。然后,被检索的信息可以向调度模块200传递,以提供所需更新。这些更新例如可以向编译模块190传输以进行处理。可预期的是,调度模块200可以手动地、半自动地、自动地、或其组合方式被操作。
如图5中所示,来自编译模块190的被处理信息可以向库220传输,用于在此处存储。在一些实施方式中,可以从储存库220检索额外信息以促进编译模块190处理从第一层110接收的信息。例如,由报告模块180生成的报告和结果可以向储存库220传输,用于在此处存储。在一些实施方式中,当处理从第一层110接收的信息时,这些报告和结果可以是很有用的。
在一些实施方式中,web集成框架100可以包括监控模块(未示出)。例如,该监控模块可以利用这些报告和结果来监控在示例性大型机环境中的不同程序、作业、调用和/或应用,使得监控模块可以生成和/或向web集成框架的用户传输关于潜在的和/或实际的错误的错误通知,所述错误在示例性大型机环境中的不同程序、作业、调用和/或应用执行期间发生。
可预期的是,web集成框架100还可以包括错误通知模块(未示出),其用于处理可以由监控模块产生的错误通知。还可预期的是,错误通知模块和监控模块可以用来生成与潜在的和/或实际的错误相关联的应用的列表。
还如图5中所示,例如,信息可以在储存库220和自动化库模块210之间传输。在一些实施方式中,自动化库模块210可以从调度模块200接收更新,并且向储存库220传输这些更新以用于在该处存储。在另一些实施方式中,自动化库模块210可以从储存库220检索信息,以便识别从第一层110检索的所需信息。例如,调度模块200可以向自动化库模块210传输请求,以从第一层110接收任何可用更新。在一些实施方式中,自动化库模块210可以接收由报告模块180生成的报告,其可以被存储在储存库220中。然后,自动化库模块210可以基于这些报告来确定更新是否在第一层110中可用。
在一些实施方式中,信息可以在储存库220和用户界面130(图6的例子中所示)之间传输。例如,用户可以请求与特定应用相关联的报告,其可存在于第一层110中。web集成框架100可以经由用户界面130接收这样的请求。web集成框架100可以处理该请求并可以向储存库220传输被请求的报告,并且该报告可以经由用户界面130呈现给用户。在一些实施方式中,报告可以用诸如超文本标记语言(HTML)、逗号分隔值(CSV)、JavaScript对象符号(JSON)以及可扩展标记语言(XML)等等的格式来呈现。可预期的是,该报告可以由web集成框架100的用户所选的任何适合的格式来呈现。可预期的是,用户可以向web集成框架100提交关于其它信息的类似请求,所述其他信息在第一层110中可以是可用的,诸如源代码、版本信息以及在相关应用中的关系信息,等等。
图6示出用户界面130的示例性实施方式。在所示实施方式中,用户界面130可以以图形界面400的形式出现。如图6中所示,图形界面400通常可以包括三部分410-430。例如,第一部分410可以包括一般信息,诸如关于如何使用图形界面400的信息、提示以及可以使用图形界面400来执行的搜索的样本。第二部分420可以包括与关于图形界面400的通告有关的通知。第三部分430可包括与符合本发明的示例性实现的多个不同版本相关联的版本注释。在一些实施方式中,第一部分410、第二部分420和/或第三部分430中所呈现的信息可以通过超链接460的形式呈现。图形界面400还可以包括搜索域440,这里,用户可以输入查询以搜索web集成框架100。还如图6的例子中所示,图形界面400可以包括多个标签450。标签450可以允许用户指定所述用户是否希望针对程序、作业、copybook、表格、交易或以上所有项而对web集成框架100进行搜索。虽然图6中描绘了六个标签450,但可预期的是,图形界面400中可以存在额外的或较少的标签。
如图7中所示的例子中示出的,第三部分430可以包括关于每个版本注释的摘要的列表,并且每个版本注释可以通过超链接460的形式呈现。希望访问版本注释细节的用户可以激活与版本注释相关联的超链接460。类似地,与通知有关的第二部分420中呈现的信息也可以通过超链接460的形式呈现。
图8示出了使用图形界面400的示例性搜索结果。在所示例子中,用户可以在web集成框架100中搜索与名为“BG4C4450”的应用程序(即,目标程序)相关的信息。目标程序可以是例如大型机应用或程序,其与大型机上发生的故障相关联。虽然所述例子说明了涉及目标程序的示范性搜索,但其意图是表明用户可以使用图形界面400来在web集成框架100中搜索与程序、应用、作业、文件、表格、交易、copybook、调用和/或可包括在第一层110中的任何其他适合信息相关的信息。首先,用户可以在搜索域440中输入目标程序的名称(即,BG4C4450)。在一些实施方式中,用户可以使用任何适合的输入设备(诸如,键盘)来在搜索域440中输入查询项。用户可以通过选择(例如,点击)搜索按钮445来提交查询。如图8中所示,名为“BG4C4450”的搜索可以产生“源代码”部分470、“信息”部分500、“使用”部分510、“被使用”部分520以及“相关搜索”部分530。可预期的是,含有与目标程序相关的额外信息的额外部分可以经由图形界面400来呈现。
“源代码”部分470可以包括“选项”部分480和“代码”部分490。在“选项”部分480中,用户可以选择呈现目标程序源代码的方式。在所示实施方式中,用户可以选择查看目标程序源代码的干净代码版本,和/或查看目标程序源代码的不带注解的版本。例如,用户还可以具有通过选择(例如,点击)“下载”按钮540来下载目标程序源代码的选项。“下载”按钮540可以允许用户将目标程序源代码向用户优选的文本编辑器(诸如,写字板或任何其他适合的文本编辑器)下载。在一些实施方式中,“代码”部分490可以包括目标程序源代码的实际文本。另外,“代码”部分490可以包括文件、表格、程序和/或作业等等的名称495,目标程序可以在执行程序功能时利用这些名称。在一些实施方式中,名称495可以以超链接的形式呈现,这使得文件、表格、程序和/或作业名称495可以通过激活它们相应的超链接而被访问。
在图8所示的实施方式中,“信息”部分500可以包括与目标程序有关的一般信息,诸如,目标程序的名称、目标程序的类别、目标程序的描述以及关于目标程序的版本信息。在所示的实施方式中,“信息”部分500还可以包括超链接,其用于让用户浏览或下载目标程序的源代码。还如图8中所示,“使用”部分510可以包括所述目标程序可在执行其功能时使用的资源。这些资源可以包括调用、程序、作业和/或copybook,等等。另外,“使用”部分510可以包括超链接,其允许用户复查目标程序可以使用的资源之间的关系,例如分等级关系。在一些实施方式中,用户可以从“子”视图、“派生”视图以及“(前向的)树形”视图中做出选择。“被使用”部分520可以列举资源,其在执行它们的功能时可使用所述目标程序。“被使用”部分520还可以包括超链接,以显示可以使用目标程序的资源之间的关系。在一些实施方式中,用户可以从“父”视图、“祖先”视图以及“(反向的)树形”视图中进行选择。“搜索相关”部分530可以包括可能与目标程序相关的程序、调用、作业和/或例程,等等。在一些实施方式中,“搜索相关”部分530可以包括超链接,用以打开与目标程序相关的全文本搜索结果。
“使用”部分510、“被使用”部分520以及“搜索相关”部分530可以迅速地向用户界面130的用户告知所述目标程序和其他相关程序的基本关系。用户可以点击包括在“使用”部分510、“被使用”部分520以及“搜索相关”部分530中的资源的超链接460,并且浏览所述资源。
图9-图11显示了关于在“使用”部分510中可用的“子”视图、“派生”视图以及“(前向的)树形”视图中的每一个的示例性实施方式。图9的“子”视图示出了由目标程序(例如,BA4CHA 12)直接使用的单元的列表。如图9中所示,由目标程序所使用的元素可以被分类,并且根据它们的各自的类别来呈现。例如,在所示实施方式中,所述元素被分类成为“调用”部分810和“包括”部分820。在一些实施方式中,“调用”部分810和“包括”部分820可以包括针对在“调用”部分810和“包括”部分820中所列举的元素中的每一个的超链接460,这使得用户可以通过激活(例如,点击)相应的超链接460来访问所述元素中的每一个。在所示实施方式中,可以显示所述元素中每一个的功能的简要描述。
图10的示例性“派生”视图示出了由目标程序(例如,BGA5420)直接或间接地使用的元素的列表。在一些实施方式中,图形界面400可以包括“作业”部分550和“调度”部分560。例如,“作业”部分550可以包括由目标程序使用的作业列表。在一些实施方式中,“调度”部分560可以包括程序、调用、作业和/或例程等等的列表,其可由目标程序直接或间接地使用。在一些实施方式中,“调度”部分560还可以包括为更新而被调度的程序、调用、作业和/或例程等等的列表,以及关于程序、调用、作业和/或例程等等的调度信息。在确定目标程序中的每个元素的子单元时,“派生”视图可以是很有用的,当所述确定被手动执行时,其典型地会非常耗时并且易发生错误。另外,目标程序及其元素之间的依赖性的复杂性可以延长手动地编译“派生”视图中所示的信息所需要的时间。
图11的示例性(前向的)树形视图示出了由目标程序(例如,B308)所使用的不同调用、作业、程序、表格和/或交易等等之间分等级的关系。在一些实施方式中,用户可以有对(前向的)树形视图中所示细节的等级进行选择的选项。例如,在所示实施方式中,在树选项部分900内,用户可以选择示出三个等级的选项,这使得由目标程序使用的不同资源之间分等级的关系可以以树形格式显示,并且这些资源可以被扩展到三个细节等级。在所示实施方式中,从第一等级到第二等级的扩展可以通过点击文件夹910来完成。在一些实施方式中,树选项部分900还可以包括示出copybook选项920以及示出表格选项930。通过选择示出copybook选项920,(前向的)树形视图可以示出由目标程序使用的copybook。类似地,通过选择示出表格选项930,则(前向的)树形视图可以示出由目标程序使用的表格。在一些实施方式中,树选项部分900可以包括更新按钮940。选择了不同选项的用户可以提交他的选择,并且通过点击更新按钮940来更新(前向的)树形视图。虽然在所示实施方式中选择了三个细节等级,但可预期的是,任何适合数量的细节等级可以在web集成框架100中实现。
图12-图14示出了“在被使用”部分520中可用的父视图、祖先视图以及(反向的)树视图的示例性实施方式。图12的父视图示出了直接使用了目标程序(例如,BGDT008)的元素的列表。如图12中所示,使用了目标程序的元素可以被分类,并且根据它们各自的类别被呈现。例如,在所示实施方式中,所述元素被分类成为“被插入”部分1110、“被选择”部分1120以及“被更新”部分1130。
图13的示例性祖先视图示出了直接或间接地使用目标程序(例如,BGDT008)的元素的列表。
图14的示例性(反向的)树视图示出了在不同的调用、作业、程序和/或交易等等中的分等级关系,其可以使用目标程序(例如,BGDT071)。在一些实施方式中,用户可以有对(反向的)树形视图中所示细节的等级进行选择的选项。例如,在所示实施方式中,在树选项部分1000下,用户可以选择示出五个等级的选项,这使得由目标程序所使用的不同资源之间分等级的关系可以用树形格式被显示,并且这些资源可以扩展到五个细节等级。在所示实施方式中,从第一等级到第二等级的扩展可以通过点击文件夹1010来完成。在一些实施方式中,树选项部分1000可以包括更新按钮1020。选择了不同选项的用户可以提交他的选择,并且通过点击更新按钮1020来更新(反向的)树视图。虽然在所示实施方式中选择了五个细节等级,但可预期的是,任何合适数量的细节等级可以在web集成框架100中实现。还可预期的是,含有与目标程序相关的额外信息的额外部分可以经由图形界面400被呈现。
如图15的实施方式中所示,认证模块135可以使用认证界面570。在允许用户访问web集成框架100之前,认证界面570可以要求用户输入用户名和密码。例如,用户可以使用OpenLDAP针对web集成框架100中实现的Microsoft活动目录来进行认证。可预期的是,可以使用用于对用户进行认证的其他适合方法和应用。还可预期的是,认证模块135可以是可插拔的,这使得认证模块135可以是从web集成框架100分离的组件,并且该认证模块135可以包括在web集成框架中并且可从该web集成框架被容易地移除。在一些实施方式中,认证模块135还可以被修改,这使得用户可以使用用户名和密码针对与web集成框架100相关联的数据库中所存储的用户名和密码的列表来进行认证。
虽然上述的实施方式经常被描述为和故障事件有关,但是用户可以使用类似的方法和系统来在大型机环境中执行应用的例行维护程序或故障排除。例如,用户可以使用web集成框架100来找到与任何目标程序相关的信息。另外,用户可以使用web集成框架100来仿真任何目标程序的修改。通过仿真目标程序的修改而非实际上修改目标程序,用户可以确定所预期的修改是否可以被证明是所期望的。通过仿真目标程序的修改,在用户从被仿真的修改实现了所期望的结果之后,该用户可以修改任何目标程序。另外,用户可以在执行批作业依赖分析中使用web集成框架100,在此,用户可以从报告模块180获得报告,其示出了可以被包括在第一层110中的不同批作业之间的内部依赖性。利用web集成框架100,用户可以执行各种其他分析,包括批作业分析、基于数据库访问信息的批配置分析、关系型数据库管理配置提取和自动化分析、批作业优先级和性能调整分析、批作业工作加载分析、可能的批作业死锁分析、交易数据库使用以及关于备份/恢复规划的调度的分析、针对作业调度和作业路径的批执行统计的集成、关系型数据库管理规划分析、批仿真和/或批操作手动生成分析,等等。各种分析的结果可以协助用户识别与在大型机环境中的应用的开发或使用寿命期间产生的错误相关联的问题区域和/或在大型机环境中的应用的开发或使用寿命期间产生的错误,并且可以改善开发过程的效率。
图16示出示例性计算系统1600,其可以用来实现本发明的实施方式。然而,组件和布置可以在本申请的原理内变化。
数据处理或计算系统1600包括许多组件,诸如中央处理单元(CPU)1605、存储器1610、输入/输出(I/O)设备1625、非易失性存储设备1620以及数据库1630。系统1600能够以各种方法来实现。例如,集成平台(诸如工作站、个人计算机、膝上计算机等等)可以包括CPU 1605、存储器1610、非易失性存储设备1620以及I/O设备1625。在这样的配置中,组件1605、1610、1620以及1625可以通过本地总线接口连接并经由外部连接访问数据库1630(被示为实现为分离数据库系统)。该连接可以通过直接通信链路、局域网(LAN),广域网(WAN)和/或其他适合的连接来实现。在一些实施方式中,数据库1630可以是嵌入式数据库,使得组件1605、1610、1620和1625可以通过检索库(未示出)来访问数据库1630。
CPU 1605可以是一个或多个已知处理设备,诸如来自IntelTM所制造的PentiumTM系列或AMDTM所制造的TurionTM系列的微处理器。存储器1610可以是一个或多个存储设备,其被配置成存储由CPU1605使用的信息,以执行与本申请的实施方式相关的某个功能。存储设备1620可以是易失性或非易失性的、磁性的、半导体的、磁带的、光学的、可移除的、不可移除的,或其他类型的存储设备或计算机可读介质。在一个符合本发明的实施方式中,存储器1610包括从存储设备1620或别处所加载的一个或多个程序或子程序1615,当由CPU1605执行时,一个或多个程序或子程序1615执行符合本申请的各种过程、操作或过程。例如,存储器1610可以包括各种被包括在第二层120中的示例性组件,诸如报告模块180、编译模块190、调度模块200、自动化库模块210以及储存库220,以用于执行它们各自如上所述的功能。
符合本申请的方法、系统以及产品不限于被配置成执行专门任务的分离的程序或计算机。例如,存储器1610可以用程序1615来配置,当由CPU 1605执行时,所述程序1615执行若干功能。例如,存储器1610可以包括执行报告模块180和编译模块190的功能的单个程序1615。此外,CPU 1605可以执行位于系统1600远程的一个或多个程序。例如,当执行时,系统1600可以访问一个或多个远程程序,其执行与本申请的实施方式有关的功能。
存储器1610还可以配置有操作系统(未示出),当由CPU 1605执行时,所述操作系统执行若干在本领域公知的功能。通过举例的方式,所述操作系统可以是Microsoft WindowsTM、UnixTM、LinuxTM、Apple计算机操作系统、个人数字助理操作系统(诸如,MicrosoftCETM)或其他操作系统。操作系统的选择,甚至操作系统的使用都不是本发明的关键。
I/O设备1625可以包括一个或多个输入/输出设备,其允许通过系统1600接收和/或传输数据。例如,I/O设备1625可以包括一个或多个输入设备,诸如键盘、触摸屏、鼠标等,其使得用户能够输入诸如概念信息、状态标签、数据库标识符等等的数据。另外,I/O设备1625可以包括一个或多个输出设备,例如显示屏、CRT监视器、LCD监视器、等离子显示器、打印机、扬声器设备等,其使得数据可以被输出或呈现给用户。I/O设备1625还可以包括一个或多个数字和/或模拟通信输入/输出设备,其允许计算系统1600与其他机器和设备通信。系统1600可以经由I/O设备1625从外部机器和设备输入数据,并且向外部机器和设备输出数据。在一个实施方式中,I/O设备1625可以包括用户界面130。被并入I/O设备1625的输入和/或输出设备的配置和数量都不是本发明的关键。
系统1600还可以被通信地连接到数据库1630。数据库1630可以包括一个或多个数据库,其存储信息并且通过系统1600被访问和/或管理。通过举例的方式,数据库1630可以是OracleTM数据库、SybaseTM数据库、DB2数据库或其他关系型数据库。例如,数据库1630可以包括在第一层110中可用的数据和信息,诸如描述示例性大型机环境上运行的应用的信息。然而,本申请的系统和方法不限于分离的数据库,或者甚至不限于数据库的使用。
通过考虑此处所公开的本发明的说明书和实践,本发明的其他实施方式对于本领域中的技术人员将会变得明显。可预期的是,虽然上文描述阐明了用于在示例性大型机环境中使用的web集成框架100的不同实施方式,但是web集成框架100可以通过配置web集成框架100的包括编译模块190等等在内的不同组件来适应在非大型机环境中的使用。其意图是仅将说明书和例子认为是示例性的,而本发明的真正范围和精神由以下权利要求指明。在这个方面,下列例子的特征可以被分离地或组合地实现,因此进一步定义其方法和/或系统和/或特定实施方式。
本申请还涉及产品,特别是计算机程序产品,其优选地被存储在计算机可读存储器上,和/或被提供为包括计算机可读指令的信号和/或数据流,当该计算机程序产品被加载入计算机的存储器并且由计算机执行时,其推动计算机施行根据本发明的方法,特别是如下由计算机实现的方法。
本申请可以涉及方法,特别是涉及使用计算机而以有组织的方式来识别大型机环境中的故障的根本原因的方法,所述大型机环境运行多个相关应用,该方法包括:
使用计算机系统来创建储存库,所述储存库存储描述来自所述大型机环境的多个相关应用的信息;
识别包括在所述多个相关应用中的、与大型机环境中的故障相关联的应用;
使用所述储存库中的信息来确定所述应用和所述多个相关应用之间的关系;
经由用户界面显示所述关系;以及
从所述关系来识别所述故障的根本原因。
有利地,所述方法提供了处理数据和显示数据(特别是信息数据)的改进方式,从而提供了改进的图形用户界面。基于所述数据处理和数据显示的方式,用户不需要为了找到导致了大型机中问题的应用而创建将在大型机环境运行搜索例程的作业(例如,程序)。因此,更加有利地,这里不存在关于所述搜索例程能还是不能检索到实际上导致大型机环境中问题的应用的不确定性。
更加有利地,用户不需要检索与通过搜索而找到的第一应用相关的若干其他应用,并且不需要检查每个应用以便隔离并识别导致问题的确切应用。因此,用户不需要为了正确地识别受问题影响并且与问题有关的不同例程和/或作业,而使用多个屏幕显示来自大型机环境的应用数据。因此,由于非常快速,特别是与可能用若干小时来运行的常规搜索相比较时,在本申请中所描述的方法更有效率。另外,由于被改进的图形用户界面避免了在自身没有提供上下文数据或相关数据以帮助理解问题的多个隔离屏幕或窗口中显示多个应用,所以在本申请中所描述的方法更加有效率。
示例性地,所述方法还可以包括:响应于识别故障的根本原因,更新应用。
示例性地,所述方法还可以包括:当多个相关应用中的应用被更新时,更新储存库。
示例性地,更新储存库还可以包括:
确定响应于识别故障的根本原因而被更新的应用与多个相关应用之间的关系,以产生更新的关系;以及
用所更新的关系来更新储存库。
因此,这里提供了改进的数据处理,其允许迅速地检索重要数据,以便识别和修复故障。
示例性地,确定所述关系还可以包括:确定所述应用和所述多个相关应用中的另一个应用之间的依赖关系。
因此,故障可以用可靠的方式被修复。
示例性地,确定所述关系还可以包括:确定所述应用和所述多个相关应用中的另一个应用之间的频率关系。
示例性地,识别所述应用还可以包括:接收表示大型机环境中故障的特征的错误信息;以及识别产生所述错误信息的应用。
示例性地,所述方法还可以包括:
修改与所述故障的根本原因相关联的应用以产生经过修改的应用,其中所述应用是批作业;
对所修改的应用的执行进行仿真;以及
输出所仿真的执行的结果。
因此,本申请避免安装、配置和执行大量应用的必要性,从而找到导致了故障的应用。其结果是,保存了硬件资源,特别是网络信息流通量和/或处理时间和/或存储器分配可以保持在很低的水平上。
示例性地,所述方法还可以包括:如果所仿真的执行的结果表明故障的根本原因已解决,则在储存库中存储代表所修改的应用的信息。
示例性地,所述方法还可以包括:在大型机环境中用经过修改的应用代替与故障的根本原因相关联的应用。
所以,可以用快速并且有效率的方式管理大型机环境,而以其他的方式则是没有可能的。
本申请还可以涉及系统,特别是涉及用于以有组织的方式来识别大型机环境中的故障的根本原因的基于计算机的系统,所述大型机环境运行多个相关应用,该系统包括:
存储器;以及
耦合到所述存储器的处理器,其被配置成:
创建储存库,所述储存库存储描述来自大型机环境的多个相关应用的信息,
识别包括在多个相关应用中、与大型机环境中的故障相关联的应用,
使用所述储存库中的信息来确定所述应用和所述多个相关应用之间的关系,
显示所述关系,以及
促进从所述关系来识别所述故障的根本原因。
换句话说,除其他外,所述系统可以包括图形用户界面,其向用户提供了内容和/或信息数据的改进的显示。这可以通过有效地显示关于导致故障的应用的所需信息来实现。此外,还可以显示从属应用。所以,图形用户界面例如通过以下步骤显示了系统的内部状态:
-显示导致了故障的应用,其还可以包括从属应用和/或
-显示错误消息和/或
-显示相应的源代码。
示例性地,所述处理器还可以被配置成:响应于识别所述故障的根本原因,提供工具以更新所述应用。
示例性地,所述处理器还可以被配置成:当所述多个相关应用中的应用被更新时,提供工具以更新储存库。
示例性地,所述处理器还可以被配置成:
确定响应于识别故障的根本原因而被更新的所述应用与所述多个相关应用之间的关系,以产生更新的关系;以及
提供工具以用所更新的关系更新储存库。
从本申请看来,特别是关于此处所描述的示例,“工具”也可以被称为“模块”。
示例性地,所述处理器还可以被配置成:确定所述应用和所述多个相关应用中的另一个应用之间的依赖关系。
示例性地,所述处理器还可以被配置成:确定所述应用和所述多个相关应用中的另一个应用之间的频率关系。
示例性地,所述处理器还可以被配置成:
接收表示所述大型机环境中故障的特征的错误信息;以及
促进识别产生错误信息的应用。
示例性地,所述处理器还可以被配置成:
促进对与故障的根本原因相关联的应用的修改以产生经过修改的应用,其中所述应用是批作业;
对经过修改的应用的执行进行仿真;以及
输出所仿真的执行的结果。
示例性地,所述处理器还可以被配置成:
如果所仿真的执行的结果表明故障的根本原因已解决,则在储存库中存储代表所修改的应用的信息。
示例性地,所述处理器还可以被配置成:
促进在大型机环境中用被修改的应用代替与故障的根本原因相关联的应用。
本申请还可以涉及方法,特别是涉及用于使用计算机系统而以有组织的方式来识别大型机环境中多个相关应用之间的关系的方法,该方法包括:
使用计算机系统创建储存库,所述储存库存储描述来自大型机环境的多个相关应用的信息;
识别在大型机环境中包括在多个相关应用中的目标应用;
使用所述储存库中的信息来确定所述应用和所述多个相关应用之间的频率和依赖关系;以及
经由用户界面显示所述关系。
有利地,所述方法提供了处理数据和显示数据(特别是信息数据)的改进的方式,从而提供了改进的图形用户界面。基于数据处理和数据显示的所述方式,用户能够形象化各种相关应用之间全面的关系。由此,由于改进的图形用户界面允许用户在单个用户界面中观察所述全面的关系,所以在本申请中所描述的方法更加有效率。
示例性地,所述方法还可以包括:
修改目标应用以产生经过修改的应用,其中所述目标应用是批作业;
对所修改的应用的执行进行仿真;以及
输出所仿真的执行的结果。
示例性地,所述方法还可以包括:
如果所仿真的执行的结果表明了期望的结果,则在储存库中存储代表了经过修改的应用的信息。
示例性地,所述方法还可以包括:
在大型机环境中用所修改的应用来代替目标应用。
因此,如果被仿真的修改产生了期望的结果,则用户可以仅修改目标应用。
示例性地,所述方法还可以包括:
当多个相关应用中的应用被更新时,更新所述储存库。
因此,当应用被修改时,储存库也被更新,而不要求其他的仿真和/或修改,并由此改善了系统的总效率。

Claims (24)

1.一种用于识别大型机环境中的故障的原因的方法,所述大型机环境正运行多个应用,所述方法包括:
在储存库中存储描述所述多个应用的信息;
识别所述多个应用中与所述故障相关联的一个应用;
使用所述储存库中的所述信息来确定所述识别的应用和所述多个应用之间的关系;
经由界面显示所述关系;
从所述关系来识别所述故障的所述原因;
修改所述识别的应用,以产生经过修改的应用;
对所修改的应用的执行进行仿真;以及
输出所仿真的执行的结果。
2.如权利要求1所述的方法,还包括:
响应于识别所述故障的所述原因,更新所述识别的应用。
3.如权利要求1所述的方法,还包括:
当所述多个应用中的一个应用被更新时,更新所述储存库。
4.如权利要求3所述的方法,其中更新所述储存库还包括:
确定所述更新的应用与所述多个应用之间的关系,以产生更新的关系;以及
用所更新的关系来更新所述储存库。
5.如权利要求1所述的方法,其中确定所述关系还包括:
确定所述识别的应用和所述多个应用中的第二应用之间的依赖关系。
6.如权利要求1所述的方法,其中确定所述关系还包括:
确定所述识别的应用和所述多个应用中的第二应用之间的频率关系。
7.如权利要求1所述的方法,其中识别应用还包括:
接收表示所述故障的特征的错误信息;以及
识别产生所述错误信息的所述应用。
8.如权利要求1所述的方法,
其中所述识别的应用是批作业。
9.如权利要求1所述的方法,还包括:
如果所仿真的执行的结果表明所述故障的所述原因被解决,则在所述储存库中存储代表所修改的应用的信息。
10.如权利要求9所述的方法,还包括:
用所修改的应用来代替所述识别的应用。
11.一种用于识别大型机环境中的故障的原因的系统,所述大型机环境正运行多个应用,所述系统包括:
用于在储存库中存储描述所述多个应用的信息的装置,
用于识别所述多个应用中与所述故障相关联的一个应用的装置,
用于使用所述储存库中的所述信息来确定所述识别的应用和所述多个应用之间的关系的装置,
用于经由界面显示所述关系的装置,以及
用于从所述关系识别所述故障的所述原因的装置,
用于修改所述识别的应用以产生经过修改的应用的装置,
用于对所修改的应用的执行进行仿真的装置;以及
用于输出所仿真的执行的结果的装置。
12.如权利要求11所述的系统,还包括:
用于响应于识别所述故障的所述原因而更新所述识别的应用的装置。
13.如权利要求11所述的系统,还包括:
用于当所述多个应用中的一个应用被更新时更新所述储存库的装置。
14.如权利要求13所述的系统,其中用于更新所述储存库的所述装置还包括:
用于确定所述更新的应用与所述多个应用之间的关系以产生更新的关系的装置;以及
用于用所更新的关系更新所述储存库的装置。
15.如权利要求11所述的系统,其中用于确定所述关系的所述装置还包括:
用于确定所述识别的应用和所述多个应用中的第二应用之间的依赖关系的装置。
16.如权利要求11所述的系统,其中用于确定所述关系的所述装置还包括:
用于确定所述识别的应用和所述多个应用中的第二应用之间的频率关系。
17.如权利要求11所述的系统,其中用于识别所述应用的所述装置还包括:
用于接收表示所述故障的特征的错误信息的装置;以及
用于识别产生所述错误信息的所述应用的装置。
18.如权利要求11所述的系统,其中所述识别的应用是批作业。
19.如权利要求11所述的系统,还包括:
用于如果所仿真的执行的结果表明所述故障的所述原因被解决,则在所述储存库中存储代表所修改的应用的信息的装置。
20.如权利要求19所述的系统,还包括:
用于用所修改的应用来代替所述识别的应用的装置。
21.一种用于识别大型机环境中多个应用之间的关系的方法,所述方法包括:
在储存库中存储描述所述多个应用的信息;
从所述多个应用中选择应用;
使用所述储存库中的所述信息来确定所述选择的应用和所述多个应用之间的频率和依赖关系;
经由用户界面显示所述关系;
修改所述选择的应用以产生经过修改的应用;
对所修改的应用的执行进行仿真;以及
输出所仿真的执行的结果。
22.如权利要求21所述的方法,还包括:
在所述储存库中存储代表所修改的应用的信息。
23.如权利要求22所述的方法,还包括:
用所修改的应用来代替所述选择的应用。
24.如权利要求23所述的方法,还包括:
当应用被更新时,更新所述储存库。
CN201010170538.9A 2009-04-30 2010-04-30 识别大型机环境中多个相关应用之间的关系的系统和方法 Active CN101876943B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/453,161 2009-04-30
US12/453,161 US8117500B2 (en) 2009-04-30 2009-04-30 Systems and methods for identifying a relationship between multiple interrelated applications in a mainframe environment

Publications (2)

Publication Number Publication Date
CN101876943A CN101876943A (zh) 2010-11-03
CN101876943B true CN101876943B (zh) 2014-12-31

Family

ID=42320713

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010170538.9A Active CN101876943B (zh) 2009-04-30 2010-04-30 识别大型机环境中多个相关应用之间的关系的系统和方法

Country Status (4)

Country Link
US (1) US8117500B2 (zh)
EP (1) EP2246787B1 (zh)
CN (1) CN101876943B (zh)
CA (1) CA2701969C (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011045112A1 (en) * 2009-10-12 2011-04-21 International Business Machines Corporation A method system and program to optimize job execution scheduled from and executed on external application containers
US8392760B2 (en) * 2009-10-14 2013-03-05 Microsoft Corporation Diagnosing abnormalities without application-specific knowledge
US8621376B2 (en) * 2009-10-28 2013-12-31 Yahoo! Inc. Developer interface and associated methods for system for querying and consuming web-based data
US8555105B2 (en) * 2010-04-12 2013-10-08 International Business Machines Corporation Fallover policy management in high availability systems
US9104429B2 (en) * 2011-09-30 2015-08-11 Bmc Software, Inc. Methods and apparatus for performing database management utility processes
US9152533B1 (en) 2011-12-06 2015-10-06 Amazon Technologies, Inc. Asynchronous programming system
US9170915B1 (en) 2011-12-06 2015-10-27 Amazon Technologies, Inc. Replay to reconstruct program state
US9015533B1 (en) * 2011-12-06 2015-04-21 Amazon Technologies, Inc. Error handling for asynchronous applications
US9092329B2 (en) * 2011-12-21 2015-07-28 Sap Se Process integration alerting for business process management
US8806277B1 (en) * 2012-02-01 2014-08-12 Symantec Corporation Systems and methods for fetching troubleshooting data
US9195566B2 (en) 2013-01-14 2015-11-24 International Business Machines Corporation Defect analysis system for error impact reduction
US10162696B2 (en) * 2013-01-31 2018-12-25 Entit Software Llc Dependency monitoring
KR20140106887A (ko) * 2013-02-27 2014-09-04 삼성전자주식회사 프로그램 표시 방법 및 그 전자 장치
US8973002B1 (en) * 2013-09-16 2015-03-03 Fmr Llc Business rules batch processor
CN104298603B (zh) * 2014-11-04 2018-01-30 中国银行股份有限公司 一种应用系统版本构建的正确性的检查方法
CN104730937A (zh) * 2015-03-26 2015-06-24 北京润科通用技术有限公司 半实物仿真系统及半实物仿真方法
US10572472B2 (en) 2017-11-09 2020-02-25 Bank Of America Corporation Systems, methods and architecture for updating parameters in mainframe relational databases
CN110134029A (zh) * 2018-02-09 2019-08-16 凌华科技股份有限公司 撷取设备数据的方法
CN108920566B (zh) * 2018-06-21 2020-10-20 吉林亿联银行股份有限公司 一种对SQLite数据库的操作方法、装置及设备
CN111352742B (zh) * 2018-12-21 2024-02-09 三六零科技集团有限公司 一种基于app组件化的信息传递方法及装置
CN111414293A (zh) * 2020-02-19 2020-07-14 中国平安人寿保险股份有限公司 邮件数据表的管理方法、装置、计算机设备及存储介质
US20230333962A1 (en) * 2022-04-19 2023-10-19 Autodesk, Inc. User feedback mechanism for software applications

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1682196A (zh) * 2002-09-11 2005-10-12 国际商业器公司 分布式系统中的识别根原因和确定问题的方法和设备
US7296194B1 (en) * 2002-03-28 2007-11-13 Shoregroup Inc. Method and apparatus for maintaining the status of objects in computer networks using virtual state machines

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6289368B1 (en) * 1995-12-27 2001-09-11 First Data Corporation Method and apparatus for indicating the status of one or more computer processes
US20060075001A1 (en) * 2004-09-30 2006-04-06 Canning Jeffrey C System, method and program to distribute program updates
JP4172807B2 (ja) * 2006-09-08 2008-10-29 インターナショナル・ビジネス・マシーンズ・コーポレーション 障害発生の原因箇所の発見を支援する技術

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7296194B1 (en) * 2002-03-28 2007-11-13 Shoregroup Inc. Method and apparatus for maintaining the status of objects in computer networks using virtual state machines
CN1682196A (zh) * 2002-09-11 2005-10-12 国际商业器公司 分布式系统中的识别根原因和确定问题的方法和设备

Also Published As

Publication number Publication date
CA2701969A1 (en) 2010-10-30
EP2246787B1 (en) 2016-11-02
US20100281307A1 (en) 2010-11-04
CN101876943A (zh) 2010-11-03
US8117500B2 (en) 2012-02-14
EP2246787A1 (en) 2010-11-03
CA2701969C (en) 2018-07-10

Similar Documents

Publication Publication Date Title
CN101876943B (zh) 识别大型机环境中多个相关应用之间的关系的系统和方法
EP3769223B1 (en) Unified test automation system
US10162612B2 (en) Method and apparatus for inventory analysis
US8645326B2 (en) System to plan, execute, store and query automation tests
US8893106B2 (en) Change analysis on enterprise systems prior to deployment
Rabkin et al. How hadoop clusters break
US7418453B2 (en) Updating a data warehouse schema based on changes in an observation model
US8166458B2 (en) Method and system for automated distributed software testing
US8645341B2 (en) Method and system for automatically updating a software QA test repository
US7624394B1 (en) Software installation verification
EP1225508A1 (en) A universal software application
US20120036049A1 (en) System and method for software integration and factory deployment
EP2133795A1 (en) System and method for testing a software product
US20080313626A1 (en) Applicable patch selection device and applicable patch selection method
US20100058113A1 (en) Multi-layer context parsing and incident model construction for software support
US20030192027A1 (en) Software application development
US11086618B2 (en) Populating a software catalogue with related product information
US7475293B1 (en) Product check matrix
US20040153748A1 (en) Method for configuring a data processing system for fault tolerance
US20230045235A1 (en) Trusted application release architecture and dashboard
CN114021756A (zh) 故障分析方法、装置和电子设备
US8150821B2 (en) System and method for using generic utilities to perform database utilities on mainframe operated DB2 databases
CN111897794A (zh) 数据库的维护方法、装置、电子设备和存储介质
Kaplan et al. Implementing SAP Enhancement Packages
Górski et al. Towards automation of IT systems repairs

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
ASS Succession or assignment of patent right

Owner name: ACCENTURE GLOBAL SERVICES GMBH

Free format text: FORMER OWNER: ACCENTURE INTERNATIONAL CO., LTD.

Effective date: 20110113

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: LUXEMBOURG TO: DUBLIN, IRELAND

TA01 Transfer of patent application right

Effective date of registration: 20110113

Address after: Dublin, Ireland

Applicant after: Accenture Global Services GmbH

Address before: Luxemburg Luxemburg

Applicant before: Accenture international Limited Liability Company

C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant