Автореферат (1148238), страница 2
Текст из файла (страница 2)
Вкачестве методов исследования используются теория формальных языков, теория графов,методы объектно-ориентированного программирования, эмпирические методы (анализалитературы, постановки и проведения инженерных экспериментов).Научная новизна данной работы заключается в следующем.1.Предложенный метод, позволяющий автоматически генерировать средствараспознавания жестов для графического редактора создаваемого языка поописанию конкретного синтаксиса этого языка, является новым.2.Созданная на базе разработанной платформы система программированиядиаграмм машин состояний для задачи распознавания жестов в проектекомпьютерного зрения является оригинальной.3.Разработаннаяпрограммнаяплатформадлясозданияпредметно-ориентированных решений превосходит существующие аналоги по объёмуфункциональныхвозможностей,предоставляемыхразработчикаминструментальных средств с помощью единого программного интерфейса.Теоретическая и практическая значимость работы. Теоретическая значимостьдиссертационного исследования заключается в создании метода автоматическогосоздания механизмов распознавания жестов диаграммных редакторов, а также вразработке архитектуры программной платформы, позволяющей гибкую настройку подтребования задачи.
Практическая значимость определяется использованием полученныхрезультатов для разработки DSM-платформы QReal, а также созданием на её основе рядаDSM-решенийдляразличныхпредметныхобластей:средывизуальногопрограммирования роботов QReal:Robots, используемой для обучения школьниковосновам программирования и кибернетики, редактора диаграмм машин состояний игенератора кода по нему для приложений компьютерного зрения, использовавшихся впроектах ЗАО «ЛАНИТ-Терком», а также нескольких исследовательских сред разработкидля апробации различных аспектов технологии и инструментальных средств платформы –визуальной среды разработки, основанной на языке блок-схем, среды для разработкимобильных приложений для платформы Ubiq Mobile4.Среда QReal:Robots демонстрировалась на Открытых состязаниях Санкт-Петербургапо робототехнике в 2012, 2013, 2014 и 2015 году, на робототехнических фестивалях4Платформа Ubiq Mobile, URL: http://ubiqmobile.com/ (дата обращения: 18.04.2015)6«Робофест 2012» и «Робофест 2013» в Москве.
На базе QReal:Robots был проведен рядмастер-классов, в том числе и на международных конференциях Skolkovo Robotics 2014 и2015. В настоящий момент среда QReal:Robots переименована в TRIK Studio ииспользуется как основное средство программирования кибернетической платформыТРИК, в ряде робототехнических кружков России, применяется для обучения студентовПоволжской государственной социально-гуманитарной академии (г. Самара), а также намастер-классах, проводимых ООО «КиберТех».Положения, выносимые на защиту.1.Предложен метод для создания инструментов распознавания жестов длядиаграммных редакторов предметно-ориентированных языков.2.Разработан метод формального задания операционной семантики предметноориентированных визуальных языков, позволяющий автоматически создавать дляних интерпретаторы и отладчики.3.Предложена модель (архитектура) программного комплекса (DSM-платформы),позволяющего автоматизированно создавать большинство типовых компонентовсовременных CASE-систем.4.Выполнена реализация и апробация созданной DSM-платформы на практическихзадачах,подтвердившаяработоспособностьсозданныхинструментовиДостоверностьипредложенных решений.Степеньдостоверностииапробациярезультатов.обоснованность результатов исследования опирается на использование общепринятыхметодов программной инженерии, а также на проведение инженерных экспериментов.
Порезультатам работы были сделаны доклады на следующих конференциях: второйвсероссийской научно-практической конференции, посвящённой памяти заслуженногодеятеля науки РФ профессора В.Ф. Волкодавова (Самара, 2009); второй научнотехнической конференции молодых специалистов «Старт в будущее» (Санкт-Петербург,2011);SYRCoSE 2012 (Пермь, 2012); «Технологии Miscrosoft в теории и практикепрограммирования» (Санкт-Петербург, в 2011 и 2013 году); «Информационныетехнологии в образовании и науке» (Самара, 2011); III Всероссийской конференции"Современное технологическое обучение: от компьютера к роботу» (Санкт-Петербург,2013); Девятой независимой научно-практической конференции «Разработка ПО 2013»(CEE SEC(R)-2013, Москва); 10th Conference of Open Innovations Association FRUCT(Тампере, Финляндия, 2011); Evaluation of Novel Approaches to Software Engineering(ENASE 2013, Анже, Франция).
Исследования были поддержаны грантом СанктПетербургского государственного университета 6.39.1054.2012.7Личный вклад автора. Результаты, представленные в диссертационной работе,получены соискателем либо самостоятельно, либо при его непосредственном участии. Надпроектом QReal работала большая группа студентов, аспирантов и преподавателейкафедры системного программирования СПбГУ, автор претендует лишь на результаты,явно перечисленные в списке положений, выносимых на защиту.Публикация результатов. Результаты диссертационной работы представлены в 22публикациях. Основные результаты опубликованы в 4 статьях ([1-4]) в журналах изперечня российских рецензируемых научных журналов, в которых должны бытьопубликованы основные научные результаты диссертаций на соискание учёных степенейдоктора и кандидата наук.Работы [2-5], [7-8], [10-22] написаны в соавторстве. В работах [3], [7], [20] и [21]диссертанту принадлежит разработка архитектуры и реализация основных модулейплатформы QReal, А.
Н. Терехову – постановка задачи, Ю. В. Литвинову – разработкасредствметамоделирования([3])иразработкакомпонент,специфичныхдляпрограммирования роботов ([7, 20, 21]). В работе [16] диссертанту принадлежитразработкагенераторакодаиредактораэкранныхформ,А. Н. ТереховуиВ. В. Оносовскому – интеграция решения с платформой Ubiq Mobile, Ю. В. Литвинову –реализация диаграммных языков и редакторов для них.
В работах [8] и [19] диссертантупринадлежит реализация механизма распознавания жестов мышью на уровне платформыQReal, Ю. В. Литвинову – создание инструментов задания «идеальных жестов»,М. С. Осечкиной – реализация алгоритмов классификации жестов мышью и постановкаэкспериментов. В работах [2], [5], [14] диссертанту принадлежит архитектура решения иреализация основных компонент платформы, Ю. В. Литвинову – разработка средствметамоделирования, А. С. Кузенковой – реализация некоторых частей метаредактораQReal, А.
В. Подкопаеву – реализация средств генерации кода, А. О. Дерипаска –реализация редактора форм элементов, В. А. Полякову – реализация механизмапреобразования графов. В работах [13], [15] диссертанту принадлежит архитектурарешения и реализация основных компонент платформы, Ю. В. Литвинову – разработкасредств метамоделирования. В работах [4], [10-12], [17], [18], [22] автору принадлежитидеяипостановказадачи,реализацияархитектурыиинтеграциярешений,запрограммированных соавторами.Структура и объём работы.
Диссертация состоит из введения, шести глав,заключения, списка литературы (162 наименования), четырёх приложений. Объёмосновной части работы – 134 страниц с 27 рисунками и 2 таблицами, общий объём – 159страницы с 27 рисунками и 3 таблицами.8Содержание работыВо введении дается обоснование актуальности исследований, проводимых в рамкахданной диссертационной работы, формулируется цель, научная новизна, практическаязначимость, описывается апробация работы, приводится краткое содержание текстадиссертации.В главе 1 приводится общее описание модельно-ориентированного подхода (modeldriven engineering, MDE) к разработке программного обеспечения. Данный подходосновывается на представлении программы в виде набора моделей, представляющих ее сразличныхточекзрения.Приэтомобычноиспользуютсявизуальныеязыкимоделирования, с помощью которых создаются разного уровня абстракции описанияпредметной области, разрабатываемой системы и взаимодействующего с ней окружения.В работе приводятся примеры подходов и методологий, основывающихся намодельно-ориентированной разработке.
Дается описание предметно-ориентированнойпарадигмыкразработкеПО–подхода,основанногонаиспользованииспециализированных языков, создаваемых специально для решения текущей задачи.Обсуждается структура визуальных языков, которую традиционно представляютследующим образом: абстрактный синтаксис (описание набора элементов языка и ихсвойств), конкретный синтаксис (визуальное представление элементов), служебныйсинтаксис (способ хранения элементов), семантика (смысл элементов и моделей,составляемых из них), отображения в другие языки (связь языка с другими).Рассматривается понятие уровней моделирования: предметная область (уровень M0),модель (уровень M1), метамодель (описание способа задания моделей, уровень M2) иметаметамодель (описание способа задания метамоделей, уровень M3).
Показываетсясвязь между уровнями и важность метамоделей для предметно-ориентированногомоделирования.Глава2содержитописаниефункциональноститипичныхCASE-систем,рассматриваются некоторые из существующих DSM-платформ, используемые длясоздания промышленных DSM-решений, для каждой из которых делаются выводы овозможностисозданиясредвизуальнойразработкисопределеннымнаборомфункциональности (результаты анализа см. в таблице 1).Анализ таблицы показывает, что из четырех представленных аналогов самая богатаяфункциональность получаемых DSM решений у платформы Eclipse (EMP), однакоплатформа крайне сложна в применении. Делается вывод об актуальности работ как по9упрощению процесса использования DSM-платформ, так и упрощение самих решений,созданных на их основе – разработка средств, позволяющих сделать их более удобнымипри использовании непрофессионалами.Таблица 1. Сравнение возможностей ведущих DSM платформ.MetaEdit+AToM3EMPУсловияЗакрытыйОткрытоераспространениякоммерческий(EPL)ПОMS Modeling SDKОткрытое ПОЗакрытыйкоммерческий продуктпродуктОтделимостьрешенияДа, в рамках ModelerДаWindows,Windows,НетНетWindows, Linux,Windowsот платформыКроссплатформенностьLinux,Linux,Solaris, Mac OS XSolaris, Mac OS XSolaris, Mac OS XОсобенностиРабота с таблицамиАвтоматическаяМеханизмТолькоредакторов диаграмми матрицамираскладкаавтодополненияфункциональностьмоделейредактораНетПосредствомэлементовибазоваядругие проектыПоддержка команднойСетевойПосредствомразработкирепозиторийсистемконтроляинтеграцииверсийСовместноесVisualStudioДаДаДаНетНетДаДаРеализуетсяиспользование языковСредстватрансформациикодированием на C#моделейВизуализация отладкиДа,путеминтеграциисоДа,внутреннийДа,внутреннийРеализуетсямеханизммеханизмкодированием на C#Ограничения толькоЗаданные на языкеРеализованныеРеализуетсяна синтаксис языкаOCL или Javaна Pythonкодированием на C#сторонними средамиВерификаторыианализаторы моделейГлава 3 посвящена обсуждению влияния степени удобства работы с визуальной IDEна желание и продуктивность использования подобных средств разработчиками ПО.Подобноенеудобствоскладываетсявпервуюочередьизнеудобствасамогоинструментария (много рутинных операций, сложный для понимания интерфейс,нетривиальный процесс), так и из неудобства используемого языка моделирования.Приводится описание нового метода, позволяющего автоматически разрабатыватьинструменты быстрого создания элементов и связей между ними, основанные нараспознавании жестов мышью.