Диссертация (Платформа для создания специализированных визуальных сред разработки программного обеспечения), страница 3
Описание файла
Файл "Диссертация" внутри архива находится в папке "Платформа для создания специализированных визуальных сред разработки программного обеспечения". PDF-файл из архива "Платформа для создания специализированных визуальных сред разработки программного обеспечения", который расположен в категории "". Всё это находится в предмете "технические науки" из Аспирантура и докторантура, которые можно найти в файловом архиве СПбГУ. Не смотря на прямую связь этого архива с СПбГУ, его также можно найти и в других разделах. , а ещё этот архив представляет собой кандидатскую диссертацию, поэтому ещё представлен в разделе всех диссертаций на соискание учёной степени кандидата технических наук.
Просмотр PDF-файла онлайн
Текст 3 страницы из PDF
Результаты, представленные в диссертационной работе,получены соискателем либо самостоятельно, либо при его непосредственномучастии. Над проектом QReal работала большая группа студентов, аспирантов ипреподавателей кафедры системного программирования СПбГУ, автор претендуетлишь на результаты, явно перечисленные в списке положений, выносимых назащиту.Публикация результатов.
Результаты диссертационной работы представлены в22 публикациях. Основные результаты опубликованы в 4 статьях ([3], [30], [42], [53])в журналах из перечня российских рецензируемых научных журналов, в которыхдолжны быть опубликованы основные научные результаты диссертаций насоискание учёных степеней доктора и кандидата наук.Работы [5], [7], [29], [30], [32], [38-43], [47-50], [53], [72], [111], [132] написаны всоавторстве. В работах [48-50] и [53] диссертанту принадлежит разработкаархитектуры и реализация основных модулей платформы QReal, А.
Н. Терехову –постановка задачи, Ю. В. Литвинову – разработка средств метамоделирования ([53])и разработка компонент, специфичных для программирования роботов ([48-50]). Вработе [72] диссертанту принадлежит разработка генератора кода и редактораэкранных форм, А. Н. Терехову и В. В. Оносовскому – интеграция решения с13платформой Ubiq Mobile, Ю. В.
Литвинову – реализация диаграммных языков иредакторов для них. В работах [32] и [132] диссертанту принадлежит реализациямеханизмараспознаванияЮ. В. Литвинову–жестовсозданиемышьюинструментовнауровнезаданияплатформы«идеальныхQReal,жестов»,М. С. Осечкиной – реализация алгоритмов классификации жестов мышью ипостановка экспериментов. В работах [29], [30] и [111] диссертанту принадлежитархитектурарешенияиреализацияосновныхкомпонентплатформы,Ю. В.
Литвинову – разработка средств метамоделирования, А. С. Кузенковой –реализация некоторых частей метаредактора QReal, А. В. Подкопаеву – реализациясредств генерации кода, А. О. Дерипаска – реализация редактора форм элементов,В. А. Полякову – реализация механизма преобразования графов.
В работах [5] и [7]диссертанту принадлежит архитектура решения и реализация основных компонентплатформы, Ю. В. Литвинову – разработка средств метамоделирования. В работах[38-43] и [47] автору принадлежит постановка задачи, реализация архитектуры иинтеграция решений, запрограммированных соавторами.Ниже приведён краткий план последующих глав диссертации.В главе 1 приводится общее описание модельно-ориентированного подхода кразработкепрограммногообеспечения,приводятсяпримерыподходовиметодологий, основывающихся на модельно-ориентированной разработке, даетсяописание предметно-ориентированной парадигмы к разработке ПО, обсуждаетсяструктура визуальных языков, уровни моделей, вводятся определения и понятия,важные для дальнейшего изложения.Глава 2 содержит описание функциональности типичных CASE-систем,рассматриваются некоторые из существующих DSM-платформ, используемые длясоздания промышленных DSM-решений, для каждой из которых делаются выводы овозможности создания сред визуальной разработки с определенным наборомфункциональности.
Делается вывод о необходимости разработки современных DSM-14платформ, позволяющих создавать визуальные интегрированные среды разработки,достаточно функциональные, чтобы быть применимыми в промышленности, идостаточно удобные, чтобы приносить реальную пользу разработчикам.Глава 3 посвящена обсуждению влияния степени удобства использованиявизуальной IDE на желание и продуктивность использования подобных средствразработчиками ПО. Приводится описание средств, реализованных в платформеQReal для повышения удобства использования DSM-решений на основе даннойплатформы — распознавание жестов мышью как средство быстрого созданияэлементов и связей между ними на диаграммах, использование графическихэлементов управления для изменения свойств элементов как части визуальногопредставления этих элементов на диаграммах, реализация некоторых эвристик языкаДРАКОН.Глава 4 посвящена вопросу создания исполнимых визуальных языков.Рассматриваются виды семантик и существующие способы задания исполнимойсемантики для визуальных языков.
Приводится описание решения, реализованного вплатформе QReal — описывается язык задания семантики визуальных языков, атакже инструментальные средства для использования этого описания семантики дляавтоматизированного создания визуальных интерпретаторов языков на основеформальной модели сетей Петри.Глава 5 содержит описание предметно-ориентированной платформы QReal, вэтой главн обсуждается назначение и общая архитектуры платформы, краткоописывается назначение основных модулей и взаимодействия между ними. ДалееприводитсясоставтиповогоDSM-решениянаосновеплатформыQReal,перечисляется набор инструментов, его составляющих.
Для каждого инструментаприводится описание его функциональности и ситуаций при разработке ПО, вкоторых данный инструмент будет полезен пользователям DSM-решения. Такжеприводятся некоторые реализационные особенности, показывающие способы15интеграции описанных инструментов с базовой платформой QReal.Глава 6 содержит примеры применения результатов, описанных в даннойдиссертации, для разработки DSM-решений — среды для программированияроботов QReal:Robots, среды на основе языка блок-схем, DSM-решения дляразработки мобильных приложений для платформы Ubiq Mobile, а также решения наоснове диаграмм машин состояний для проекта компьютерного зрения.
Для каждойсреды разработки приводится описание конечной функциональности, обсуждаютсярасширения платформы QReal, которые было необходимо сделать для реализацииданного решения, а также специфичная функциональность, которую пришлосьреализовывать “вручную”. Описывается эксперимент по сравнению платформыQReal с двумя другими популярными платформами (MetaEdit+ и Eclipse Sirius),делаются выводы о применимости полученных в работе результатов.Приложение A содержит обзор исследований, проводимых на тему внедренияCASE-систем в производственный процесс, анализируются причины их возможногонеиспользования разработчиками.В Приложении B приводится обзор и сравнение подходов к заданиюисполнимой семантики визуальных языков.В Приложении C описывается реализованный в рамках диссертационнойработы алгоритм поиска подграфа в графе модели, хранящейся в репозитории QReal.В Приложении D приводятся копии актов о внедрении разработанной в рамкахисследования платформы.В заключении приведены итоги выполненного исследования, рекомендации иперспективы дальнейшего развития.16Глава 1.
Модельно-ориентированная разработка1.1. ВведениеВ данной главе описан контекст работы и базовые понятия, которые будутиспользоваться в последующих главах. Рассматриваются наиболее популярныеподходы к разработке ПО, использующие модели, описывается структуравизуальных языков и уровни моделирования.1.2. Разработка ПО и моделиТрадиционно в инженерных дисциплинах технологический процесс состоит издвух принципиально различающихся этапов — проектирования и реализации. Напервом этапе разрабатывается модель создаваемого изделия, которая в дальнейшемиспользуется как эталон на этапе реализации. Чаще всего модели представляются ввиде чертежей, описывающих ключевые особенности создаваемого изделия.Попытки применить данный подход напрямую к программной инженериисталкиваются с рядом проблем, связанных с невидимостью и нематериальностьюпрограмм [70].
Например, при вытачивании детали на станке или строительстведома человек имеет в голове мысленный образ изделия, который как в процессе, таки по завершении изготовления может быть сравнен с получающимся продуктом. Спрограммным обеспечением всё по-другому — ни исходные тексты в силу своегообъема и сложности, ни определенные внешние проявления работы программы(экранные формы, создаваемые файлы, посылаемые сообщения и т.п.) не могутполностью охарактеризовать ту или иную программу как объект физического мира.А как можно эффективно и подконтрольно создавать то, что невозможнопредставить?Возникают различные метафоры визуализации [27] — способы формально17сопоставить абстрактные части ПО зрительно воспринимаемым объектам.
Внастоящее время наиболее часто применяемой метафорой визуализации ПОявляются графы — вершины обозначают определённые сущности, а рёбра —определённые связи между ними. Для разных языков сущности и связи между нимимогут быть как абстрактными (объекты, классы, состояния, блоки ветвления ициклов и т.п.), так и вполне конкретными объектами и действиями целевойпредметной области (например, база данных, температурный датчик, присылающийзначения в систему, внешнее устройство, которым система может управлятьпосылкой сообщений, и многое другое).Модельно-ориентированная разработка (Model-driven engineering, MDE) ПОосновывается на представлении программы в виде набора моделей, представляющихее с различных точек зрения.
При этом обычно используются визуальные языкимоделирования, с помощью которых создаются разного уровня абстракции описанияпредметной области, разрабатываемой системы и взаимодействующего с нейокружения. Различные методологии и подходы к разработке в рамках MDE поразному используют полученные при моделировании диаграммы: например, дляфиксирования и формализации знаний при сборе и анализе требований, для общенияс заказчиком или между членами команды разработчиков, для спецификации ивизуализацииархитектуры,дляразделениязадачиорганизациимногопользовательской разработки или даже для генерации по ним целевого кодаразрабатываемой системы.Рассмотрим некоторые методологии и подходы к разработке, основанные наиспользовании визуальных моделей.1.3.