Приложение на основе модели — это программное приложение , функции или поведение которого основаны на некоторых эволюционных прикладных моделях целевых вещей для приложения или контролируют их. Прикладные модели обслуживаются как часть прикладной системы, в которой они могут быть изменены во время выполнения. Целевые вещи — это то, с чем имеет дело приложение, например, объекты и дела в бизнесе для бизнес-приложения. Следуя определению приложения в TOGAF [1] , бизнес -приложение на основе модели можно описать как ИТ-систему, которая поддерживает бизнес-функции и службы, работающие на моделях (вещей в) бизнесе.
Идеал архитектуры для управляемого моделью приложения был впервые предложен Тонг-Ин Ю на Форуме по инжинирингу предприятий в 1999 году, который изучался и распространялся через некоторые интернет-СМИ в течение длительного времени. Он оказал влияние на область разработки корпоративных приложений в Китае; были успешные случаи коммерческой разработки корпоративных/бизнес-приложений в архитектурном стиле управляемого моделью приложения. [2] Gartner Group провела некоторые исследования по этому вопросу в 2008 году; они определили управляемые моделью пакетные приложения как «корпоративные приложения, которые имеют явные управляемые метаданными модели поддерживаемых процессов, данных и отношений, и которые генерируют компоненты времени выполнения с помощью моделей метаданных, либо динамически интерпретируемых, либо компилируемых, а не жестко закодированных ». [3] Управляемая моделью архитектура приложений является одной из немногих технологических тенденций, которые будут способствовать следующему поколению модернизации приложений , что было заявлено некоторыми промышленными исследователями в 2012 году. [4]
Управление бизнес-процессами (BPM) является важной практикой для приложения на основе моделей. Согласно определению, система BPM является системой на основе моделей, если функции выполняются на основе моделей бизнес-процессов, которые создаются и изменяются во время эксплуатации, а не во время проектирования или внедрения; самое большое преимущество заключается в том, что она может напрямую справляться с непрерывным изменением бизнес-процессов, не изменяя код программного обеспечения.
Обратите внимание, что его следует отличать от архитектуры, управляемой моделями (MDA); последняя представляет собой подход к проектированию программного обеспечения для разработки программных систем и, как правило, не определяет конкретный стиль системы или конфигурацию среды выполнения.