Главная » Просмотр файлов » Диссертация

Диссертация (1148239), страница 23

Файл №1148239 Диссертация (Платформа для создания специализированных визуальных сред разработки программного обеспечения) 23 страницаДиссертация (1148239) страница 232019-06-29СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 23)

Этоприводит к тому, что разработчик больше времени уделяет выполнению техдействий, которых от него требует CASE-инструмент, а не тех, которыенепосредственно необходимы для решения задач, из которых состоит разработкаПО. Например, строго формализованные языки моделирования имеют большоеколичество ограничений на создаваемые с их помощью модели: правилаиспользования элементов и связей между ними, которые, с одной стороны, не даютпроектировщику создавать некорректные диаграммы и позволяют отлавливатьошибки на ранних этапах разработки, но с другой — мешают естественномумыслительному процессу разработчика, заставляя его совершать предписанныеметодологией действия. Авторы [100] предупреждают, что подобный инструментбудет встречен своими пользователями негативно и не будет использоваться сполной эффективностью.

Инструмент должен помогать пользователю решатьзадачи, а не ставить перед ним новые. Например, в описанном выше случае мог быбыть полезен режим графического редактора, когда диаграммы создаются впроизвольном виде, без каких-либо ограничений, накладываемых семантикой языка,целостностью диаграмм или ограничениями самого редактора. Это бы болееспособствовало свободному креативному мышлению разработчика. Об этой141проблеме пишут и авторы [78]: CASE-среды хорошо поддерживают поздние фазыразработки, такие как проектирование и реализация, и довольно плохо — начальныефазы, на которых проходит понимание и анализ предметной области иразрабатываемой системы.

Для лучшей поддержки этих стадий CASE-средствадолжны иметь более простой, менее формальный и более гибкий интерфейс,позволяя разработчику думать о задаче, а не о том, как ее реализовать с помощьюданного инструмента.Удобный графический интерфейс используемых инструментов играет большуюроль даже сам по себе. Так, исследование [79], проведенное психологами, показало,что чем больше разработчикам нравится внешний вид CASE-среды, чем болееудобными для них кажутся входящие в ее состав инструменты, то не только онибудут пользоваться подобной средой с большей охотой, но и будут считать ее болееполезной, чем неудобная и непривлекательная среда. [114] также подтверждает, чтоудобство использования инструментального средства может быть не менее сильноймотивацией к использованию этого средства, нежели повышение в продуктивности,к которому этот инструмент может привести.В 2000-х годах CASE-инструменты продолжали свое развитие, но, большейчастью, в направлении совершенствования своих технических средств.

Рядсовременных исследований показывает успешные применения MDE-подхода кпромышленной разработке ПО ([60, 69, 75, 94, 108, 122, 133, 143]), однако в целомавторы соглашаются, что подобные случаи не являются характерными дляиндустрии. Использование модельно-ориентированных средств в настоящее время— это скорее элемент общей культуры компаний и работающих в нихпрограммистов, нежели общеупотребимая практика. Так, в [143] утверждается, чтоне более 15% компаний в области программной инженерии в США используютмодельно-ориентированные средства разработки. Основной проблемой этого авторывидят социально-экономически причины: даже в настоящее время программисты142обучаются с использованием традиционных текстовых средств разработки ПО, и этото, к чему они привыкают и не хотят менять.

Моделирование воспринимаютсябольшинством разработчиков как “рисование красивых диаграмм” — деятельность,которая отрывает от основного занятия (программирования), а потому зачастуюосуществляется неохотно (и, зачастую, постфактум). Кроме того, для большинствалюдей, сознательно выбравших для себя разработку ПО в качестве профессии,программирование является крайне творческой деятельностью, причем для многихпривлекательным в работе является не создание конечного продукта, а решениевозникающих технических задач.

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

К тому же, даже при условии наличия четко заданнойсемантики элементов языка (как, например, сделано в языке xUML) попыткипрограммировать на таком языке приводят к моделям огромной сложности,перегруженным деталями.ДаннуюпроблемустараютсярешатьCASE-средства,основанныенаспециализированных языках (предметно-ориентированные решения), создаваемыепод решение конкретных задач [102]. В рамках предметно-ориентированнойпарадигмы разработка ведется только в терминах визуальных моделей, а весь код143генерируется автоматически (и дальнейшее его редактирование “вручную” недопускается).

Для быстрого создания таких средств используются инструментальныесреды, называемые metaCASE-средствами или DSM-платформами. В отличие оттрадиционных CASE-средств, разрабатываемых годами большим коллективомразработчиков, DSM-решения, создаваемые на базе выбранной платформы однимили несколькими экспертами в течение нескольких дней или недель, не могут бытьнастолько же мощными функционально, однако большая часть необходимых дляработы инструментов в их составе присутствует. Достигается это тем, что сама DSMплатформа, как правило, содержит в себе довольно обширный набор инструментов,которые автоматически используются всеми DSM-решениями, создаваемыми наоснове данной платформы.

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

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

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

Поэтому, например,команда выполнения следующего шага отладки (step over) должна учитыватьизменение стека вызовов исходной программы, а не генерирующегося кода. Это145важно, поскольку каждому элементу модели на исходном визуальном языке можетсоответствовать несколько строк кода на целевом текстовом языке, поэтому длятого, чтобы установить точку останова в терминах исходного языка, необходимознать, на какую из этих строк кода нужно ставить точку останова в целевом языке.Кроме того, не всегда переход к следующему элементу потока исполнения висходной модели будет соответствовать переходу на следующую строку кода всгенерированном коде.Несмотря на понятную идею в плане реализации, данный подход требует отразработчиков новых предметных языков серьезных инженерных навыков дляорганизации точного и полного соответствия конструкций исходного визуальногоязыка конструкциям целевого текстового языка и взаимодействия этих конструкций.В связи с высокой технической сложностью задачи и тем, что данный подходориентирован на создание единичного отладчика для определённого языка,обобщениеподходадвухуровневойотладкинапредметно-ориентированноемоделирование выглядит нецелесообразным.

Характеристики

Список файлов диссертации

Платформа для создания специализированных визуальных сред разработки программного обеспечения
Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6510
Авторов
на СтудИзбе
302
Средний доход
с одного платного файла
Обучение Подробнее