Автореферат (1148238)
Текст из файла
На правах рукописиБрыксин Тимофей АлександровичПлатформа для создания специализированныхвизуальных сред разработки программного обеспеченияСпециальность 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инженерии и сводится к последовательной идентификации и анализу проблемы,проектированию её возможного решения, выбору подходящих средств и технологийпрограммирования, реализации и применения созданного решения, а также проведенияинженерных экспериментов с целью обоснования эффективности полученного решения.
Характеристики
Тип файла PDF
PDF-формат наиболее широко используется для просмотра любого типа файлов на любом устройстве. В него можно сохранить документ, таблицы, презентацию, текст, чертежи, вычисления, графики и всё остальное, что можно показать на экране любого устройства. Именно его лучше всего использовать для печати.
Например, если Вам нужно распечатать чертёж из автокада, Вы сохраните чертёж на флешку, но будет ли автокад в пункте печати? А если будет, то нужная версия с нужными библиотеками? Именно для этого и нужен формат PDF - в нём точно будет показано верно вне зависимости от того, в какой программе создали PDF-файл и есть ли нужная программа для его просмотра.