Доступность вычислительных мощностей, интеграция в единые сети, возможность обработки большого числа данных - все эти реалии нашей жизни
сформировали новые требования к индустрии программных продуктов. Жизненный цикл "ПО" уже не исчисляется годами, бизнес
ждет новые решения, обеспечивающие конкурентные преимущества в режиме on-line. Важным требованием при этом остаётся
снижение стоимости владения ИТ-услугами на предприятии.
Обеспечение данных требований возможно при наличии систем,
позволяющих быстро проектировать информационные приложения. С обязательным сохранением высокого качества конечных решений
и предоставлением средств поддержки и интеграции различных элементов структуры в единое информационное поле.
Мировая индустрия информационных технологий предоставляет широкий спектр решений, обеспечивающих данные требования.
Однако рост требований на "новое ПО", на снижение времени и затрат на модификацию имеющегося программного обеспечения,
уменьшение срока полезного действия конечных приложений, привело к тому, что количество людей вовлеченных в процесс
создания программ увеличивается от года к году.
Платформа Miracle задумывалась как "конвейер" позволяющий создавать сложные программные приложения на
высоком уровне абстракции, через оперирование готовыми компонентами для создания конечного решения. В качестве основы
технологии разработки логики решения была выбрана концепция "конечных автоматов", предоставляющая организационный принцип
разработки и реализации сложного поведения в управляемых событиями программах.
Используя концепцию "автоматов" возможно производить быстрое проектирование приложений по схеме "событие - реакция",
которая обеспечивает такое поведение программы, при котором реакция на события зависит от предыдущих событий.
Базовые свойства компонентов (автоматов):
Событие - ответная реакция компонента на команды
Состояние - положение, в котором пребывает компонент между событиями
Переход - процесс смены состояния компоненты
Команда - действие, выполняемое в процессе переходов
Свойства - базовые параметры компонента, настройка которых позволяет придать необходимую конфигурацию каждому экземпляру компонента
Набор автоматов (компонентов) и заданных связей между ними позволяет создать матрицу решения, в которой фактическое
исполнение логики будет зависеть от точки начала работы автоматов в системе. Поведение решения управляется многими
различными типами событий, а реакция на определенное событие зависит от последовательности предыдущих событий.
События, которые управляют конечными автоматами, могут быть внешними по отношению к компьютеру и исходить от клавиатуры, мыши, таймера или сетевой устройств (приборов). Или внутренними, исходящими от других компонентов приложения или от других программ.
Стоить отметить, что разработка приложений в рамках концепции "конечных автоматов" отличается от обычного процедурного программирования. Основа парадигмы программирования представляется в формате проектирования сети компонентов с набором предопределенных отношений. При наличии опыта, конечный результат можно получить за более короткое время, обеспечить меньшую продолжительность тестирования и своевременное сопровождение готовых систем.
Первая реализация платформы для проектирования приложений на базе механизма описаний состояний компонентов и переходов между ними,
была представлена в 1995г. в программном пакете "Miracle"(СВИДЕТЕЛЬСТВО об официальной регистрации программ для ЭВМ №980228)
Вторая реализация платформы представлена в программном продукте "Miracle plus". Новая реализация обеспечивает не только быстрое проектирование приложений в рамках концепции конечных автоматов. Она также обеспечивает и кроссплатформенное исполнение готовых решений. В рамках дальнейшего развития ведутся работы по обеспечению режима параллельных вычислений.
Платформа "Miracle plus", реализованная для ОС - Windows, представлена в 2008г.. С её помощью можно получить высокое
качество конечных приложений, снизить время на проектирование программы, и облегчить внесение изменений
в эксплуатируемые проекты.
В новой версии принципиально переработан механизм ведения проекта приложений. В рамках приложения "Miracle - Studio",
добавлены новые средства проектирования компонентов системы, с помощью формирования технологической схемы через
встроенную систему автоматизированного проектирования логической структуры, в нотации CAD проектирования.
Представлено два режима ведения проекта, обеспечивающих быстрое прототипирование логики конечного решения.
Обеспечивается представление отладочной информации, как в режиме потока событий, так и в режиме сетевого графика потока
событий. Структура приложений оформлена в виде XML-документов, выполнение которых обеспечивается Miracle-машиной.
Имеется реализация Miracle-машин для операционных сред Windows, Linux, QNX-в разработке, что позволяет
использовать приложения не только на уровне персонального компьютера, но и в составе специализированных вычислительных устройств.
Среда быстрой разработки приложений Miracle plus ориентирована как на построение пользовательских приложений
верхнего уровня и обеспечивающих решение конечных задач, так и на решение задач связующего характера.
Т.е. предоставление средств (программных приложений промежуточного слоя) класса middleware, для решения задач унификации
при интеграции различных информационных систем.