- •Введение
- •1 Анализ предметной области
- •1.1 Постановка задачи
- •1.2 Обзор аналогов
- •2 Программная документация
- •2.1 Техническое задание на программное обеспечение
- •2.1.1 Назначение разработки
- •2.1.2 Терминология
- •2.1.3 Требования к функциональным характеристикам
- •2.1.4 Требования к надежности
- •2.1.5 Требования к составу и параметрам технических средств
- •2.1.6 Требования к информационной и программной совместимости
- •2.1.7 Требования к результатам работы
- •2.1.7.1 Требования к комплектации решения
- •2.1.7.2 Требования к документации
- •2.1.8 Перечень работ по этапам
- •2.2 Пояснительная записка
- •2.2.1 Назначение и область применения
- •2.2.2 Описание разработанной технологии создания программ для распределенных микроконтроллерных систем
- •2.2.2.1 Схема оборудования
- •2.2.2.2 Недостатки диаграммы Бара для проектирования микроконтроллерных программ управления
- •2.2.2.3 Концепции диаграммы задач
- •2.2.2.4 Семантика отображаемых на диаграмме задач связей
- •2.2.2.5 Синхронные и асинхронные вызовы функций задач
- •2.2.2.6 Синхронный вызов функции пакета
- •2.2.2.7 События и подписки
- •2.2.2.8 Текстовый язык
- •2.2.2 Технические характеристики
- •2.2.2.1 Описание структуры программной системы
- •2.2.2.1.1 Платформа разработки
- •2.2.2.1.2 Подсистема редактирования
- •2.2.2.1.3 Разработка графических редакторов
- •2.2.2.1.4 Разработка текстового редактора
- •2.2.2.1.5 Описание языка
- •2.2.2.1.6 Семантический анализ пользовательской программы
- •2.2.2.1.7 Генерация кода на целевом языке
- •2.2.2.1.8 Генерация кода редактора текстового языка
- •2.2.2.1.9 Проектирование отладчика
- •2.2.2.1.10 Регистрация конфигурации запуска
- •2.2.2.1.11 Модель отладки
- •2.2.2.1.12 Виртуальная машина
- •2.2.2.1.13 Моделирование
- •2.2.2.1.14 Концепция параметризированных сигналов
- •2.2.2.1.15 Функциональное моделирование блоков устройств
- •2.2.3 Ожидаемые технико-экономические показатели
- •2.3 Описание программы
- •2.3.1 Описание логической структуры
- •2.3.1.2 Типичный поток событий в графическом редакторе
- •2.3.2 Входные и выходные данные
- •2.3.3 Используемые технические средства
- •2.4 Программа и методика испытаний
- •2.4.1 Программа испытаний
- •2.4.2 Методика испытаний
- •3 Руководство пользователя
- •3.2 Условия выполнения программного комплекса
- •3.3 Установка программы
- •3.4 Текстовый редактор
- •3.5 Графический редактор
- •4 Акт испытаний программного продукта
- •5 Экономическая часть
- •Заключение
- •Список использованных источников
2.2.2.1.8 Генерация кода редактора текстового языка
Xtext, будучи основанным на платформе Eclipse, позволяет не только автоматизировать процесс создания парсера, но также сгенерировать необходимые компоненты для реализации редактора языка, в число которых входят графические компоненты, тесно интегрируемые со средой разработки Eclipse. В результате на выходе получаем полноценный инструментарий для работы пользователя с описанным разработчком языком. Инструментарий включает, например, такой важный компонент, как редактор с возможностью автодополнения исходного кода и навигацией.
2.2.2.1.9 Проектирование отладчика
Платформа Eclipse предоставляет интерфейс для встраивания новых отладчиков. Набор выработанных архитектурных концепций и библиотека некоторых готовых классов образуют платформу отладки (Eclipse debug platform). Платформа отладки определяет набор Java-интерфейсов, моделирующих множество типичных для многих отладчиков ситуаций и артефактов и составляющих собой модель отладки. Типичными артефактами отладки являются, к примеру, потоки, фреймы стека, переменные, точки останова, типичными ситуациями являются: приостановка, пошаговая отладка, продолжение исполнения, завершение исполнения. Также платформа предоставляет библиотеку графических компонентов, отображающих стек вызовов, список переменных и из значений, список точек останова, окно ввода/вывода сообщений консоли, а также возможность выполнять непосредственную пошаговую отладку исходного кода. Также платформа отладки предоставляет возможности запуска приложений из Eclipse и возможности связи текущего места исполнения программы с местом в исходном коде.
2.2.2.1.10 Регистрация конфигурации запуска
Перед разработкой отладчика необходимо зарегистрировать новый тип программ, которые подлежат запуску. Для этого в Eclipse используется концепция “тип конфигурации запуска”, для его описания используется интерфейс ILaunchConfiguration. Экземпляры типа конфигурации запуска, то есть собственно конфигурации запуска, содержат наборы именованных атрибутов, которые могут хранить значения данных, специфичных для данного вида запуска.
Для каждого типа конфигурации запуска существуют также разные режимы, в которых этот запуск может быть осуществлен. Платформа содержит предустановленные следующие режимы:
1) запуск на автономную работу;
2) отладка;
3) профилирование программы.
Имеется возможность как использовать существующие режимы запуска для определенных типов конфигураций, так и создавать новые. Модули, которым необходимо зарегистрировать свои типы конфигураций запусков, регистрируют класс, реализующий интерфейс ILaunchConfigurationDelegate. Этот класс знает, как запустить указанную программу по заданному типу конфигурации и режиму запуска. Как только программа оказалась запущенной, создается объект с интерфейсом ILaunch, предназначенный для представления сессии запуска. Данный объект хранит такую информацию, как запущенные процессы и задачи, информация о сессии отладки, месте исполнения в исходном коде. Объекту ILaunch также доступна информация о конфигурации, с помощью которой был произведен сам запуск (рисунок).
Рисунок 2.8 – Схема запуска пользовательской программы
Пользователь может задать свои параметры конфигурации запуска, которые могут быть сохранены в файле.