CN107729252A - 用于降低升级软件时的不稳定性的方法和系统 - Google Patents
用于降低升级软件时的不稳定性的方法和系统 Download PDFInfo
- Publication number
- CN107729252A CN107729252A CN201711101256.1A CN201711101256A CN107729252A CN 107729252 A CN107729252 A CN 107729252A CN 201711101256 A CN201711101256 A CN 201711101256A CN 107729252 A CN107729252 A CN 107729252A
- Authority
- CN
- China
- Prior art keywords
- score
- mistake
- group
- patch
- software
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3414—Workload generation, e.g. scripts, playback
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24578—Query processing with adaptation to user needs using ranking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/04—Processing captured monitoring data, e.g. for logfile generation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
- H04L43/067—Generation of reports using time frame reporting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/875—Monitoring of systems including the internet
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请涉及用于降低升级软件时的不稳定性的方法和系统。一种使用错误计分和跟踪系统评定软件错误的系统和方法被提出。该系统和方法可以使用对错误的自动计分确定错误的影响。该系统和方法可以连接到一个或多个数据库以确定软件的部署的范围、错误的影响、和/或错误的历史。计分被用于对错误划分优先级,并且计分是可扩展和可调整的,允许方便地添加新参数,并且允许针对不同的错误类型、软件或客户对系统进行修改。
Description
本申请是申请日为2014年7月2日、申请号为201480035255.X、名称为“用于降低升级软件时的不稳定性的方法和系统”的发明专利申请的分案申请。
对相关申请的交叉引用
本申请与以下共同待决、共同受让的美国专利申请相关:由Davis同步提交的,名称为“CONSOLIDATION PLANNING SERVICE FOR SYSTEMS MIGRATION”的美国专利申请No.13/938,061(代理机构案号88325-870368(137700US));由Davis同步提交的,名称为“MIGRATION SERVICES FOR SYSTEMS”的美国专利申请No.13/938,066(代理机构案号88325-870369(137800US));由Higginson同步提交的,名称为“DATABASE MODELING ANDANALYSIS”的美国专利申请No.13/937,885(代理机构案号88325-870374(137900US));由Higginson同步提交的,名称为“AUTOMATED DATABASE MIGRATION ARCHITECTURE”的美国专利申请No.13/937,868(代理机构案号88325-870373(138000US));由Raghunathan等同步提交的,名称为“CLOUD SERVICES LOAD TESTING AND ANALYSIS”的美国专利申请No.13/937,344(代理机构案号88325-870381(138100US));由Raghunathan等同步提交的,名称为“CLOUD SERVICES PERFORMANCE TUNING AND BENCHMARKING”的美国专利申请No.13/937,483(代理机构案号88325-870383(138200US));由Buehne等同步提交的,名称为“SOLUTIONTO GENERATE A SCRIPTSET FOR AN AUTOMATED DATABASE MIGRATION”的美国专利申请No.13/937,988(代理机构案号88325-870382(138300US));由Buehne等同步提交的,名称为“ONLINE DATABASE MIGRATION”的美国专利申请No.13/937,545(代理机构案号88325-870410(138400US));由Buehne等同步提交的,名称为“DYNAMIC MIGRATIONSCRIPTMANAGEMENT”的美国专利申请No.13/937,486(代理机构案号88325-870409(138500US));以及由Masterson等同步提交的,名称为“ADVANCED CUSTOMER SUPPORTSERVICES–ADVANCED SUPPORT CLOUD PORTAL”的美国专利申请No.13/937,970(代理机构案号88325-870401(138600US)),其中的每一个专利申请的全部公开内容以引用的方式被并入本文中。
技术领域
本发明通常涉及数据库,并且更具体地涉及用于提供软件错误的跟踪、维护和排序工具的装置和方法。
背景技术
现代的数据库系统非常复杂,其由许多组件组成并且通常被用于性能敏感的操作。随着软件应用的复杂性的增大,错误(bug)的数量可能增大。软件错误的范围可以从具有很小影响或没有影响的不显著的故障到严重的安全或性能缺陷。跟踪这些错误以确保最严重的差错取得优先级并且用修复或补丁及时地更新适合的系统是重要的。
发明内容
通过使用本文描述的系统和方法,可以使得对软件错误和与错误相关联的更新的跟踪、划分优先级以及排序更可靠、更快速并且更准确。提出了使用错误计分和跟踪系统来评定软件错误的系统和方法。所述系统和方法可以使用对错误的自动计分以确定错误的影响。计分可以被用于对错误划分优先级,并且计分可以是可扩展和可调整的,允许方便地添加新参数,并且允许针对不同的错误类型、软件或客户对系统进行修改。
在一些实施例中,用于对错误划分优先级的系统包括一个或多个处理器,以及与所述一个或多个处理器通信地耦接的存储器,所述存储器是可由所述一个或多个处理器读取的,并且存储器上存储有一系列的指令,当所述指令被所述一个或多个处理器执行时,使得所述一个或多个处理器能够通过执行一系列步骤对软件错误划分优先级。所述步骤可以包括接收软件错误报告,所述软件错误报告可以具有描述软件错误的数据部分,而所述数据部分可以包括描述软件错误的至少一种影响的信息。另一个步骤可以至少部分地基于软件错误的影响确定软件错误的代码基(code base),并且进一步接收客户偏好,客户偏好可以定义一组描述客户偏好以用于评定软件错误的重要性的参数。步骤还可以包括在没有人为输入的情况下计算与软件错误相关的一组参数得分(score),所述一组参数得分可以量化在客户偏好中定义的该组参数。另外,可以执行对所述一组参数得分的分组,将其分成第一组和第二组,在这之后,使用第一组和第二组计算错误得分。具有软件错误的优先级划分的错误报告可以被生成,优先级划分是基于错误得分的。
在一些实施例中,所述一组参数得分可以包括部署参数得分。部署参数得分可以概括代码基被部署的次数。所述一组参数得分还可以包括概括软件错误的影响的严重性的影响参数得分、概括与软件错误相关的错误的数量的相关错误参数得分、以及概括代码基的重要性的技术参数得分。可以通过对第一组和第二组的参数得分取内积来计算软件错误的错误得分,并且优先级划分可以基于错误得分与其他错误的得分相比的相对值。
附图说明
参考以下附图,可以实现对各种实施例的实质和优点的进一步理解。
图1说明错误计分系统的实施例的框图;
图2说明用于生成错误得分的方法的一个实施例;
图3说明用于确定错误的优先级的方法的一个实施例;
图4说明用于确定软件补丁的优先级的方法的一个实施例;
图5说明支持平台系统的实施例;
图6说明计算机系统的实施例。
具体实施方式
错误(bug)可以是软件应用中的某种缺陷,其使得软件应用的全部或某部分发生故障或以某种意外或非预期的方式执行。许多错误难以被找到并且保持隐藏直到被终端用户发现。软件错误的范围可以从具有很小影响或没有影响的不显著的故障到严重的安全或性能缺陷。
通常难以(如果不是不可能的)在大且复杂的系统中修复所有被报告的错误。开发者和软件工程师可能仅仅具有修复错误中小的子集的资源。软件错误可能需要被划分优先级以确保,与对系统和/或客户来说最严重的差错相对应的错误的子集得到修复、或首先被修复。
在软件错误被修复后,跟踪与错误相关联的软件更新或补丁并且对其划分优先级可以是重要的。关于客户将安装的更新的类型,客户可以是有选择性的。部分地由于系统的复杂性,因此软件补丁或更新有时可能由它们自身引入新的错误,新的错误可能比原始错误或它们意图解决的差错更严重。软件更新有时需要重启或暂停系统或数据库的操作,这可能中断客户的业务操作。对补丁或软件更新划分优先级可以被系统管理员使用以决定补丁将被应用时的时间选择、部署的广度、或更新是否将被部署。
对软件错误和与错误相关联的更新的跟踪、划分优先级、以及排序通常涉及若干复杂的、手动的、和/或主观的方法和系统。在一些情况下,错误得到修复的顺序可以基于每个错误的困难程度或复杂性。一些容易解决、具有较小影响的错误可以首先被修复,而其他更严重的错误由于它们的复杂性,对它们的修复可能在时间上被开发者推迟。同样,可以由管理员或开发者基于个人感知到的错误的重要性,对一些错误主观地分配高优先级。每个人或开发者可以具有在系统、软件、或软件的部署特性方面的不同的知识水平,从而造成不一致的排序和优先级划分。例如,在一些情况下,针对具有较大数量的部署的软件,对影响此软件的错误分配高优先级可以是理想的。即使是一个相对低级别的差错并且其不在任何一个单独系统上(如果被部署在大量的系统上)造成显著的影响,但此错误可能影响许多客户,造成总体的较大影响。如果一个错误可能在任何单独系统上产生严重的影响,并且此错误影响的软件具有较少的部署,则对此错误分配相对低的优先级可以是理想的。例如,对于个人来说,部署信息可能是难以准确地访问的。在复杂的系统中,代码部分、模块、插件和/或类似物可能仅仅被部署在特定版本的软件中、仅仅针对特定客户、或可能在系统的其他功能中被重新使用,这使得对错误的优先级划分的准确评估进一步复杂化。因此主要依赖于对错误进行手动的、基于用户的排序和优先级划分的跟踪工具可能具有不一致且不完全的排序。
在一个方面,提出了用于对软件错误计分和划分优先级的方法。该方法可以至少部分地使用对错误的自动计分。该方法可以包括从一个或多个数据库接收数据以确定软件的部署的范围、错误的影响、错误的历史等。该方法是可扩展和可定制的,允许方便地添加新参数以用于计分。可以针对不同的错误类型、软件版本、客户等,对错误计分和优先级划分进行修改。
对于准确地跟踪和评定不同类型的软件错误、影响不同的客户和软件包的错误来说,错误计分方法以及相关联的系统的定制性和可扩展性是重要的。例如,一些软件部署可能总是被包含在私有网络或私有云环境中。在这样的部署中,由于软件可能永远不会暴露于恶意的外界中,因此客户可能发现损害软件的安全性的错误或软件差错不是那么严重。这些客户可能发现影响系统性能的错误最严重。可扩展的错误计分和跟踪工具可以是客户或开发者可定制的,允许对软件错误进行定制的优先级划分、计分等。错误计分和跟踪工具可以针对每个错误提供多于一个的计分和排序。每个错误可以与多于一个的得分、优先级、排序等相关联。每个错误可以与多于一个的得分相关联,其中每个得分可以对应于不同的软件版本、不同客户、关于错误的假定、软件开发者等。
软件错误计分和跟踪工具还可以被用于对与每个错误相关的补丁和软件更新进行计分和跟踪。通过至少部分地使用本文描述的方法,每个软件补丁或软件更新可以被计分或被划分优先级。依赖于客户、软件版本、部署的类型等,每个补丁和软件更新可以具有多于一个的得分、排名等。在补丁被部署给每个客户时,针对每个补丁的得分或优先级可以自动地与补丁相关联,以使得每个客户可以分析仅仅与客户自身的系统、偏好、部署等相关的优先级。基于排序,客户可以做出关于安装补丁的时间选择的他们自身的决定。
在一些实施例中,每个错误的多个得分和排序可以被组合以提供一个针对错误的影响的总体得分。所述一个总体得分可以被将要修复错误的软件开发者或管理员使用,以评估软件差错在多个客户、部署、软件版本等上的影响和优先级。
本文中使用的术语“错误(bug)”在涉及软件时,意味着在计算机软件程序或系统中的某种类型的差错、缺陷或故障。软件错误可以产生非正确或意外的结果。在一些系统中,错误可以使得系统以非预期的方式运行。“错误”还可以在计算机硬件、结构或系统中被发现。在硬件的制造或设计中的差错还可以在硬件的运行期间导致非正确或意外的结果。虽然本公开描述对软件错误的计分和跟踪,但要理解的是,方法和系统可以适用于对诸如硬件错误或系统错误之类的其他类型的错误和差错的计分。
本文中使用的术语“补丁”在涉及软件时,是被设计用于修复问题、或更新计算机程序或程序的支持数据的一个软件片段。补丁可以是二进制可执行的、源代码、代码修改等。在本申请的上下文中,补丁可以包含被设计用于更新软件和修复错误的任何类型的软件更新或服务补丁。补丁可以修复一个或多个错误,并且更新软件的可能与错误不相关的其他部分。虽然本公开描述对软件补丁的计分和跟踪,但要理解的是,方法和系统可以适用于对与硬件更新、板旋(board spin)等相关的其他类型的补丁的计分。
图1示出了针对错误计分和跟踪工具的一个实施例的高层框图。如图1所示,错误报告(Bug Report)被供应给工具。错误报告可以源自于客户、开发者、错误数据库等。如果错误源自于客户,则错误报告可以包括对意外行为的描述、对错误影响的描述、对表现形式的描述等。错误报告可以与客户信息(Customer Information)、升级信息(UpgradeInformation)以及任何系统信息(System Information)一起被接收,客户信息提供客户偏好的细节,升级信息与客户相关,系统信息与所报告的错误相关。在一些情况下,错误报告可以源自于开发者或内部实体而不源自于客户。错误报告可以包括已被识别出具有错误的特定代码区、片段、文件等。在这样的情况下,客户信息可以与对错误范围的估计相关,升级信息和系统信息可以与错误可能影响的代码基相关。工具可以输出错误优先级列表(BugPriority list)以及补丁优先级列表(Patch Priority list),所述两个列表可以特定于每个客户、软件版本或系统。工具可以生成特定于每个客户的客户报告(CustomerReport),其可以提供每个被识别的错误的严重性的状态和/或提供与对每个错误的解决有关的状态。客户报告还可以包括与每个客户相关的补丁以及补丁的优先级以及补丁解决的问题或错误。
参考图1,错误计分和跟踪工具包括若干组件和模块;一个或多个数据处理器112(也被称作处理器),计分引擎113,存储器114,若干数据库(例如,部署数据库118、错误数据库119和补丁数据库115)。输入/输出模块116还具有与外部数据库120或其他外部数据源进行交互的合适的功能,所述外部数据库120或其他外部数据源可以由错误计分和跟踪工具110或第三方操作。
计分引擎113可以接收和收集来自内部和外部数据源的、与错误相关的数据。数据可以被用于计算与每个错误相关的参数得分。然后参数得分可以被用于计算错误得分,错误得分可以被用于对错误以及与错误相关联的补丁划分优先级。
部署数据库118可以包括例如,与每个软件版本、模块、库、脚本或代码的部署历史和活动有关的信息。部署数据库118可以包括与多少客户已经下载或活动地使用特定版本的代码相关的统计数据。统计数据可以包括每个版本的软件是多么活动地被使用,并且包含关于软件服务多少用户等的信息。针对软件的每个部署,数据库可以包含与软件被部署在其上的系统的细节有关的信息。例如,数据库可以包含指示软件是否被包含在私有网络或私有云中,或软件是否暴露于公众当中的信息。每个部署记录可以具有与每个客户和每个部署的偏好相关联的信息,该信息关于对于客户来说最重要的问题或错误的优先级。部署数据可以包括与对于每个部署的操作来说每个软件或代码的关键性以及代码被初始化或被执行的频率有关的信息。在一些部署中,软件可以仅仅被安装但是从来不被客户使用,因此,虽然某代码可以有较大的部署量,但部署的影响可能相对较小。部署数据库118可以在本地在与计分和跟踪工具相同的系统上存储所有部署信息、或外部地在不同的系统上存储所有部署信息。
部署数据可以被存储在各种不同的数据库中。一些数据库可以包括与特定版本的软件或仅仅属于特定客户的软件部署有关的信息。此信息可以传遍多个组、开发团队、市场营销或业务部门。错误计分和跟踪工具可以通过输入/输出模块116从外部数据库120接收信息。
返回到图1,错误计分和跟踪工具110的错误数据库119可以包括关于与被报告的错误相关的历史和数据的信息。当错误被报告时,通过使用错误数据库119,错误的状态和错误的属性可以被记录并且被跟踪。错误数据库可以包括关于报告错误者、错误与之相关的软件代码、错误可能影响的软件版本和客户、错误的症状、相关的错误、相关的软件补丁、状态、历史、被指定解决错误的个人或相关方、错误的优先级或得分等的信息。
错误计分和跟踪工具110的补丁数据库115可以包括关于与补丁和错误修复相关的历史和数据的信息。在新的补丁和代码修复被开发时,通过使用补丁数据库115,补丁的状态和补丁的属性可以被记录并且被跟踪。补丁数据库可以包括关于生成补丁者、补丁与之相关的软件代码、补丁被设计用于修复的错误、安装补丁可能的结果、相关的补丁、部署的历史、补丁优先级等的信息。
错误计分和跟踪工具110的客户数据库117可以包括关于客户偏好和客户历史的信息。数据库可以包括关于可以反映客户的业务和市场营销活动的偏好的信息。偏好可以定义可能损害客户的业务操作的错误的类型。例如,活跃于金融市场的客户,可能将影响系统的安全性方面的甚至极小的错误视为具有高优先级。
错误计分和跟踪工具110可以包括计分引擎113以用于将得分和优先级划分分配给错误。排序可以被用于对需要关注的错误列表进行优先级划分,并且被用于跟踪错误的重要性。计分引擎113可以被配置为生成错误的得分。计分引擎可以通过使用基于数学原理的、对与错误相关联的数据的分析来创建错误得分。计分引擎113可以提供计算错误得分的可重复且至少部分自动的方法,从而降低由于人为差错或定性评估造成的误计算错误优先级的风险。
在实施例中,计分引擎113可以使用来自一个或多个数据源的参数得分来计算错误得分。计分引擎可以从部署数据库118或外部数据库120或其他外部数据库接收数据,以确定或估计与错误的普遍度相关的参数得分。计分引擎可以从一个或多个本地或外部的数据源访问数据以收集与错误相关的信息。
例如,通过使用部署数据库,计分引擎可以计算部署参数得分,部署参数得分可以概括与每个错误相关的部署数据。一旦与每个错误相关的代码基被确定,则针对每个错误的部署数据就可以被获得。通过使用部署数据,针对错误影响的代码的部署参数得分可以被工具计算。部署参数得分可以定期地被计算或被估计。错误计分和跟踪工具110可以针对每个软件、代码部分、或代码模块计算部署参数得分。得分可以被保存并且被用于计算错误和补丁的优先级或评定中。针对每个软件的部署参数得分可以基于部署特性的改变被定期地更新。部署参数得分可以每月、每季度、与重大的软件发布和更新的时间选择相关地等被计算一次。
同样地,通过使用本地或远程数据源中的一个或多个,计分引擎可以计算相关代码参数得分,此相关代码参数得分概括相关的软件发布的数量、或受错误影响的代码可能与之相关的代码片段的数量。类似或相关的代码可能受到类似的故障或错误的影响,并且可能表示更广泛范围的错误。相关错误参数得分也可以被计算。相关错误参数得分可以基于来自错误数据库119的数据,概括相关的错误的数量。
在实施例中,计分引擎可以从本地或外部数据库或数据源接收数据,以确定或估计与错误的影响以及错误的结果相关的参数得分。计分引擎可以接收与错误相关联的技术和子组件有关的信息。一些代码可以被给予高重要性的评定,在此代码中的任何极小的差错可以被认定是重要的。与GUI或其他特征相关的一些代码技术例如可以被认定或被评定为具有低重要性。计分工具可以基于接收到的数据计算技术参数得分。
还可以用针对错误影响的严重性的得分来获取错误的影响。错误的影响可以与对错误的报告一起被接收。错误的影响可以作为一种描述和/或评定被提供。描述和评定可以提供对影响程度的指示,影响程度的范围从服务的完全丢失到图形用户接口的临时失灵。错误的影响可以从与错误相关联的诊断系统转储中被确定。错误的影响可以从对错误的独立或自动再造中被确定。在一些实施例中,可以由个人基于来自用户或客户的口头或文本描述,手动地输入评定。针对不同的系统和配置,错误的影响可以是不同的。针对不同的系统配置的错误的症状也可以被确定并且被分配一个得分。错误计分和跟踪工具可以使用数据来分配影响参数得分和严重性参数得分,其分别概括错误的影响和严重性数据。
计分引擎113可以包括附加的参数,这种参数可以与错误的技术方面或影响不相关。在实施例中,计分引擎可以接收关于与错误相关的软件产品的市场营销、产品年龄、业务活动、或与错误可能影响的特定产品相关的机会的信息。例如,影响正在宣传并且积极地营销的新软件产品的一个错误可以被认为具有较高的重要性。甚至对新软件的运行不具有显著影响的小错误可能造成负面宣传,因为新的发布通常会受到额外的严格监督。计分引擎可以接收或计算与每个错误相关的市场营销得分。较高数字的市场营销得分可以表示较高的活动性或知名度。
参数得分可以被分配一个值或数字。在实施例中,被分配或与错误相关联的参数得分可以被缩放或被分配非恒定的范围。例如,一些参数可以被缩放到具有从1到4的范围,而其他参数可以被缩放到具有从1到100的值。在实施例中,参数值的范围可以被改变或被修改以改变这些参数对总体错误得分或评定的重要程度或影响。针对每个客户,每个参数的范围或缩放可以基于客户的偏好被调整。例如,值为100的部署参数得分可以表示与错误有关的代码相关联的非常大数量的下载或部署,而值为1的得分可以表示无或仅仅一些。
与每个错误相关的、接收到或计算得到的参数得分可以被存储在存储器或表中,并且被用于计算错误得分。
在一些实施例中,在每个新错误被报告给工具时,参数得分可以被计算或被估计。可以在不同的粒度水平上生成参数得分。可以针对每个特定的部署、客户、软件版本、软件模块、脚本、代码片段、代码类、代码库等,生成参数得分。粒度可以依赖于数据的有效性、软件的结构或体系构架、可能的软件更新的粒度等。
在一个实施例中,每个错误的参数得分可以被分类或分配到不同的组中。组可以被定义以获得关于与错误相关联的特定度量或特性的参数得分。例如,一些参数可以被分类到“错误普遍度”组。此组可以包括与对错误有关的软件的下载的数量、相关的软件发布的数量、或相关的错误的数量相关联的参数的得分。另一个组可以被用于获得与“错误影响”相关的参数得分。错误影响组可以包括与错误对系统产生的影响、错误影响的技术组件、错误可以影响的服务和组件的广度等相关联的参数的得分。
对参数得分的其他分组可以指定到市场营销、业务活动、错误结果等。
对错误参数得分的分组可以被用于计算错误得分。在一个实施例中,每个组的参数得分可以被布置在一个向量或矩阵中。每个参数组的参数得分的矩阵或向量可以由计分引擎113生成。例如,与错误普遍度相关的、分组的参数得分可以被布置在矩阵A=(ARU RSRB)中,其中ARU是与错误有关的软件的下载的数量相关联的部署参数得分,RS是与相关的软件发布的数量相关联的代码参数得分,而RB是与相关的错误的数量相关联的相关错误参数得分。同样地,与错误影响相关的、分组的参数得分可以被布置在矩阵B=(TC S BI)中,其中TC是与错误影响到的技术组件相关联的技术参数得分,S是与错误的影响的严重性相关联的严重性参数得分,而BI是与错误影响相关联的错误影响参数得分。
在每个组的矩阵被定义之后,总体错误得分(bugs score)可以被计算为矩阵的相乘(内积):
方程1
其中*是标量乘法。
使用方程1中的错误得分公式,错误计分引擎可以通过使用参数得分计算出单个标量错误得分。例如,计分引擎可以计算或接收参数得分:ARU=4,RS=5,RB=12,TC=10,S=4,BI=10。参数得分可以被分组为两个矩阵:A=(4512)和B=(10410)。对矩阵A和B取内积,总体错误得分可以被计算为:错误得分=4*10+5*4+12*15=240。值为240的错误得分可以被存储在数据库中,并且与错误相关联。
在实施例中,对错误得分的计算可以被延伸和修改为包括多于两组的参数得分(即,多于两个矩阵)。在实施例中,对参数得分的分组可以被改变,例如,与一个组或矩阵相关联的参数得分可以依赖于错误的上下文而被改变。每个组中的参数得分的顺序可以被改变。对组或矩阵内的参数得分的值的排列可以改变每个参数得分在总体错误得分中的意义。另外,在每个组中的参数的数量也可以改变。虽然具有三个参数得分的组作为示例被给出,但在其他实施例中,一组参数得分可以具有四个或更多个得分。在一些实施例中,每个参数得分可以通过将参数得分中的一个或多个得分与一个数字相加、相乘或相除而被缩放。缩放可以被用于提高或降低一个参数得分在总体错误得分中的重要性。
在对总体错误得分的计算包括多于两个组的参数得分的实施例中,错误得分(bugs score)可以被计算为:
bugs score=A·B·...·Z=(A1 A2 …Ai)(B1 B2 …Bi)...(Z1 Z2 ...Zi)
=A1*B1*...*Z1+A2*B2*...*Z2+…+Ai*Bi*...*Zi
方程2
其中A,B,Z是参数得分的矩阵,Aj,Bj,Zj是矩阵的参数得分,*是标量乘法。
在实施例中,计分引擎可以计算出多于一个的错误得分。计分引擎可以依赖于客户偏好、软件发布等计算出不同的错误得分。通过使用两组参数得分可以计算出一个错误得分,而通过使用三组参数得分可以计算出另一个错误得分。例如,通过使用具有用不同的值进行缩放得到的参数得分的两组参数得分可以计算出第三个得分。不同的错误得分中的每个错误得分可以被存储在错误数据库中,并且与错误相关联。可以用对应的描述或标识符对每个错误得分做标记或加标签,描述或标识符可以被用于确定在计算中使用的参数得分和参数得分组。可以用针对其定制错误得分的客户、软件、系统等链接错误得分或对错误得分加标签。可以用元数据、数据库记录、到外部信息源的链接等描述每个得分。
图2示出具有由错误工具使用的用于生成错误得分的步骤200的流程图。在块202处,错误工具接收错误报告。可以从客户、从错误数据库或其他源中接收错误报告。错误报告可以识别错误的若干属性,诸如错误的行为、条件、相关的系统或软件发布等。在一些情况下,错误报告可以已经识别出与错误相关的软件代码、版本、或发布。在错误报告不包括这样的相关信息或仅仅包括部分信息的实施例中,错误工具可以被用于确定信息。在块204处,错误工具可以被用于识别与错误相关的软件代码。错误工具可以与任何数量的外部工具、装置、数据库、调试器、编译器等一起被使用,以确定与错误相关的代码。在一些情况下,与错误相关的代码可以经由查找表被确定。对错误的描述、或时间选择、行为等可以被用于确定负责执行功能的代码。例如,如果错误被描述为影响软件的特定功能,则查找表可以被用于确定哪些代码与这样的功能相关。在其他实施例中,在错误的执行期间的程序转储可以被用于确定引起意外或差错的代码。在一些情况下,与错误相关联的软件代码的粒度可以准确地被确定,并且被关联到特定的模块、类、库或甚至代码行的集合。在一些更复杂的错误中,错误的确切的实质或原因可能难以查明,可能是由各种原因或交互或各种软件代码片段导致。因此块204可以仅仅提供与错误相关联的软件代码的高层概览,并且仅仅识别例如软件版本或软件发布。
在块206中,错误计分工具可以收集和/或识别计算参数得分所需要的数据。确定每个参数得分所需要的数据可能针对每个参数而变化。一些参数得分可能要求收集或识别两个或更多个值。其他参数得分可能仅仅要求查找一个值。参数可以包括上面所讨论的内容,诸如对代码的部署、代码的普遍度、错误影响等。错误计分工具可以从任何数量的本地和远程数据库和数据源收集和/或识别数据。例如,可以被用于表示软件被部署了多少次的部署参数得分,可以与若干数据源相关联。为了确定与错误相关的代码片段已经被下载了多少次,错误计分工具可以首先收集数据以确定与错误相关联的代码是其一部分的所有可能的产品版本、软件发布以及模块。然后,错误计分工具可以可能地从其他数据源中,收集与代码是其一部分的每个产品版本、软件发布、以及模块相关联的下载或活动的部署的数量有关的数据。
在块208中,错误计分工具可以通过至少部分地使用在块206中收集到的参数数据,计算参数得分。一些参数得分可以等于针对每个参数所收集到的数据。在实施例中,参数得分可以被进一步标准化或缩放。例如,对部署参数得分的计算可以涉及将所有收集到的、对与错误相关联的每个产品版本、软件发布和模块的下载的数量相加。计分工具可以通过例如用所计算得到的部署参数得分除以对所有可能的产品版本、软件发布、以及模块的部署的总数量,来进一步标准化所计算得到的部署参数得分以使得它不大于值1。
在块210中,错误计分工具可以将参数得分分为一个或多个组。在实施例中,对参数得分的分组可以基于参数得分的相似性。例如,与下载的数量、相关软件部署的数量以及相关错误的数量有关的参数得分可以全部被分到一起。在每个组中的参数得分可以被用于生成矩阵以用于计算总体错误得分。在每个矩阵中的参数得分的顺序以及对参数得分的分组可以由客户偏好、系统偏好或其他定义决定。客户偏好可以从客户数据库中被接收,并且可以定义哪些参数应当被分组到一起。参数得分的分组和顺序可以影响最终计算得到的错误得分。客户在分组和顺序中的偏好可以反映客户在确定错误得分中使一个参数得分的权重高于另一个参数得分的权重的偏好。在实施例中,错误计分工具可以针对计算一个或多个错误得分,生成参数得分的组和矩阵的若干不同组合。
在块212中,错误计分工具可以使用在210中生成的参数得分的矩阵计算总体错误得分。错误计分工具可以按照方程1所定义的那样,计算两个矩阵的内积,或在涉及多于两个的矩阵时,按照方程2所定义的那样,计算总体错误得分。错误计分工具可以通过使用矩阵的不同组合计算多于一个的错误得分。错误得分可以与来自不同客户的偏好、针对特定软件包或版本等的偏好相关联。
在块214中,错误得分可以被存储在计分工具本地的数据库中,或存储在外部源的数据库中。每个错误得分可以与附加数据相关联。附加数据可以描述如何计算得分、使用什么客户偏好、相关的客户等。在一些实施例中,用于计算错误得分的单独的参数得分也可以被工具存储。
在计算出错误得分之后,可以根据软件错误的错误得分对软件错误进行优先级划分。优先级划分可以被用于定义错误将被解决或被修复的顺序。在实施例中,具有最高的错误得分的错误可以被给予最高的优先级,并且被安排首先进行修复或解决。在一些实施例中,基于每个错误的错误得分,错误可以被划分优先级,并且被分到组中。根据错误得分的阈值或范围,错误得分可以被分到“高优先级”、“中优先级”、“低优先级”。在一些实施例中,具有300或大于300的错误分数的错误可以被分为高优先级错误,具有小于300但大于100的错误得分的错误可以被分为中优先级错误,而具有100或小于100的错误得分的错误可以被分为低优先级错误。例如,被分为高优先级的错误可以被安排在中优先级错误之前被修复,而中优先级错误可以被安排在低优先级错误之前被修复。但是,对于每个组内的错误,可以不分配在优先级组内的特定顺序。任何数量的不同的优先级组可以被定义。
在实施例中,可以基于相对的错误得分,分配错误优先级。例如,基于错误的错误得分,错误可以被排序,而前20个错误可以被分配为高优先级,接下来30个错误被分配为低优先级等,而不管绝对的错误得分是多少。
在实施例中,依赖于在划分优先级中使用哪个错误得分,错误可以被分配多于一个的优先级。根据一个错误得分,错误可以被分配为高优先级,而根据另一个错误得分,错误可以被分配为低优先级。在实施例中,使用基于客户偏好计算得到的错误得分,可以生成对应于特定的客户偏好的错误优先级列表。可以针对特定的软件发布、模块、版本、客户等生成优先级列表和优先级评定。错误的优先级可以被错误计分工具存储。优先级可以与识别优先级是否特定于特别的客户偏好(如果普遍的话)、特定于软件发布等的优先级细节相关联。
错误计分工具可以包括用于显示错误得分、参数、描述等的图形界面。在实施例中,图形界面可以被用于跟踪错误的状态。错误计分工具可以与其他软件、工具等对接以显示或跟踪错误、错误的状态等。
图3示出了示出由错误工具使用的、用以对错误划分优先级的方法300的流程图。在块302中,错误计分和跟踪工具可以接收错误得分。错误得分可以被本地存储在错误计分和跟踪工具中或被存储在远程数据库中。错误得分可以包括与错误得分相关联的信息,此信息定义如果得分仅仅与特定客户、软件发布、系统等相关,则错误得分如何被计算。在块304中,错误计分和跟踪工具可以解析数据以确定错误得分的相关性或适用性。在304块处的解析数据可以允许工具确定可以生成多少优先级划分列表。基于不同客户的偏好生成的错误得分可以互相不可比较。通常来说,仅仅针对使用兼容的偏好、以类似的方式计算得到的错误得分,可以生成相关的优先级划分列表。在一些情况下,错误计分和优先级工具可以被配置为生成仅仅针对特定客户的优先级列表。在块304处,工具可以解析与错误得分相关联的数据以定位与特定客户相关的错误得分。在块306中,与特定优先级列表相关的错误得分可以被分类。可以以从最小到最大或任何其他的标准,执行对列表的分类。在块308中,每个优先级划分列表中的错误得分可以被分为,例如,对应于高优先级错误、中优先级错误、低优先级错误的若干组。对错误的分组和优先级分配310可以基于错误得分的绝对值、错误得分在得分列表中的相对值、预先确定的阈值等。高优先级错误可以被排列到在中优先级错误之前被修复,而中优先级错误可以被排列到在低优先级错误之前被修复。
当通过错误计分和跟踪工具输入或接收新的错误时,基于错误得分对错误的优先级划分可以定期地执行。基于新的错误的错误得分,新的错误可以被添加到每个优先级组中。
在实施例中,错误计分和跟踪工具可以被用于跟踪与错误相关联的补丁和软件更新。可以对解决与错误相关联的特定问题或差错的软件补丁或更新给出一个与其修复的错误的评定和得分相似的评定和得分。将错误得分和错误优先级传播到软件补丁,这种传播可以向补丁提供得分和优先级。针对补丁的优先级和得分可以是重要的,以用于识别需要立即安装的补丁。与针对错误的情况相同,对于不同的客户、软件发布等,补丁的优先级偏好可以是不同的。补丁可以具有多于一个的优先级或得分,其中优先级和得分中的每个优先级和得分可以与不同的客户、软件版本等相关联。
在实施例中,错误计分和跟踪工具可以被用于生成根据客户偏好定制的软件更新和补丁报告。与根据客户的偏好被评定并且被划分优先级为高优先级错误的错误相关的软件补丁可以被打包为一个或多个定期的软件更新。错误计分和跟踪工具可以被配置为生成概述与每个客户的系统和软件版本相关的错误与补丁的状态的报告。报告可以概述由客户报告的错误的状态。
图4示出了示出用于生成针对补丁的优先级评定的方法400的流程图。优先级评定可以与补丁所修复的错误的优先级评定相关联。针对不同的客户可以生成补丁的不同优先级评定,如果客户想要安装此补丁,则允许客户可以做出知情决定。错误计分和跟踪工具接收与每个补丁相关联的数据402。补丁可以不是客户或版本特定的,并且可以不包括任何与特定的客户偏好相关的信息。补丁可以包括与补丁所修复的错误有关的信息。错误计分和跟踪工具可以读取补丁数据,并且接收针对与补丁相关联的错误的数据404。错误计分和跟踪工具可以确定与错误相关联的错误得分。每个错误可以具有多于一个的错误得分,计分和跟踪工具可以解析数据以确定适用于特定客户、软件发布等的得分。工具可以针对补丁确定最高的相关错误得分以及优先级406。工具可以将最高的错误得分和优先级分配给补丁408。补丁可以具有多于一个的得分和优先级。每个补丁可以具有与不同的客户、软件版本等相关的多个得分和优先级。对于每个客户、软件版本等,错误计分和跟踪工具可以生成报告和被划分优先级的补丁列表。
错误计分和跟踪工具或它的模块和组件中的一个或多个可以是软件模块、硬件模块、虚拟设备、代码、脚本等。错误计分和跟踪工具可以是可以被平台部署的服务。在实施例中,错误计分和跟踪工具可以在源服务器处被开发、部署和监测,并且使用支持云平台。支持云平台的门户和网关可以被用于远程地部署、管理和监测服务错误报告、补丁部署、系统监测、以及与错误计分和跟踪工具相关的其他功能和服务。支持云门户的实施例已经在由Masterson等同步提交的,名称为“ADVANCED CUSTOMER SUPPORT SERVICES–ADVANCEDSUPPORT CLOUD PORTAL”的共同待决、共同受让的美国专利申请No.13/937,970(代理机构案号88325-870401(138600US))的专利中被描述,其整体以引用的方式被并入本文中。支持云门户的网关的实施例的一些方面也已经在2009年3月20日提交的、名称为“METHOD ANDSYSTEM FOR TRANSPORTING TELEMETRY DATA ACROSS A NETWORK”的美国专利申请No.12/408,170,和在2005年6月14日提交的、名称为“METHOD AND SYSTEM FOR RELOCATING ANDUSING ENTERPRISE MANAGEMENT TOOLS IN A SERVICE PROVIDER MODEL”的美国专利申请No.11/151,645,以及在2005年6月14日提交的、名称为“METHOD AND SYSTEM FOR REMOTEMANAGEMENT OF CUSTOMER SERVERS”的美国专利申请No.11/151,646中被描述,其中每个申请的整体以引用的方式被并入本文中。
图5说明了支持云平台500的实施例的框图。平台可以被用于远程地将与错误计分和跟踪工具相关联的服务、功能和方法部署到客户的数据中心502上的一个或多个目标系统516、518。可以从远程的生产云(production cloud)504经由网络512部署和监测服务、功能和方法。可以将服务、功能和方法从门户506部署到客户的数据中心502的网关514。网关可以被用于将服务部署到客户的数据中心中的服务器和目标系统516、518。网关514可以收集系统数据、客户数据、性能数据和/或类似数据,并且将数据发送到生产云504,在生产云504中这些数据可以被用于进一步的分析,并且被用于针对每个客户对错误分类并且评定错误。在服务的执行期间,网关可以监测服务并且收集数据。通过使用门户506,数据可以被存储、分析和显示。错误报告、补丁报告、带有得分和评定的错误和/或补丁的列表可以经由门户506被显示,并且可供客户使用。
云平台500的生产云504可以包括可以被传递到网关514的可用服务508和内容库510的集合。针对错误计分和跟踪工具的不同的功能或模块,不同的服务可以被提供。例如,一个服务可以提供补丁安装和跟踪功能,而另一个服务可以提供错误跟踪功能。通过使用门户506,每个服务可以被选择、部署和监测。由生产云504在错误评定、发现、路径部署安装、和/或类似操作的期间收集的数据,可以被其他服务使用以改善客户数据中心502的服务、性能和/或可靠性。例如,数据可以被用于改善建模服务。
图6说明计算机系统的实施例。如图6所说明的计算机系统可以被包含作为先前描述的诸如图1的系统100之类的计算机化系统的一部分。计算机系统600可以表示在本申请中讨论的计算机系统和/或远程计算机系统的组件中的一些或全部组件。计算机系统600可以执行分析工具。图6提供了对计算机系统600的实施例的示意性说明,计算机系统600可以执行如本文所述的、由各种实施例提供的方法。应当注意的是,图6仅仅意图提供对各种组件的概括说明,各种组件中的任何或全部组件可以适当地被利用。因此,图6广泛地说明了单独的系统元件如何可以以相对分离或相对更集成的方式被实施。
计算机系统600被示出包括可以经由总线605(或可以以其他方式进行通信,视情况而定)被电气耦接的硬件元件。硬件元件可以包括一个或多个处理器610,包括但不限于一个或多个通用处理器和/或一个或多个专用处理器(诸如数字信号处理芯片、图形加速处理器、和/或类似处理器);一个或多个输入设备615,其可以包括但不限于鼠标、键盘、和/或类似输入设备;以及一个或多个输出设备620,其可以包括但不限于显示设备、打印机、和/或其他设备。
计算机系统600还可以包括(和/或与其通信)一个或多个非暂时性的存储设备625,存储设备625可以包括但不限于本地和/或网络可访问的存储装置,和/或可以包括但不限于可以是可编程的、闪速可更新的和/或类似的盘驱动器、驱动器阵列、光学存储设备、固态存储设备,诸如随机存取存储器(“RAM”)和/或只读存储器(“ROM”)。这样的存储设备可以被配置为实施任何适合的数据存储,包括但不限于各种文件系统、数据库结构和/或类似物。
计算机系统600还可以包括通信子系统630,其可以包括但不限于调制解调器、网卡(无线或有线)、红外通信设备、无线通信设备、和/或芯片组(诸如蓝牙TM设备、802.11设备、Wi-Fi设备、WiMax设备、蜂窝通信装置等)和/或类似物。通信子系统630可以许可数据与网络(诸如下面描述的网络,给出一个示例)、其他计算机系统、和/或本文中描述的任何其他设备进行交换。在许多实施例中,计算机系统500还会包括工作存储器635,其可以包括上述的RAM或ROM设备。
计算机系统600还可以包括被示出当前位于工作存储器635之内的软件元件,工作存储器635包括操作系统640、设备驱动器、可执行库、和/或其他代码,诸如一个或多个应用程序645,应用程序645可以包括由各种实施例提供的计算机程序,和/或应用程序645可以被设计用于实施由本文所述的其他实施例提供的方法、和/或配置由本文所述的其他实施例提供的系统。仅仅以示例的方式,关于上面讨论的方法所描述的一个或多个流程可以被实施为计算机(和/或计算机内的处理器)可执行的代码和/或指令;在一个方面,这样的代码和/或指令然后可以被用于配置和/或适配通用计算机(或其他设备),以根据所描述的方法执行一个或多个操作。
这些指令和/或代码的集合可以被存储在非暂时性的计算机可读存储介质上,诸如上面描述的非暂时性存储设备625。在一些情况下,存储介质可以被包含在诸如计算机系统600之类的计算机系统内。在其他实施例中,存储介质可以与计算机系统分离(例如,可移除介质,诸如光盘),和/或存储介质可以被提供在安装包中,以使得存储介质可以被用于用其上存储的程序/代码来编程、配置和/或适配通用计算机。这些指令可以采用可执行代码的形式,可执行代码是计算机系统600可执行的,和/或这些指令可以采用源和/或可安装代码的形式,当在计算机系统600上编译和/或安装时(例如,使用各种通常可用的编译器、安装程序、压缩/解压缩装置等中的任何一个),则可以采用可执行代码的形式。
对于本领域技术人员来说清晰的是,根据特定的要求,可以做出大量的改变。例如,定制的硬件也可以被使用,和/或特定的元件可以被实施在硬件、软件(包括可移植软件,诸如小程序等)、或两者中。另外,诸如网络输入/输出设备之类的与其他计算设备的连接可以被使用。
如上所述,在一个方面,一些实施例可以使用计算机系统(诸如计算机系统600)以执行根据本发明的各种实施例的方法。根据一组实施例,响应于处理器610执行被包含在工作存储器635中的一个或多个指令中的一个或多个序列(其可以被包含在操作系统640和/或其他代码中,诸如应用程序645),根据本发明的各种实施例的方法中的一些或所有流程被计算机系统600执行。可以从诸如非暂时性存储设备625中的一个或多个之类的计算机可读介质,将这样的指令读取到工作存储器635中。仅仅以示例的方式,对被包含在工作存储器635中的指令的序列的执行可以使得处理器610执行本文所述的方法中的一个或多个流程。
本文所使用的术语“机器可读介质”和“计算机可读介质”,指的是参与提供使得机器能够以特定的方式操作的数据的任何介质。在使用计算机系统600实施的实施例中,各种计算机可读介质可以涉及向处理器610提供指令/代码以用于执行,和/或各种计算机可读介质可以被用于存储和/或携带这样的指令/代码。在许多实施方式中,计算机可读介质是物理和/或有形的存储介质。这样的介质可以采用非易失性介质或易失性介质的形式。非易失性介质包括例如光盘和/或磁盘,诸如非暂时性存储设备625。易失性介质包括但不限于动态存储器,诸如工作存储器635。
物理和/或有形的计算机可读介质的常用形式包括例如,软盘、柔性盘、硬盘、磁带、或任何其他磁性介质、CD-ROM、任何其他光学介质、穿孔卡片、纸带、任何其他具有孔图案的物理介质、RAM、PROM、EPROM、FLASH-EPROM、任何其他存储器芯片或盒、或计算机可以从中读取指令和/或代码的任何其他介质。
各种形式的计算机可读介质可以涉及将一个或多个指令中的一个或多个序列携带到处理器610以供执行。仅仅以示例的方式,指令可以最初被携带在远程计算机的磁盘和/或光盘上。远程计算机可以将指令载入远程计算机的动态存储器中,并且通过传输介质将要被计算机系统600接收和/或执行的指令作为信号发送出去。
计算机子系统630(和/或其中的组件)通常会接收信号,而总线605然后可以将信号(和/或信号所携带的数据、指令等)携带到工作存储器635,处理器610从工作存储器635中检索和执行指令。由工作存储器635接收的指令可以在处理器610对其进行执行之前或之后,可选地被存储在非暂时性存储设备625上。
应当进一步被理解的是,计算机系统的组件可以分布在网络中。例如,一些处理可以在一个位置处通过使用第一处理器被执行,而其他处理可以由在第一处理器远处的另一个处理器执行。计算机系统600的其他组件可以类似地分布。
上面讨论的方法、系统和设备是示例。各种配置可以省略、替代、或增加各种流程或组件,视情况而定。例如,在替代配置中,方法可以以与所描述的顺序不同的顺序被执行,和/或各种阶段可以被增加、省略、和/或结合。同样,关于某些配置所描述的特征可以被组合到各种其他配置中。配置的不同方面和元件可以以类似的方式被组合。同样地,技术在发展,因此许多元件是示例,而不限制本公开或权利要求的范围。
在描述中给出了特定的细节,以提供对示例配置(包括实施方式)的深入理解。但是,在没有这些特定细节的情况下,可以实施配置。例如,在没有不必要的细节的情况下,熟知的电路、进程、算法、结构和技术已被示出,以避免使配置难以理解。此描述仅仅提供了示例配置,并不限制权利要求的范围、适用性或配置。相反,以上对配置的描述将为本领域技术人员提供用于实施被描述技术的可实现的描述。在不背离本公开的精神或范围的情况下,可以在功能和元件的布置中做出各种改变。
另外,配置可以被描述为进程,此进程可以被描绘为流程图或框图。虽然每个图可以将操作描述为顺序的进程,但操作中的许多操作可以并行地或同时地被执行。另外,操作的顺序可以被重新布置。进程可以具有未被包括在附图中的附加步骤。另外,方法的示例可以由硬件、软件、固件、中间件、微代码、硬件描述语言、或这些的任何组合实施。当在软件、固件、中间件或微代码中实施时,用于执行必要任务的程序代码或代码段可以被存储在诸如存储介质之类的非暂时性的计算机可读介质中。处理器可以执行所描述的任务。
已经描述了若干示例配置,而在不背离本公开的精神的情况下,可以使用各种修改、替代构造以及等效物。例如,以上的元件可以是较大系统的组件,其中其他规则可能占优,或以其他方式修改本申请。另外,可以在以上元件被考虑之前、被考虑期间、或被考虑之后,进行若干步骤。因此,以上的描述不约束权利要求的范围。
Claims (15)
1.一种系统,包括:
一个或多个处理器;和
存储器,所述存储器与所述一个或多个处理器可通信地耦接,并且能够由所述一个或多个处理器读取,并且所述存储器其中存储有一系列指令,所述一系列指令当被所述一个或多个处理器执行时,使得所述一个或多个处理器执行以下操作:
接收软件错误报告,所述软件错误报告具有描述多个软件错误的数据部分,其中所述数据部分包括描述所述多个软件错误中的至少一个软件错误的至少一个影响的信息;
至少部分基于所述至少一个影响,确定与所述多个软件错误相关联的至少一个代码基,其中所述至少一个代码基是包含编码差错的软件代码,所述编码差错造成所述至少一个影响;
处理客户偏好,所述客户偏好定义一组参数,所述一组参数指示用于评定所述多个软件错误的偏好;
对于所述多个软件错误中的每个软件错误,至少部分地通过以下操作来生成第一组错误得分:
计算与相应软件错误相关的相应的一组参数得分,其中所述相应的一组参数得分对应于对在所述客户偏好中定义的所述一组参数的相应量化;以及
至少部分地基于所述相应的一组参数得分来计算相应的错误得分;
处理与补丁相关联的第一数据,所述第一数据包括关于由所述补丁解决的一组软件错误的信息,其中所述一组软件错误至少部分地对应于所述多个软件错误;
对于由所述补丁解决的所述一组软件错误来处理第二数据,以及为所述一组软件错误确定第二组错误得分,其中所述第二组错误得分至少部分地对应于所述第一组错误得分;
至少部分地基于所述第二组错误得分来确定所述补丁的优先级;以及
生成具有所述补丁的优先级划分的补丁报告,所述优先级划分至少部分地基于所确定的优先级。
2.根据权利要求1所述的系统,其中所述一系列指令还使得所述一个或多个处理器执行以下操作:
至少部分地基于所述第一组错误得分来生成被划分优先级的补丁列表;
其中生成所述补丁报告至少部分地基于所述被划分优先级的补丁列表,并且所述补丁报告指示所述被划分优先级的补丁列表中的每个补丁的相应的优先级划分。
3.根据权利要求2所述的系统,其中所述一系列指令还使得所述一个或多个处理器执行以下操作:
处理第二客户偏好,所述第二客户偏好定义第二组参数,所述第二组参数指示用于评定所述多个软件错误的不同偏好;
至少部分地基于所述第二客户偏好来生成第三组错误得分;以及
至少部分地基于所述第三组错误得分来确定所述补丁的第二优先级,其中所述第二优先级不同于所述优先级。
4.根据权利要求2所述的系统,其中所述一系列指令还使得所述一个或多个处理器执行以下操作:
当所述补丁经由网络被远程部署到远程目标系统时,向所述补丁指派所述优先级。
5.根据权利要求4所述的系统,其中所述一系列指令还使得所述一个或多个处理器执行以下操作:
经由服务器系统的门户和在包括所述远程目标系统的数据中心处安装的网关把来自所述服务器系统的补丁部署到所述远程目标系统。
6.根据权利要求5所述的系统,其中所述一系列指令还使得所述一个或多个处理器执行以下操作:
确定第二组错误得分中的最高错误得分;
将所述最高错误得分指派给所述补丁;
至少部分地基于所述最高错误得分来识别所述补丁以用于安装;以及
促进经由所述门户暴露所述最高错误得分。
7.根据权利要求1所述的系统,其中所述一组参数得分包括以下各项中的一个或多个:
部署参数得分,其中所述部署参数得分概括所述代码基已经被部署的次数;
影响参数得分,其中所述影响参数得分概括所述软件错误的影响的严重性;
相关错误参数得分,其中所述相关错误参数得分概括与所述软件错误相关的错误的数量;和/或
技术参数得分,其中所述技术参数得分概括所述代码基的重要性。
8.一种方法,包括:
接收软件错误报告,所述软件错误报告具有描述多个软件错误的数据部分,其中所述数据部分包括描述所述多个软件错误中的至少一个软件错误的至少一个影响的信息;
至少部分基于所述至少一个影响,确定与所述多个软件错误相关联的至少一个代码基,其中所述至少一个代码基是包含编码差错的软件代码,所述编码差错造成所述至少一个影响;
处理客户偏好,所述客户偏好定义一组参数,所述一组参数指示用于评定所述多个软件错误的偏好;
对于所述多个软件错误中的每个软件错误,至少部分地通过以下操作来生成第一组错误得分:
计算与相应软件错误相关的相应的一组参数得分,其中所述相应的一组参数得分对应于对在所述客户偏好中定义的所述一组参数的相应量化;以及
至少部分地基于所述相应的一组参数得分来计算相应的错误得分;
处理与补丁相关联的第一数据,所述第一数据包括关于由所述补丁解决的一组软件错误的信息,其中所述一组软件错误至少部分地对应于所述多个软件错误;
对于由所述补丁解决的所述一组软件错误来处理第二数据,以及为所述一组软件错误确定第二组错误得分,其中所述第二组错误得分至少部分地对应于所述第一组错误得分;
至少部分地基于所述第二组错误得分来确定所述补丁的优先级;以及
生成具有所述补丁的优先级划分的补丁报告,所述优先级划分至少部分地基于所确定的优先级。
9.根据权利要求8所述的方法,还包括:
至少部分地基于所述第一组错误得分来生成被划分优先级的补丁列表;
其中生成所述补丁报告至少部分地基于所述被划分优先级的补丁列表,并且所述补丁报告指示所述被划分优先级的补丁列表中的每个补丁的相应的优先级划分。
10.根据权利要求9所述的方法,还包括:
处理第二客户偏好,所述第二客户偏好定义第二组参数,所述第二组参数指示用于评定所述多个软件错误的不同偏好;
至少部分地基于所述第二客户偏好来生成第三组错误得分;以及
至少部分地基于所述第三组错误得分来确定所述补丁的第二优先级,其中所述第二优先级不同于所述优先级。
11.根据权利要求9所述的方法,还包括:
当所述补丁经由网络被远程部署到远程目标系统时,向所述补丁指派所述优先级。
12.根据权利要求11所述的方法,还包括:
经由服务器系统的门户和在包括所述远程目标系统的数据中心处安装的网关把来自所述服务器系统的补丁部署到所述远程目标系统。
13.根据权利要求12所述的方法,还包括:
确定第二组错误得分中的最高错误得分;
将所述最高错误得分指派给所述补丁;
至少部分地基于所述最高错误得分来识别所述补丁以用于安装;以及
促进经由所述门户暴露所述最高错误得分。
14.根据权利要求8所述的方法,其中所述一组参数得分包括以下各项中的一个或多个:
部署参数得分,其中所述部署参数得分概括所述代码基已经被部署的次数;
影响参数得分,其中所述影响参数得分概括所述软件错误的影响的严重性;
相关错误参数得分,其中所述相关错误参数得分概括与所述软件错误相关的错误的数量;和/或
技术参数得分,其中所述技术参数得分概括所述代码基的重要性。
15.其上存储有指令的一个或多个非暂态处理器可读介质,所述指令当由一个或多个处理器执行时,使得所述一个或多个处理器执行根据权利要求8-14中任一项所述的方法。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/937,977 | 2013-07-09 | ||
US13/937,977 US9442983B2 (en) | 2013-07-09 | 2013-07-09 | Method and system for reducing instability when upgrading software |
PCT/US2014/045247 WO2015006132A1 (en) | 2013-07-09 | 2014-07-02 | Method and system for reducing instability when upgrading software |
CN201480035255.XA CN105580032B (zh) | 2013-07-09 | 2014-07-02 | 用于降低升级软件时的不稳定性的方法和系统 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480035255.XA Division CN105580032B (zh) | 2013-07-09 | 2014-07-02 | 用于降低升级软件时的不稳定性的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107729252A true CN107729252A (zh) | 2018-02-23 |
CN107729252B CN107729252B (zh) | 2022-05-17 |
Family
ID=51257593
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711101256.1A Active CN107729252B (zh) | 2013-07-09 | 2014-07-02 | 用于降低升级软件时的不稳定性的方法和系统 |
CN201480035255.XA Active CN105580032B (zh) | 2013-07-09 | 2014-07-02 | 用于降低升级软件时的不稳定性的方法和系统 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480035255.XA Active CN105580032B (zh) | 2013-07-09 | 2014-07-02 | 用于降低升级软件时的不稳定性的方法和系统 |
Country Status (4)
Country | Link |
---|---|
US (3) | US9442983B2 (zh) |
EP (1) | EP3020010A1 (zh) |
CN (2) | CN107729252B (zh) |
WO (1) | WO2015006132A1 (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108833478A (zh) * | 2018-05-17 | 2018-11-16 | 惠州超声音响有限公司 | 一种通过dfu成功率预测模型进行固件升级的方法及系统 |
US10198255B2 (en) | 2013-07-09 | 2019-02-05 | Oracle International Corporation | Method and system for reducing instability when upgrading software |
US10248671B2 (en) | 2013-07-09 | 2019-04-02 | Oracle International Corporation | Dynamic migration script management |
US10540335B2 (en) | 2013-07-09 | 2020-01-21 | Oracle International Corporation | Solution to generate a scriptset for an automated database migration |
CN111142940A (zh) * | 2019-12-23 | 2020-05-12 | 成都海光微电子技术有限公司 | 处理器与软件的适配方法、装置、处理器、芯片和设备 |
US10691654B2 (en) | 2013-07-09 | 2020-06-23 | Oracle International Corporation | Automated database migration architecture |
US10776244B2 (en) | 2013-07-09 | 2020-09-15 | Oracle International Corporation | Consolidation planning services for systems migration |
CN111767181A (zh) * | 2020-06-29 | 2020-10-13 | 深圳小马洛可科技有限公司 | 一种led显示屏用大规模集群管理系统 |
CN112035288A (zh) * | 2020-09-01 | 2020-12-04 | 中国银行股份有限公司 | 一种作业故障影响确定方法及相关设备 |
US11036696B2 (en) | 2016-06-07 | 2021-06-15 | Oracle International Corporation | Resource allocation for database provisioning |
US11157664B2 (en) | 2013-07-09 | 2021-10-26 | Oracle International Corporation | Database modeling and analysis |
Families Citing this family (56)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5937577B2 (ja) | 2010-05-19 | 2016-06-22 | グーグル インコーポレイテッド | バグクリアリングハウス |
US9098364B2 (en) | 2013-07-09 | 2015-08-04 | Oracle International Corporation | Migration services for systems |
US9792321B2 (en) | 2013-07-09 | 2017-10-17 | Oracle International Corporation | Online database migration |
US9762461B2 (en) | 2013-07-09 | 2017-09-12 | Oracle International Corporation | Cloud services performance tuning and benchmarking |
US9967154B2 (en) | 2013-07-09 | 2018-05-08 | Oracle International Corporation | Advanced customer support services—advanced support cloud portal |
US10089213B1 (en) * | 2013-11-06 | 2018-10-02 | Amazon Technologies, Inc. | Identifying and resolving software issues |
US9430359B1 (en) | 2013-11-06 | 2016-08-30 | Amazon Technologies, Inc. | Identifying and resolving software issues |
US10241498B1 (en) * | 2014-05-15 | 2019-03-26 | Feetz, Inc. | Customized, additive-manufactured outerwear and methods for manufacturing thereof |
US10657949B2 (en) * | 2015-05-29 | 2020-05-19 | Sound United, LLC | System and method for integrating a home media system and other home systems |
US9921952B2 (en) * | 2015-06-02 | 2018-03-20 | International Business Machines Corporation | Early risk identification in DevOps environments |
US11140045B2 (en) | 2015-07-31 | 2021-10-05 | Microsoft Technology Licensing, Llc | Changelog transformation and correlation in a multi-tenant cloud service |
US10748070B2 (en) | 2015-07-31 | 2020-08-18 | Microsoft Technology Licensing, Llc | Identification and presentation of changelogs relevant to a tenant of a multi-tenant cloud service |
US10360129B2 (en) | 2015-11-03 | 2019-07-23 | International Business Machines Corporation | Setting software error severity ranking |
US11283900B2 (en) | 2016-02-08 | 2022-03-22 | Microstrategy Incorporated | Enterprise performance and capacity testing |
US10440153B1 (en) | 2016-02-08 | 2019-10-08 | Microstrategy Incorporated | Enterprise health score and data migration |
US10192177B2 (en) | 2016-06-29 | 2019-01-29 | Microsoft Technology Licensing, Llc | Automated assignment of errors in deployed code |
US9959111B2 (en) * | 2016-07-11 | 2018-05-01 | Sap Se | Prioritization of software patches |
US10417116B2 (en) * | 2016-07-28 | 2019-09-17 | International Business Machines Corporation | System, method, and apparatus for crowd-sourced gathering of application execution events for automatic application testing and replay |
US10169200B2 (en) | 2016-10-28 | 2019-01-01 | International Business Machines Corporation | Code component debugging in an application program |
EP3330816A1 (de) * | 2016-12-05 | 2018-06-06 | Siemens Aktiengesellschaft | Verfahren zur softwareaktualisierung bei cloud-gateways, computerprogramm mit einer implementation des verfahrens und verarbeitungseinheit zur ausführung des verfahrens |
US10146675B1 (en) * | 2016-12-29 | 2018-12-04 | EMC IP Holding Company LLC | Automated code upgrade testing utilizing a copy data manager |
US11288592B2 (en) * | 2017-03-24 | 2022-03-29 | Microsoft Technology Licensing, Llc | Bug categorization and team boundary inference via automated bug detection |
US10482000B2 (en) * | 2017-04-24 | 2019-11-19 | Microsoft Technology Licensing, Llc | Machine learned decision guidance for alerts originating from monitoring systems |
US10503495B2 (en) * | 2017-08-02 | 2019-12-10 | Accenture Global Solutions Limited | Component management platform |
US10592343B2 (en) | 2017-10-03 | 2020-03-17 | International Business Machines Corporation | Cognitive analysis and resolution of erroneous software patches |
GB201800595D0 (en) * | 2018-01-15 | 2018-02-28 | Palantir Technologies Inc | Management of software bugs in a data processing system |
US10628283B2 (en) * | 2018-03-12 | 2020-04-21 | Bank Of America Corporation | Deployment tool that corrects deployment errors |
US10585659B2 (en) | 2018-03-29 | 2020-03-10 | Microsoft Technology Licensing, Llc | Enabling tenant administrators to initiate request driven peak-hour builds to override off-peak patching schedules |
US10289403B1 (en) | 2018-03-29 | 2019-05-14 | Microsoft Technology Licensing, Llc | Enhanced server farm patching system for enabling developers to override off-peak patching schedules |
US10824412B2 (en) * | 2018-04-27 | 2020-11-03 | Nutanix, Inc. | Method and apparatus for data driven and cluster specific version/update control |
US11392561B2 (en) | 2018-09-28 | 2022-07-19 | Oracle International Corporation | Data migration using source classification and mapping |
US11023838B2 (en) | 2018-09-28 | 2021-06-01 | Atlassian Pty Ltd. | Issue tracking systems and methods |
US11847103B2 (en) | 2018-09-28 | 2023-12-19 | Oracle International Corporation | Data migration using customizable database consolidation rules |
US11138002B2 (en) | 2018-09-28 | 2021-10-05 | Atlassian Pty Ltd. | Issue tracking systems and methods |
US10915414B2 (en) * | 2018-10-12 | 2021-02-09 | Citrix Systems, Inc. | Test controller for concurrent testing of an application on multiple devices without using pre-recorded scripts |
US11455234B2 (en) * | 2018-11-21 | 2022-09-27 | Amazon Technologies, Inc. | Robotics application development architecture |
US11836577B2 (en) | 2018-11-27 | 2023-12-05 | Amazon Technologies, Inc. | Reinforcement learning model training through simulation |
US11429762B2 (en) | 2018-11-27 | 2022-08-30 | Amazon Technologies, Inc. | Simulation orchestration for training reinforcement learning models |
US11263111B2 (en) | 2019-02-11 | 2022-03-01 | Microstrategy Incorporated | Validating software functionality |
US11637748B2 (en) | 2019-08-28 | 2023-04-25 | Microstrategy Incorporated | Self-optimization of computing environments |
US11210189B2 (en) | 2019-08-30 | 2021-12-28 | Microstrategy Incorporated | Monitoring performance of computing systems |
US11256671B2 (en) | 2019-09-13 | 2022-02-22 | Oracle International Corporation | Integrated transition control center |
US11354216B2 (en) | 2019-09-18 | 2022-06-07 | Microstrategy Incorporated | Monitoring performance deviations |
US11360881B2 (en) | 2019-09-23 | 2022-06-14 | Microstrategy Incorporated | Customizing computer performance tests |
US11036621B2 (en) * | 2019-09-24 | 2021-06-15 | International Business Machines Corporation | Prevent application outages through operations driven development |
US11438231B2 (en) | 2019-09-25 | 2022-09-06 | Microstrategy Incorporated | Centralized platform management for computing environments |
US11165648B1 (en) * | 2019-09-26 | 2021-11-02 | Juniper Networks, Inc. | Facilitating network configuration testing |
CN111080142B (zh) * | 2019-12-19 | 2022-05-17 | 云南电网有限责任公司信息中心 | 一种基于电力报障的主动服务辅助判定方法 |
US20210273968A1 (en) * | 2020-02-27 | 2021-09-02 | International Business Machines Corporation | Vulnerability remediation complexity (VRC) system |
DE102020001561A1 (de) * | 2020-03-10 | 2021-09-16 | Drägerwerk AG & Co. KGaA | Medizingeräteanordnung mit einem Prüfmodul |
US11308231B2 (en) | 2020-04-30 | 2022-04-19 | Bank Of America Corporation | Security control management for information security |
US11438364B2 (en) | 2020-04-30 | 2022-09-06 | Bank Of America Corporation | Threat analysis for information security |
US11567857B1 (en) | 2020-05-18 | 2023-01-31 | Amazon Technologies, Inc. | Bypassing generation of non-repeatable parameters during software testing |
US11775417B1 (en) * | 2020-05-18 | 2023-10-03 | Amazon Technologies, Inc. | Sharing execution states among storage nodes during testing of stateful software |
US11442848B1 (en) | 2020-06-18 | 2022-09-13 | Appceler8, LLC | System and method for automated patch compatibility of applications |
US11733997B2 (en) * | 2021-08-17 | 2023-08-22 | Cerner Innovation, Inc. | Code change request analysis and prioritization tool |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030066049A1 (en) * | 2001-10-03 | 2003-04-03 | Atwood Christopher A. | Rating apparatus and method for evaluating bugs |
CN101211312A (zh) * | 2006-12-29 | 2008-07-02 | 国际商业机器公司 | 用于监控和管理客户端上的补丁的设备和方法 |
CN101739275A (zh) * | 2008-11-25 | 2010-06-16 | 费舍-柔斯芒特系统股份有限公司 | 在软件系统升级期间提供定制化发布说明的系统及方法 |
CN102637143A (zh) * | 2012-03-07 | 2012-08-15 | 南京邮电大学 | 基于改进的支持向量机的软件缺陷优先级预测方法 |
Family Cites Families (136)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6185625B1 (en) | 1996-12-20 | 2001-02-06 | Intel Corporation | Scaling proxy server sending to the client a graphical user interface for establishing object encoding preferences after receiving the client's request for the object |
US6016394A (en) | 1997-09-17 | 2000-01-18 | Tenfold Corporation | Method and system for database application software creation requiring minimal programming |
US6151608A (en) | 1998-04-07 | 2000-11-21 | Crystallize, Inc. | Method and system for migrating data |
US6356898B2 (en) | 1998-08-31 | 2002-03-12 | International Business Machines Corporation | Method and system for summarizing topics of documents browsed by a user |
US7020697B1 (en) | 1999-10-01 | 2006-03-28 | Accenture Llp | Architectures for netcentric computing systems |
US6477483B1 (en) | 2000-01-17 | 2002-11-05 | Mercury Interactive Corporation | Service for load testing a transactional server over the internet |
US6973489B1 (en) | 2000-03-21 | 2005-12-06 | Mercury Interactive Corporation | Server monitoring virtual points of presence |
US6738811B1 (en) | 2000-03-31 | 2004-05-18 | Supermicro Computer, Inc. | Method and architecture for monitoring the health of servers across data networks |
JP2001297026A (ja) | 2000-04-11 | 2001-10-26 | Hitachi Ltd | 複数のデータベースマネージメントシステムを有する計算機システム |
US6898564B1 (en) * | 2000-05-23 | 2005-05-24 | Microsoft Corporation | Load simulation tool for server resource capacity planning |
JP2001337790A (ja) | 2000-05-24 | 2001-12-07 | Hitachi Ltd | 記憶システム及びその階層管理制御方法 |
SG93868A1 (en) | 2000-06-07 | 2003-01-21 | Kent Ridge Digital Labs | Method and system for user-configurable clustering of information |
JP2002007364A (ja) | 2000-06-22 | 2002-01-11 | Fujitsu Ltd | 並列計算機システムのジョブスケジューリングを行うスケジューリング装置 |
EP1451661A1 (en) | 2001-02-02 | 2004-09-01 | Opentv, Inc. | Service platform suite management system |
US7548898B1 (en) | 2001-02-28 | 2009-06-16 | Teradata Us, Inc. | Parallel migration of data between systems |
US7177866B2 (en) | 2001-03-16 | 2007-02-13 | Gravic, Inc. | Asynchronous coordinated commit replication and dual write with replication transmission and locking of target database on updates only |
US20020194329A1 (en) | 2001-05-02 | 2002-12-19 | Shipley Company, L.L.C. | Method and system for facilitating multi-enterprise benchmarking activities and performance analysis |
US7197559B2 (en) | 2001-05-09 | 2007-03-27 | Mercury Interactive Corporation | Transaction breakdown feature to facilitate analysis of end user performance of a server system |
FR2824929B1 (fr) | 2001-05-18 | 2003-08-08 | Gemplus Card Int | Deploiement d'application depuis une carte a puce |
US7134122B1 (en) | 2001-05-31 | 2006-11-07 | Oracle International Corporation | One click deployment |
US7580862B1 (en) | 2001-05-31 | 2009-08-25 | The Servicemaster Company | Method and system to select, schedule and purchase home services |
US20030037034A1 (en) | 2001-08-16 | 2003-02-20 | Tim Daniels | System and method for lubricants supply chain management |
US7065541B2 (en) | 2001-10-10 | 2006-06-20 | International Business Machines Corporation | Database migration |
US20030192028A1 (en) | 2002-04-04 | 2003-10-09 | International Business Machines Corporation | System and method for determining software object migration sequences |
US8121978B2 (en) | 2002-11-15 | 2012-02-21 | Sybase, Inc. | Database system providing improved methods for data replication |
US20040153358A1 (en) * | 2003-01-31 | 2004-08-05 | Lienhart Deborah A. | Method and system for prioritizing user feedback |
US20040181790A1 (en) | 2003-03-12 | 2004-09-16 | Herrick Joseph W. | System and method for maintaining installed software compliance with build standards |
JP2006520966A (ja) | 2003-03-19 | 2006-09-14 | ユニシス コーポレイシヨン | サーバの統合分析 |
US20060179431A1 (en) | 2003-03-19 | 2006-08-10 | Unisys Corporation | Rules-based deployment of computing components |
US20060173875A1 (en) | 2003-03-19 | 2006-08-03 | Unisys Corporation | Server Consolidation Data Mdel |
EP1671199A2 (en) | 2003-04-24 | 2006-06-21 | Secureinfo Corporation | Method, system and article of manufacture for data preservation and automated electronic software distribution across an enterprise system |
CA2472887A1 (en) | 2003-06-30 | 2004-12-30 | Gravic, Inc. | Methods for ensuring referential integrity in multithreaded replication engines |
US7552171B2 (en) | 2003-08-14 | 2009-06-23 | Oracle International Corporation | Incremental run-time session balancing in a multi-node system |
US8655755B2 (en) | 2003-10-22 | 2014-02-18 | Scottrade, Inc. | System and method for the automated brokerage of financial instruments |
JP2005222108A (ja) * | 2004-02-03 | 2005-08-18 | Matsushita Electric Ind Co Ltd | バグ分析方法および装置 |
WO2006007460A2 (en) * | 2004-06-21 | 2006-01-19 | Spirent Communications Of Rockville, Inc. | Service-centric computer network services diagnostic conclusions |
US7290003B1 (en) | 2004-08-19 | 2007-10-30 | Sun Microsystems, Inc. | Migrating data using an intermediate self-describing format |
US7523286B2 (en) | 2004-11-19 | 2009-04-21 | Network Appliance, Inc. | System and method for real-time balancing of user workload across multiple storage systems with shared back end storage |
WO2006057337A1 (ja) | 2004-11-25 | 2006-06-01 | Nec Corporation | セキュリティ検証用のデータを生成する方法及びシステム |
US7656810B2 (en) | 2005-03-25 | 2010-02-02 | Microsoft Corporation | System and method for monitoring and reacting to peer-to-peer network metrics |
US20060235899A1 (en) | 2005-03-25 | 2006-10-19 | Frontline Systems, Inc. | Method of migrating legacy database systems |
JP5093990B2 (ja) | 2005-03-28 | 2012-12-12 | Necエンジニアリング株式会社 | バグ管理システム |
US7693983B1 (en) | 2005-05-27 | 2010-04-06 | Symantec Operating Corporation | System and method providing application redeployment mappings using filtered resource usage data |
US7836452B2 (en) | 2005-06-10 | 2010-11-16 | International Business Machines Corporation | System, method and program for estimating a requisite amount of server resources |
US8429630B2 (en) | 2005-09-15 | 2013-04-23 | Ca, Inc. | Globally distributed utility computing cloud |
US7707552B2 (en) * | 2005-10-17 | 2010-04-27 | International Business Machines Corporation | Method and system for autonomically prioritizing software defects |
US7480643B2 (en) | 2005-12-22 | 2009-01-20 | International Business Machines Corporation | System and method for migrating databases |
US7676492B2 (en) | 2006-04-07 | 2010-03-09 | International Business Machines Corporation | Migration of database using serialized objects |
US8606894B1 (en) | 2006-04-27 | 2013-12-10 | Hewlett-Packard Development Company, L.P. | Server consolidation |
JP2007328692A (ja) | 2006-06-09 | 2007-12-20 | Canon Inc | 代数演算方法及びその装置、プログラム |
US8239520B2 (en) | 2007-04-05 | 2012-08-07 | Alcatel Lucent | Network service operational status monitoring |
US8271757B1 (en) | 2007-04-17 | 2012-09-18 | American Megatrends, Inc. | Container space management in a data storage system |
US8006223B2 (en) | 2007-06-13 | 2011-08-23 | International Business Machines Corporation | Method and system for estimating project plans for packaged software applications |
WO2008155779A2 (en) | 2007-06-20 | 2008-12-24 | Sanjeev Krishnan | A method and apparatus for software simulation |
US8407686B2 (en) | 2007-09-07 | 2013-03-26 | Ebay Inc. | Method and system for problem notification and processing |
US8356287B2 (en) * | 2007-10-24 | 2013-01-15 | International Business Machines Corporation | Device, system and method of debugging computer programs |
US20090187413A1 (en) | 2008-01-18 | 2009-07-23 | Timothy Abels | Service delivery platform for automated and remote information technology management |
US8495564B2 (en) | 2008-02-19 | 2013-07-23 | International Business Machines Corporation | Automated merging in a software development environment |
US7856499B2 (en) | 2008-03-20 | 2010-12-21 | Sap Ag | Autonomic provisioning of hosted applications with level of isolation terms |
US7962458B2 (en) | 2008-06-12 | 2011-06-14 | Gravic, Inc. | Method for replicating explicit locks in a data replication engine |
US8301593B2 (en) | 2008-06-12 | 2012-10-30 | Gravic, Inc. | Mixed mode synchronous and asynchronous replication system |
US8433680B2 (en) * | 2008-07-01 | 2013-04-30 | Oracle International Corporation | Capturing and restoring database session state |
US8266254B2 (en) | 2008-08-19 | 2012-09-11 | International Business Machines Corporation | Allocating resources in a distributed computing environment |
US8275748B2 (en) | 2008-09-30 | 2012-09-25 | Emc Corporation | Semantic data migration |
US8286177B2 (en) | 2009-01-29 | 2012-10-09 | Microsoft Corporation | Technique for conserving software application resources |
US8117613B2 (en) | 2009-04-08 | 2012-02-14 | Microsoft Corporation | Optimized virtual machine migration mechanism |
US8495725B2 (en) | 2009-08-28 | 2013-07-23 | Great Wall Systems | Methods, systems, and computer readable media for adaptive packet filtering |
US8161077B2 (en) | 2009-10-21 | 2012-04-17 | Delphix Corp. | Datacenter workflow automation scenarios using virtual databases |
US8074107B2 (en) | 2009-10-26 | 2011-12-06 | Amazon Technologies, Inc. | Failover and recovery for replicated data instances |
US8850423B2 (en) | 2009-10-29 | 2014-09-30 | International Business Machines Corporation | Assisting server migration |
GB2468742B (en) | 2009-12-22 | 2011-01-12 | Celona Technologies Ltd | Error prevention for data replication |
US8615741B2 (en) | 2009-12-24 | 2013-12-24 | International Business Machines Corporation | Software defect tracking |
US20110296025A1 (en) | 2010-03-30 | 2011-12-01 | Jason Lieblich | Systems and methods for facilitating migration and adoption of an alternative computing infrastructure |
US8341462B2 (en) | 2010-07-19 | 2012-12-25 | Soasta, Inc. | System and method for provisioning and running a cross-cloud test grid |
US8356010B2 (en) | 2010-08-11 | 2013-01-15 | Sap Ag | Online data migration |
US8635624B2 (en) * | 2010-10-21 | 2014-01-21 | HCL America, Inc. | Resource management using environments |
US8626587B2 (en) | 2010-12-10 | 2014-01-07 | Verizon Patent And Licensing Inc. | Artificial intelligence-based recommender and self-provisioner |
US8984269B2 (en) | 2011-02-28 | 2015-03-17 | Red Hat, Inc. | Migrating data among cloud-based storage networks via a data distribution service |
US8667020B2 (en) | 2011-04-01 | 2014-03-04 | Microsoft Corporation | Placement goal-based database instance dynamic consolidation |
US20120284360A1 (en) | 2011-04-11 | 2012-11-08 | Ebay Inc. | Job planner and execution engine for automated, self-service data movement |
US9430505B2 (en) | 2011-04-18 | 2016-08-30 | Infosys Limited | Automated data warehouse migration |
US8589336B1 (en) | 2011-04-25 | 2013-11-19 | Netapp, Inc. | Framework for automated storage processes and flexible workflow |
US20120297059A1 (en) | 2011-05-20 | 2012-11-22 | Silverspore Llc | Automated creation of monitoring configuration templates for cloud server images |
US9223632B2 (en) * | 2011-05-20 | 2015-12-29 | Microsoft Technology Licensing, Llc | Cross-cloud management and troubleshooting |
US9344484B2 (en) | 2011-05-27 | 2016-05-17 | Red Hat, Inc. | Determining consistencies in staged replication data to improve data migration efficiency in cloud based networks |
US8782215B2 (en) | 2011-05-31 | 2014-07-15 | Red Hat, Inc. | Performance testing in a cloud environment |
US8639989B1 (en) | 2011-06-30 | 2014-01-28 | Amazon Technologies, Inc. | Methods and apparatus for remote gateway monitoring and diagnostics |
US8769340B2 (en) * | 2011-09-08 | 2014-07-01 | Microsoft Corporation | Automatically allocating clients for software program testing |
US8943032B1 (en) | 2011-09-30 | 2015-01-27 | Emc Corporation | System and method for data migration using hybrid modes |
US9075811B2 (en) | 2011-09-30 | 2015-07-07 | Symantec Corporation | Cloud information migration systems and methods |
US9298713B2 (en) | 2011-09-30 | 2016-03-29 | Oracle International Corporation | Executor for software configuration automation |
US8880477B2 (en) | 2011-10-04 | 2014-11-04 | Nec Laboratories America, Inc. | Latency-aware live migration for multitenant database platforms |
US8924353B1 (en) | 2011-11-08 | 2014-12-30 | Symantec Corporation | Systems and methods for copying database files |
US20130311968A1 (en) | 2011-11-09 | 2013-11-21 | Manoj Sharma | Methods And Apparatus For Providing Predictive Analytics For Software Development |
US9262250B2 (en) * | 2011-12-12 | 2016-02-16 | Crashlytics, Inc. | System and method for data collection and analysis of information relating to mobile applications |
US9152659B2 (en) | 2011-12-30 | 2015-10-06 | Bmc Software, Inc. | Systems and methods for migrating database data |
US8818949B2 (en) | 2011-12-30 | 2014-08-26 | Bmc Software, Inc. | Systems and methods for migrating database data |
US9477936B2 (en) | 2012-02-09 | 2016-10-25 | Rockwell Automation Technologies, Inc. | Cloud-based operator interface for industrial automation |
US9401904B1 (en) | 2012-03-15 | 2016-07-26 | Motio, Inc. | Security migration in a business intelligence environment |
US8880934B2 (en) | 2012-04-04 | 2014-11-04 | Symantec Corporation | Method and system for co-existence of live migration protocols and cluster server failover protocols |
US8856339B2 (en) | 2012-04-04 | 2014-10-07 | Cisco Technology, Inc. | Automatically scaled network overlay with heuristic monitoring in a hybrid cloud environment |
US9201704B2 (en) | 2012-04-05 | 2015-12-01 | Cisco Technology, Inc. | System and method for migrating application virtual machines in a network environment |
US9203784B2 (en) | 2012-04-24 | 2015-12-01 | Cisco Technology, Inc. | Distributed virtual switch architecture for a hybrid cloud |
US9769085B2 (en) | 2012-05-04 | 2017-09-19 | Citrix Systems, Inc. | Systems and methods for adaptive application provisioning |
US9342370B2 (en) | 2012-05-30 | 2016-05-17 | International Business Machines Corporation | Server migration |
US20150058467A1 (en) | 2012-06-15 | 2015-02-26 | Digital River, Inc. | Fast provisioning of platform-as-a-service system and method |
US9081610B2 (en) | 2012-06-18 | 2015-07-14 | Hitachi, Ltd. | Method and apparatus to maximize return on investment in hybrid cloud environment |
US9043787B2 (en) | 2012-07-13 | 2015-05-26 | Ca, Inc. | System and method for automated assignment of virtual machines and physical machines to hosts |
US9122527B2 (en) | 2012-08-21 | 2015-09-01 | International Business Machines Corporation | Resource allocation for migration within a multi-tiered system |
US9467355B2 (en) | 2012-09-07 | 2016-10-11 | Oracle International Corporation | Service association model |
US9363154B2 (en) | 2012-09-26 | 2016-06-07 | International Business Machines Corporaion | Prediction-based provisioning planning for cloud environments |
US9535818B2 (en) * | 2012-10-16 | 2017-01-03 | Microsoft Technology Licensing, Llc | Identifying high impact bugs |
US9058219B2 (en) * | 2012-11-02 | 2015-06-16 | Amazon Technologies, Inc. | Custom resources in a resource stack |
US9430506B2 (en) | 2012-12-19 | 2016-08-30 | Accenture Global Services Limited | Enterprise migration planning information repository |
US9075529B2 (en) | 2013-01-04 | 2015-07-07 | International Business Machines Corporation | Cloud based data migration and replication |
US9436712B2 (en) | 2013-03-14 | 2016-09-06 | Microsoft Technology Licensing, Llc | Data migration framework |
US9438648B2 (en) | 2013-05-09 | 2016-09-06 | Rockwell Automation Technologies, Inc. | Industrial data analytics in a cloud platform |
US9491063B2 (en) | 2013-05-15 | 2016-11-08 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for providing network services orchestration |
US9317311B2 (en) | 2013-06-17 | 2016-04-19 | International Business Machines Corporation | Generating a deployment pattern for reuse in a networked computing environment |
US11157664B2 (en) | 2013-07-09 | 2021-10-26 | Oracle International Corporation | Database modeling and analysis |
US9996562B2 (en) | 2013-07-09 | 2018-06-12 | Oracle International Corporation | Automated database migration architecture |
US9747311B2 (en) | 2013-07-09 | 2017-08-29 | Oracle International Corporation | Solution to generate a scriptset for an automated database migration |
US9762461B2 (en) | 2013-07-09 | 2017-09-12 | Oracle International Corporation | Cloud services performance tuning and benchmarking |
US9967154B2 (en) | 2013-07-09 | 2018-05-08 | Oracle International Corporation | Advanced customer support services—advanced support cloud portal |
US9792321B2 (en) | 2013-07-09 | 2017-10-17 | Oracle International Corporation | Online database migration |
US9442983B2 (en) | 2013-07-09 | 2016-09-13 | Oracle International Corporation | Method and system for reducing instability when upgrading software |
US9805070B2 (en) | 2013-07-09 | 2017-10-31 | Oracle International Corporation | Dynamic migration script management |
US10776244B2 (en) | 2013-07-09 | 2020-09-15 | Oracle International Corporation | Consolidation planning services for systems migration |
EP3019961B1 (en) | 2013-07-09 | 2018-03-21 | Oracle International Corporation | Cloud services load testing and analysis |
US9098364B2 (en) | 2013-07-09 | 2015-08-04 | Oracle International Corporation | Migration services for systems |
WO2015057094A1 (en) | 2013-10-14 | 2015-04-23 | Emc Corporation | Resource provisioning based on logical profiles and piecewise objective functions |
US9386079B2 (en) | 2014-06-10 | 2016-07-05 | American Megatrends, Inc. | Method and system of virtual desktop infrastructure deployment studio |
EP3155576B1 (en) | 2014-06-11 | 2021-05-05 | Oracle International Corporation | Providing a subscription for a service using an existing subscription |
US10015197B2 (en) | 2015-10-22 | 2018-07-03 | International Business Machines Corporation | Determining network security policies during data center migration and detecting security violation |
US11074254B2 (en) | 2016-03-23 | 2021-07-27 | International Business Machines Corporation | Performance management using thresholds for queries of a service for a database as a service |
US11036696B2 (en) | 2016-06-07 | 2021-06-15 | Oracle International Corporation | Resource allocation for database provisioning |
-
2013
- 2013-07-09 US US13/937,977 patent/US9442983B2/en active Active
- 2013-07-09 US US13/937,344 patent/US9491072B2/en active Active
-
2014
- 2014-07-02 CN CN201711101256.1A patent/CN107729252B/zh active Active
- 2014-07-02 WO PCT/US2014/045247 patent/WO2015006132A1/en active Application Filing
- 2014-07-02 CN CN201480035255.XA patent/CN105580032B/zh active Active
- 2014-07-02 EP EP14745013.4A patent/EP3020010A1/en not_active Withdrawn
-
2016
- 2016-08-29 US US15/250,522 patent/US10198255B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030066049A1 (en) * | 2001-10-03 | 2003-04-03 | Atwood Christopher A. | Rating apparatus and method for evaluating bugs |
CN101211312A (zh) * | 2006-12-29 | 2008-07-02 | 国际商业机器公司 | 用于监控和管理客户端上的补丁的设备和方法 |
CN101739275A (zh) * | 2008-11-25 | 2010-06-16 | 费舍-柔斯芒特系统股份有限公司 | 在软件系统升级期间提供定制化发布说明的系统及方法 |
CN102637143A (zh) * | 2012-03-07 | 2012-08-15 | 南京邮电大学 | 基于改进的支持向量机的软件缺陷优先级预测方法 |
Non-Patent Citations (1)
Title |
---|
王秋艳 等: "一种通用漏洞评级方法", 《计算机工程》 * |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10776244B2 (en) | 2013-07-09 | 2020-09-15 | Oracle International Corporation | Consolidation planning services for systems migration |
US11157664B2 (en) | 2013-07-09 | 2021-10-26 | Oracle International Corporation | Database modeling and analysis |
US10248671B2 (en) | 2013-07-09 | 2019-04-02 | Oracle International Corporation | Dynamic migration script management |
US10540335B2 (en) | 2013-07-09 | 2020-01-21 | Oracle International Corporation | Solution to generate a scriptset for an automated database migration |
US10691654B2 (en) | 2013-07-09 | 2020-06-23 | Oracle International Corporation | Automated database migration architecture |
US10198255B2 (en) | 2013-07-09 | 2019-02-05 | Oracle International Corporation | Method and system for reducing instability when upgrading software |
US11036696B2 (en) | 2016-06-07 | 2021-06-15 | Oracle International Corporation | Resource allocation for database provisioning |
CN108833478A (zh) * | 2018-05-17 | 2018-11-16 | 惠州超声音响有限公司 | 一种通过dfu成功率预测模型进行固件升级的方法及系统 |
CN111142940A (zh) * | 2019-12-23 | 2020-05-12 | 成都海光微电子技术有限公司 | 处理器与软件的适配方法、装置、处理器、芯片和设备 |
CN111142940B (zh) * | 2019-12-23 | 2023-06-30 | 成都海光微电子技术有限公司 | 处理器与软件的适配方法、装置、处理器、芯片和设备 |
CN111767181A (zh) * | 2020-06-29 | 2020-10-13 | 深圳小马洛可科技有限公司 | 一种led显示屏用大规模集群管理系统 |
CN111767181B (zh) * | 2020-06-29 | 2021-11-02 | 深圳小马洛可科技有限公司 | 一种led显示屏用大规模集群管理系统 |
CN112035288A (zh) * | 2020-09-01 | 2020-12-04 | 中国银行股份有限公司 | 一种作业故障影响确定方法及相关设备 |
CN112035288B (zh) * | 2020-09-01 | 2023-08-15 | 中国银行股份有限公司 | 一种作业故障影响确定方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
US20150019564A1 (en) | 2015-01-15 |
CN105580032A (zh) | 2016-05-11 |
CN105580032B (zh) | 2017-11-28 |
US10198255B2 (en) | 2019-02-05 |
WO2015006132A1 (en) | 2015-01-15 |
EP3020010A1 (en) | 2016-05-18 |
US9491072B2 (en) | 2016-11-08 |
US20150019706A1 (en) | 2015-01-15 |
US9442983B2 (en) | 2016-09-13 |
US20160364229A1 (en) | 2016-12-15 |
CN107729252B (zh) | 2022-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105580032B (zh) | 用于降低升级软件时的不稳定性的方法和系统 | |
US10649882B2 (en) | Automated log analysis and problem solving using intelligent operation and deep learning | |
US11042476B2 (en) | Variability system and analytics for continuous reliability in cloud-based workflows | |
CN109522192B (zh) | 一种基于知识图谱和复杂网络组合的预测方法 | |
CN102096632B (zh) | 代码变化与测试之间的桥接 | |
US11551105B2 (en) | Knowledge management using machine learning model trained on incident-knowledge relationship fingerprints | |
US9311176B1 (en) | Evaluating a set of storage devices and providing recommended activities | |
US11620420B2 (en) | Computing system simulation and testing environment | |
US20150067648A1 (en) | Preparing an optimized test suite for testing an application under test in single or multiple environments | |
US20170357809A1 (en) | Systems and methods for flaw attribution and correlation | |
US8112657B2 (en) | Method, computer, and computer program product for hardware mapping | |
US20170109636A1 (en) | Crowd-Based Model for Identifying Executions of a Business Process | |
CN111108481B (zh) | 故障分析方法及相关设备 | |
US20150142506A1 (en) | Account Health Assessment, Risk Identification, and Remediation | |
US20170109638A1 (en) | Ensemble-Based Identification of Executions of a Business Process | |
CN109828750B (zh) | 自动配置数据埋点的方法、装置、电子设备及存储介质 | |
CN105868956A (zh) | 一种数据处理方法及装置 | |
CN103186463A (zh) | 确定软件的测试范围的方法和系统 | |
JP2019194818A (ja) | ソフトウェア不具合予測装置 | |
CN114595216A (zh) | 数据校验方法、装置、存储介质及电子设备 | |
CN111352818B (zh) | 应用程序性能分析方法、装置、存储介质及电子设备 | |
US20230011129A1 (en) | Log analyzer for fault detection | |
CN110008098B (zh) | 评估业务流程中的节点的运行状况的方法和装置 | |
Staron et al. | Industrial self-healing measurement systems | |
KR20210055934A (ko) | 기계 학습 모델을 개발하기 위한 자가학습 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |