CN105765539A - 具有自动生成的虚拟环境的用户支持体验 - Google Patents

具有自动生成的虚拟环境的用户支持体验 Download PDF

Info

Publication number
CN105765539A
CN105765539A CN201480062651.1A CN201480062651A CN105765539A CN 105765539 A CN105765539 A CN 105765539A CN 201480062651 A CN201480062651 A CN 201480062651A CN 105765539 A CN105765539 A CN 105765539A
Authority
CN
China
Prior art keywords
user
input
environment
computer system
computer
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
Application number
CN201480062651.1A
Other languages
English (en)
Other versions
CN105765539B (zh
Inventor
S·托马斯
Y·张
M·乔杜利
S·斯里尼瓦杉
J·H·霍华德
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN105765539A publication Critical patent/CN105765539A/zh
Application granted granted Critical
Publication of CN105765539B publication Critical patent/CN105765539B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2294Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by remote test
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/366Software debugging using diagnostics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0637Strategic management or analysis, e.g. setting a goal or target of an organisation; Planning actions based on goals; Analysis or evaluation of effectiveness of goals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/20Administration of product repair or maintenance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Quality & Reliability (AREA)
  • Human Resources & Organizations (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Educational Administration (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Tourism & Hospitality (AREA)
  • Operations Research (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Computing Systems (AREA)
  • Human Computer Interaction (AREA)
  • Debugging And Monitoring (AREA)
  • User Interface Of Digital Computer (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Stored Programmes (AREA)

Abstract

虚拟环境服务从计算机***的所部署的实例获取自动收集的诊断信息,并基于所收集的诊断数据自动生成计算机***的实例的环境的再现。用户与虚拟诊断环境的交互可被记录以标识计算机***的所部署的实例的技术问题。对该问题的修复在虚拟诊断环境中应用,使得它可在应用于所部署的实例之前被用户验证。

Description

具有自动生成的虚拟环境的用户支持体验
背景
许多类型的计算机***当前被广泛应用。一些这样的***很大,且可包括数千不同表单和许多不同工作流以及大量不同数据模型,以及其他。
一些这样的计算机***包括业务***,诸如企业资源规划(ERP)***、客户关系管理(CRM)***、业务线(LOB)***、数据库***、以及许多其他***。这些类型的***通常在它们部署在组织内时被定制,且一些***被深度定制。
例如,软件制造商可以提供随后被开发者(如增值转售商和独立软件供应商)修改的基本计算机***。计算机***的经修改版本随后可最终被实现在组织(如公司)内。计算机***通常在实现期间被进一步修改。同样,一旦计算机***被最终部署,则它甚至可随时间被进一步修改。例如,最终用户(或他们的管理员)可下载修复、累积更新,或对在其中部署计算***的计算环境作出其他修改、定制或扩展。这通常造成计算机***的每一实例是独特的,因为最终实现可能非常紧密地耦合到客户、行业、领域或给定企业的操作模式。
在计算机***的用户尝试获得技术支持以解决计算机***的问题时,这可导致挑战。当前,用户的支持体验可能很麻烦且耗时。尽管支持体验可能采取许多形式,但一种常见形式涉及用户首先通过电话呼叫技术支持人员。用户与支持工程师联系,支持工程师通常询问用户各种不同的问题以了解用户所遇到的技术问题的某些症状。这被完成,使得支持工程师可尝试再现问题,以使得它可被修复。
这样的计算机***通常过于复杂,以致再现该问题可能非常困难。为准确地再现该问题通常所需的信息量可能非常大。通常,这一信息并非全部在初始电话讨论期间收集。相反,支持人员通过拨打另外的电话呼叫并通过以其他方式通信来与用户一起跟进。通常,支持体验的这一阶段涉及用户与支持人员之间的许多电子邮件交换,仅仅为了澄清问题的确切性质以及为了再现用户具有的环境,使得该问题可由技术支持人员解决。
一旦支持工程师最终能够再现该问题,它被描述并通常发送给不同的开发团队以生成对该问题的修复。尝试修复该问题的开发者可能需要来自报告该问题的用户的甚至更多信息,这导致用户与开发者之间的更多的澄清通信。在开发者最终相信他或她开发了对该问题的修复时,向用户通知(通常通过电子邮件)已开发了修复且它可被用户应用。
有时,甚至在用户应用修复之后,它未能修复用户报告的问题。因而,整个过程(或其至少一部分)被重复。这对用户而言可能相当失望。
提供以上讨论仅用作一般的背景信息,并不旨在用作帮助来确定所要求保护的主题的范围。
概述
虚拟环境服务从计算机***的所部署的实例获取自动收集的诊断信息,并基于所收集的诊断数据自动生成计算机***的实例的环境的再现。用户与虚拟诊断环境的交互可被记录以标识计算机***的所部署的实例的技术问题。对该问题的修复在虚拟诊断环境中应用,使得它可在应用于所部署的实例之前被用户验证。
提供本概述以便以简化的形式介绍以下在详细描述中进一步描述的一些概念。本概述并非旨在标识出要求保护的主题的关键特征或必要特征,亦非旨在用作辅助确定要求保护的主题的范围。所要求保护的主题不限于解决在背景中提及的任何或所有缺点的实现。
附图简述
图1A和1B(统称为图1)是一个说明性支持体系结构的框图。
图2A-2C(统称为图2)示出了阐明在支持用户时图1所示的体系结构的操作的一个实施例的流程图。
图3A-3Z-1示出了可被生成的示例性用户界面显示。
图4是被部署在云计算架构中的图1中示出的体系结构的一个实施例的框图。
图5-10示出了移动设备的各实施例。
图11是一个说明性计算环境的框图。
详细描述
图1A和1B在本文中统称为图1。图1是一个说明性支持体系结构100的框图。支持体系结构100示出用户102与用户设备106所生成的用户界面显示104交互。用户界面显示104包括用户102可与其交互以控制并操纵企业***(如业务***)108的用户输入机制。
图1还示出体系结构100包括与虚拟环境服务112交互以在虚拟控制***114中生成虚拟诊断环境的生命周期***110。支持工程师116和开发者118可与***114中的虚拟诊断环境交互以生成可被应用于企业***108以修复用户102报告的技术问题的修复120。在更详细地描述体系结构100的操作之前,将提供体系结构100中的各项中的一些的简要描述。
在图1所示的实施例中,用户设备106可以使各种各样的不同类型的设备,如台式计算机、膝上型计算机、移动设备(如平板或智能电话),以及其他。它说明性地包括数据存储124中的处理器122,这将在下文更详细地描述。
企业***108可以是为组织部署的各种各样的不同类型的企业***。本讨论将参考企业***108作为业务***(如CRM***、ERP***、LOB***等)来进行。这一描述只是出于示例来提供,且它也可以是其他***。
图1示出***108说明性地包括处理器126、数据存储128、诊断数据收集组件130以及其他组件132。在一个实施例中,数据存储128存储业务数据134、业务***108中部署的各项的版本号136、已应用于业务***108的更新的列表138、已应用于业务***108的修复的列表140,且也可存储其他信息。在一个实施例中,业务数据134包括实体、工作流、以及其他信息。业务应用(如总账应用、库存应用、记账应用,等等)操作数据存储128中的数据和工作流,以允许用户102执行任务、活动、操作、或其他事情,以进行业务***108被部署于其中的公司的业务。
诊断数据收集组件130在被请求时说明性地收集可被用来标识业务***108的所配置的环境的各种不同类型的诊断数据。诊断信息可说明性地用来生成虚拟诊断环境,如下文参考图2A-2C描述的。
生命周期***110说明性地包括多个不同服务142-144,这些服务可被各个群体使用以标识、跟踪和解决在项目的各生命周期阶段期间出现的问题(例如,从预售到实现和维护)。例如,当业务***108被设计、构建、部署和测试时,各服务142-144解说性地允许开发者以及用户组织跟踪出现的问题,并且确定在业务***108的最终实例被部署在该组织处时是否满足客户的预期。用户102可解说性地登录到生命周期***110以查看服务142-144所提供的各信息。诊断数据收集组件130可被部署在业务***108内或生命周期***110内,或者它的一部分可被部署在这两个位置。它结合服务142-144使用以从特定业务***实例108获得诊断环境信息。问题报告组件143放出用户对业务***108具有的用户报告和问题。问题再现组件149允许用户在诊断环境中再现问题,且问题验证组件151允许用户验证该问题在诊断环境中被修复。这些也在下文更详细地描述。
虚拟环境服务112说明性地包括虚拟机生成器146和映射组件148。虚拟机生成器146说明性地获得所收集的环境数据141(这可被诊断数据收集组件130收集)并在虚拟机控制***114中生成虚拟机,以便它再现业务***108的环境。虚拟机控制***114包括一个或多个处理器154。虚拟机由虚拟业务***实例150和虚拟业务***实例152指示。映射组件148说明性地生成***114中的虚拟实例150-152与用户102(以及支持工程师116和开发者118)之间的用户映射以及其他映射。这些映射可被用于访问虚拟实例。
在描述体系结构100的详细操作之前,将提供操作的简要概览以增强理解。用户102首先遇到业务***108的技术问题(***108没有按需工作)。这可按各种方式发生,如在用户102使用或部署或以其他方式与业务***108交互时。用户102随后登录到生命周期***110来报告该问题。问题报告组件143说明性地生成具有用户102可与其交互以标识并描述该问题的用户输入机制的用户界面显示104。***110随后使用诊断数据收集组件130来收集可被用来再现在其中部署业务***108的环境的环境数据。***110将所收集的环境数据141提供给虚拟机生成器146,虚拟机生成器146生成虚拟业务***实例(例如,实例150)作为再现业务***108在其中运行的环境的虚拟诊断环境(缺少***108的实际数据)。映射组件148将用户102(以及其他授权用户)映射到虚拟业务***实例150,使得他们可以稍后访问它。问题报告组件143随后生成给用户102的、虚拟业务***实例150已被生成的通知。用户102随后通过组件149访问虚拟业务***150并再现用户102报告的技术问题。报告组件155可在再现该技术问题时记录用户的动作。支持工程师116随后可访问用户102提交的所记录或描述的问题,并进一步为开发者118定义该问题。开发者118随后可访问虚拟业务***实例150以生成修复该技术问题的修复120。***110稍后通知用户102已生成修复。用户102随后可再次(通过组件151)访问虚拟业务***实例150(其中应用了修复),以验证该技术问题确实被解决了。如果是,用户102说明性地下载修复120并将它应用于业务***108以修复该技术问题。
体系结构100的操作的更详细讨论现在将参考图2A-2C(统称为图2)的流程图来提供。图3A-3Z-1示出了可被***110生成的示例性用户界面显示。现在将结合图1的框图来描述图2-3Z-1。
用户界面组件145首先说明性地生成用户界面显示,以便用户102可登录到***110并标识新问题或技术问题。这由图2的流程图中的框200指示。用户界面组件145随后说明性地接收标识该问题的客户标识输入。这由框202指示。作为示例,用户输入可包括用户信息204以及问题描述206或其他信息208。同样,作为在图2的框202处标识问题的一部分,***110可说明性地使用诊断数据收集130运行诊断数据收集,以获得描述业务***108被部署于其中的环境的诊断数据。
图3A示出可由***110显示且允许用户102发起登录过程的用户界面显示的一个实施例。例如,用户102可致动按钮300以开始登录。图3B示出其中用户102说明性地提供认证信息(如用户名和口令)等的一个实施例。作为示例,用户102可以在文本框302中提供字母数字输入以做到这一点。用户102随后可致动登录用户输入机制304来登录到***110。
用户界面组件145随后说明性地生成用户界面显示,如图3C所示的显示306。显示306说明性地包括各种用户输入机制,包括项目用户输入机制308。在用户致动项目用户输入机制308时,用户说明性地导航到项目显示,如图3D中示出的显示310。项目显示310可说明性地包括各种附加用户输入机制,用户可致动这些附加用户输入机制以导航到与各种不同事物有关的更详细信息。
在一个实施例中,用户输入机制说明性地包括与“支持问题”相对应的用户输入机制312。在用户致动用户输入机制312时,用户界面组件145说明性地将用户导航到用户界面显示,如图3E中示出的用户界面显示314。用户界面显示314说明性地包括与当前为业务***108解决的问题相对应的一组用户输入机制316。在一个实施例中,用户输入机制316包括活动问题用户输入机制318。在用户致动机制318时,用户被说明性地导航到与活动问题有关的更详细信息。用户输入机制316还说明性地包括再现用户输入机制320。在用户致动机制320时,用户说明性地被导航到与当前再现(或需要被再现)使得它们可被提交以供开发者调查并修复它们的问题有关的更详细信息。
用户输入机制316还说明性地包括验证用户输入机制322。在用户致动用户输入机制322时,用户说明性地被导航到允许用户验证修复实际上补救或解决了所报告的特定问题的一组用户界面显示。
用户输入机制316还说明性地包括所有问题用户输入机制324以及将新问题记入日志用户输入机制326。在用户致动机制324时,用户说明性地被导航到示出与当前提交的所有问题有关的更详细信息的显示。在用户致动机制326时,用户说明性地被导航到允许用户将业务***108的新问题记入日志以使得它可被调查并修复的一组用户界面显示。
图3F示出了允许用户开始描述新问题的用户界面显示328的一个实施例。用户界面显示328说明性地包括向用户示出本问题当前所处的阶段的阶段指示符330。阶段指示符330说明性地包括示出本问题是新报告的问题的新指示符332。再现指示符334说明性地指示该问题正被用户再现(或需要被再现)以便它可被调查和修复。活动指示符336指示本问题是活动的(且正被支持人员处理)。验证指示符338指示已为这一问题生成了修复,且用户可说明性地在为这一问题创建的虚拟诊断环境中验证它有效。关闭指示符340指示该问题已关闭。
用户界面显示328还说明性地包括允许用户标识业务***108被部署于其中的特定环境的环境用户输入机制342。在图3F所示的实施例中,机制342是允许用户选择生产用户输入机制344以指示***108在生产中的下拉菜单。用户还可致动UAT用户输入机制346以指示***108被部署在用户接受度测试环境中,且测试用户输入机制348指示业务***108仍然被部署在测试环境中。当然,也可使用其它机制。
图3G示出了用户界面显示350的另一实施例。用户界面显示350可响应于用户使用用户输入机制342选择特定环境来生成。
图3G示出诊断数据收集组件130已经运行,且收集了在图3G中352处概括地示出的诊断数据集。所收集的数据(图1中的141)可包括可被用来再现与业务***108的环境相同的诊断环境的各种各样的不同种类的信息。该信息可包括例如业务***108中使用的服务器操作***、***108中使用的数据库版本、用来执行内容和文档管理的应用平台版本、业务***108的主版本、已被应用于业务***108的更新的标识、以及已被应用于***108的任何修复、以及其他。接收来自诊断数据收集组件130的用户环境数据141由图2的流程图中的框210指示。服务器操作***由框212指示,数据库版本由框214指示,应用平台的版本由框216指示,业务***版本由框218指示,已安装的更新由框220指示,已安装的修复由框222指示,以及其他信息由框224指示。诊断信息中的一些在图3G中352处概括地示出。
用户界面显示350还说明性地包括已安装模型用户输入机制354。在用户致动用户输入机制354时,用户说明性地被导航到示出安装在业务***108上的各模型的另一用户界面显示。
例如,图3H示出可被生成以示出这一点的用户界面显示356的一个实施例。图3H包括列出已安装在业务***108上的各模型的弹出式显示358。在一个实施例中,各模型按标识号、它们所处的层、模型名称、模型发布者、版本号以及模型是否已被签署、以及模型的描述来列出。一旦用户查看了已安装的模型,用户可关闭弹出式显示358,并致动图3G的用户界面显示上的下一步用户输入机制360。
这说明性地将用户导航到另一问题描述用户界面显示,如图3J中的用户界面显示362。用户界面显示362显示允许用户标识他或她自己以及相关信息(如,用户的时区、电话号码、电子邮件地址、主和辅支持语言、用户所处的国家地区,等等)的一组用户输入机制364。
在用户输入了这一信息之后,用户说明性地致动下一步用户输入机制366,这将用户导航到允许用户更详细地描述问题的用户界面显示。图3J示出了可被生成来这么做的用户界面显示368的一个实施例。用户界面显示368说明性地包括允许用户给出问题标题的用户输入机制360以及允许用户标识该问题的主题和子主题的一组用户输入机制372。严重性水平输入机制374允许用户标识与这一水平相关联的严重性水平。还说明性地向用户提供允许用户使用文本来描述问题的问题描述输入机制376。此外,用户输入机制378允许用户当用户在业务***108内执行给定动作时描述实际结果对预期结果,且这标识问题。用户输入机制380允许用户标识导致提交本问题的症状。
在一个实施例中,如果用户使用机制374标识了足够高的严重性水平,则向用户提供在382处概括地示出的附加用户输入机制,这可被用来进一步定义问题的严重性水平,如问题是否造成严重工作中断、用户是否有人员可在非工作时间处理该问题,以及允许用户确认指派给该问题的严重性水平。
一旦用户定义了问题,用户可说明性地致动下一步用户输入机制384。这说明性地将用户导航到一用户界面显示,如图3K中所示的显示。一旦用户定义了问题,***100就可在用户界面显示386中说明性地显示已被生成且可能适用于用户所描述的问题的多个可能修复。作为示例,***110中的服务之一可以是跟踪已为业务***108生成的各热修复的热修复服务。问题报告组件143可以基于用户报告的问题来生成查询、标识可能修复该问题的任何修复(如果被安装在业务***108上的话)。用户可通过致动对应的用户输入机制(在388处概括地示出)说明性地下载显示386中的修复中的任一者。显示已经可用的可能相关的修复的列表由图2中的框226指示。接收用户输入以应用所显示的修复由框228指示。
如果用户的确应用修复,则当前问题的状态被保存,以便用户可以返回该状态(如果修复没有成功解决问题的话)。保存问题的当前状态由图2中的框230指示。在一个实施例中,通过将标题、版本号、客户、项目、所下载的修复的标识号、以及安装在业务***108上的模型记入日志来保存问题。问题报告组件143随后向用户发送用于在修复没有解决这一特定问题的情况下返回这一特定问题(在问题报告流中的这一特定点处)的链接。这由图2中的框232指示。用户还可说明性地致动链接以指示修复的确解决了该问题。如果这一点发生,则这一信息被记入日志,使得它可被用来改进与所报告的这一类型的问题相对应的将来分析。确定问题是否被解决以及将该信息记入日志由图2中的框234和236指示。
如果用户应用了修复之一,但该修复没有解决问题,则用户可说明性地致动问题报告组件143所发送的链接以返回问题报告流。用户致动链接由图2中的框238指示。在这种情况下,处理返回框240。如果在框228,用户没有选择应用图3K的用户界面显示386中显示的修复中的任一者,则同样如此。
在任一情况下,用户说明性地致动图3K的用户界面显示中的下一步指示符390。在生成虚拟业务***实例150时,虚拟环境服务112首先使用虚拟机生成器146来在虚拟机控制***114中供应虚拟环境(以生成虚拟机)。这由图2中的框242指示。映射组件148随后生成将用户和各工程师116以及开发者118映射到刚生成的虚拟环境(例如,虚拟业务***实例150)的映射156,以使得他们能访问该映射156。这由框244指示。其他步骤264也可被采取以生成虚拟环境。
图3L示出可被用来向用户102传达这一信息的用户界面显示392的一个说明性实施例。它指示虚拟环境正在虚拟机控制***114内被供应,且在环境准备好被用户访问时将向用户发送具有用户名和口令(或其他认证信息)的消息。
图3M示出可由虚拟机控制***114生成的一个说明性用户界面显示394。它说明性地示出用户所处的特定地理区域被传递给***114,使得在接近该地理区域的数据中心中创建虚拟环境。这允许支持人员和用户在相同或接近相同的时区中。使用由诊断数据收集组件130收集的所收集的环境数据141创建虚拟环境。已被应用于业务***108的各热修复也被应用在诊断环境中。在一个实施例中,为所提交的每一问题创建一个虚拟环境(如一个虚拟业务***实例150)。通知用户虚拟环境已被创建为用于该用户的诊断环境由图2中的框248指示。发送用户名和口令由框250指示,且发送其他信息由框252指示。
此时,用户可通过用户界面组件145所生成的合适的用户界面显示再次登录到生命周期***110。用户可导航到诸如图3N中示出的用户界面显示396等用户界面显示。用户界面显示396类似于图3E中示出的用户界面显示314,并且类似的项被类似地编号。然而,可以看到,在图3N中,用户正致动“再现”用户输入机制320。这说明性地将用户导航到包括与需要由用户再现以使它们可被调查和修复的各问题有关的更多信息的用户界面显示。
作为示例,图3O示出可被生成以供用户这样做的用户界面显示398。显示398包括具有为其供应的虚拟环境的问题,使得用户可以在虚拟环境上再现该问题。显示398包括标识问题的表400。它说明性地包括服务请求号字段402、列出问题的标题的标题字段404、标识严重性水平的严重性字段406、列出问题当前所处的特定状态的状态字段408、示出已被供应给这一问题的虚拟机(或虚拟环境)的状态的虚拟机状态字段410、允许用户重置他或她的口令的口令重置字段412、标识该问题已在虚拟环境中被成功再现的再现字段414、指示问题在虚拟环境中的所记录的再现是否被附连的任务记录器包指示符417、以及包括允许用户采取动作的用户可致动输入机制418的动作字段416。在图3O所示的实施例中,用户输入机制418允许用户连接到虚拟环境以再现问题。
在用户致动机制418时,说明性地请求用户输入允许用户连接到虚拟机并访问虚拟诊断环境的连接信息。图3P和3Q示出这一点的各实施例。在图3P中,弹出式显示420允许用户标识计算机连同用户名,且图3Q示出弹出式显示422允许用户输入客户凭证。用户登录到虚拟诊断环境由图2的流程图中的框254指示。显示登录屏并接收用户登录信息由图2中的框256和258指示。
由用户访问的虚拟业务***实例150随后生成模仿访问业务***108的用户将遇到的那些的用户界面显示。图3R示出了解说这一点的用户界面显示屏424的一个实施例。可以看到,用户已登录到虚拟机且标识数据的虚拟环境在426处概括地示出。这允许用户验证他或她的确登录到正确的诊断环境。用户随后可导航通过诊断环境且虚拟业务***实例150生成用户界面显示,如同用户在使用业务***108一样。这允许用户在诊断环境中(在虚拟业务***实例150上)再现问题,如同用户在业务***108遇到该问题一样。显示用户界面显示以使用户可在虚拟诊断环境中再现问题由图2的流程图中的框260指示。接收实际上再现问题的用户输入由框262指示。
当用户再现问题时,记录组件155说明性地记录与用户界面显示的所有客户交互,使得支持工程师116或开发者118能重放这些动作以实际上看到用户如何遇到该问题。记录用户输入由图2中的框264指示。
情况可能是出于某种原因,用户不能在虚拟业务***实例150上再现该问题。如果情况如此,则用户可返回图3O所示的问题列表。通过将问题再现用户输入机制414设置为“否”,***110指示如果用户不能在虚拟环境中(使用虚拟业务***实例150)再现该问题,则请求用户上传任务的记录,使得它可被提交以供审阅。图3S示出这样的用户界面显示428的一个实施例。弹出式显示430指令用户将任务记录包附加到该问题,以使得它可被提交。然而,如果问题在虚拟业务***实例150中再现,则用户说明性地将用户输入机制414设置成“是”并致动提交致动器432(如图3T所示)来提交问题以分别供支持工程师116和开发者118调查和修复。在一个实施例中,一旦该问题被提交,***100中的用户界面组件145再次生成消息(如在图3U的用户界面显示434中的436处)。
一旦问题被提交,支持工程师116就说明性地调查该问题并可为开发者118进一步定义它。开发者118说明性地处理该问题,并最终在虚拟业务***实例150中为该问题生成修复。这由图2中的框266指示。***110随后说明性地通知用户102修复可供用于验证。这由图2中的框268指示。***110中的用户界面组件145随后生成接收用户输入以使用户可登录到虚拟诊断环境(虚拟业务***实例150)的用户界面显示。这由图2中的框270指示。
图3V示出指示用户可再次导航到以上参考图3E示出的用户界面显示314的用户界面显示。然而,图3V示出用户正致动验证用户输入机制322。作为响应,用户说明性地被导航到以上在图3O中示出的问题列表400。与图3O中所示的类似的项在图3W中的用户界面显示398中被类似地编号。然而,可以看到,问题的状态现在已经从“再现”(其中它需要被用户再现)前进至“验证”(其中它现在要被用户验证)。
因而,用户说明性地致动连接用户输入机制418以连接到虚拟诊断环境(虚拟业务***实例150)。可再次说明性地请求用户的登录信息和凭证以便访问该环境。虚拟业务***实例150随后显示允许用户在虚拟诊断环境中应用修复(例如应用于虚拟业务***实例150)的用户界面显示。这由图2中的框272指示。图3X和3Y中的用户界面显示解说了这一点的一个示例。
图3X中的用户界面显示类似于图3R中的用户界面显示424且被类似地编号。然而,图3X中的用户界面显示包括修复验证图标436,它可被用户致动以发起该修复在诊断环境中的安装。图3Y示出可被生成的允许用户安装修复、编译代码、以及应用修复以验证该修复实际上修复了该问题的弹出式显示438。用户可通过致动安装用户输入机制440然后致动编译用户输入机制440和应用(或确定)用户输入机制444来这样做。接收到请求安装并应用修复的用户输入由图2中的框274指示。安装修复由框276指示,在安装了修复的情况下编译代码由框278指示,以及接收任何其他用户输入由框280指示。
一旦这一点发生,虚拟业务***实例150就显示允许用户再次重新创建可在业务***108中遇到该问题的场景的用户界面显示。用户随后可验证所应用的修复是否解决了该问题。显示用户界面显示以使用户可以验证修复在虚拟诊断环境中解决了问题由图2中的框282指示。
用户界面组件145随后生成允许用户接受或拒绝该问题的解决方案的用户界面显示。这由图2中的框284指示。图3Z示出用于这样做的用户界面显示450的一个实施例。用户界面显示450包括与相关于图3W所示的相同的表400,除了用户输入机制414已被致动以指示用户接受该解决方案。在用户致动机制432时,弹出式显示452被说明性地显示,从而向用户指示该事件将关闭。如果用户致动机制414以指示用户没有接受该解决方案,则用户随后可致动提交致动器432且允许用户在文本框456中指示不接受该解决方案的原因的弹出式显示454(在图3Z-1中)被说明性地生成。在这种情况下,该问题将被重新提交给支持工程师116和开发者118以便它可被再次处理。
接收指示用户接受或拒绝该解决方案的用户输入由图2中的框286指示。如果用户没有接受该解决方案,则接收描述不接受该解决方案的原因的用户输入由框288指示。在这种情况下,处理返回框266。然而,如果在框286,确定用户接受了该解决方案,则该问题被关闭。这由图2中的框290指示。
可以看到,***110、服务112以及***114向提交针对企业***108的技术支持请求的客户提供了端到端体验。用户102与支持人员之间的用以定义用户所遇到的问题的交互被显著地降低。用户的生产环境被自动检测且复制的诊断环境被生成,使得它动态地充当用户的生产环境的副本。这使得支持人员能够集中于解决用户报告的问题并极大地降低在再现所报告的问题本身时面临的挑战。所创建的虚拟诊断环境提供用户的复制环境的单个视图,包括配置设置、以及已安装的模型文件。它可在复制的环境中记录业务过程和问题描述。它还向客户提供确保该问题可再现在虚拟诊断环境上的能力,且它还使用户能够验证任何修复的确解决了该问题。
本讨论提到了处理器、控制器以及服务器。在一个实施例中,处理器、控制器以及服务器包括具有相关联的存储器和定时电路***(未分别示出)的计算机处理器。它们是它们所属的***或设备的功能部分,且由这些***中的其他组件或项的功能来激活并促成这些功能。
同样,讨论了多个用户界面显示。它们可以采取各种各样的不同形式且可具有布置于其上的各种各样的不同用户可致动输入机制。例如,用户可致动输入机制可以是文本框、复选框、图标、链接、下拉菜单、搜索框,等等。它们还可按各种不同的方式来致动。例如,可使用点击设备(诸如跟踪球或鼠标)来致动它们。可使用硬件按钮、开关、操纵杆或键盘、拇指开关或拇指垫等等来致动它们。还可使用虚拟键盘或其他虚拟致动器来致动它们。另外,在其上显示它们的屏幕是触敏屏的情况下,可以使用触摸手势来致动它们。同样,在显示它们的设备具有语音识别组件的情况下,可以使用语音命令来致动它们。
还讨论了多个数据存储。将注意,它们可各自被分解成多个数据存储。它们全部可位于访问它们的***的本地,全部可以是远程的,或一些可以在本地而其他在远程。本文构想了所有这些配置。
同样,附图示出了具有归属于每一框的功能的多个框。将注意,可以使用更少的框,使得功能由更少的组件来执行。同样,可以使用更多框,其中功能被分布在更多组件之间。
图4是图1中所示的体系结构100的框图,不同之处在于其元件被置于云计算架构500中。云计算提供了不要求最终用户知晓交付服务的***的物理位置或配置的计算、软件、数据访问和存储服务。在各个实施例中,云计算通过诸如因特网之类的广域网使用合适的协议来交付服务。例如,云计算提供者通过广域网交付应用,并且它们可以通过web浏览器或任何其他计算组件被访问。体系结构100的软件或组件以及相对应的数据可被存储在远程位置处的服务器上。云计算环境中的计算资源可以被整合在远程数据中心位置处或者它们可以是分散的。云计算基础结构可以通过共享数据中心来交付服务,即使在用户看来它们是单个访问点。因此,在此所述的组件和功能可以从使用云计算体系结构的远程位置处的服务提供者来提供。替代地,它们可以从常规的服务器中提供,或者它们可以直接地或以其他方式安装在客户机设备上。
本说明书旨在包括公共云计算和私有云计算两者。云计算(公共和私有两者)提供了基本无缝的资源联营以及对管理和配置底层硬件基础结构的降低的需求。
公共云由供应商管理,并且通常支持使用同一基础结构的多个消费者。此外,与私有云相反,公共云能够将终端用户从管理硬件中释放出来。私有云可由机构本身管理,并且基础结构通常不与其他机构共享。该机构在某种程度上仍然维护着硬件,诸如安装和维修等。
在图4中所示的实施例中,一些项与图1中所示的那些是类似的,并且它们被类似地编号。图4具体地示出***108、110、112以及114位于云502(可以是公共的、私有的或者其中某些部分是公共的而某些部分是私有的组合)中。因此,用户102使用用户设备106通过云502来访问那些***。
图4还描绘了云架构的另一实施例。图4示出还构想了体系结构100的某些元素被置于云502中而某些元素没有被置于云502中。作为示例,数据存储128可被置于云502的外部,并且通过云502来被访问。在另一实施例中,各***和组件(例如,组件130)也可在云502的外部。无论它们位于哪里,它们都可直接由设备106通过网络(广域网或局域网)访问,它们可由服务主存在远程站点处,或者它们可作为通过云来提供或通过驻留在云中的连接服务来访问的服务。本文构想了所有这些体系结构。
还将注意,体系结构100或其部分可被置于各种各样不同的设备上。这些设备中的某些包括:服务器、台式计算机、膝上型计算机、平板计算机、或其他移动设备,诸如掌上计算机、蜂窝电话、智能电话、多媒体播放器、个人数字助理等。
图5是可被用作其中可部署本发明中的***(或其部分)的用户或客户的手持式设备16的手持式或移动计算设备的一个说明性实施例的简化框图。图6-10是手持式或移动设备的示例。
图5提供了客户机设备16的组件的总体框图,该客户机设备16可以运行体系结构100的组件或与体系结构100交互,或这二者。在设备16中,提供了通信链路13,该通信链路允许手持设备与其它计算设备通信,并且在一些实施例中提供用于诸如通过扫描来自动接收信息的信道。通信链路13的示例包括:红外端口、串行/USB端口、诸如以太网端口之类的电缆网络端口、以及允许通过一个或多个通信协议的通信的无线网络端口,所述通信协议包括作为用于提供对网络的蜂窝接入的无线服务的通用分组无线服务(GPRS)、LTE、HSPA、HSPA+、以及其他3G和4G无线电协议、1Xrtt和短消息服务,并包括提供对网络的本地无线连接的802.11和802.11b(WiFi)协议、和蓝牙协议。
根据其他实施例,应用或***被容纳在连接到可移动安全数字(SD)卡接口15的SD卡上。SD卡接口15和通信链路13沿总线19与处理器17(也可实现来自图1的处理器126、147、154)进行通信,该总线19还连接到存储器21和输入/输出(I/O)组件23、以及时钟25和定位***27。
在一个实施例中,提供了I/O组件23以促进输入和输出操作。针对设备16的各个实施例的I/O组件23可以包括:输入组件,比如按钮、触摸传感器、多点触摸传感器、光学或视频传感器、语音传感器、触摸屏、邻近传感器、话筒、倾斜传感器以及重力开关;以及输出组件,比如显示设备、扬声器和或打印机端口。也可以使用其他I/O组件23。
时钟25说明性地包括输出时间和日期的真实时间时钟组件。时钟还可以说明性地为处理器17提供时序功能。
定位***27说明性地包括输出设备16的当前地理位置的组件。这例如可以包括全球定位***(GPS)接收机、LORAN***、航位推算***、蜂窝三角测量***或者其他定位***。这例如还可以包括生成所期望的地图、导航线路和其它地理功能的测绘软件或导航软件。
存储器21存储操作***29、网络设置31、应用33、应用配置设置35、数据存储37、通信驱动程序39以及通信配置设置41。存储器21可以包括所有类型的有形易失性和非易失性计算机可读存储器设备。其还可以包括计算机存储介质(下面描述)。存储器21存储计算机可读指令,所述指令在被处理器17执行时致使处理器根据所述指令执行计算机实现的步骤或功能。类似地,设备16可具有客户机业务***24,该客户机业务***24可运行各种业务应用或实现体系结构100的部分或全部。处理器17可以也被其他组件激活以促成它们的功能性。
网络设置31的示例包括诸如代理信息、因特网连接信息以及测绘之类的事物。应用配置设置35包括为特定企业或用户定制应用的设置。通信配置设置41提供了用于与其他计算机进行通信的参数,并且包括诸如GPRS参数、SMS参数、连接用户名和口令之类的项目。
应用33可以是之前已经存储在设备16上的应用或是在使用期间安装的应用,但是这些应用可以是操作***29的一部分,或者也可以在设备16之外被托管。
图6示出其中设备16是平板计算机600的一个实施例。在图6中,计算机600被示为具有在显示屏602上显示的来自图3N的用户界面显示。屏幕602可以是触摸屏(使得来自用户手指604的触摸姿势可以用于与应用交互)或者启用笔的界面,其接收来自笔或指示笔的输入。其还可以使用屏幕上虚拟键盘。当然,其还例如可以通过诸如无线链路或USB端口之类的合适的附连机制附连到键盘或其他用户输入设备。计算机600还可以说明性地接收语音输入。
图7和图8提供了可被使用的设备16的附加示例,但是也可以使用其他设备。在图7中,提供功能电话、智能电话或移动电话45作为设备16。电话45包括:一组小键盘47,其用于拨打电话号码;显示器49,其能够显示包括应用图像、图标、网页、照片和视频在内的图像;以及控制按钮51,其用于选择在显示器上示出的项目。电话包括天线53,该天线53用于接收诸如通用分组无线服务(GPRS)和1Xrtt之类的蜂窝电话信号以及短消息服务(SMS)信号。在一些实施例中,电话45还包括容纳安全数字(SD)卡57的SD卡槽55。
图8的移动设备是个人数字助理(PDA)59或多媒体播放器或平板计算设备等等(在此称为PDA59)。PDA59包括电感屏61,所述电感屏感测指示笔63(或其他指示器,诸如用户的手指)在该指示笔被置于屏幕之上时的位置。这允许用户在屏幕上选择、突出显示和移动项目以及绘图和书写。PDA59还包括多个用户输入键或按钮(比如按钮65),其允许用户将显示器61上所显示的菜单选项或其他显示选项滚屏,并且允许用户在没有接触显示器61的情况下改变应用或选择用户输入功能。尽管未被示出,但是PDA59可以包括允许与其他计算机进行无线通信的内置天线和红外发射机/接收机、以及允许与其他计算设备的硬件连接的连接端口。这样的硬件连接通常是通过经由串行或USB端口连接到其他计算机的支架来完成的。因此,这些连接是非网络连接。在一个实施例中,移动设备59还包括容纳SD卡69的SD卡槽67。
图9类似于图7,不同之处在于电话是智能电话71。智能电话71具有显示图标或图块或其他用户输入机制75的触敏显示器73。机制75可由用户用来运行应用、进行呼叫、执行数据传输操作,等等。一般而言,智能电话71被构建在移动操作***上且提供比功能电话更高级的计算能力和连接性。图10示出了其上具有图3V的显示的电话71。
注意,设备16的其他形式是可能的。
图11是其中可采用体系结构100或其一部分(作为示例)的计算环境的一个实施例。参考图11,用于实现一些实施例的示例性***包括计算机810形式的通用计算设备。计算机810的组件可以包括,但不限于,处理单元820(可以包括处理器126、147或154)、***存储器830和将包括***存储器在内的各种***组件耦合至处理单元820的***总线821。***总线821可以是若干类型的总线结构中的任一种,包括存储器总线或存储器控制器、***总线和使用各种总线架构中的任一种的局部总线。作为示例而非限制,这样的架构包括工业标准架构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子技术标准协会(VESA)局部总线和***部件互连(PCI)总线(也称为夹层(Mezzanine)总线)。参考图1描述的存储器和程序可被部署在图11的对应部分中。
计算机810通常包括各种计算机可读介质。计算机可读介质可以是能由计算机810访问的任何可用介质,而且包含易失性和非易失性介质、可移动和不可移动介质。作为示例而非限制,计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质不同于且不包括已调制数据信号或载波。计算机存储介质包括硬件存储介质,该硬件存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的任何方法和技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括,但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁性存储设备、或能用于存储所需信息且可以由计算机810访问的任何其它介质。通信介质通常具体化计算机可读指令、数据结构、程序模块或传输机制中的其他数据,并包括任何信息递送介质。术语“已调制数据信号”是指使得以在信号中编码信息的方式来设置或改变其一个或多个特性的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接之类的有线介质,以及诸如声学、RF、红外及其他无线介质之类的无线介质。上述任何组合也应该包括在计算机可读的介质范围内。
***存储器830包括易失性和/或非易失性存储器形式的计算机存储介质,如只读存储器(ROM)831和随机存取存储器(RAM)832。包含诸如在启动期间帮助在计算机810内的元件之间传输信息的基本例程的基本输入/输出***833(BIOS)通常存储在ROM831中。RAM832通常包含处理单元820可立即访问和/或当前正在操作的数据和/或程序模块。作为示例而非限制,图11例示出了操作***834、应用程序835、其它程序模块836和程序数据837。
计算机810还可以包括其它可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图11示出了从不可移动、非易失性磁介质中读取或向其写入的硬盘驱动器841,从可移动、非易失性磁盘852中读取或向其写入的磁盘驱动器851,以及从诸如CDROM或其他光学介质等可移动、非易失性光盘856中读取或向其写入的光盘驱动器855。可在示例性操作环境中使用的其它可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于,磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等。硬盘驱动器841通常通过诸如接口840之类的不可移动存储器接口连接到***总线821,并且磁盘驱动器851和光盘驱动器855通常通过诸如接口850之类的可移动存储器接口连接到***总线821。
作为替换或补充,本文所述的功能可至少部分地由一个或多个硬件逻辑组件来执行。例如、但非限制,可使用的硬件逻辑组件的说明性类型包括现场可编程门阵列(FPGA)、程序专用的集成电路(ASIC)、程序专用的标准产品(ASSP)、片上******(SOC)、复杂可编程逻辑器件(CPLD)、等等。
上文讨论并在图11中示出的驱动器及其相关联的计算机存储介质为计算机810提供了对计算机可读指令、数据结构、程序模块和其他数据的存储。例如,在图11中,硬盘驱动器841被示为存储操作***844、应用程序845、其他程序模块846和程序数据847。注意,这些组件可与操作***834、应用程序835、其它程序模块836和程序数据837相同,也可与它们不同。在此操作***844、应用程序845、其它程序模块846以及程序数据847被给予了不同的编号,以至少说明它们是不同的副本。
用户可以通过诸如键盘862、话筒863以及诸如鼠标、跟踪球或触摸垫等定点设备861等输入设备来将命令和信息输入至计算机810中。其它输入设备(未示出)可以包括操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等。这些以及其它输入设备通常通过耦合到***总线的用户输入接口860连接到处理单元820,但也可通过诸如并行端口、游戏端口或通用串行总线(USB)之类的其它接口和总线结构来连接。视觉显示器891或其他类型的显示设备也经由诸如视频接口890之类的接口连接至***总线821。除了监视器以外,计算机还可包括诸如扬声器897和打印机896之类的其它***输出设备,它们可通过输出***接口895来连接。
计算机810使用到诸如远程计算机880等一个或多个远程计算机的逻辑连接在网络化环境中操作。远程计算机880可以是个人计算机、手持设备、服务器、路由器、网络PC、对等设备或其它常见的网络节点,且一般包括以上关于计算机810描述的多个或所有的元件。图10中所示的逻辑连接包括局域网(LAN)871和广域网(WAN)873,但也可以包括其他网络。此类联网环境在办公室、企业范围的计算机网络、内联网和因特网中是常见的。
当在LAN联网环境中使用时,计算机810通过网络接口或适配器870连接到LAN871。当在WAN联网环境中使用时,计算机810通常包括调制解调器872或用于通过诸如因特网等WAN873建立通信的其它手段。调制解调器872可以是内置的或外置的,可经由用户输入接口860或其它适当的机制连接到***总线821。在联网环境中,相关于计算机810所示的程序模块或其部分可被存储在远程存储器存储设备中。作为示例而非限制,图11示出了远程应用程序885驻留在远程计算机880上。应当理解,所示的网络连接是示例性的,并且可使用在计算机之间建立通信链路的其它手段。
还应注意,本文描述的不同实施例可以按不同的方式来组合。即,一个或多个实施例的各部分可以与一个或多个其他实施例的各部分组合在一起。本文中构想了所有这些。
尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。更确切而言,上述具体特征和动作是作为实现权利要求的示例形式公开的。

Claims (10)

1.一种计算机实现的方法,包括:
显示具有问题描述用户输入机制的问题描述用户界面显示,所述问题描述用户输入机制接收指示所部署的计算机***中的技术问题的用户问题描述输入;
自动接收指示所部署的计算机***的环境的诊断环境数据;
基于所述诊断环境数据来自动生成与所部署的计算机***的环境相对应的诊断环境;
接收生成针对所述诊断环境中的所述技术问题的修复的开发者输入;以及
存储所述修复以供应用于所部署的计算机***。
2.如权利要求1所述的计算机实现的方法,其特征在于,还包括:
在自动生成所述诊断环境之后,生成用户再现显示,所述用户再现显示接收在所述诊断环境中再现所述技术问题的用户再现输入。
3.如权利要求2所述的计算机实现的方法,其特征在于,还包括:
记录所述用户再现输入以供开发者审阅。
4.如权利要求2所述的计算机实现的方法,其特征在于,还包括:
接收确认所述技术问题被再现在所述诊断环境中的用户输入。
5.如权利要求2所述的计算机实现的方法,其特征在于,自动生成诊断环境包括:
生成再现所部署的计算机***的计算机***实例,以及显示接收用于将所述修复应用于所述诊断环境的用户输入的用户应用输入机制。
6.如权利要求5所述的计算机实现的方法,其特征在于,还包括:
显示接收用户验证输入的用户验证输入机制,所述用户验证输入机制验证所述修复是否解决了所述诊断环境中的所述技术问题,其中显示用户验证输入机制包括显示模仿所部署的计算机***中的屏幕的屏幕,以及接收在所述诊断环境中执行各步骤的用户输入,在所述步骤期间在所部署的计算机***中遇到了所述技术问题。
7.如权利要求5所述的计算机实现的方法,其特征在于,自动生成诊断环境包括:
基于所述诊断环境数据来供应虚拟计算机***实例;
将所述用户映射到所述虚拟计算机***实例,以使所述用户能访问所述虚拟计算机***实例;以及
将技术支持人员映射到所述虚拟计算机***,以使所述技术支持人员能访问所述虚拟计算机***实例。
8.如权利要求1所述的计算机实现的方法,其特征在于,还包括:
在接收到所述用户描述输入和所述诊断环境数据之后,查询修复服务以标识能被应用于所部署的计算机***的可能相关的修复;
显示所述可能相关的修复以供所述用户应用于所部署的计算机***;以及
如果所述用户将所述可能相关联的修复之一应用于所部署的计算机***,则向所述用户发送用于在所应用的可能相关的修复没有解决所述技术问题的情况下返回到用于解决所述技术问题的过程流的链接。
9.一种***,包括:
问题报告组件,所述问题报告组件接收描述在所部署的计算***实例中遇到的技术问题的用户输入;
虚拟环境服务,所述虚拟环境服务基于从所部署的计算***实例自动收集的环境数据来生成虚拟计算***实例;
虚拟机控制***,所述虚拟机控制***接收在所述虚拟计算***实例上再现所述技术问题的再现用户输入并接收生成针对所述虚拟计算机***实例上的所述技术问题的修复的开发者输入;以及
计算机处理器,所述计算机处理器是所述***的功能部分且由所述问题报告组件、所述虚拟环境服务、以及所述虚拟机控制***激活以促成接收用户输入、生成所述虚拟计算***实例以及接收所述再现用户输入和所述开发者输入。
10.一种存储计算机可读指令的计算机可读存储介质,所述计算机可读指令在被计算机执行时使得所述计算机执行各步骤,包括:
显示具有问题描述用户输入机制的问题描述用户界面显示,所述问题描述用户输入机制接收指示所部署的计算机***实例中的技术问题的用户问题描述输入;
自动接收指示所部署的计算机***实例的环境的诊断环境数据;
基于所述诊断环境数据来自动生成与所部署的计算机***实例的环境相对应的、模仿所部署的计算机***实例的诊断环境;
生成用户再现显示,所述用户再现显示接收验证所述技术问题能在所述诊断环境中再现的用户再现输入;
接收生成针对所述诊断环境中的所述技术问题的修复的开发者输入;以及
存储所述修复以供应用于所部署的计算机***实例。
CN201480062651.1A 2013-11-14 2014-11-12 用于自动生成虚拟环境的方法和*** Active CN105765539B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/080,180 US9405645B2 (en) 2013-11-14 2013-11-14 User support experience with automatically generated virtual environment
US14/080,180 2013-11-14
PCT/US2014/065100 WO2015073462A1 (en) 2013-11-14 2014-11-12 User support experience with automatically generated virtual environment

Publications (2)

Publication Number Publication Date
CN105765539A true CN105765539A (zh) 2016-07-13
CN105765539B CN105765539B (zh) 2018-11-09

Family

ID=52023618

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480062651.1A Active CN105765539B (zh) 2013-11-14 2014-11-12 用于自动生成虚拟环境的方法和***

Country Status (10)

Country Link
US (2) US9405645B2 (zh)
EP (1) EP3069250B1 (zh)
JP (1) JP6426732B2 (zh)
KR (1) KR102303004B1 (zh)
CN (1) CN105765539B (zh)
AU (1) AU2014348826B2 (zh)
CA (1) CA2928458A1 (zh)
MX (1) MX371268B (zh)
RU (1) RU2673008C2 (zh)
WO (1) WO2015073462A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109416661A (zh) * 2016-11-14 2019-03-01 株式会社日立制作所 对策验证辅助***及方法
CN113076248A (zh) * 2021-04-08 2021-07-06 马上消费金融股份有限公司 一种应用处理方法、装置、设备及可读存储介质

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9405645B2 (en) * 2013-11-14 2016-08-02 Microsoft Technology Licensing, Llc User support experience with automatically generated virtual environment
US10241881B2 (en) * 2014-12-22 2019-03-26 Schneider Electric USA, Inc. Energy services recommendation engine
US10275775B2 (en) 2015-12-10 2019-04-30 Microsoft Technology Licensing, Llc Context generation for routing on-demand services
US9686406B1 (en) 2015-12-10 2017-06-20 Microsoft Technology Licensing, Llc Issue detection for routing assistance requests
US9654639B1 (en) * 2015-12-10 2017-05-16 Microsoft Technology Licensing, Llc Resource partitioning for routing on-demand services
US10223174B2 (en) * 2015-12-10 2019-03-05 Microsoft Technology Licensing, Llc Tenant engagement signal acquisition and exposure
WO2017123481A1 (en) * 2016-01-14 2017-07-20 Microsoft Technology Licensing, Llc Issue detection for routing assistance requests
US20170269988A1 (en) * 2016-03-21 2017-09-21 Intel Corporation Determining problem solutions based on system state data
US10809989B2 (en) 2017-05-05 2020-10-20 Servicenow, Inc. Service release tool
US10310966B1 (en) * 2017-06-01 2019-06-04 Amazon Technologies, Inc. Automatic test stack creation via production system replication
US11468134B2 (en) 2018-09-26 2022-10-11 International Business Machines Corporation Provisioning a customized software stack for network-based question and answer services
RU2739873C2 (ru) * 2019-02-07 2020-12-29 Акционерное общество "Лаборатория Касперского" Способ поиска пользователей, соответствующих требованиям
US10949282B1 (en) 2019-08-22 2021-03-16 Microsoft Technology Licensing, Llc Triggering diagnostic data generation and aggregation across multiple systems to reduce computing resources
US11841971B2 (en) * 2020-09-29 2023-12-12 Oracle International Corporation Systems and methods for customer data handling
US20230090168A1 (en) * 2021-09-21 2023-03-23 International Business Machines Corporation Predicting acceptance of features and functions of software product
US11888595B2 (en) * 2022-03-17 2024-01-30 PagerDuty, Inc. Alert resolution based on identifying information technology components and recommended actions including user selected actions

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090150291A1 (en) * 2007-12-10 2009-06-11 Dell Products L.P. Customer Support Using Virtual Machines
CN101739333A (zh) * 2008-11-25 2010-06-16 国际商业机器公司 应用程序的调试方法、调试工具及调试装置
CN101887393A (zh) * 2010-07-01 2010-11-17 中兴通讯股份有限公司 基于半虚拟化技术的设备故障复现方法及***
CN102129408A (zh) * 2011-04-14 2011-07-20 电子科技大学 一种基于记录回放技术的嵌入式软件调试装置和方法

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6298457B1 (en) 1997-10-17 2001-10-02 International Business Machines Corporation Non-invasive networked-based customer support
US6615240B1 (en) * 1998-12-18 2003-09-02 Motive Communications, Inc. Technical support chain automation with guided self-help capability and option to escalate to live help
US6742141B1 (en) * 1999-05-10 2004-05-25 Handsfree Networks, Inc. System for automated problem detection, diagnosis, and resolution in a software driven system
US6658598B1 (en) * 2000-02-17 2003-12-02 Motive Communications, Inc. Technical support chain automation with guided self-help capability using active content assertions
US20020059377A1 (en) * 2000-11-14 2002-05-16 Jagadish Bandhole Collaborative computing systems using dynamic computing environments
US7308492B2 (en) * 2002-10-02 2007-12-11 Sony Corporation Method and apparatus for use in remote diagnostics
JP4763336B2 (ja) * 2005-05-06 2011-08-31 富士通株式会社 保守業務支援プログラム
US8738750B2 (en) 2005-12-21 2014-05-27 Imran Chaudhri System and method for efficient replication of and access to application specific environments and data
US8271402B2 (en) * 2006-12-30 2012-09-18 Troppus Software Corporation Technical support agent and technical support service delivery platform
US9798560B1 (en) 2008-09-23 2017-10-24 Gogrid, LLC Automated system and method for extracting and adapting system configurations
US8655713B2 (en) * 2008-10-28 2014-02-18 Novell, Inc. Techniques for help desk management
US8776028B1 (en) * 2009-04-04 2014-07-08 Parallels IP Holdings GmbH Virtual execution environment for software delivery and feedback
JP5646233B2 (ja) * 2010-07-21 2014-12-24 株式会社日立システムズ 仮想イメージを利用した障害対応システム
US8930769B2 (en) * 2010-08-13 2015-01-06 International Business Machines Corporation Managing operating system deployment failure
RU2453905C1 (ru) * 2011-01-21 2012-06-20 Государственное казенное образовательное учреждение высшего профессионального образования Академия Федеральной службы охраны Российской Федерации (Академия ФСО России) Способ проверки функционирования протоколов информационных систем
JP6024126B2 (ja) * 2012-03-02 2016-11-09 株式会社リコー 障害対応支援装置、障害対応支援システム、障害対応支援方法、及び障害対応支援プログラム
US9015714B2 (en) 2012-11-27 2015-04-21 Citrix Systems, Inc. Diagnostic virtual machine created to monitor cluster of hypervisors based on user requesting assistance from cluster administrator
US20140336795A1 (en) * 2013-05-09 2014-11-13 Rockwell Automation Technologies, Inc. Remote assistance via a cloud platform for industrial automation
US9626176B2 (en) * 2013-09-13 2017-04-18 Microsoft Technology Licensing, Llc Update installer with technical impact analysis
US9830142B2 (en) * 2013-09-13 2017-11-28 Microsoft Technology Licensing, Llc Automatic installation of selected updates in multiple environments
US9665359B2 (en) * 2013-09-13 2017-05-30 Microsoft Technology Licensing, Llc Automatically resolving conflicts after installation of selected updates in a computer system
US9405645B2 (en) * 2013-11-14 2016-08-02 Microsoft Technology Licensing, Llc User support experience with automatically generated virtual environment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090150291A1 (en) * 2007-12-10 2009-06-11 Dell Products L.P. Customer Support Using Virtual Machines
CN101739333A (zh) * 2008-11-25 2010-06-16 国际商业机器公司 应用程序的调试方法、调试工具及调试装置
CN101887393A (zh) * 2010-07-01 2010-11-17 中兴通讯股份有限公司 基于半虚拟化技术的设备故障复现方法及***
CN102129408A (zh) * 2011-04-14 2011-07-20 电子科技大学 一种基于记录回放技术的嵌入式软件调试装置和方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109416661A (zh) * 2016-11-14 2019-03-01 株式会社日立制作所 对策验证辅助***及方法
CN109416661B (zh) * 2016-11-14 2021-09-24 株式会社日立制作所 对策验证辅助***及方法
CN113076248A (zh) * 2021-04-08 2021-07-06 马上消费金融股份有限公司 一种应用处理方法、装置、设备及可读存储介质
CN113076248B (zh) * 2021-04-08 2021-11-30 马上消费金融股份有限公司 一种应用处理方法、装置、设备及可读存储介质

Also Published As

Publication number Publication date
CN105765539B (zh) 2018-11-09
RU2016118580A3 (zh) 2018-07-09
CA2928458A1 (en) 2015-05-21
US20150135013A1 (en) 2015-05-14
JP2017500630A (ja) 2017-01-05
KR20160084391A (ko) 2016-07-13
AU2014348826B2 (en) 2019-07-11
KR102303004B1 (ko) 2021-09-15
JP6426732B2 (ja) 2018-11-21
US9886675B2 (en) 2018-02-06
EP3069250A1 (en) 2016-09-21
US9405645B2 (en) 2016-08-02
MX371268B (es) 2020-01-23
AU2014348826A1 (en) 2016-05-19
MX2016006225A (es) 2016-08-08
RU2016118580A (ru) 2017-11-16
EP3069250B1 (en) 2017-10-11
US20160307129A1 (en) 2016-10-20
WO2015073462A1 (en) 2015-05-21
RU2673008C2 (ru) 2018-11-21

Similar Documents

Publication Publication Date Title
CN105765539A (zh) 具有自动生成的虚拟环境的用户支持体验
CN105229634B (zh) 数据迁移框架
JP6165922B2 (ja) バグクリアリングハウス
CN105612495B (zh) 在计算机***中安装所选更新之后自动解决冲突
CN105612497B (zh) 所选更新在多个环境中的自动安装
CN105264492B (zh) ***行为的自动发现
CN106233252A (zh) 用于定制软件的动态更新安装器
CN105723337B (zh) 用于从交互式开发环境递增地编译软件制品的方法和***
CN105612496B (zh) 用于基于存储的生命周期信息来自动推荐更新的方法和***
CN105531658A (zh) 角色定制的工作空间
CN106471517A (zh) 对显示元素的因用户而异的可视化
CN105264554A (zh) 移动花费捕捉和报告
CN105830019A (zh) 用于基本模型定制的集成环境
CN105229679A (zh) 生存周期产品分析
CN104737124A (zh) 用于提交服务的业务元数据的门户
CN105229614A (zh) 多承租人数据中心内的诊断存储
CN104272254A (zh) 用户界面web服务
CN105339957A (zh) 显示实体的不同视图
CN106164851A (zh) 基于对已实现的过程进行过程建模的计算机***的自动配置
CN106062789A (zh) 用于在事务中捕捉信息的图像标记
CN105393213A (zh) 便携式业务逻辑
CN106062689A (zh) 知晓上下文的命令
CN105940419A (zh) 具有可选工作空间表示的控制板
CN116346897A (zh) 用于注册设备的方法和***

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant