Эффективная реализация расширяемой метамодели case-средства на основе uml 0




Скачать 254.72 Kb.
НазваниеЭффективная реализация расширяемой метамодели case-средства на основе uml 0
страница1/6
Дата публикации22.06.2013
Размер254.72 Kb.
ТипДипломная работа
www.lit-yaz.ru > Информатика > Дипломная работа
  1   2   3   4   5   6
Санкт-Петербургский Государственный Университет

Математико-механический факультет

Кафедра системного программирования

Эффективная реализация расширяемой метамодели CASE-средства на основе UML 2.0

Дипломная работа студента 544 группы

Бакалова Михаила Александровича


Научный руководитель ………………. А.Н. Терехов

д.ф.-м.н., профессор
Рецензент ………………. А.Н. Замышляев

аспирант кафедры системного

программирования СпбГУ

«Допустить к защите» ………………. А.Н. Терехов

заведующий кафедрой,

д.ф.-м.н., профессор

Санкт-Петербург,

2007

Содержание


Научный руководитель ………………. А.Н. Терехов 1

д.ф.-м.н., профессор 1

Рецензент ………………. А.Н. Замышляев 1

аспирант кафедры системного 1

программирования СпбГУ 1

«Допустить к защите» ………………. А.Н. Терехов 1

заведующий кафедрой, 1

д.ф.-м.н., профессор 1

Санкт-Петербург, 1

2007 1

Содержание 1

Введение 3

Контекст работы 4

Постановка задачи 11

Предлагаемое решение 12

Заключение 24

Список литературы 25

Приложения 27




Введение


Предметом рассмотрения является инструментальная поддержка подхода визуального моделирования, который используется на различных стадиях разработки программного обеспечения. Визуальное моделирование является развивающейся областью программной инженерии, и одним из направлений его развития является создание программных средств визуального моделирования, настраиваемых под предметную область. Это означает, что, используя такое средство, пользователь может создавать в нём не только заранее определенный класс моделей, а имеет возможность создавать собственные виды моделей, лучше подходящих для описания предметной области, в которой он работает.

Такие модели получаются более краткими, более простыми и более выразительными. Это упрощает процесс разработки программного обеспечения (ПО), потому что более выразительные модели делают ПО, ориентированное на конкретную предметную область, более понятным, так как лучше подходят для его визуализации.

В работе рассматривается эволюция CASE-средсва REAL, разработанного на кафедре системного программирования СПбГУ, в сторону поддержки моделей, ориентированных на предметную область. Рассматриваются различные существующие подходы к реализации подобной функциональности, применяющиеся в таких средствах как, например, Microsoft Visio и Eclipse GMF. Предлагается собственный подход, основанный на рассмотренных существующих решениях, но оптимизированный под задачу быстрого создания 13 редакторов диаграмм UML 2.0 [1]. Подход реализован в прототипе новой технологии REAL-MVC и описан в основной части работы.
^

Контекст работы

Изначальная задача

Новая версия технологии REAL


Изначальной задачей, поставленной перед нашей командой, было создание новой версии CASE-пакета REAL. Необходимо было заново реализовать основную часть системы, сохранив при этом идею существующей методологии. Причиной принятия решения о новой реализации послужило стремление сделать технологию более современной. Во-первых, требовалась поддержка нового стандарта UML 2.0, который значительно отличается от используемого в REAL cинтеза UML и SDL. Во-вторых, было решено добавить новую функциональность и особенности: многопользовательский репозиторий, многоплатформенность, более совершенный интерфейс. Необходима стала также и поддержка новых современных платформ, таких как J2EE, Microsoft.NET, Ruby on Rails.

Изменений требовалось слишком много, и большинство из них были не совместимы со старой реализацией. Таким образом, было принято решение о написании системы заново. К этому времени уже существовали некоторые наработки, которые послужили основой новой системы: новая графово-графическая библиотека, написанная для REAL на C++ студентом Антоном Косякиным в рамках курсовой работы 3го курса.

Архитектура новой системы разрабатывалась с учетом ряда требований, наиболее важными из которых являются: многоплатформенность (поддержка как Microsoft Windows, так и Linux-систем) и слабая связанность отдельных компонент. Ниже приводится схема новой архитектуры, основанной на распространённом шаблоне Model-View-Controller [10]: акцент сделан на разбиении на компоненты и достижении многоплатформенности.



Основные компоненты таковы:

  1. Controller – отвечает за обмен сообщениями между остальными компонентами. Агрегирует все сообщения и доставляет их адресату, таким образом достигается слабая связанность. Controller – не зависит от платформы, его код не меняется при портировании.

  2. Model и Repository – модель. Наборы классов предметной области, представляющие логические сущности на диаграммах: узлы, связи, и.т.п. Сюда также относится и репозиторий – хранилище диаграмм. Эти компоненты тоже не требуется изменять при портировании на другую платформу (операционную систему).

  3. User Interface и View - компоненты пользовательского интерфейса. Они строятся поверх графических абстракий (таких как точка, линия, кнопка, окно) и, поэтому, также являются платформо-независимыми и не требуют изменений при портировании.

  4. Graphical Environment – библиотека классов, реализующих вышеупомянутые графические абстракции. Это – единственная компонента системы, которую необходимо реализовывать заново для каждой платформы. На данный момент существуют 2 её реализации: на основе MFC (Microsoft Foundation Classes, платформа Windows) и на основе Qt (платформы Linux и Windows).
^

Реализация UML 2.0


Реализация UML 2.0 в рамках новой архитектуры была моей основной задачей в этом проекте. Рассмотрим, какое место ей отводилось по изначальной задумке.



Реализация должна была основываться на понятии редактора. Редактор – программный модуль, реализующий:

  1. Логические сущности – элементы диаграмы;

  2. Определённые в стандарте UML 2.0 правила компоновки элементов друг с другом для создания диаграммы;

  3. Определенные в нотации UML 2.0 графические представления логических элементов.

Должно было быть создано по одному редактору на каждый вид диаграммы, определенный стандартом UML 2.0 (всего их 13). Предполагалось, что редактор будет находиться на границе компонент Model и View, для поддержки каждого вида диаграммы необходимо было много программного кода:

  1. Классы элементов диаграмм – по одному на каждый элемент;

  2. Классы, реализующие графическое представление – по одному на каждый элемент;

  3. Классы, реализующие набор логических правил для компоновки элементов – неопределенное количесво (обычно 3 или 4) на каждую диаграмму.

После ручной реализации нескольких редакторов в соответствии с данным подходом, было замечно множество недостатков:

  1. Программный код, отвечающий за рисование графических элементов, трудно писать и отлаживать. Требутся перекомпиляция при каждом изменении координат линий, стилей и размеров шрифтов, и.т.п.;

  2. Классы логических сущностей похожи друг на друга;

  3. Необходимо много повторяющегося кодирования. Получающийся программный код редакторов трудно модифицировать и сопровождать.
  1   2   3   4   5   6

Добавить документ в свой блог или на сайт

Похожие:

Эффективная реализация расширяемой метамодели case-средства на основе uml 0 icon«Технологии разработки программного обеспечения»
Целью лабораторных работ является обучение студентов построению uml диаграмм. В результате выполнения лабораторных работ студенты...

Эффективная реализация расширяемой метамодели case-средства на основе uml 0 iconЗадачи проекта Перед проектом стоят следующие задачи: Проведение...
Сократить время создания и изменение uml-диаграмм типа Activity Diagram с помощью редактора uml-диаграмм

Эффективная реализация расширяемой метамодели case-средства на основе uml 0 iconЗадание 1: Прочитай стих. Задание 2: Use of Accusative case (orally)....
Задание 4: New vocabulary and review the verbs учить, изучать, учиться, заниматься (on the board)

Эффективная реализация расширяемой метамодели case-средства на основе uml 0 iconГенерация программ на языке eiffel на основе uml модели
В основном программы выполняли специфические, узкоспециализированные задачи, которые могли решаться небольшим количеством людей....

Эффективная реализация расширяемой метамодели case-средства на основе uml 0 iconГосударственные экономические стратегии
Особое место уделено XX в и современной ситуации в России. В основе анализа лежат банковские системы. Нарисована картина исторического...

Эффективная реализация расширяемой метамодели case-средства на основе uml 0 iconСостав
«Языковые процессоры интеллектуальных систем и интеллектуализация case-технологий»

Эффективная реализация расширяемой метамодели case-средства на основе uml 0 iconПлатов Антон Магические Искусства Древней Европы
Дикой Охоте, и предания о драконах, и тайны рунических письмен. И, может быть, самое главное: все эти тайные искусства выступают...

Эффективная реализация расширяемой метамодели case-средства на основе uml 0 iconУрок русского языка в 7 классе Тема урока
Цель урока: Помочь учащимся определить роль наречий в речи а как средства более точного и образного выражения мысли б как средства...

Эффективная реализация расширяемой метамодели case-средства на основе uml 0 iconHave something to do, in the unlikely event you finish early. Behavior...
Ы or an И. In the Genitive case, it is applied only in the feminine- у книги у наташи

Эффективная реализация расширяемой метамодели case-средства на основе uml 0 icon«Реализация образовательного проекта в доу «Моя семья – мое богатство»,...
Воспитание подрастающего поколения в современном обществе является предметом особой заботы. Его успех определяется единством и согласованностью...



Образовательный материал



При копировании материала укажите ссылку © 2013
контакты
www.lit-yaz.ru
главная страница