ОПЫТ ПОДДЕРЖКИ ПОЛЬЗОВАТЕЛЕЙ С АВТОМАТИЧЕСКИ ГЕНЕРИРУЕМОЙ ВИРТУАЛЬНОЙ СРЕДОЙ
USER SUPPORT EXPERIENCE WITH AUTOMATICALLY GENERATED VIRTUAL ENVIRONMENT

УРОВЕНЬ ТЕХНИКИ
[0001] В настоящее время широко используются компьютерные системы многочисленных типов. Некоторые такие системы являются большими и могут включать в себя тысячи разных видов и многочисленные разные потоки работ, а также большое количество разных моделей данных, среди прочего.
[0002] Некоторые такие компьютерные системы включают в себя коммерческие системы, такие как системы планирования ресурсов предприятия (ERP), системы управления взаимоотношениями с заказчиками (CRM), системы бизнес-приложения (LOB), системы баз данных, среди многих других. Эти типы систем часто настраиваются в соответствии с требованиями заказчика, и некоторые настраиваются в очень большой степени, когда она разворачиваются в организации.
[0003] Например, производитель программного обеспечения может предоставлять базовую компьютерную систему, которая затем модифицируется разработчиками, такими как реселлеры, добавляющие функции, и независимыми поставщиками программного обеспечения. Модифицированная версия компьютерной системы затем может быть окончательно реализована в организации (такой как коммерческая деятельность). Компьютерная система часто дополнительно модифицируется во время реализации. Также, если компьютерная система окончательно развернута, она может даже дополнительно модифицироваться по прошествии длительного времени. Например, конечные пользователи (или их администраторы) могут загружать исправления, накопленные обновления или выполнять другие модификации, настройки или расширения вычислительной среды, где развернута вычислительная система. Это часто приводит к тому, что каждый экземпляр компьютерной системы является уникальным, так как окончательная реализация может быть очень тесно связана с заказчиком, промышленностью, регионом и режимом работы данного предприятия.
[0004] Это может приводить к проблемам, когда пользователь компьютерной системы пытается получить техническую поддержку, чтобы рассмотреть проблему с компьютерной системой. В настоящее время опыт поддержки для пользователя может быть довольно обременительным и отнимающим много времени. Хотя опыт поддержки может принимать различные формы, одна общая форма включает в себя то, что пользователь сначала вызывает по телефону специалиста службы технической поддержки. Пользователь соединяется с инженером службы технической поддержки, который часто задает пользователю многочисленные разные вопросы, чтобы получить некоторое понятие о симптомах технической проблемы, с которой столкнулся пользователь. Когда это выполнено, тогда инженер службы технической поддержки может попытаться воспроизвести проблему, чтобы она могла быть исправлена.
[0005] Такие компьютерные системы часто настолько сложные, что простое воспроизведение проблемы может быть очень сложным. Количество информации, которое обычно необходимо, чтобы точно воспроизвести проблему, может быть очень большое. Часто, эта информация собирается не вся во время первоначального телефонного обсуждения. Между тем, персонал службы технической поддержки продолжает собирать дополнительную информацию у пользователя посредством дополнительных телефонных звонков и посредством передачи информации другими способами. Часто, эта фаза опыта поддержки включает в себя многочисленные обмены сообщениями электронной почты между пользователем и персоналом службы технической поддержки, просто чтобы разъяснить точную сущность проблемы и чтобы воспроизвести среду, которую имеет пользователь, до такой степени, что проблема может быть рассмотрена персоналом службы технической поддержки.
[0006] Если инженер службы технической поддержки наконец может воспроизвести проблему, она описывается и часто посылается другой команде разработчиков, чтобы создать исправление для проблемы. Разработчикам, которые пытаются исправить проблему, может потребоваться еще больше информации от пользователя, который сообщил о проблеме, что приводит к вносящему ясность общению между пользователем и разработчиком. Когда разработчик наконец считает, что он или она разработали исправление для проблемы, пользователь уведомляется (часто по электронной почте), что исправление было разработано, и что оно может быть применено пользователем.
[0007] Иногда, даже после того как исправление применено пользователем, оно не исправляет проблемы, о которой сообщил пользователь. Таким образом, повторяется весь процесс (или по меньшей мере его части). Это может быть довольно разочаровывающим для пользователя.
[0008] Вышеприведенное обсуждение представлено просто для общей исходной информации и, как предполагается, не используется в качестве средства при определении объема заявленного объекта изобретения.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
[0009] Услуга виртуальной среды автоматически получает собранную диагностическую информацию от развернутого экземпляра компьютерной системы и автоматически генерирует воспроизведение среды экземпляра компьютерной системы, основываясь на собранных диагностических данных. Взаимодействия пользователя с виртуальной диагностической средой могут записываться для идентификации технической проблемы с развернутым экземпляром компьютерной системы. Исправление для проблемы применяется в виртуальной диагностической среде, так что оно может быть верифицировано пользователем перед применением его к развернутому экземпляру.
[0010] Данный раздел «Сущность изобретения» предназначен для того, чтобы ввести выбор понятий в упрощенном виде, которые дополнительно описываются ниже в разделе «Подробное описание». Этот раздел «Сущность изобретения» не предназначен для определения ключевых признаков или существенных признаков заявленного объекта изобретения, он также не предназначен для использования в качестве средства при определении объема заявленного объекта изобретения. Заявленный объект изобретения не ограничивается реализациями, которые решают какой-либо или все недостатки, отмеченные в разделе «Уровень техники».
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0011] Фиг.1A и 1B (вместе фиг.1) представляют собой блок-схему одной иллюстративной архитектуры поддержки.
[0012] Фиг.2A-2C (вместе фиг.2) изображают блок-схему последовательности операций, иллюстрирующую один вариант осуществления работы архитектуры, показанной на фиг.1, при поддержке пользователя.
[0013] Фиг.3A-3Z-1 изображают отображения примерного пользовательского интерфейса, который может генерироваться.
[0014] Фиг.4 представляет собой блок-схему одного варианта осуществления архитектуры, показанной на фиг.1, развернутой в архитектуре облачных вычислений.
[0015] Фиг.5-10 изображают различные варианты осуществления мобильных устройств.
[0016] Фиг.11 представляет собой блок-схему одной иллюстративной вычислительной среды.
ПОДРОБНОЕ ОПИСАНИЕ
[0017] Фиг.1A и 1B вместе упоминаются в данном документе как фиг.1. Фиг.1 представляет собой блок-схему одной иллюстративной архитектуры 100 поддержки. Архитектура 100 поддержки изображает пользователя 102, взаимодействующего с отображениями 104 пользовательского интерфейса, сгенерированными пользовательским устройством 106. Отображения 104 пользовательского интерфейса включают в себя механизмы пользовательского ввода, с которыми пользователь 102 может взаимодействовать, чтобы управлять и манипулировать системой 108 предприятия (такой как коммерческая система).
[0018] Фиг.1 также изображает, что архитектура 100 включает в себя систему 110 жизненного цикла, которая взаимодействует с услугой 112 виртуальной среды для генерирования виртуальных диагностических сред в системе 114 виртуального управления. Инженеры 116 службы технической поддержки и разработчики 118 могут взаимодействовать с виртуальными диагностическими средами в системе 114 для генерирования исправления 120, которое может быть применено к системе 108 предприятия для исправления технической проблемы, о которой сообщил пользователь 102. Перед более подробным описанием работы архитектуры 100 представлено краткое описание некоторых элементов в архитектуре 100.
[0019] В варианте осуществления, показанном на фиг.1, пользовательским устройством 106 может быть большое многообразие устройств разного типа, таких как настольный компьютер, портативный компьютер, мобильное устройство (такое как планшет или смартфон), среди прочего. Оно иллюстративно включает в себя процессор 122 в хранилище 124 данных, которое более подробно описано ниже.
[0020] Системой 108 предприятия может быть большое многообразие систем предприятия разных типов, которые развертываются для организации. Настоящее описание продолжается в отношении системы 108 предприятия, которой является коммерческая система (такая как система CRM, система ERP, система LOB и т.п.). Это описание представлено только ради примера, и также могут быть другие системы.
[0021] Фиг.1 изображает, что система 108 иллюстративно включает в себя процессор 126, хранилище 128 данных, компонент 130 сбора диагностических данных и другие компоненты 132. В одном варианте осуществления хранилище 128 данных хранит коммерческие данные 134, номера 136 версий для различных элементов, развернутых в коммерческой системе 108, список обновлений 138, которые были применены к коммерческой системе 108, список исправлений 140, которые были применены к коммерческой системе 108, и оно также может хранить другую информацию. В одном варианте осуществления коммерческие данные 134 включают в себя объекты, рабочие потоки и другую информацию. Коммерческие приложения (такие как приложения по ведению общей бухгалтерской книги, приложения инвентаризации, биллинг-приложения и т.п.) работают с данными и рабочими потоками в хранилище 128 данных, позволяя пользователю 102 выполнять задачи, активность, операции и другие действия, чтобы проводить коммерческую деятельность организации, в которой развернута коммерческая система 108.
[0022] Компонент 130 сбора диагностических данных, когда он запрошен, иллюстративно собирает многообразные разные типы диагностических данных, которые могут использоваться для идентификации сконфигурированной среды коммерческой системы 108. Диагностическая информация иллюстративно может использоваться для генерирования виртуальной диагностической среды, как описано ниже в отношении фиг. 2A-2C.
[0023] Система 110 жизненного цикла иллюстративно включает в себя множество разных услуг 142-144, которые могут использоваться различными группами для идентификации, отслеживания и решения проблем, которые возникают во время различных этапов жизненного цикла проекта (например, от предварительной продажи до реализации и обслуживания). Например, когда коммерческая система 108 разрабатывается, строится, развертывается и тестируется, различные услуги 142-144 иллюстративно позволяют разработчикам, а также организации пользователя, отслеживать проблемы, которые возникают, и определять, удовлетворяются ли ожидания заказчика, когда окончательный экземпляр коммерческой системы 108 будет развернут в организации. Пользователь 102 может иллюстративно зарегистрироваться в системе 110 жизненного цикла для просмотра различной информации, предоставляемой услугами 142-144. Компонент 130 сбора диагностических данных может быть развернут или в коммерческой системе 108, или в системе 110 жизненного цикла, или ее часть может быть развернута в обоих системах. Он используется вместе с услугами 142-144 для получения информации о диагностической среде от конкретного экземпляра 108 коммерческой системы. Компонент 143 предоставления отчета о проблеме позволяет пользователю предоставлять отчет о проблеме, которую пользователь имеет с коммерческой системой 108. Компонент 149 воспроизведения проблемы позволяет пользователю воспроизводить проблему в диагностической среде, и компонент 151 верификации проблемы позволяет пользователю верифицировать, что проблема исправлена в диагностической среде. Они также более подробно описаны ниже.
[0024] Услуга 112 виртуальной среды иллюстративно включает в себя генератор 146 виртуальной машины и компонент 148 отображения. Генератор 146 виртуальной машины иллюстративно получает собранные данные 141 о среде (которые могут быть собраны компонентом 130 сбора диагностических данных) и генерирует виртуальную машину в системе 114 управления виртуальной машиной, так что он воспроизводит среду коммерческой системы 108. Система 114 управления виртуальной машиной включает в себя один или несколько процессоров 154. Виртуальные машины указываются виртуальным экземпляром 150 коммерческой системы и виртуальным экземпляром 152 коммерческой системы. Компонент 148 отображения иллюстративно генерирует отображения пользователя и другие отображения между виртуальными экземплярами 150-152 в системе 114 и пользователями 102 (а также инженерами 116 службы технической поддержки и разработчиками 118). Отображения могут использоваться для доступа к виртуальным экземплярам.
[0025] Перед описанием подробной работы архитектуры 100 для улучшения понимания представляется краткий обзор работы. Пользователь 102 сначала обнаруживает техническую проблему с коммерческой системой 108 (система 108 не функционирует так, как требуется). Это может происходить различным образом, так что, когда пользователь 102 использует или развертывает или иным образом взаимодействует с коммерческой системой 108. Пользователь 102 затем регистрируется в системе 110 жизненного цикла для предоставления отчета о проблеме. Компонент 143 предоставления отчета о проблеме иллюстративно генерирует отображения 104 пользовательского интерфейса с механизмами пользовательского ввода, с которыми пользователь 102 может взаимодействовать, чтобы идентифицировать и описать проблему. Система 110 затем использует компонент 130 сбора диагностических данных для сбора данных о среде, которые могут использоваться для воспроизведения среды, в которой развертывается коммерческая система 108. Система 110 предоставляет собранные данные 141 о среде генератору 146 виртуальной машины, который генерирует виртуальный экземпляр коммерческой системы (например, экземпляр 150) в качестве виртуальной диагностической среды, которая воспроизводит среду, в которой выполняется коммерческая система 108 (без фактических данных для системы 108). Компонент 148 отображения отображает пользователя 102 (и других авторизованных пользователей) на виртуальный экземпляр 150 коммерческой системы, так что они могут позже выполнить к ней доступ. Компонент 143 предоставления отчета о проблеме затем генерирует уведомление пользователю 102, что был сгенерирован виртуальный экземпляр 150 коммерческой системы. Пользователь 102 затем выполняет доступ к виртуальной коммерческой системе 150 через компонент 149 и воспроизводит техническую проблему, отчет о которой предоставил пользователь 102. Компонент 155 предоставления отчета может записывать действия пользователя при воспроизведении технической проблемы. Инженеры 116 службы технической поддержки затем могут выполнять обращение к записанной или описанной проблеме, которая была представлена пользователем 102, и дополнительно определяют проблему для разработчиков 118. Разработчики 118 затем могут выполнять доступ к виртуальному экземпляру 150 коммерческой системы для генерирования исправления 120, которое исправляет техническую проблему. Система 110 затем уведомляет пользователя 102, что исправление было сгенерировано. Пользователь 102 затем может снова выполнить обращение к виртуальному экземпляру 150 коммерческой системы (через компонент 151) с примененным исправлением, чтобы верифицировать, что техническая проблема действительно была решена. Если это так, пользователь 102 иллюстративно загружает исправление 120 и применяет его к коммерческой системе 108 для исправления технической проблемы.
[0026] Более подробное описание работы архитектуры 100 теперь предоставляется в отношении блок-схемы последовательности операций на фиг.2A-2C (вместе упоминаемых как фиг.2). Фиг. 3A-3Z-1 отображают отображения примерных пользовательских интерфейсов, которые могут быть сгенерированы системой 110. Фиг.2-3Z-1 ниже описываются в связи с блок-схемой на фиг.1.
[0027] Компонент 145 пользовательского интерфейса сначала иллюстративно генерирует отображения пользовательского интерфейса, так что пользователь 102 может зарегистрироваться в системе 110 и идентифицировать новую задачу или техническую проблему. Это указывается блоком 200 на блок-схеме последовательности операций на фиг.2. Компонент 145 пользовательского интерфейса затем иллюстративно принимает вводы идентификации заказчика, которые идентифицируют проблему. Это указывается блоком 202. В качестве примера, пользовательские вводы могут включать в себя информацию 204 о пользователе и описание 206 проблемы, или другую информацию 208. Также, как часть идентификации проблемы в блоке 202 на фиг.2, система 110 может иллюстративно выполнить сбор диагностических данных, используя компонент 130 сбора диагностических данных, чтобы получить диагностические данные, описывающие среду, в которой развернута коммерческая система 108.
[0028] Фиг.3A изображает один вариант осуществления отображения пользовательского интерфейса, которое может отображаться системой 110, и которое позволяет пользователю 102 инициировать процесс регистрации. Например, пользователь 102 может привести в действие клавишу 300 для начала регистрации. Фиг.3B изображает один вариант осуществления, в котором пользователь 102 иллюстративно предоставляет информацию аутентификации (такую как имя пользователя и пароль) и т.д. В качестве примера, пользователь 102 может предоставить буквенно-цифровые вводы в текстовых окнах 302, чтобы это сделать. Пользователь 102 затем может привести в действие механизм 304 пользовательского ввода для входа в систему для входа в систему 110.
[0029] Компонент 145 пользовательского интерфейса затем иллюстративно генерирует отображение пользовательского интерфейса, такое как отображение 306, показанное на фиг.3C. Отображение 306 иллюстративно включает в себя многообразные механизмы пользовательского ввода, включая механизм 308 пользовательского ввода проектов. Когда пользователь приводит в действие механизм 308 пользовательского ввода проектов, иллюстративно выполняется навигация пользователя на отображение проектов, такое как отображение 310, показанное на фиг.3D. Отображение 310 проектов может иллюстративно включать в себя многообразные дополнительные механизмы пользовательского ввода, которые могут быть приведены в действие пользователем, чтобы выполнить навигацию к более подробной информации о многообразных разных элементах.
[0030] В одном варианте осуществления механизмы пользовательского ввода иллюстративно включают в себя механизм 312 пользовательского ввода, который соответствует «проблемам поддержки». Когда пользователь приводит в действие механизм 312 пользовательского ввода, компонент 145 пользовательского интерфейса иллюстративно выполняет навигацию пользователя на отображение пользовательского интерфейса, такое как отображение 314 пользовательского интерфейса, показанное на фиг.3E. Отображение 314 пользовательского интерфейса иллюстративно включает в себя набор механизмов 316 пользовательского ввода, которые соответствуют проблемам, которые в настоящий момент решены для коммерческой системы 108. В одном варианте осуществления механизмы 316 пользовательского ввода включают в себя механизм 318 пользовательского ввода для активных проблем. Когда пользователь приводит в действие механизм 318, иллюстративно выполняется навигация пользователя к более подробной информации об активных проблемах. Механизмы 316 пользовательского ввода также иллюстративно включают в себя механизм 320 пользовательского ввода для воспроизведения. Когда пользователь приводит в действие механизм 320, иллюстративно выполняется навигация пользователя к более подробной информации о проблемах, которые в настоящий момент воспроизводятся (или которые должны быть воспроизведены), так что они могут быть представлены разработчикам для их исследования и исправления.
[0031] Механизмы 316 пользовательского ввода также иллюстративно включают в себя механизм 322 пользовательского ввода для верификации. Когда пользователь приводит в действие механизм 322 пользовательского ввода, иллюстративно выполняется навигация пользователя к набору отображений пользовательского интерфейса, которые позволяют пользователю верифицировать, что исправления действительно исправили или решили конкретную проблему, отчет о которой был предоставлен.
[0032] Механизм 316 пользовательского ввода также иллюстративно включает в себя механизм 324 пользовательского ввода всех проблем и механизм 326 пользовательского ввода для регистрации новой проблемы. Когда пользователь приводит в действие механизм 324, иллюстративно выполняется навигация пользователя на отображение, которое показывает более подробную информацию о всех проблемах, которые представлены в настоящий момент. Когда пользователь приводит в действие механизм 326, иллюстративно выполняется навигация пользователя на набор отображений пользовательского интерфейса, которые позволяют пользователю зарегистрировать новую проблему с коммерческой системой 108, так что она может быть исследована и исправлена.
[0033] Фиг.3F изображает один вариант осуществления отображения 328 пользовательского интерфейса, которое позволяет пользователю начать описание новой проблемы. Отображение 328 пользовательского интерфейса иллюстративно включает в себя указатель 330 этапа, который показывает пользователю этап, на котором находится в данный момент настоящая проблема. Указатель 330 этапа иллюстративно включает в себя новый указатель 332, который показывает, что новой проблемой является предоставленная недавно отчетом проблема. Указатель 334 воспроизведения иллюстративно указывает, что проблема воспроизводится (или должна быть воспроизведена) пользователем, так что она может быть исследована и исправлена. Указатель 336 активности указывает, что настоящая проблема является активной (и над которой работает персонал службы технической поддержки). Указатель 338 верификации указывает, что исправление было сгенерировано для этой проблемы, и пользователь может иллюстративно верифицировать, что оно работает, в виртуальной диагностической среде, созданной для этой проблемы. Указатель 340 закрытия указывает, что проблема была закрыта.
[0034] Отображение 328 пользовательского интерфейса также иллюстративно включает в себя механизм 342 пользовательского ввода среды, который позволяет пользователю идентифицировать конкретную среду, в которой развернута коммерческая система 108. В варианте осуществления, показанном на фиг.3F, механизм 342 представляет собой ниспадающее меню, которое позволяет пользователю выбрать механизм 344 пользовательского ввода промышленной эксплуатации для указания, что система 108 находится в промышленной эксплуатации. Пользователь также может привести в действие механизм 346 пользовательского ввода UAT для указания, что система 108 развернута в среде тестирования на приемлемость для пользователя (UAT), и механизм 348 пользовательского ввода тестирования указывает, что коммерческая система 108 все еще развернута в среде тестирования. Конечно, также могут использоваться другие механизмы.
[0035] Фиг.3G изображает другой вариант осуществления отображения 350 пользовательского интерфейса. Отображение 350 пользовательского интерфейса может генерироваться в ответ на выбор пользователем конкретной среды, используя механизм 342 пользовательского ввода.
[0036] Фиг.3G изображает, что компонент 130 сбора диагностических данных был выполнен и собрал набор диагностических данных, показанный, в целом, позицией 352 на фиг.3G. Собранные данные (141 на фиг.1) могут включать в себя большое многообразие разных видов информации, которая может быть использована для воспроизведения диагностической среды, которая является такой же, что и среда коммерческой системы 108. Эта информация может включать в себя, например, серверную операционную систему, используемую в коммерческой системе 108, версию базы данных, используемую в системе 108, версию платформы приложения, используемую для выполнения управления контентом и документами, главную версию коммерческой системы 108, идентификацию обновлений 138, которые были применены к коммерческой системе 108, любые исправления, которые уже были применены к системе 108, среди многих других. Прием данных 141 среды пользователя от компонента 130 сбора диагностических данных указывается блоком 210 на блок-схеме последовательности операций на фиг.2. Серверная операционная система указывается блоком 212, версия базы данных указывается блоком 214, версия платформы приложения указывается блоком 216, версия коммерческой системы указывается блоком 218, установленные обновления указываются блоком 220, установленные исправления указываются блоком 222, и другая информация указывается блоком 224. Некоторая диагностическая информация показана, в основном, позицией 352 на фиг.3G.
[0037] Отображение 350 пользовательского интерфейса также иллюстративно включает в себя механизм 354 пользовательского ввода установленных моделей. Когда пользователь приводит в действие механизм 354 пользовательского ввода, иллюстративно выполняется навигация пользователя на другое отображение пользовательского интерфейса, которое отображает различные модели, которые установлены в коммерческой системе 108.
[0038] Например, фиг.3H изображает один вариант осуществления отображения 356 пользовательского интерфейса, которое может генерироваться, чтобы это показать. Фиг.3H включает в себя всплывающее отображение (изображение) 358, которое перечисляет различные модели, которые установлены в коммерческой системе 108. В одном варианте осуществления модели перечисляются по идентификационному номеру, уровню, где они находятся, имени модели, издателю модели, номеру версии и по тому, была ли подписана модель, а также по описанию модели. Если пользователь просмотрел установленные модели, пользователь может закрыть всплывающее отображение 358 и привести в действие следующий механизм 360 пользовательского ввода на отображении пользовательского интерфейса на фиг.3G.
[0039] Иллюстративно оно выполняет навигацию пользователя на другое отображение пользовательского интерфейса описания проблемы, такое как отображение 362 пользовательского интерфейса на фиг.3J. Отображение 362 пользовательского интерфейса отображает набор механизмов 364 пользовательского ввода, которые позволяют пользователю идентифицировать его или ее и относящуюся информацию (такую как временную зону пользователя, телефонный номер, адрес электронной почты, главный и второстепенный языки поддержки, регион страны, где проживает пользователь, и т.д.).
[0040] После того как пользователь введет эту информацию, пользователь иллюстративно приводит в действие следующий механизм 366 пользовательского ввода, который выполняет навигацию пользователя на отображение пользовательского интерфейса, которое позволяет пользователю описать более подробно проблему. Фиг.3J изображает один вариант осуществления отображения 368 пользовательского интерфейса, которое может генерироваться, чтобы это сделать. Отображение 368 пользовательского интерфейса иллюстративно включает в себя механизм 360 пользовательского ввода, который позволяет пользователю дать название проблеме, и набор механизмов 372 пользовательского ввода, которые позволяют пользователю идентифицировать тему и подтему для проблемы. Механизм 374 ввода степени серьезности позволяет пользователю идентифицировать степень серьезности, ассоциированную с этим уровнем. Пользователю также иллюстративно предоставляется механизм 376 ввода описания проблемы, который позволяет пользователю описать проблему, используя текст. Кроме того, механизм 378 пользовательского ввода позволяет пользователю описать фактический результат в сравнение с ожидаемым результатом, когда пользователь выполняет данное действие в коммерческой системе 108, и которое идентифицирует проблему. Механизм 380 пользовательского ввода позволяет пользователю идентифицировать симптомы, которые привели к представлению настоящей проблемы.
[0041] В одном варианте осуществления, если пользователь идентифицирует степень серьезности, используя механизм 374, которая является достаточно высокой, пользователю предоставляются дополнительные механизмы пользовательского ввода, показанные, в целом, позицией 382, которые могут быть использованы для дальнейшего определения степени серьезности проблемы, такой как, вызывает ли проблема критический останов работы, имеет ли пользователь персонал, доступный для работы над проблемой во время нерабочих часов, и позволяющие пользователю подтвердить степень критичности, назначенный проблеме.
[0042] Если пользователь определил проблему, пользователь может иллюстративно привести в действие следующий механизм 384 пользовательского ввода. Он иллюстративно выполняет навигацию пользователя на отображение пользовательского интерфейса, такое как отображение 386, показанное на фиг.3K. Если пользователь определил проблему, система 110 может иллюстративно отображать на отображении 386 пользовательского интерфейса ряд потенциальных исправлений, которые уже были сгенерированы, и могут быть применимы к проблеме, описанной пользователем. В качестве примера, одной из услуг в системе 110 может быть услуга текущего исправления, которая отслеживает различные текущие исправления, которые были сгенерированы для коммерческой системы 108. Компонент 143 предоставления отчета о проблеме может генерировать запрос, основываясь на проблеме, отчет о которой предоставил пользователь, для идентификации любых исправлений, которые могут потенциально исправить проблему, если будут установлены в коммерческой системе 108. Пользователь может иллюстративно загрузить любое исправление на отображении 386 приведением в действие соответствующего механизма пользовательского ввода (показанного, в целом, позицией 388). Отображение списка потенциально относящихся исправлений, которые уже доступны, указывается блоком 226 на фиг.2. Прием пользовательского ввода для применения отображенного исправления указывается блоком 228.
[0043] Если пользователь действительно применяет исправление, тогда состояние текущей проблемы сохраняется, так что пользователь может вернуться к нему, если исправление не решит успешно проблему. Сохранение текущего состояния проблемы указывается блоком 230 на фиг.2. В одном варианте осуществления проблема сохраняется посредством регистрации названия, номера версии, заказчика, проекта, идентификационного номера исправления, которое было загружено, и моделей, установленных в коммерческой системе 108. Компонент 143 предоставления отчета о проблеме затем посылает пользователю ссылку для возврата к этой конкретной проблеме, в этом конкретном месте в последовательности предоставления отчета о проблеме, если исправление не решает ее. Это указывается блоком 232 на фиг.2. Пользователь также может иллюстративно привести в действие ссылку для указания, что исправление действительно решило проблему. Если это происходит, эта информация регистрируется, так что она может быть использована для улучшения будущей аналитики, соответствующей сообщенным проблемам данного типа. Определение, решена ли проблема, и регистрация этой информации указывается блоками 234 и 236 на фиг.2.
[0044] Если пользователь применил одно из исправлений, но исправление не решило проблему, тогда пользователь может иллюстративно привести в действие ссылку, посылаемую компонентом 143 предоставления отчета о проблеме, для возврата в поток предоставления отчета о проблеме. Приведение в действие пользователем ссылки указывается блоком 238 на фиг.2. В этом случае, обработка возвращается к блоку 240. Это же верно, если в блоке 228 пользователь не выбрал применение какого-либо исправления, которые были отображены в отображении 386 пользовательского интерфейса на фиг.3K.
[0045] В любом случае, пользователь иллюстративно приводит в действие следующий указатель 390 в отображении пользовательского интерфейса на фиг.3K, и система 110 предоставляет собранные данные 141 о среде услуге 112 виртуальной среды, где они используются для генерирования виртуальной диагностической среды (такой как виртуальный экземпляр 150 коммерческой системы). При генерировании виртуального экземпляра 150 коммерческой системы услуга 112 виртуальной среды сначала использует генератор 146 виртуальной машины для обеспечения виртуальной среды (для генерирования виртуальной машины) в системе 114 управления виртуальной машиной. Это указывается блоком 242 на фиг.2. Компонент 148 отображения затем генерирует отображения 156, которые отображают пользователей и различных инженеров 116 и разработчиков 118 на виртуальную среду (например, виртуальный экземпляр 150 коммерческой системы), которая только что была сгенерирована, так что они имеют доступ к ней. Это указывается блоком 244. Также могут быть предприняты другие этапы 264 для генерирования виртуальной среды.
[0046] Фиг.3L изображает один иллюстративный вариант осуществления отображения 392 пользовательского интерфейса, которое может использоваться для передачи этой информации пользователю 102. Она указывает, что виртуальная среда обеспечивается в системе 114 управления виртуальной машиной, и что пользователю будет послано сообщение с именем пользователя и паролем (или с другой информацией аутентификации), когда среда будет готова для обращения к ней пользователя.
[0047] Фиг.3M изображает одно иллюстративное отображение 394 пользовательского интерфейса, которое может генерироваться системой 114 управления виртуальной машиной. Оно иллюстративно изображает, что конкретный географический регион, где проживает пользователь (который предоставил отчет о проблеме), передается в систему 114, так что виртуальная среда создается в центре сбора данных, который находится близко к этому географическому региону. Это позволяет персоналу службы технической поддержки и пользователю находиться в одной и той же временной зоне или близко к ней. Виртуальная среда создается с использованием собранных данных 141 о среде, которые были собраны компонентом 130 сбора диагностических данных. Различные текущие исправления, которые были применены к коммерческой системе 108, также применяются в диагностической среде. В одном варианте осуществления одна виртуальная среда (такая как один виртуальный экземпляр 150 коммерческой системы) создается для каждой проблемы, которая была представлена. Уведомление пользователя, что виртуальная среда была создана в качестве диагностической среды для этого пользователя, указывается блоком 248 на фиг.2. Посылка имени пользователя и пароля указывается блоком 250, и посылка другой информации указывается блоком 252.
[0048] В этот момент, пользователь может снова зарегистрироваться в системе 110 жизненного цикла посредством подходящих отображений пользовательского интерфейса, сгенерированных компонентом 145 пользовательского интерфейса. Пользователь может выполнить навигацию на отображение пользовательского интерфейса, такое как отображение 396 пользовательского интерфейса, показанное на фиг.3N. Отображение 396 пользовательского интерфейса подобно отображению 314 пользовательского интерфейса, показанному на фиг.3E, и подобные элементы пронумерованы аналогичным образом. Однако можно видеть, что на фиг.3N пользователь приводит в действие механизм 320 пользовательского ввода «Воспроизведение». Он иллюстративно выполняет навигацию пользователя на отображение пользовательского интерфейса, которое включает в себя больше информации о различных проблемах, которые должны быть воспроизведены пользователем, чтобы они могли быть исследованы и исправлены.
[0049] В качестве примера, фиг.3O отображает отображение 398 пользовательского интерфейса, которое может быть сгенерировано, чтобы пользователь это сделал. Отображение 398 включает в себя проблему, которая имеет виртуальную среду, предусмотренную для этого, так что пользователь может воспроизвести проблему в виртуальной среде. Отображение 398 включает в себя таблицу 400, которая идентифицирует проблему. Она иллюстративно включает в себя поле 402 номера запроса услуги, поле 404 названия, которое перечисляет название проблемы, поле 406 серьезности, которое идентифицирует степень серьезности, поле 408 состояния, которое перечисляет конкретное состояние, в котором в настоящий момент находится проблема, поле 410 состояния виртуальной машины, которое отображает состояние виртуальной машины (или виртуальной среды), которая была обеспечена для этой проблемы, поле 412 сброса пароля, которое позволяет пользователю сбросить его или ее пароль, поле 414 воспроизведения, которое идентифицирует, была ли проблема успешно воспроизведена в виртуальной среде, указатель 417 пакета устройства записи задачи, который указывает, было ли присоединено записанное воспроизведение проблемы в виртуальной среде, и поле 416 действия, которое включает в себя приводимый в действие пользователем механизм 418 ввода, который позволяет пользователю выполнить действие. В варианте осуществления, показанном на фиг.3O, механизм 418 пользовательского ввода позволяет пользователю подключиться к виртуальной среде, чтобы воспроизвести проблему.
[0050] Когда пользователь приводит в действие механизм 418, пользователя иллюстративно просят ввести информацию для подключения, которая позволяет пользователю подключиться к виртуальной машине и выполнить доступ к виртуальной диагностической среде. Фиг.3P и 3Q изображают различные варианты осуществления для этого. На фиг.3P всплывающее отображение 420 позволяет пользователю идентифицировать компьютер вместе с именем пользователя, и фиг.3Q изображает, что всплывающее отображение 422 позволяет пользователю ввести мандат заказчика. Регистрация пользователя в виртуальной диагностической среде указывается блоком 254 на блок-схеме последовательности операций на фиг.2. Отображение экранов регистрации и прием информации регистрации пользователя указывается блоками 256 и 258 на фиг.2.
[0051] Виртуальный экземпляр 150 коммерческой системы, к которому обращается пользователь, затем генерирует отображения пользовательского интерфейса, которые имитируют те, которые были бы обнаружены пользователем, выполняющим доступ к коммерческой системе 108. Фиг.3R изображает один вариант осуществления экрана 424 отображения пользовательского интерфейса, который иллюстрирует его. Можно видеть, что пользователь зарегистрировался в виртуальной машине, и идентифицирующие данные виртуальной среды указывается, в целом, позицией 426. Они позволяют пользователю верифицировать, что он или она действительно зарегистрировались в надлежащей диагностической среде. Пользователь затем может выполнять навигацию по диагностической среде, и виртуальный экземпляр 150 коммерческой системы генерирует отображения пользовательского интерфейса, как если бы пользователь использовал коммерческую систему 108. Это позволяет пользователю воспроизвести проблему в диагностической среде (на виртуальном экземпляре 150 коммерческой системы), как если бы пользователь столкнулся с проблемой на коммерческой системе 108. Отображение отображений пользовательского интерфейса, так что пользователь может воспроизводить проблему в виртуальной диагностической среде, указывается блоком 260 на блок-схеме последовательности операций на фиг.2. Прием пользовательских вводов, фактически воспроизводящих проблему, указывается блоком 262.
[0052] Когда пользователь воспроизводит проблему, записывающий компонент 155 иллюстративно записывает все взаимодействие заказчика с отображением пользовательского интерфейса, так что инженер 116 службы технической поддержки или разработчик 118 могут повторить эти действия, чтобы в действительности видеть, как пользователь обнаружил проблему. Запись пользовательских вводов указывается блоком 264 на фиг.2
[0053] Может быть, что, по некоторой причине, пользователь не может воспроизвести проблему на виртуальном экземпляре 150 коммерческой системы. Если дело обстоит именно так, пользователь может вернуться к списку проблем, показанному на фиг.3O. Установив механизм 414 пользовательского ввода для воспроизведения проблемы в состояние «Нет», система 110 указывает, что, если пользователь не может воспроизвести проблему в виртуальной среде (используя виртуальный экземпляр 150 коммерческой системы), тогда пользователя поросят отправить запись задачи, так что она может быть представлена для анализа. Фиг.3S изображает один вариант осуществления такого отображения 428 пользовательского интерфейса. Всплывающее отображение 430 инструктирует пользователя присоединить пакет с записанной задачей к проблеме, так что она может быть представлена. Однако, если проблема была воспроизведена в виртуальном экземпляре 150 коммерческой системы, тогда пользователь иллюстративно устанавливает механизм 414 пользовательского ввода на «Да» и приводит в действие исполнительный механизм 432 представления (как показано на фиг.3T) для представления проблемы для исследования и исправления инженерами 116 службы технической поддержки и разработчиками 118 соответственно. В одном варианте осуществления, если проблема была представлена, компонент 145 пользовательского интерфейса в системе 110 снова генерирует сообщение (такое как в позиции 436 в отображении 434 пользовательского интерфейса на фиг.3U).
[0054] Если проблема была представлена, инженеры 116 службы технической поддержки иллюстративно исследуют проблему и могут дополнительно определить ее для разработчиков 118. Разработчики 118 иллюстративно работают над проблемой и, в конце концов, генерируют исправление в виртуальном экземпляре 150 коммерческой системы, для проблемы. Это указывается блоком 266 на фиг.2. Система 110 затем иллюстративно уведомляет пользователя 102, что исправление доступно для верификации. Это указывается блоком 268 на фиг.2. Компонент 145 пользовательского интерфейса в системе 110 затем генерирует отображения пользовательского интерфейса, которые принимают пользовательские вводы, чтобы пользователь мог зарегистрироваться в виртуальной диагностической среде (виртуальном экземпляре 150 коммерческой системы). Это указывается блоком 270 на фиг.2.
[0055] Фиг.3V отображает отображение пользовательского интерфейса, которое указывает, что пользователь может снова выполнить навигацию на отображение 314 пользовательского интерфейса, показанное выше в отношение фиг.3E. Однако фиг.3V изображает, что пользователь приводит в действие механизм 322 пользовательского ввода для верификации. В ответ иллюстративно выполняется навигация пользователя на список 400 проблем, показанный выше на фиг.3O. Элементы подобные тем, которые показаны на фиг.3O, пронумерованы аналогичным образом на отображении 398 пользовательского интерфейса на фиг.3W. Можно видеть, однако, что состояние проблемы теперь продвинулось с состояния «Воспроизведение» (где она должна быть воспроизведена пользователем) в состояние «Верифицировать», где она теперь должна быть верифицирована пользователем.
[0056] Таким образом, пользователь иллюстративно приводит в действие механизм 418 пользовательского ввода для подключения для подключения к виртуальной диагностической среде (виртуальному экземпляру 150 коммерческой системы). Пользователя снова могут иллюстративно попросить представить информацию о регистрации и мандат для доступа к этой среде. Виртуальный экземпляр 150 коммерческой системы затем отображает отображения пользовательского интерфейса, которые позволяют пользователю применить исправление в виртуальной диагностической среде (например, в виртуальном экземпляре 150 коммерческой системы). Это указывается блоком 272 на фиг.2. Отображения пользовательского интерфейса на фиг.3X и 3Y иллюстрируют один пример этого.
[0057] Отображение пользовательского интерфейса на фиг.3X подобно отображению 424 пользовательского интерфейса на фиг. 3R и пронумеровано аналогичным образом. Однако отображение пользовательского интерфейса на фиг.3X включает в себя пиктограмму 436 верификации исправления, которая может быть приведена в действие пользователем для инициирования установки исправления в диагностическую среду. Фиг.3Y изображает, что может генерироваться всплывающее отображение 438, которое позволяет пользователю установить исправление, компилировать код и применить исправление для верификации, действительно ли исправление исправляет проблему. Пользователь может это сделать приведением в действие механизма 440 пользовательского ввода для установки, затем механизма 442 пользовательского ввода для компилирования и механизма 444 пользовательского ввода для применения (или OK (подтверждение)). Прием пользовательских вводов, запрашивающих, чтобы исправление было установлено и применено, указывается блоком 274 на фиг.2. Установка исправления указывается блоком 276, компилирование кода с установленным исправлением указывается блоком 278, и прием любых других пользовательских вводов указывается блоком 280.
[0058] Если это произошло, виртуальный экземпляр 150 коммерческой системы отображает отображения пользовательского интерфейса, которые позволяют пользователю снова повторно создать сценарий, где проблема была обнаружена в коммерческой системе 108. Пользователь тогда может верифицировать, решило ли примененное исправление проблему. Отображение отображений пользовательского интерфейса, чтобы пользователь мог верифицировать, что исправление решает проблему в виртуальной диагностической среде, указывается блоком 282 на фиг.2
[0059] Компонент 145 пользовательского интерфейса затем генерирует отображения пользовательского интерфейса, которые позволяют пользователю или принять, или отклонить решение проблемы. Это указывается блоком 284 на фиг.2. Фиг.3Z изображает один вариант осуществления отображения 450 пользовательского интерфейса для выполнения этого. Отображение 450 пользовательского интерфейса включает в себя таблицу 400, которая аналогична той, которая показана в отношении фиг.3W, за исключением того, что механизм 414 пользовательского ввода был приведен в действие для указания, что пользователь принимает решение. Когда пользователь приводит в действие механизм 432, иллюстративно изображается всплывающее отображение 452, указывающее пользователю, что аварийная ситуация будет закрыта. Если пользователь приводит в действие механизм 414 для указания, что пользователь не принимает решение, пользователь тогда может привести в действие исполнительный механизм 432 представления, и иллюстративно генерируется всплывающее отображение 454 (на фиг.3Z-1), которое позволяет пользователю указать, почему решение не было принято в текстовом окне 456. В этом случае, проблема будет повторно представлена инженерам 116 службы технической поддержки и разработчикам 118, так что они снова могут работать над ней.
[0060] Прием пользовательских вводов, указывающих, что пользователь принимает или отклоняет решение, указывается блоком 286 на фиг.2. Если пользователь не принимает решение, прием пользовательских вводов, описывающих, почему решение не было принято, указывается блоком 288. В этом случае, обработка возвращается на блок 266. Однако, если в блоке 286 определяется, что пользователь принял решение, тогда проблема закрывается. Это указывается блоком 290 на фиг.2.
[0061] Таким образом, можно видеть, что система 110, услуга 112 и система 114 обеспечивают комплексный опыт для заказчика, который представляет запрос на техническую поддержку для коммерческой системы 108. Существенно уменьшаются взаимодействия между пользователем 102 и персоналом службы технической поддержки для определения проблемы, с которой столкнулся пользователь. Операционная среда пользователя автоматически обнаруживается и генерируется дублированная диагностическая среда, так что она динамически ведет себя как реплика операционной среды пользователя. Это позволяет персоналу службы технической поддержки сосредоточиться на решении сообщенной пользователем проблемы и существенно уменьшает трудности, с которыми сталкиваются при воспроизведении самой сообщенной проблемы. Виртуальная диагностическая среда, которая создается, обеспечивает единственный вид дублированной среды пользователя, включая все конфигурационные установки и файлы установленной модели. Она может записывать бизнес-процесс и описание проблемы в дублированной среде. Она также обеспечивает возможность для заказчика гарантировать, что проблема может быть воспроизведена в виртуальной диагностической среде, и она также позволяет пользователю верифицировать, что любое исправление действительно решило проблему.
[0062] В настоящем описании были упомянуты процессоры, контроллеры и серверы. В одном варианте осуществления процессоры, контроллеры и серверы включают в себя процессоры компьютеров со связанными памятью и схемой синхронизации, не показанными отдельно. Они являются функциональными частями систем или устройств, к которым они принадлежат и которыми они приводятся в действие, и обеспечивают выполнение функциональной возможности других компонентов или элементов в этих системах.
[0063] Также были описаны несколько отображений пользовательского интерфейса. Они могут принимать большое разнообразие разных форм и могут иметь большое разнообразие разных механизмов ввода, приводимых в действие пользователем, размещенных в них. Например, механизмами ввода, приводимыми в действие пользователем, являются текстовые окна, флаговые кнопки, пиктограммы, ссылки, ниспадающие меню, окна поиска и т.д. Они также могут приводиться в действие самыми различными и разными путями. Например, они могут приводиться в действие с использованием устройства «укажи и выбери» (такого как трекбол или мышь). Они могут приводиться в действие с использованием аппаратных кнопок, переключателей, джойстика или клавиатуры, движкового переключателя или вогнутой кнопки, нажимаемой большим пальцем, и т.д. Они также могут приводиться в действие с использованием виртуальной клавиатуры или других виртуальных исполнительных механизмов. Кроме того, когда экраном, на котором они отображаются, является сенсорный экран, они могут приводиться в действие с использованием жестов касания. Также, когда устройство, которое отображает их, имеет компоненты распознавания речи, они могут приводиться в действие с использованием речевых команд.
[0064] Также было описано несколько хранилищ данных. Отмечается, что каждый из них может быть разбит на множество хранилищ данных. Все могут быть локальными для систем, выполняющих обращение к ним, все могут быть удаленными, или некоторые могут быть локальными, тогда как другие являются удаленными. Все эти конфигурации рассматриваются в данном документе.
[0065] Также, на фигурах показано несколько блоков с функциональными возможностями, приписываемыми каждому блоку. Отмечается, что может быть использовано меньшее количество блоков, чтобы функциональная возможность выполнялась меньшим количеством компонентов. Также, большее количество блоков может использоваться с функциональной возможностью, распределенной по большему количеству компонентов.
[0066] Фиг.4 представляет собой блок-схему архитектуры 100, показанной на фиг.1, за исключением того, что ее элементы расположены в архитектуре 500 облачных вычислений. Облачные вычисления предоставляют вычисление, программное обеспечение, доступ к данным и услуги хранения, которые не требуют знания конечного пользователя о физическом расположении или конфигурации системы, которая предоставляет услуги. В различных вариантах осуществления облачные вычисления предоставляют услуги по глобальной сети, такой как Интернет, используя соответствующие протоколы. Например, провайдеры облачных вычислений предоставляют приложения по глобальной сети, и к ним можно обращаться посредством веб-браузера или любого другого вычислительного компонента. Программное обеспечение или компоненты архитектуры 100, а также соответствующие данные, могут храниться на серверах в удаленном расположении. Вычислительные ресурсы в среде облачных вычислений могут объединяться в расположении удаленного центра сбора данных, или они могут быть рассредоточенными. Инфраструктуры облачных вычислений могут предоставлять услуги посредством совместно используемых центров сбора данных, даже если они выступают в роли единственной точки доступа для пользователя. Таким образом, компоненты и функции, описанные в данном документе, могут предоставляться провайдером услуг в удаленном расположении с использованием архитектуры облачных вычислений. Альтернативно, они могут предоставляться с обычного сервера, или они могут быть установлены непосредственно на клиентских устройствах, или другим образом.
[0067] Предполагается, что описание включает в себя как общедоступные облачные вычисления, так и частные облачные вычисления. Облачные вычисления (как общедоступные, так и частные) обеспечивают, по существу, бесшовное объединение ресурсов, а также уменьшенную потребность в управлении и конфигурировании лежащей в основе инфраструктуры аппаратных средств.
[0068] Общедоступное облако управляется производителем и обычно поддерживает многочисленных потребителей, используя эту же инфраструктуру. Также, общедоступное облако, в противоположность частному облаку, может освобождать конечных пользователей от управления аппаратными средствами. Частное облако может управляться самой организацией, и инфраструктура обычно не используется совместно с другими организациями. Организация все же до некоторой степени обслуживает аппаратные средства, например, выполняет установки и ремонты и т.д.
[0069] В варианте осуществления, показанном на фиг.4, некоторые элементы подобны элементам, показанным на фиг.1, и они пронумерованы аналогичным образом. Фиг.4 конкретно изображает, что системы 108, 110, 112 и 114 располагаются в облаке 502 (которое может быть общедоступным, частным или комбинацией, где части являются общедоступными, тогда как другие являются частными). Поэтому, пользователь 102 использует пользовательское устройство 106 для доступа к этим системам посредством облака 502.
[0070] Фиг.4 также изображает другой вариант осуществления облачной архитектуры. Фиг.4 изображает, что также рассматривается, что некоторые элементы архитектуры 100 располагаются в облаке 502, тогда как другие - нет. В качестве примера, хранилище 128 данных может располагаться вне облака 502, и обращения к нему могут выполняться посредством облака 502. В другом варианте осуществления системы и компоненты (например, компонент 130) также могут быть вне облака 502. Не зависимо от того, где они располагаются, к ним могут обращаться непосредственно посредством устройства 106, посредством сети (или глобальной сети или локальной сети), они могут хостироваться на удаленном сайте посредством услуги, или они могут обеспечиваться в качестве услуги посредством облака, или к ним может обращаться служба подключения, которая находится в облаке. Все эти архитектуры рассматриваются в данном документе.
[0071] Также отмечается, что архитектура 100, или части ее, могут располагаться на самых различных и разных устройствах. Некоторые из этих устройств включают в себя серверы, настольные компьютеры, портативные компьютеры, планшетные компьютеры или другие мобильные устройства, такие как карманные компьютеры, сотовые телефоны, смартфоны, проигрыватели мультимедиа, персональные цифровые помощники и т.д.
[0072] Фиг.5 представляет собой упрощенную блок-схему одного иллюстративного варианта осуществления карманного или мобильного вычислительного устройства, которое может использоваться в качестве пользовательского или клиентского карманного устройства 16, в котором может быть развернута настоящая система (или части ее). Фиг.6-10 являются примерами карманных или мобильных устройств.
[0073] Фиг.5 представляет общую блок-схему компонентов клиентского устройства 16, которое может выполнять компоненты архитектуры 100, или которое взаимодействует с архитектурой 100, или оба случая. В устройстве 16 обеспечивается линия 13 связи, которая позволяет карманному устройству выполнять связь с другими вычислительными устройствами и в некоторых вариантах осуществления обеспечивает канал для автоматического приема информации, например, посредством сканирования. Примеры линии 13 связи включают в себя инфракрасный порт, последовательный/USB(универсальная последовательная шина) порт, порт кабельной сети, такой как порт Эзернета, и порт беспроводной сети, позволяющий выполнять связь посредством одного или нескольких протоколов связи, включая GPRS (пакетная радиосвязь общего назначения), LTE (долгосрочная эволюция), HSPA (высокоскоростной пакетный доступ), HSPA+ и другие протоколы радиосвязи третьего поколения (3G) и четвертого поколения (4G), 1Xrtt (технология передачи по радиосетям с одной несущей) и службу коротких сообщений, которые представляют собой беспроводные службы, используемые для предоставления сотового доступа к сети, а также протоколы 802.11 и 802.11b (Wi-Fi), и протокол Bluetooth, которые обеспечивают локальные беспроводные подключения к сетям.
[0074] В других вариантах осуществления приложения или системы принимаются на съемной карте Secure Digital (SD), которая подключается к интерфейсу 15 карты SD. Интерфейс 15 карты SD и линия 13 связи выполняют связь с процессором 17 (который также может объединять в себе процессоры 126, 147, 154 с фиг.1) по шине 19, которая также подсоединена к памяти 21 и компонентам 23 ввода/вывода (I/O), а также генератору 25 синхронизирующих импульсов и системе 27 определения местоположения.
[0075] Компоненты 23 I/O в одном варианте осуществления предусматриваются для того, чтобы обеспечивать операции ввода и вывода. Компоненты 23 I/O для различных вариантов осуществления устройства 16 могут включать в себя компоненты ввода, такие как кнопки, датчики касания, датчики многоконтактного касания, оптические датчики или датчики видео, датчики речи, сенсорные экраны, бесконтактные датчики, микрофоны, датчики наклона и переключатели гравитационного поля, и компоненты вывода, такие как устройство отображения, громкоговоритель и/или порт принтера. Также могут использоваться другие компоненты 23 I/O.
[0076] Генератор 25 синхронизирующих импульсов иллюстративно содержит компонент генератора импульсов истинного времени, который выводит время и дату. Он также может иллюстративно обеспечивать времязадающие функции для процессора 17.
[0077] Система 27 определения местоположения иллюстративно включает в себя компонент, который выводит текущее географическое местоположение устройства 16. Она может включать в себя, например, приемник системы глобального позиционирования (GPS), систему LORAN, систему счисления пути, систему сотовой триангуляции или другую систему позиционирования. Она также может включать в себя, например, картографическое программное обеспечение или навигационное программное обеспечение, которое генерирует требуемые карты, навигационные маршруты и другие географические функции.
[0078] Память 21 хранит операционную систему 29, сетевые установки 31, приложения 33, установки 35 конфигурирования приложения, хранилище 37 данных, драйверы 39 связи и установки 41 конфигурирования связи. Память 21 может включать в себя все типы материальных энергозависимых и энергонезависимых считываемых компьютером устройств памяти. Она также может включать в себя компьютерные запоминающие среды (описанные ниже). Память 21 хранит считываемые компьютером инструкции, которые, когда они исполняются процессором 17, вызывают выполнение процессором реализованных на компьютере этапов или функций в соответствии с инструкциями. Аналогично, устройство 16 может иметь клиентскую коммерческую систему 24, которая может выполнять различные бизнес-приложения или воплощать части или всю архитектуру 100. Процессор 17 может приводиться в действие другими компонентами, чтобы также способствовать их функциональной способности.
[0079] Примеры сетевых установок 31 включают в себя элементы, такие как информацию о прокси, информацию о подключении к Интернету и отображения. Установки 35 конфигурирования приложения включают в себя установки, которые настраивают приложение для конкретного предприятия или пользователя. Установки 41 конфигурирования связи обеспечивают параметры для выполнения связи с другими компьютерами и включают в себя элементы, такие как параметры GPRS, параметры SMS (службы коротких сообщений), имена пользователя и пароли для подключения.
[0080] Приложениями 33 могут быть приложения, которые ранее были сохранены на устройстве 16, или приложения, которые установлены во время использования, хотя они могут быть частью операционной системы 29, или также могут хостироваться вне устройства 16.
[0081] Фиг.6 изображает один вариант осуществления, в котором устройством 16 является планшетный компьютер 600. На фиг.6 компьютер 600 показан с отображением пользовательского интерфейса с фиг.3N, отображаемым на экране 602 дисплея. Экраном 602 может быть сенсорный экран (поэтому жесты касания от пальца 604 пользователя могут использоваться для взаимодействия с приложением) или интерфейс, приводимый в действие пером, который принимает вводы от пера или стилуса. Он также может использовать виртуальную клавиатуру на экране. Конечно, он также может быть присоединен к клавиатуре или другому устройству пользовательского ввода посредством подходящего механизма присоединения, такого беспроводная линия или порт USB, например. Компьютер 600 также может иллюстративно принимать речевые вводы.
[0082] Фиг.7 и 8 обеспечивают дополнительные примеры устройств 16, которые могут использоваться, хотя также могут использоваться и другие. На фиг.7 телефон с расширенными сервисными возможностями, смартфон или мобильный телефон 45 предусматривается в качестве устройства 16. Телефон 45 включает в себя набор клавиатур 47 для набора телефонных номеров, дисплей 49, способный отображать изображения, включающие изображения приложения, пиктограммы, веб-страницы, фотографии и видео, и кнопки 51 управления для выбора элементов, показанных на дисплее. Телефон включает в себя антенну 53 для приема сигналов сотового телефона, таких как пакетная радиосвязь общего назначения (GPRS) и 1Xrtt, и сигналов службы коротких сообщений (SMS). В некоторых вариантах осуществления телефон 45 также включает в себя гнездо 55 для установки карты памяти Secure Digital (SD), в которое устанавливается карта 57 SD.
[0083] Мобильное устройство на фиг.8 представляет собой персональный цифровой помощник (PDA) 59 или проигрыватель мультимедиа или планшетное вычислительное устройство и т.д. (ниже в данном документе упоминаемое как PDA 59). PDA 59 включает в себя индуктивный экран 61, который воспринимает положение стилуса 63 (или других указателей, таких как палец пользователя), когда стилус располагается над экраном. Это позволяет пользователю выбирать, выделять и перемещать элементы на экране, а также рисовать и писать. PDA 59 также включает в себя несколько клавиш или кнопок пользовательского ввода (таких как кнопка 65), которые позволяют пользователю прокручивать варианты выбора меню или другие варианты выбора на изображении, которые изображаются на дисплее 61, и позволяют пользователю менять приложения или выбирать функции пользовательского ввода без соприкосновения с дисплеем 61. Хотя это не показано, PDA 59 может включать в себя внутреннюю антенну и инфракрасный передатчик/приемник, который делает возможным выполнять беспроводную связь с другими компьютерами, а также порты подключения, которые делают возможным подключение аппаратных средств к другим вычислительным устройствам. Такие подключения аппаратных средств обычно выполняются посредством подставки, которая подсоединяет к другому компьютеру при помощи последовательного порта или порта USB. По существу, эти подключения не являются сетевыми подключениями. В одном варианте осуществления мобильное устройство 59 также включает в себя гнездо 67 для карты SD, в которое устанавливается карта 69 SD.
[0084] Фиг.9 подобна фиг.7 за исключением того, что телефоном является смартфон 71. Смартфон 71 имеет сенсорный дисплей 73, который отображает пиктограммы или тайлы или другие механизмы 75 пользовательского ввода. Механизмы 75 могут использоваться пользователем для выполнения приложений, вызовов, операций пересылки данных и т.д. Как правило, смартфон 71 построен на мобильной операционной системе и предлагает более расширенные вычислительные возможности и возможности подключения, чем телефон с расширенными сервисными возможностями. Фиг.10 изображает телефон 71 с отображением по фиг.3V на нем.
[0085] Отметьте, что возможны другие виды устройств 16.
[0086] Фиг.11 представляет собой один вариант осуществления вычислительной среды, в которой может быть развернута архитектура 100, или (например) ее части. С ссылкой на фиг.11, примерная система для реализации некоторых вариантов осуществления включает в себя вычислительное устройство общего назначения в виде компьютера 810. Компоненты компьютера 810 могут включать в себя, но не ограничиваются ими, блок 820 обработки (который может содержать процессор 126, 147 или 154), системную память 830 и системную шину 821, которая соединяет различные системные компоненты, включая системную память, с блоком 820 обработки. Системная шина 821 может быть любого из нескольких типов шинных структур, включая шину памяти или контроллер памяти, периферийную шину и локальную шину, используя любую из разнообразных шинных архитектур. В качестве примера и не ограничения, такие архитектуры включают в себя шину архитектуры промышленного стандарта (ISA), шину микроканальной архитектуры (MCA), шину расширенной архитектуры промышленного стандарта (EISA), локальную шину Ассоциации по стандартизации в области видеотехники (VESA) и шину межсоединений периферийных компонентов (PCI), также известную как шина расширения. Память и программы, описанные в отношении фиг.1, могут быть развернуты в соответствующих частях фиг.11.
[0087] Компьютер 810 обычно включает в себя разнообразные считываемые компьютером среды. Считываемые компьютером среды могут представлять собой любые доступные среды, к которым может обращаться компьютер 810 и которые включают в себя как энергозависимые, так и энергонезависимые среды, съемные и несъемные среды. В качестве примера и не ограничения, считываемые компьютером среды могут содержать запоминающие среды компьютера и среды передачи данных. Запоминающие среды компьютера отличаются от сигнала или несущей волны с модулированными данными и не включают их. Они включают в себя аппаратные запоминающие среды, включающие как энергозависимые, так и энергонезависимые, съемные, так и несъемные среды, реализованные по любому способу или технологии для хранения информации, такой как считываемые компьютером инструкции, структуры данных, программные модули или другие данные. Запоминающие среды компьютера включают в себя, но не ограничиваются ими, оперативное запоминающее устройство (RAM), постоянное запоминающее устройство (ROM), электрически стираемое программируемое постоянное запоминающее устройство (EEPROM), флэш-память или другую технологию изготовления памяти, компакт-диск (CD-ROM), цифровой многофункциональный диск (DVD) или другое запоминающее устройство на оптических дисках, магнитные кассеты, магнитную ленту, запоминающее устройство на магнитных дисках или другие магнитные запоминающие устройства, или любую другую среду, которая может быть использована для хранения требуемой информации, и к которой может обращаться компьютер 810. Среды передачи данных обычно воплощают в себе считываемые компьютером инструкции, структуры данных, программные модули или другие данные в механизме транспортировки и включают в себя любую среду доставки информации. Термин «сигнал с модулированными данными» означает сигнал, в котором одна или несколько из его характеристик устанавливается или изменяется таким образом, чтобы кодировать информацию в сигнале. В качестве примера и не ограничения, среды передачи данных включают в себя проводные среды, такие как проводная сеть или прямое проводное соединение, и беспроводные среды, такие как акустические, радиочастотные (RF), инфракрасные и другие беспроводные среды. Комбинации любых из вышеупомянутых также должны быть включены в сферу рассмотрения считываемых компьютером сред.
[0088] Системная память 830 включает в себя запоминающие среды компьютера в виде энергозависимой и/или энергонезависимой памяти, такой как постоянное запоминающее устройство (ROM) 831 и оперативное запоминающее устройство (RAM) 832. Базовая система 833 ввода/вывода (BIOS), содержащая базовые подпрограммы, которые обеспечивают перенос информации между элементами в компьютере 810, например, во время запуска, обычно хранится в ROM 831. RAM 832 обычно содержит данные и/или программные модули, которые являются немедленно доступными для блока 820 обработки и/или которые в данный момент обрабатываются им. В качестве примера и не ограничения, фиг.11 иллюстрирует операционную систему 834, программы 835 приложений, другие программные модули 836 и программные данные 837.
[0089] Компьютер 810 также может включать в себя другие съемные/несъемные, энергозависимые/энергонезависимые запоминающие среды компьютера. Только в качестве примера, фиг.11 иллюстрирует накопитель 841 на жестком диске, который считывает или записывает на несъемные, энергонезависимые магнитные среды, накопитель 851 на магнитных дисках, который считывает или записывает на съемный, энергонезависимый магнитный диск 852, и накопитель 855 на оптических дисках, который считывает или записывает на съемный, энергонезависимый оптический диск 856, такой как компакт-диск или другие оптические среды. Другие съемные/несъемные, энергозависимые/энергонезависимые запоминающие среды компьютера, которые могут быть использованы в примерной операционной среде, включают в себя, но не ограничиваются ими, кассеты с магнитной лентой, карты флэш-памяти, цифровые многофункциональные диски, цифровую видеоленту, твердотельный RAM, твердотельный ROM и т.п. Накопитель 841 на жестком диске обычно подключается к системной шине 821 при помощи несъемного интерфейса памяти, такого как интерфейс 840, и накопитель 851 на магнитных дисках и накопитель 855 на оптических дисках обычно подключаются к системной шине 821 при помощи съемного интерфейса памяти, такого как интерфейс 850.
[0090] Альтернативно, или в дополнение, функциональная возможность, описанная в данном документе, может выполняться, по меньшей мере частично, одним или несколькими логическими компонентами аппаратных средств. Например и без ограничения, иллюстративные типы логических компонентов аппаратных средств, которые могут использоваться, включают в себя программируемые вентильные матрицы (FPGA), специализированные интегральные схемы (ASIC), специализированные интегральные схемы массового производства (ASSP), системы «система на кристалле» (SOC), сложные программируемые логические устройства (CPLD) и т.д.
[0091] Драйверы и связанные с ними запоминающие среды компьютера, описанные выше и показанные на фиг.11, обеспечивают хранение считываемых компьютером инструкций, структур данных, программных модулей и других данных для компьютера 810. На фиг.11, например, накопитель 841 на жестком диске изображен как хранящий операционную систему 844, программы 845 приложений, другие программные модули 846 и программные данные 847. Отметьте, что эти компоненты могут быть или такими же, или могут отличаться от операционной системы 834, программ 835 приложений, других программных модулей 836 и программных данных 837. Операционной системе 844, программам 845 приложений, другим программным модулям 846 и программным данным 847 присвоены другие позиции в данном случае, чтобы показать, что, как минимум, они представляют собой другие копии.
[0092] Пользователь может вводить команды и информацию в компьютер 810 при помощи устройств ввода, таких как клавиатура 862, микрофон 863 и указательное устройство 861, такое как мышь, трекбол или сенсорная панель. Другие устройства ввода (не показаны) могут включать в себя джойстик, игровой планшет, спутниковую антенну, сканер или т.п. Эти и другие устройства ввода часто подключаются к блоку 820 обработки при помощи интерфейса 860 пользовательского ввода, который соединен с системной шиной, но может быть соединен другими интерфейсами и шинными структурами, такими как параллельный порт, игровой порт или универсальная последовательная шина (USB). Визуальный дисплей 891 или устройство отображения другого типа также подключается к системной шине 821 при помощи интерфейса, такого как видеоинтерфейс 890. В дополнение к монитору компьютеры также могут включать в себя другие периферийные устройства вывода, такие как громкоговорители 897 и принтер 896, которые могут подключаться при помощи выходного периферийного интерфейса 895.
[0093] Компьютер 810 работает в сетевой среде, используя логические подключения к одному или нескольким удаленным компьютерам, таким как удаленный компьютер 880. Удаленным компьютером 880 может быть персональный компьютер, карманное устройство, сервер, маршрутизатор, сетевой персональный компьютер (PC), одноранговое устройство или другой общий сетевой узел, и он обычно включает в себя многие или все элементы, описанные выше в отношении компьютера 810. Логические подключения, изображенные на фиг.10, включают в себя локальную сеть (LAN) 871 и глобальную сеть (WAN) 873, но также могут включать в себя другие сети. Такие сетевые среды являются общепринятыми в офисах, компьютерных сетях масштаба предприятия, интрасетях и Интернете.
[0094] При использовании в сетевой среде LAN компьютер 810 подключается к LAN 871 при помощи сетевого интерфейса или адаптера 870. При использовании в сетевой среде WAN компьютер 810 обычно включает в себя модем 872 или другое средство для установления связи по WAN 873, такой как Интернет. Модем 872, который может быть внутренним или внешним, может подключаться к системной шине 821 посредством интерфейса 860 пользовательского ввода или другого соответствующего механизма. В сетевой среде программные модули, описанные в отношении компьютера 810, или его частей, могут храниться на удаленном запоминающем устройстве памяти. В качестве примера и не ограничения, фиг.11 иллюстрирует удаленные программы 885 приложений как находящиеся на удаленном компьютере 880. Понятно, что показанные сетевые соединения являются примерными, и могут использоваться другие средства установления линии связи между компьютерами.
[0095] Также необходимо отметить, что разные варианты осуществления, описанные в данном документе, могут быть объединены разным образом. Т.е. части одного или нескольких вариантов осуществления могут быть объединены с частями одного или нескольких других вариантов осуществления. Все это рассматривается в данном документе.
[0096] Хотя объект данного изобретения был описан на языке, характерном для конструктивных признаков и/или методологических действий, следует понимать, что объект изобретения, определенный в прилагаемой формуле изобретения, необязательно ограничивается конкретными признаками или действиями, описанными выше. Скорее, конкретные признаки и действия, описанные выше, раскрыты в качестве примерных форм реализации формулы изобретения.