- •Федеральное агентство по образованию
- •I. Объектно-ориентированное проектирование приложений
- •1.1. Технология проектирования ооп
- •1.1.1. Принципы ооп
- •1.1.2. Этапы разработки программных систем с использованием ооп
- •1.2.Mda-архитектура
- •1.2.1. Модель приложений и типы моделей
- •1.2.2. Этапы разработки mda-приложений
- •1.3. Унифицированный язык моделирования uml
- •1.4. Bold — реализация mda в Delphi
- •II. Разработка программного продукта
- •2.1. Проектирование приложения «Магазин бытовой техники»
- •2.1.1. Создание модели приложения
- •Описание классов модели приложения:
- •2.1.2. Импорт модели в BorlandMda
- •2.1.3. Создание графического интерфейса
- •2.2. Руководство пользователя
- •2.2.1. Установка и запуск
- •Установка программы «Магазин бытовой техники»
- •Запуск программы «Магазин бытовой техники»
- •2.2.2. Начало работы с приложением «Магазин бытовой техники»
- •2.2.3. Работа с программой
- •Заключение
- •Список литературы
- •Приложение Основной модуль приложения
- •Модуль описание классов бизнес-модели
- •Модуль регистрации пользователя как директора
- •Модуль смены пароля администратора
- •Модуль данных - связь бизнес-уровня и графического интерфейса
- •Модуль смены пароля администратора
- •Модуль редактирования информации о товаре, хранящегося на товарных базах
- •Модуль добавление новой товарной базы
- •Модуль отображения заставки
- •Модуль ввода количества заказываемого товара
- •Модуль отображения информации о программном продукте и разработчике
1.2.Mda-архитектура
В настоящее время существует новейшая технология создания программного обеспечения — Model Driven Architecture.
Model Driven Architecture (MDA) дословно переводится как «архитектура, управляемая моделью». Концепция MDA разрабатывается консорциумом OMG (Object Management Group), в который сегодня входит более 800 компаний — производителей программного и аппаратного обеспечения.
MDA предлагает новый интегральный подход к созданию многоплатформенных приложений, с обеспечением возможностей взаимодействия между этими приложениями.
1.2.1. Модель приложений и типы моделей
В основе MDA лежит идея выделения в качестве самостоятельного и обязательного этапа разработки логики функционирования приложения (бизнес-логики). Согласно концепции MDA разработка приложения должна начинаться с этапа создания модели приложения, которая определяет состав, структуру и поведение будущего программного продукта. Такая модель создается не на языке программирования, а посредством языка унифицированного моделирования (Unified Modelling Language, UML) и является платформенно-независимой (Platform Independent Model, PIM), то есть при ее создании разработчик полностью абстрагируется от особенностей конкретных программных и аппаратных средств реализации приложения.
На втором этапе, после создания PIM, создаются одна или несколько платформенно-зависимых моделей PSM (Platform Specific Model), которые являются своеобразными адаптерами, обеспечивающими интеграцию PIM с одной или несколькими технологиями разработки программных продуктов. Кроме того, создается специальный набор программных интерфейсов, используемый в дальнейшем для взаимодействия данного приложения с другими.
Наконец, на заключительном этапе, на основании PIM и PSM генерируется код приложения и, при необходимости, база данных. В случае наличия нескольких PSM процедура генерации может проводиться несколько раз — для каждой из используемых платформ. При этом генерация кода и баз данных осуществляется автоматически, посредством специальных инструментальных программных средств.
Таким образом, в соответствии с концепцией MDA главный акцент при разработке приложений переносится с собственно этапа программирования на этап создания модели. К тому же, создав модель один раз, разработчик получает принципиальную возможность генерации приложений для разных аппаратных и программных платформ.
Следует отметить, что MDA не является, по замыслу OMG, конкурентом какой-либо из существующих технологий (платформ) создания приложений (CORBA, .NET, J2EE, Sun ONE и т.д.). MDA находится на более высоком уровне обобщения процесса разработки, позволяя на этапе создания PIM-модели абстрагироваться от этих платформ, на следующем этапе выбрать одну или несколько платформ разработки и создать соответствующий набор PSM-моделей и, наконец, на этапе генерации кода получить приложение, функционирующее на этих платформах. Консорциум OMG полагает, что данный подход можно будет применять не только для существующих в настоящее время технологий разработки, но и для любых будущих технологий при условии создания для них соответствующих адаптеров (PSM-моделей).
Таким образом, OMG считает архитектуру MDA не просто новой технологией, а скорее «метатехнологией» создания приложений, которая отныне будет единственно актуальной, независимо от развития и появления новых средств разработки, которые MDA уже «заранее интегрировала» в себя.
Преимущества, которые дает MDA разработчикам, очевидны: локализация всей логики приложения в одном месте (то есть в модели), автоматическая генерация кода и баз данных, а в перспективе — и графического интерфейса пользователя. Если заглянуть дальше, то сценарий создания приложений будет выглядеть примерно так: создается модель, которая поступает на вход специальной программы, а на выходе генерируются готовое приложение и база данных. При необходимости изменения вносятся в модель, и затем процедура генерации повторяется, причем без внесения изменений в код приложения. Из этого следует, что само понятие «разработчик программного обеспечения» может при внедрении MDA довольно сильно видоизмениться. Вследствие смещения акцента на создание модели разработкой приложений будут заниматься не столько программисты, сколько специалисты, владеющие описываемой предметной областью. При этом языком описания является унифицированный язык моделирования UML.