Поддержка нотации UML и автоматное программирование

Использование объектной методологии порождает желание, как можно дольше работать в терминах объектной модели и переходить к тексту программы либо, в крайнем случае, либо в самом конце процесса проектирования. Это желание породило UML [7]с его графическим представлением модели объекта, оформлением его в виде соответствующих диаграмм и генерацией программы, реализующей эту модель. Этот процесс принято называть прямым проектированием, в противовес ему процесс создания модели по программе называют обратным проектированием. Другими словами прямое проектирование это процесс трансляции диаграмм модели в программу для целевой машины. Технология FloraWare в качестве целевой предполагает объектную машину, поэтому процесс проектирования кардинально отличается от общепринятых, приближаясь к идеальному с точки зрения UML. Достигается это наличием во FloraWare объектов, аналогичных диаграммам UML, в качестве примера можно привести само дерево объектов FloraWare, которое соответствует в UML диаграмме объектов и объект Конечный автомат, реализующий диаграмму состояний UML. Отсутствие этапа генерации программы позволяет сделать вывод, что в FloraWare прямое и обратное проектирование слились в единый процесс разработки и исполнения приложений. В любой момент, вызвав редактор, можно изменить приложение, что соответствует прямому проектированию, в тоже время сам вызов редактора объекта является частью обратного проектирования

Поддержка нотации UML и автоматное программирование - student2.ru

Рисунок 5 - Подражание UML: всевозможные диаграммы (в натуральную величину)

Можно сказать, что проектирование во FloraWare если не по содержанию, то по духу полностью соответствует методологии UML. В качестве примера можно привести использование автоматного программирования [8].

Поддержка нотации UML и автоматное программирование - student2.ru

Рисунок 6 - Объект Конечный автомат. Запись алгоритма в виде диаграммы состояний (в натуральную величину)

Конечные автоматы органично вписались во FloraWare. Это обусловлено тем, что в отличие от известных реализаций, где, в конечном счете, конечный автомат представляется в виде текста на языке программирования и вставляется в объемлющую программу, во FloraWare конечный автомат с самого начала представляет собой объект, реализованный на уровне ядра объектной машины.

Поддержка XML

Под поддержкой XML [9] во FloraWare понимается нечто большее, чем просто работа с сообщениями известного формата и известными методами. Определяющей является древовидная структура данных объектной машины, позволяющая работать по правилам DOM не только с данными межпрограммного обмена, но и со всеми внутренними данными.

FloraWare поддерживает импорт и экспорт данных в XML формате, что позволяет легко интегрировать ее в современную информационную инфраструктуру. Но, пожалуй, гораздо более важно то, что FloraWare позволяет естественным образом отобразить XML документ на свое дерево и предоставляет свои универсальные и специализированные средства для обработки этого документа. Для этой цели имеются базовые классы Документ, Входной XML курсор и Выходной XML курсор, с помощью которых на объектном уровне, то есть не программно, реализована обработка XML документов. Эти же объекты являются и основой реализации SOAP и WSDL.

Наши рекомендации