Автореферат (Платформа для создания специализированных визуальных сред разработки программного обеспечения)
Описание файла
Файл "Автореферат" внутри архива находится в папке "Платформа для создания специализированных визуальных сред разработки программного обеспечения". PDF-файл из архива "Платформа для создания специализированных визуальных сред разработки программного обеспечения", который расположен в категории "". Всё это находится в предмете "технические науки" из Аспирантура и докторантура, которые можно найти в файловом архиве СПбГУ. Не смотря на прямую связь этого архива с СПбГУ, его также можно найти и в других разделах. , а ещё этот архив представляет собой кандидатскую диссертацию, поэтому ещё представлен в разделе всех диссертаций на соискание учёной степени кандидата технических наук.
Просмотр PDF-файла онлайн
Текст из PDF
На правах рукописиБрыксин Тимофей АлександровичПлатформа для создания специализированныхвизуальных сред разработки программного обеспеченияСпециальность 05.13.11 —Математическое и программное обеспечение вычислительных машин,комплексов и компьютерных сетейАвторефератдиссертации на соискание ученой степеникандидата технических наукСанкт-Петербург2016Работавыполненанакафедресистемногопрограммированияфедеральногогосударственного бюджетного образовательного учреждения высшего образования«Санкт-Петербургский государственный университет».Научный руководитель:Терехов Андрей Николаевич,доктор физико-математических наук, профессор, заведующий кафедройсистемногопрограммированияфедеральногогосударственногобюджетного образовательного учреждения высшего образования «СанктПетербургский государственный университет».Официальные оппоненты:Новиков Фёдор Александрович,доктор технических наук, старший научный сотрудник, профессоркафедры прикладной математики Института прикладной математики имеханики, федеральное государственное автономное образовательноеучреждениевысшегообразования«Санкт-Петербургскийполитехнический университет Петра Великого».Лядова Людмила Николаевна,кандидатфизико-математическихнаук,доцент,доценткафедрыинформационных технологий в бизнесе, Пермский филиал федеральногогосударственного автономного образовательного учреждения высшегопрофессиональногообразования«Национальныйисследовательскийуниверситет «Высшая школа экономики» (НИУ ВШЭ – Пермь).Ведущая организация:Федеральное государственное автономное образовательное учреждениевысшегообразования«Санкт-Петербургскийгосударственныйуниверситет аэрокосмического приборостроения».Защита состоится 7 апреля 2016 г.
в 15:30 на заседании диссертационного совета Д 212.232.51 набазе Санкт-Петербургского государственного университета по адресу: 198504, Санкт-Петербург,Старый Петергоф, Университетский пр., 28, математико-механический факультет, ауд. 405.С диссертацией можно ознакомиться в Научной библиотеке им.ПетербургскогогосударственногоуниверситетапоадресуМ. Горького Санкт-199034,Санкт-Петербург,Университетская наб., 7/9 и на сайте http://spbu.ru/science/disser/soiskatelyu-uchjonoj-stepeni/dislist/details/14/721.html.Автореферат разослан “____” ___________ 20__ г.Ученый секретарь диссертационного советаД 212.232.51, д.ф.-м.н., профессорДемьянович Юрий КазимировичОбщая характеристика работыАктуальность темы. С появлением первых языков программирования стали такжеразвиваться инструменты, упрощающие процесс создания программных систем иповышающие его эффективность. В настоящее время интегрированные среды разработки(integrateddevelopmentenvironments,являютсяIDE)многофункциональнымиинструментальными системами, которые позволяют освободить разработчиков от многихрутинных действий, в частности, снижая порог вхождения разработчиков в программныепроекты на новых языках.
В конце XX века получили популярность визуальные языкипроектирования ПО. Считается, что человек гораздо лучше воспринимает графическиедиаграммы,чембольшиепрограммированиякобъёмывизуальномутекста,можноазначит,переходрассматриватькакоттекстовогоследующийшаг,позволяющий сделать процесс разработки ПО более наглядным и удобным для людей.В 90-е годы XX века основной упор в этом направлении делался на языки общегоназначения (такие, как UML1). Однако практика показала, что модели, получаемые сиспользованием таких языков, получаются чрезвычайно громоздкими. В последние годыактивно развиваются идеи визуального предметно-ориентированного моделирования(domain-specificmodeling,специализированныхязыковDSM),ивосновекоторогосоответствующеголежитинструментарияидеядлясозданиярешенияконкретных задач.
Это позволяет значительно поднять уровень абстракции создаваемыхмоделей, перенося разработку с уровня программных конструкций типа ветвлений ициклов в область объектов предметной области. Разработчик взаимодействует только снаглядными и понятными визуальными моделями, а код разрабатываемой системыгенерируется автоматически по этим моделям. Такой подход хорошо себя зарекомендовалв случаях, когда есть серия похожих проектов и требуется переиспользовать имеющиесязнания. Однако, практика показывает, что и для одиночных средних и крупных проектовтакой подход также оказывается эффективным.Для того, чтобы данный подход к разработке ПО был экономически оправдан,необходимо уметь эффективно создавать визуальные языки и инструментальные средства— так называемые предметно-ориентированные решения.
При этом речь идёт не только ографическом редакторе, но и о наборе генераторов исходного кода, документации,скриптов сборки и размещения целевой системы, а также о репозитории для хранениясоздаваемых моделей, средствах многопользовательской работы и многом другом. Такиесреды стали называть CASE-системами (computer-aided software engineering) или DSM1Unified Modeling Language, URL: http://uml.org/ (дата обращения: 18.04.2015)3решениями, а среды разработки таких предметно-ориентированных решений – metaCASEсистемами или DSM-платформами.За несколько десятилетий своего развития DSM-подход адаптировал для своих нуждмногие средства, являющиеся традиционными для текстовых IDE.
Можно указать навизуальныеинтерпретаторыиотладчикимоделей,средстварефакторинга,синтаксическую подсветку элементов диаграмм, средства версионирования моделей. Всвязи с этим крайне актуальной является задача переноса всех этих инструментов науровень DSM-платформ, чтобы обеспечить возможность быстрого автоматизированногосоздания полноценных визуальных интегрированных сред, поддерживающих полныйцикл разработки ПО.Существует ряд промышленных metaCASE-систем, самыми известными из которыхявляются MetaEdit+ и Microsoft Modeling SDK.
Однако данные системы позволяютсоздавать лишь самые базовые инструменты, к тому же сами они трудно расширяемы.Среди открытых metaCASE-систем следует упомянуть проект Eclipse Modeling Project2(EMP), развиваемый силами различных исследовательских групп и промышленныхкомпаний по всему миру.
Включая в свой состав десятки специализированных проектов,EMP предоставляет инструментарий для создания мощных CASE-систем, однако дляполноценного использования своих возможностей он требует длительного обучения. Этоуказывает на необходимость продолжения исследований в этой области с целью созданияболее простых в использовании DSM-платформ, позволяющих быстро создаватьсовременные полнофункциональные DSM-решения для разработки ПО в различныхпредметных областях.Степеньразработанноститемыисследования.Исследованиямипроцессаразработки DSM-платформ занимается целый ряд научных коллективов: группа подруководством S.
Kelly и J.-P. Tolvanen из университета г. Jyväskylä (Финляндия), группапод руководством J. de Lara из Автономного университета Мадрида (Испания),международная некоммерческая организация Eclipse Foundation и другие. В Россиивопросами визуального моделирования занимается исследовательские группы подруководством Л. Н. Лядовой, Ф. А. Новикова, А. А. Шалыто, В. П. Котлярова и другие.Результаты некоторых из этих исследований были воплощены в инструментальныхсредствах, как коммерческих (MetaEdit+, Microsoft Modeling SDK), так и открытых(Eclipse Modeling Project, Generic Modeling Environment, AToM3, MetaLanguage).Коммерческие2системынедоступныдлямодификацииинастройкиEclipse Modeling Project, URL: http://www.eclipse.org/modeling/ (дата обращения: 18.04.2015)4стороннимпользователям, а самая зрелая открытая система EMP представляет собой объединениеболее десятка других проектов, которые активно развиваются, но часто бывает непростоналадить их взаимодействие друг с другом.Среда QReal3 разрабатывается коллективом профессора А.
Н. Терехова в рамкахисследованийвобластимодельно-ориентированнойразработкиПО.Коллективзанимается данной тематикой более двадцати лет (см. работы А. Н. Терехова,Д. В. Кознова, А. Н. Иванова и др.). Автор данной диссертации является создателемпервых прототипов QReal, разработчиком и техническим руководителем проекта. Намомент начала работы автора существовали лишь отдельные прототипы графографической библиотеки, средств быстрой разработки визуальных языков тогда не было.На данный момент среда существует в виде готового инструмента.Целью диссертационной работы является ускорение процесса разработкиинструментальных средств поддержки визуальных языков путём создания программнойплатформы, позволяющей разрабатывать полнофункциональные визуальные среды споддержкой основных этапов жизненного цикла и ориентированной на программистов, неимеющих специальной подготовки.Для достижения цели были сформулированы следующие задачи.1.Предложить проектировщикам ПО средства повышения скорости выполнениятиповых задач при работе с диаграммными редакторами и разработать метод дляреализации подобных средств для новых языков.2.Предложить метод формальной спецификации исполнимой семантики моделей сцелью ускорения создания интерпретаторов и отладчиков визуальных языков.3.Спроектировать DSM-платформу, реализующую предложенные методы.4.Реализовать и провести апробацию созданной DSM-платформы на практическихзадачах.Цель и задачи диссертационной работы соответствуют области исследованийпаспортаспециальности05.13.11«Математическоеипрограммноеобеспечениевычислительных машин, комплексов и компьютерных сетей»: пункту 1 (модели, методы иалгоритмы проектирования и анализа программ и программных систем, их эквивалентныхпреобразований, верификации и тестирования) и пункту 2 (языки программирования исистемы программирования, семантика программ).Объектом исследования являются визуальные языки, предметом исследованияявляются технологии для разработки инструментальных средств визуальных языков.Методология исследования типична для решения задач в области предметной3Репозиторий проекта QReal, URL: https://github.com/qreal/qreal (дата обращения: 18.04.2015)5инженерии и сводится к последовательной идентификации и анализу проблемы,проектированию её возможного решения, выбору подходящих средств и технологийпрограммирования, реализации и применения созданного решения, а также проведенияинженерных экспериментов с целью обоснования эффективности полученного решения.