Дипломная работа: Разработка и отладка программного обеспечения виртуальной лаборатории Программирование микроконтроллерных
Рисунок 3 - Открытая архитектура программного обеспечения ВЛ
Как видим взаимодействие " человек-оборудование" в ВЛ нуждается в реализации клиент-серверной системы. Сервер должен руководить оборудованием. Также нужно выполнять визуализацию на стороне клиента. Эти задачи выполняет ПО.
Технологии программирования, которые используются при создании ПО ВЛ, должны удовлетворять следующим требованиям:
иметь возможности реализации клиент-серверной системы;
иметь возможность работы с аппаратными ресурсами серверного ПК, к которым подсоединено другое оборудование;
иметь возможность графического вывода на стороне клиента.
Остановимся на первом критерии. Клиент - Серверную систему можно построить двумя способами:
прямая коммуникация между клиентом и сервером (рисунок 4)
коммуникация между клиентом и сервером на основе идеологии Web
Рисунок 4 - Прямая коммуникация между клиентом и сервером
Эту задачу можно реализовать с помощью Trac - инструмент управления проектами и отслеживания ошибок в программном обеспечении.
Trac является открытым программным обеспечением, разработанным и поддерживаемым компанией Edgewall Software.
Trac использует минималистичный веб-интерфейс, основанный на технологии wiki, и позволяет организовать перекрёстные гиперссылки между базой данных зарегистрированных ошибок, системой управления версиями и wiki-страницами. Это даёт возможность использовать Trac в том числе и как веб-интерфейс для доступа к ВЛ
Основой для Trac'а является SVN репозиторий. Один из самых распространенных методов использования TRAC
Рисунок 5 - Работа Trac
Также возможны и другие способы, например без Apache - Trac будет работать как standalone сервер. Можно еще подключить LDAP для аутентификации. Работа с системой ведется через веб-интерфейс. Для входа нужен логин и пароль. Основные элементы интерфейса:
Рисунок 6 - Интерфейс системы Trac
Основные функции.
Управление проектом:
разделение проекта на этапы (milestones)
контроль выполнения (roadmap)
все изменения по проекту заносятся на временную шкалу (timeline)
поддержка rss
Tickets Стандартная функциональность - учет ошибок, замечаний, пожеланий с возможностью фильтрации и занесение соответсвенно в milestone, roadmap.
Я так же использую в качестве ToDo. Достаточно просто и удобно.
Просмотр репозитория Достаточно удобный модуль по просмотру Subversion репозитория проекта. Позволяет просматривать исходный код с учетом ревизии, а также изменений.