Обнаружил замечательный инструмент для моделирования и кодогенерации StarUML. Что в нем хорошего для разработчика?
Я достаточно плотно использую для этих целей PowerDesigner, но его цена на лицензию и некоторая избыточность и громоздкость настройки этого супер-инструмента для целей именно MDA/MDD небольших проектов (около 100К строк кода), заставляют искать альтернативы, оставляя за PowerDesigner непосредственно проектирование баз данных в более крупных разработках. Итак, StarUML.
Во-первых, бесплатный и с открытым кодом. Проект был передан в открытое пользование уже в зрелом виде в 2005 году после 10 лет развития и реального применения. После этого вышел еще один релиз, состояние стабильное.
Во-вторых, легко расширяем с разных сторон: как декларативными описаниями профилей (стереотипы и дополнительные атрибуты пользователя), так и модулями (COM add-in или сценарии на VBScript/JavaScript).
Документация разработчика доступна и на русском, хотя для меня это не критично, но приятно, да и перевод корректный.
Поддерживает визуальную среду моделирования на базе UML в соответствии со стандартами 1.х и 2.
В общем, расширь модель, напиши кодогенератор под разрабатываемую систему и ощути все прелести MDA/MDD.