Внедрение технологически нейтральной архитектуры (архитектуры взаимодействий)
О важности сценариев использования и контрактов уже говорилось в предыдущей главе. Эти два артефакта технологически нейтральной архитектуры всегда необходимо принимать во внимание при внедрении NGOSS. Кроме того, необходимо иметь в виду и такой артефакт, как диаграммы последовательностей, поскольку они могут служить связующим звеном между сценариями использования и контрактами.
В этой главе дается также краткое описание внедрения других аспектов технологически нейтральной архитектуры.
Реализация сценариев использования и контрактов
Сценарии использования служат одним из первых артефактов (после проекции eTOM/SID), которые описывают взаимодействие между пользователем и системой, выражая его в терминах бизнес-сущностей, вовлеченных во взаимодействие. Поэтому не следует задаваться вопросом, должны ли внедряться сценарии использования или какая-то другая форма артефакта, описывающая взаимодействие между пользователем и системой. Поскольку сценарии использования — это неотъемлемая часть NGOSS, ниже мы будем исходить из того, что для описания взаимодействия используются именно они.
В NGOSS проводится различие между сценариями использования для бизнес-ракурса и для системного ракурса. Сценарии использования системного ракурса представляют собой усовершенствованные сценарии использования бизнес-ракурса. Так, сценарии использования бизнес-ракурса могут быть разбиты на несколько более детальных сценариев использования, их описание становится более точным. Например, точки расширения, уточняющие логику сценария, не могут добавляться, пока не будет определен системный ракурс. Точка расширения — это еще один сценарий использования, который выступает частью основного сценария.
В некоторых случаях при внедрении NGOSS различия между сценариями использования для бизнес-ракурса и для системного ракурса могут быть не очень значимыми. Вопрос о сохранении или игнорировании этих различий решается с учетом ряда факторов, среди которых:
• выгода (или, наоборот, ее отсутствие) в поддержке обоих ракурсов,
• заинтересованность исполнителей, внедряющих NGOSS, в сохранении различий между ракурсами,
• трудоемкость поддержания связи между исходным сценарием использования и теми сценариями, которые образуются при его декомпозиции,
• возможность (или ее отсутствие) объединить оба ракурса с помощью имеющихся инструментов, когда это необходимо.
Диаграммы последовательностей представляют собой первый этап формализации превращения сценариев использования в контракты. Исполнителям при этом рекомендуется задаться вопросом: «Имеет ли смысл строить диаграммы последовательности для каждого сценария использования?» Ответ на этот вопрос часто зависит от сложности сценария. Выгоды, достигаемые за счет разработки диаграмм последовательностей для простых сценариев использования, не всегда окупают затраты на их разработку.
Контракты как базовые блоки, обеспечивающие совместимость компонентов решения, являются неотъемлемой частью NGOSS. Контракты дают детальное описание интерфейса, в чем-то схожее с прикладным программным интерфейсом (API), а также механизм отслеживания, который связывает контракт с другими артефактами NGOSS, такими как процессы еТОМ, объекты SID, диаграммы последовательностей и др.
Цель контракта почти совпадает с задачей традиционной спецификации разработки приложения.
Бизнес-контракт включает в себя:
• заглавную часть, содержащую имя, идентификатор и версию контракта,
• описательную часть, содержащую цель, описание и критерии поиска,
• функциональную часть, содержащую сопутствующие бизнес-процессы, предварительные условия и постусловия, а также точки взаимодействия,
• нефункциональную часть, содержащую описание развертывания, организационные, юридические и прочие аспекты контракта,
• управленческую часть, определяющую управленческие операции, распределение ответственности И Т. П.,
• часть с описанием бизнес-модели, содержащую ссылки на диаграммы сценариев использования, диаграммы взаимодействия, диаграммы поведения, бизнес-артефакты и т. п.
Контракты бизнес-ракурса могут трансформироваться (по усмотрению исполнителя) в контракты системного ракурса. На уровне системного ракурса контракт состоит из тех же частей, что и на уровне бизнес-ракурса, но с добавлением дополнительных деталей для некоторых частей. Например, управленческая часть содержит аспекты политик для развертывания и мониторинга контракта.
Вопрос о том, следует или не следует использовать контракты NGOSS для замены существующих спецификаций интерфейса и разработки или добав- ления новых спецификаций, решается по усмотрению исполнителя, осуществляющего внедрение NGOSS. Ключевым моментом здесь, с позиций NGOSS, является наличие общего подхода к описанию услуг, доступных через контракт. Способов описания контрактов в вашей организации может быть множество. Например, можно ограничиться определением только заглавной, описательной, функциональной и модельной частей контракта. В пределах функциональной части можно выбрать только список точек взаимодействия, в части описания бизнес-модели — только связь со сценариями использования.