ArchiMate - функция приложения и компонент приложения
Я очень недоволен, смущен и не убежден в связи между компонентом приложения и функцией приложения.
Компонент приложения описывается как "инкапсуляция функциональности приложения", а функция приложения определяется как "описание внутреннего поведения компонента приложения".
Однако метамодель прикладного уровня описывает отношения между этими двумя элементами как назначаемый прикладной компонент и прикладная функция.
Из описания отдельных элементов может показаться, что компонент приложения состоит из функций приложения. Или даже, чтобы быть более абстрактным, что функция приложения назначена компоненту приложения.
В любом случае, это действительно неудовлетворительно для функции, назначаемой компоненту. Например, имеет ли телефон функцию голосового вызова, или функция голосового вызова назначена на телефон, или телефон назначен функции голосового вызова?
2 ответа
Спецификация ArchiMate гласит:
- Функция приложения описывает внутреннее поведение компонента приложения.
- Прикладной компонент может быть назначен прикладной функции (что означает, что прикладной компонент выполняет прикладную функцию).
Обычно мы используем компонент приложения для представления приложения, системы или программы. Примеры: система управления документами, система CRM, веб-портал, финансовое приложение. И мы используем функцию приложения для представления функции, предлагаемой компонентом. Пример: Биллинг, Бухгалтерия, Подготовить предложение
Мастеринг Archimate Гербером Вибером описывает отношение присваивания (от компонента приложения к функции приложения), как будто компонент выполняет функцию. Основываясь на вашем примере, телефонное приложение будет компонентом приложения, голосовой вызов будет службой приложения, а функция приложения будет что-то вроде алгоритма сжатия голоса. Компонент приложения телефона выполняет функцию сжатия, а также несколько других функций для реализации услуги голосового вызова.
Я думаю, что имеет смысл назначать функцию компоненту. Однако я предполагаю, что архивный компонент сам по себе является архетипом, а не конкретным программным или аппаратным компонентом (как в компоненте uml или моделях развертывания). Было бы разумно, чтобы (архетипический) компонент содержал функции, а эти функции, в свою очередь, реализуются каким-либо другим выражением структуры программного или аппаратного обеспечения. Таким образом, ваш архетипический телефон будет содержать функцию голосового вызова, но эта функция, в свою очередь, будет реализована с помощью некоторого набора программного и аппаратного обеспечения, которое составляет ваш реальный телефон. Хммм.... теперь я запутываю себя!