Обновление конфигурации клиента (CCU) - это метод разработки программного обеспечения для структурирования процесса предоставления клиентам новых версий продуктов и производства обновлений. Этот метод разработан исследователями Утрехтского университета .
Эта статья посвящена этапу реализации метода CCU. Доставка относится к процессу, который начинается с момента изготовления продукта до фактической доставки продукта покупателю.
Как описано в общей записи CCU, фаза доставки является второй фазой метода CCU. На рисунке 1 изображен метод CCU. Фазы CCU, которые не рассматриваются в этой статье, скрыты прозрачным серым прямоугольником.
Как видно на рисунке 1, фаза доставки находится между фазой выпуска и фазой развертывания. Поставщик программного обеспечения разрабатывает и выпускает программный продукт, который затем должен быть доставлен заказчику. Этот этап - процесс доставки. Этот процесс очень сложен, потому что поставщику часто приходится иметь дело с продуктом, который имеет несколько версий, переменные функции, зависимость от внешних продуктов и различные варианты распространения . Метод CCU помогает поставщику программного обеспечения структурировать этот процесс.
На рисунке 2 изображена диаграмма данных процесса фазы доставки в CCU. Этот способ моделирования был изобретен Саэки (2003). С левой стороны вы можете увидеть модель мета-процесса, а с правой стороны - модель метаданных. Две модели связаны друг с другом отношениями, отображаемыми в виде пунктирных линий. Модель метаданных (правая сторона) показывает концепции, задействованные в процессе, и то, как эти концепции связаны друг с другом. Например, видно, что пакет состоит из нескольких частей: пакет программного обеспечения, описание системы, руководство, а также информация о лицензии и управлении. Цифры между отношениями показывают, в каком количестве связаны между собой понятия. Например, «1..1» между пакетом и программным пакетом означает, что пакет должен содержать как минимум 1 программный пакет и максимум 1 программный пакет. Таким образом, в этом случае пакет должен содержать только 1 программный пакет. В левой части изображения изображена модель данных процесса. Сюда входят все действия в процессе доставки. Эта статья основана на этой модели данных процесса. Модель метапроцесса (левая часть диаграммы данных процесса) разделена на несколько частей, которые представлены вместе с соответствующими параграфами по всей статье для облегчения понимания.
Таблицы, описывающие концепции модели метаданных и действия модели данных процесса, представлены под рисунком 2.
Таблица концепций содержит все концепции, используемые в модели метаданных, с их объяснениями, а также источник, из которого получены объяснения.
Концепция | Определение (Источник) |
РЕПОЗИТОРИЙ | Также называется хранилищем. Репозиторий содержит только одну полную версию элемента конфигурации (CI). Различия между версиями обычно сохраняются с использованием дельта-алгоритма. Сборник записей с описанием ресурсов [1] |
упаковка | Коллекция различных связанных элементов, объединенных для передачи целей клиенту. [1] |
ПАКЕТ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ | Набор различных связанных программных компонентов, объединенных для передачи целей заказчику. [1] |
КОМПОНЕНТЫ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ | Различные компоненты, из которых состоит программное обеспечение, связаны между собой зависимостями. [1] |
ВЕРСИЯ | Версия - это состояние объекта или концепции, которое отличается от его предыдущего состояния или состояния. |
ОПИСАНИЕ СИСТЕМЫ | Описание системы, включая ее требования и зависимости от других внешних компонентов. [1] |
руководство | Технический коммуникационный документ, предназначенный для помощи людям, использующим определенную систему. |
ЛИЦЕНЗИЯ | Тип частной или бесплатной лицензии, а также меморандум о контракте между производителем и пользователем компьютерного программного обеспечения, в котором указываются периметры разрешения, предоставленного владельцем пользователю. |
ИНФОРМАЦИЯ ДЛЯ УПРАВЛЕНИЯ | Вся информация, которая актуальна для управления системой на сайте заказчика. [1] |
СИСТЕМА УПРАВЛЕНИЯ ОТНОШЕНИЯМИ С КЛИЕНТАМИ | Система, в которой хранится вся информация о клиентах. [2] |
КЛИЕНТ | Компания или физическое лицо, которые ранее купили какой-либо продукт или воспользовались услугами одной из ваших компаний. [2] |
ТИП ЛИЦЕНЗИИ | В этом случае это может быть долгосрочная лицензия, лицензия с истекшим сроком действия или временная лицензия. |
ДАННЫЕ КЛИЕНТОВ | Вся известная информация о клиентах в системе управления взаимоотношениями с клиентами . |
СИСТЕМА УПРАВЛЕНИЯ КОНФИГУРАЦИЕЙ | Система хранения информации о конфигурациях программного обеспечения на сайтах клиентов. [3] |
ПРОДУКТ | Элемент программного обеспечения или документ, находящийся под контролем версий. [4] |
ОБНОВЛЕНИЯ | Обновление также называется пластырь представляет собой небольшой кусок программного обеспечения , разработанного для обновления или исправления проблем с компьютерной программой |
КОНФИГУРАЦИЯ | Конфигурация является расположение функциональных блоков в соответствии с их характером, числа и главных характеристик. |
МОДИФИКАЦИЯ | Модификация - это внесение изменений в оригинал. |
ОБРАТНАЯ СВЯЗЬ | Обратная связь позволяет продавцу собирать большие суммы данных о своих клиентах и продуктах, как они действуют в полевых условиях [2] |
СООБЩЕНИЕ ОБ ОШИБКЕ | Отчет о проблемах, с которыми столкнулись пользователи при использовании продукта. Это может означать проблему с определенной функцией или мертвые ссылки в системе. Эта информация собирается вручную. [2] |
ДАННЫЕ ПО ИСПОЛЬЗОВАНИЮ ПРОДУКТА | Эти данные содержат информацию о фактическом использовании продукта. Это отражается на параметрах, которые чаще всего используются в программе. [2] |
СООБЩЕНИЕ ОБ ОШИБКЕ | Когда программный продукт получает ошибку, он автоматически отправляет отчет об ошибке поставщику. [2] |
ВОПРОСЫ ПО ИСПОЛЬЗОВАНИЮ | Вопросы, которые возникают у пользователей об обращении с продуктом и т. Д. [2] |
Таблица действий содержит объяснения действий вместе с источником, из которого получены объяснения. Поскольку метод довольно новаторский, многие действия разработаны специально для этой модели, и поэтому объяснения не имеют источника.
Мероприятия | Под-действие | Описание (Источник) |
упаковка | Упаковка системы так, чтобы ее можно было перенести на сайт заказчика . [2] | |
пакетное программное обеспечение | Объединение различных программных компонентов в один пакет, который может быть доставлен заказчику. [2] | |
описание системы пакетов | Добавьте описание системы к пакету. [2] | |
руководство по упаковке | Добавьте руководство в пакет. [2] | |
пакетная лицензия | Добавьте лицензию в пакет. [2] | |
информация об управлении пакетами | Добавьте в пакет документ с информацией об управлении. [2] | |
Проверить пакет | Убедитесь, что пакет заполнен и готов к развертыванию на сайте заказчика. [2] | |
Рекламировать обновление | Когда поставщик желает предоставлять обновления своим клиентам, они сначала должны быть проинформированы через доступные каналы связи. [2] | |
Подготовить распространение | Подготовьте меры по доставке программного обеспечения заказчику. | |
Установить пакет в репозиторий | Готовый программный компонент будет доступен в репозитории некоторых релизов. [5] | |
Создать каналы передачи | Поставщику необходимо создать каналы, по которым программное обеспечение может быть передано заказчику. | |
Распространять | Доставка программного обеспечения разным клиентам. [6] | |
запрос клиента | Покупатель информирует продавца о своем интересе к определенному продукту или обновлению. [2] | |
Определите потребности в конфигурации | Определяется, какие программные компоненты необходимы для успешного обновления конфигурации. [2] | |
Определить ограничения конфигурации | Определяется, каким ограничениям должна хватить инфраструктура клиента для запуска нового продукта или обновления . [2] | |
Проверить лицензию клиентов | Проверяется, обладает ли клиент необходимой лицензией на новое обновление конфигурации . [2] | |
Доставить обновление | Получение программных компонентов на сайте заказчика. [2] | |
Проинформировать клиента | Предоставление заказчику информации о статусе его запроса в этом случае. [2] | |
Обновить CRM | Добавьте информацию в CRM-систему, чтобы она содержала самую свежую доступную информацию. [2] | |
Получить отчет о доставке и развертывании | Получение отчета (автоматически или вручную) об успешности доставки и развертывания от заказчика. [2] | |
Обновить тип лицензии | Добавьте информацию о лицензии, полученной заказчиком, чтобы система содержала самую свежую доступную информацию. [2] | |
Управление конфигурацией обновлений | Добавьте последнюю информацию в систему управления конфигурацией , чтобы сохранить самую последнюю конфигурацию клиента. [2] | |
Обновить свойства продукта | Обновите информацию о продуктах, используемых клиентом, чтобы система содержала самую свежую доступную информацию. [2] |
Чтобы доставить разработанный продукт заказчику, поставщику необходимо упаковать различные компоненты своего продукта в пакет. Таким образом заказчик получит всю информацию и программные компоненты.сразу удовлетворяя все его потребности. После объединения всех элементов в один пакет поставщик программного обеспечения должен будет тщательно проверить комплектность пакета. Пакет должен предоставить покупателю все инструменты и информацию для использования продукта. В противном случае поставщик программного обеспечения получит множество вопросов от своих клиентов, на которые уйдет много времени. Поэтому очень важно, чтобы посылка была тщательно проверена перед отправкой. Пакет может представлять собой физическую комбинацию различных элементов, упакованных, например, в коробку, но это также может быть цифровая комбинация файлов, содержащих все элементы. В рамках процесса CCU указано, что пакет будет состоять из пяти элементов, а именно: пакет программного обеспечения, описание системы, руководство, а также информация о лицензии и управлении. В следующих параграфах объясняется, как эти элементы вписываются в фазу поставки CCU.
Одним из элементов пакета будет программный комплекс . Программный пакет сам по себе является пакетом, потому что он состоит из различных программных компонентов, которые вместе образуют продукт. В отличие от общего пакета, программный пакет всегда представляет собой технический пакет, в котором все файлы, необходимые для запуска программного продукта, объединены. [7] Еще одна концепция программного пакета - это версия. Это отслеживает изменения, внесенные в программный продукт. Связывая его с программным пакетом, продавец и покупатель могут отслеживать функциональность и свойства продукта, который использует покупатель.
Это общее описание продукта и его функций. Кроме того, в нем также будет описано, из каких компонентов состоит продукт и как они связаны с другим уже имеющимся программным обеспечением продукта. В случае обновления программного обеспечения , например, будет описано, как предыдущая версия программного обеспечения изменена этим продуктом. Помимо этого, в нем также будут описаны требования, необходимые для правильной работы программного продукта. Например, какие другие продукты и конфигурации должны быть в наличии, чтобы этот продукт работал должным образом.
Руководство - это документ, который предоставит заказчику рекомендации по развертыванию и использованию продукта.
В данном случае лицензия представляет собой лицензионное соглашение на программное обеспечение, в котором указывается, как заказчику разрешается использовать продукт. Например, он может указывать, скольким пользователям разрешено использовать программный продукт. В этой ситуации лицензионное соглашение представляет собой договор или сертификат, который заказчик подтверждает наличие разрешения на его использование. У поставщика программного обеспечения есть собственная часть соглашения, которая в большинстве случаев хранится в системе. Подробное описание этой части можно найти в разделе получения отзывов в этой статье. Лицензионное соглашение, отправляемое заказчику, может быть как цифровым, так и физическим документом.
Эта информация должна содержать информацию, имеющую отношение к управлению системой на сайте клиента. Во многих случаях эта информация уже есть в руководстве. Однако в определенных ситуациях эта информация предназначена только для управления системой, а не для пользователей системы, и поэтому предоставляется как отдельный документ.
После того , как пакет собран он должен быть распределен клиентам. Этот раздел в процессе доставки посвящен фактической доставке посылки покупателям.
Распространение программного обеспечения продукта может осуществляться как офлайн, так и онлайн. В автономной ситуации пакет представляет собой физический пакет, который содержит все элементы. Программное обеспечение хранится на носителе данных, таком как компакт-диск или DVD, и документы могут также храниться в цифровой форме на этом носителе данных, или они могут быть в физической форме, например в буклете. Пакет в целом представляет собой физический продукт. В онлайн-режиме весь пакет должен быть в цифровой форме. Последствия для распространенияописываются в следующих параграфах. CCU разработан для обеих ситуаций, но по мере роста пропускной способности становится все более целесообразным распространять особенно обновления и новые версии среди существующих клиентов в Интернете. В этой статье обсуждаются оба пути. В модели данных процесса предполагается, что поставщик программного обеспечения использует оба канала распространения . В качестве практического примера: HISComp, поставщик медицинских информационных систем, напрямую распространяет свое программное обеспечение на компакт-дисках. Однако они используют свой веб-сайт для распространения исправлений для программных продуктов.
После сборки нового пакета заказчик должен быть осведомлен о новом выпуске. В модели данных процесса это изображается как цикл, в котором объявляется об обновлении до тех пор, пока клиенты не будут должным образом проинформированы. Кроме того, готовый к доставке пакет необходимо сохранить в репозитории для онлайн- распространения . Кроме того, поставщику необходимо создать каналы передачи. Для онлайн- распространения это означает, что поставщику необходимо создать онлайн-каналы для своего репозитория. В большинстве случаев это означает, что создается ссылка на товар на сайте продавца. В случае обновлений в значительной степени применимо, что текущая версия программного продукта на сайте заказчика автоматически проверяет репозиторий.для получения новых обновлений продукта. В случае офлайн- распространения поставщику необходимо создать физические каналы передачи. Это могут быть магазины или просто договор с курьерской компанией.
Распространение начинается с запроса продукта покупателем. Это можно сделать автоматически, когда текущий продукт клиента ищет обновления в онлайн-репозитории. Заказчик также может вручную сделать запрос продукта через веб-сайт поставщика. Третий вариант - заказчик выполняет запрос по телефону или электронной почте.
Когда поставщик узнает о запросе клиента, он определит потребности клиента. Проверяя текущую конфигурацию клиента и его пожелания. Этот процесс также может происходить автоматически при проверке конфигурации клиента в системе управления конфигурацией . Более подробная информация об этой системе представлена в следующей главе. Когда ясно, какой продукт нужен клиенту, и возможные модификации этого продукта, необходимо определить, подходит ли текущая конфигурация клиента новому продукту. Текущая конфигурация сравнивается с ограничениями нового продукта. Это также может быть сделано автоматически с помощью управления конфигурацией .система. Когда конфигурация клиента оказывается недостаточной, клиент информируется об этом. Например, поставщик может дать понять покупателю, что ему потребуется внешний продукт для правильной работы этого нового продукта. Помимо этого обновляется система управления взаимоотношениями с клиентами (CRM) поставщика. Подробнее об этом читайте в главе о CRM.
Когда конфигурация клиента будет достаточной, поставщик проверит текущую лицензию клиента. Если у клиента нет соответствующей лицензии на запрошенный продукт, необходимо получить лицензию. Заказчик будет проинформирован об этом, и система CRM будет обновлена повторно. Если у клиента есть соответствующая лицензия или он хочет купить соответствующую лицензию вместе с продуктом, продукт доставляется клиенту.
Система управления конфигурацией программного обеспечения - это система на сайте поставщика, которая отслеживает конфигурации на сайте клиента. Сохраняя это в системе, продавец сможет предоставить покупателю конкретную услугу, когда ему понадобится новый продукт. В системе управления конфигурацией программного обеспечения хранится информация об используемых клиентом продуктах, версиях этих продуктов, а также о том, какие обновления уже выполняются. В некоторых случаях возможно, что поставщик внес некоторые изменения в продукт специально для этого клиента. Это тоже нужно будет сохранить в системе. Также должны быть данные конфигурации, некоторая общая информация о конфигурации, которую использует клиент. Например, какую операционную платформу использует заказчик для своего программного обеспечения. В этой системе также следует хранить информацию об обратной связи, которую поставщик получает от покупателя. Сюда входят отчеты об ошибках, данные об использовании продукта, отчеты об ошибках и вопросы об использовании. Дополнительную информацию об этой обратной связи можно найти в разделе «Активация и использование фазы CCU».
Сохраняя всю эту информацию, поставщик может очень точно определять потребности клиента всякий раз, когда клиент запрашивает продукт или обновление. Как уже указывалось, поставщик также может легко проинформировать клиента о некоторых изменениях, которые клиент должен внести в его конфигурацию, чтобы продукт функционировал должным образом. Еще одно преимущество хранения этой информации в системе состоит в том, что это упрощает процесс онлайн-доставки. Проверка потребностей и ограничений конфигурации может выполняться автоматически, когда клиент выполняет запрос.
Система управления взаимоотношениями с клиентами содержит всевозможные данные о клиентах компании. В этой статье мы обсудим функцию этих данных клиента в процессе доставки CCU. Информация о лицензионном соглашении между заказчиком и поставщиком программного обеспечения хранится в системе CRM. В модели метаданных этот репозиторий и онлайн- распространение связаны с системой CRM, это снова может быть сделано автоматически. Система проверит, достаточно ли лицензии клиента для получения определенного продукта или обновления.
Чтобы поддерживать все описанные системы в актуальном состоянии на сайте поставщика, важно, чтобы поставщик получал много
Пример успешного применения метода CCU можно найти в Exact Software (ES). ES - производитель программного обеспечения для бухгалтерского учета и планирования ресурсов предприятия из Нидерландов. ES объединила управление данными о продукте (PDM), управление взаимоотношениями с клиентами (CRM) и управление конфигурацией программного обеспечения.(SCM), чтобы лучше и проще поддерживать конфигурацию на объекте клиента. У ES есть модуль в своем программном обеспечении CRM, который содержит все контракты каждого клиента. Это связано с их системой PDM. Каждому контракту соответствуют файлы, которые можно загрузить для новой версии или обновления предыдущей версии. На этапе доставки это означает, что клиенты могут получать все продукты через онлайн-соединение. Таким образом, ES продает контракты (лицензии) и хранит их в своей CRM-системе, поставка реальных продуктов может выполняться самими клиентами полностью автоматически, без особых усилий. Система PDM, в свою очередь, связана с системой SCM, которая отслеживает конфигурации, которые используют клиенты.На этапе доставки это означает, что ES может автоматически определять потребности клиента всякий раз, когда клиент делает запрос.