Redmine
Эта статья написана в рекламном стиле. |
В статье не хватает ссылок на источники (см. рекомендации по поиску). |
Redmine | |
---|---|
Тип | Система отслеживания ошибок, система управления проектами |
Разработчик | Jean-Philippe Lang |
Написана на | Ruby |
Операционная система | Кроссплатформенное программное обеспечение |
Первый выпуск | 25 июня 2006 |
Аппаратная платформа | Ruby on Rails |
Последняя версия | |
Репозиторий |
svn.redmine.org/redmine github.com/redmine/redmi… |
Лицензия | GNU General Public License |
Сайт | redmine.org |
Медиафайлы на Викискладе |
Redmine [ɹɛdˈmɑɪn] — открытое серверное веб-приложение для управления проектами и задачами (в том числе для отслеживания ошибок). Redmine написан на Ruby и представляет собой приложение на основе широко известного веб-фреймворка Ruby on Rails. Распространяется согласно GNU General Public License.
Функциональные возможности
[править | править код]Данный продукт предоставляет следующие возможности:
- ведение нескольких проектов;
- гибкая система доступа, основанная на ролях;
- система отслеживания ошибок;
- диаграммы Ганта и календарь;
- ведение новостей проекта, документов и управление файлами;
- оповещение об изменениях с помощью RSS-потоков и электронной почты;
- форумы для каждого проекта;
- учёт временных затрат;
- настраиваемые произвольные поля для инцидентов, временных затрат, проектов и пользователей;
- лёгкая интеграция с системами управления версиями (SVN, CVS, Git, Mercurial, Bazaar и Darcs);
- создание записей об ошибках на основе полученных писем;
- поддержка множественной аутентификации LDAP;
- возможность самостоятельной регистрации новых пользователей;
- многоязычный интерфейс (в том числе русский);
- поддержка СУБД MySQL, Microsoft SQL Server[2], PostgreSQL, SQLite.
Структура базы данных
[править | править код]Пользователи системы
[править | править код]Пользователи являются одним из центральных понятий предметной области. Модель пользователя является основой для идентификации и аутентификации работающего с системой персонала и клиентов, а также для авторизации их в разных ролях, проектах и т. п.
Роли
[править | править код]Роли пользователей определяются гибкой моделью определения прав доступа пользователей. Роли включают в себя набор привилегий, позволяющих разграничивать доступ к различным функциям системы.
Пользователям назначается роль в каждом проекте, в котором он участвует, например, «менеджер в проекте по разработке сайта А», «разработчик в проекте по поддержанию интранета компании» или «клиент в проекте по рефакторингу информационной системы компании Б». Пользователь может иметь несколько ролей. Назначение роли для отдельной задачи (issue) в данный момент невозможно.
Проекты
[править | править код]Проект является одним из основных понятий в предметной области систем управления проектами. Благодаря этой сущности возможно организовать совместную работу и планирование нескольких проектов одновременно с разграничением доступа различным пользователям (см. выше). Проекты допускают иерархическую вложенность.
Трекеры
[править | править код]Трекеры являются основной классификацией, по которой сортируются задачи в проекте. Само по себе понятие «трекер» восходит к системам учёта ошибок (англ. Bug tracking tool), представлявшим каждая в отдельности один проект.
По сути, в «Redmine» трекеры представляют собой аналог подклассов класса «Задача» и являются основой для полиморфизма разного рода задач, позволяя определять для каждого их типа различные поля. Примерами трекеров являются «Улучшение», «Ошибка», «Документирование», «Поддержка».
Задачи
[править | править код]Задачи являются центральным понятием всей системы, описывающим некую задачу, которую необходимо выполнить. У каждой задачи в обязательном порядке есть описание и автор, в обязательном порядке задача привязана к трекеру.
Каждая задача имеет статус. Статусы представляют собой отдельную сущность с возможностью определения прав на назначение статуса для различных ролей (например, статус «отклонён» может присвоить только менеджер) или определение актуальности задачи (например, «открыт», «назначен» — актуальные, а «закрыт», «отклонён» — нет).
Для каждого проекта отдельно определяются набор этапов разработки и набор категорий задач. Среди других полей интересны также «оценённое время», служащее основой для построения управленческих диаграмм, а также поле выбора наблюдателей за задачей (см. «Получение уведомлений»). К задачам имеется возможность прикреплять файлы (имеется отдельная сущность «Приложение»).
Значения других перечислимых свойств (например, приоритетность) хранятся в отдельной общей таблице.
Отслеживание изменения параметров задач
[править | править код]За отслеживание изменений параметров задач пользователями в системе отвечают две сущности: «Запись журнала изменений» и «Изменённый параметр». Запись журнала отображает одно действие пользователя по редактированию параметров задачи и/или добавление комментария к ней. То есть служит одновременно инструментом ведения истории задачи и инструментом ведения диалога.
Сущность «Изменённый параметр» привязана к отдельной записи журнала и предназначена для хранения старого и нового значения изменённого пользователем параметра.
Связи между задачами
[править | править код]Задачи могут быть взаимосвязаны: например, одна задача является подзадачей для другой или предшествовать ей. Эта информация может быть полезна в ходе планирования разработки программы, за её хранение в Redmine отвечает отдельная сущность.
Учёт затраченного на проект времени
[править | править код]Система поддерживает учёт затраченного времени благодаря сущности «Затраченное время», связанной с пользователями и задачей. Сущность позволяет хранить затраченное время, вид деятельности пользователя (разработка, проектирование, поддержка) и краткий комментарий к работе. Эти данные могут быть использованы, например, для анализа вклада каждого участника в проект или для оценки фактической трудоёмкости и стоимости разработки.
Привязка репозиториев
[править | править код]Redmine предоставляет возможность интеграции с различными системами управления версиями (репозиториями). Интеграция заключается в отслеживании изменений во внешнем репозитории, их фиксации в базе данных, анализе изменений с целью их привязки к определённым задачам.
В инфологической структуре системы за интеграцию с внешними репозиториями отвечают три сущности: Репозиторий, Редакция и Изменение.
- Репозиторий — связанная с проектом сущность, хранящая тип подключенного репозитория, его местонахождение и идентификационные данные его пользователя.
- Редакция — отображение редакции репозитория, и, кроме информационных полей, может быть привязана к конкретной задаче: для этого требуется указать в описании изменений «refs #NUM», где NUM — номер задачи), и к пользователю-автору редакции.
- Изменение — хранит список измененных (добавленных, удалённых, перемещенных, модифицированных) файлов в каждой редакции.
Получение уведомлений
[править | править код]Уведомления пользователей об изменениях, происходящих на сайте, осуществляется с помощью сущности «Наблюдатели», связывающей пользователей с объектами различных классов (проекты, задачи, форумы и др.). В базе данных хранятся также ключи доступа к подписке RSS, позволяющие получать уведомления посредством этой технологии, также уведомления рассылаются с помощью электронной почты.
ChiliProject
[править | править код]В результате того, что видение некоторых пользователей относительно проекта отличалось от видения лидера разработчиков, был создан форк Redmine под названием ChiliProject. В настоящее время данный проект закрыт.
См. также
[править | править код]Примечания
[править | править код]- ↑ Release 5.1.3 — 2024.
- ↑ Installing Redmine . Redmine ©. Дата обращения: 15 января 2015. Архивировано 15 января 2015 года.
Литература
[править | править код]- 前田剛 (Go Maeda). 入門Redmine Linux/Windows対応. — 秀和システム. — 226 с. — ISBN 978-4-7980-2137-9.
- Gunther Popp. Konfigurationsmanagement mit Subversion, Maven und Redmine: Grundlagen für Softwarearchitekten und Entwickler. — 3. — Dpunkt.Verlag GmbH, 2009. — P. 362. — ISBN 9783898645218.
Ссылки
[править | править код]- Официальный сайт Redmine (англ.)
- Android клиент для Redmine (англ.)
- Установка и настройка связки REDMINE с GEM, RUBY, RAILS, POSTGRESQL, PASSENGER, NGINX
- Установка и настройка связки REDMINE с GEM, RUBY, RAILS, MYSQL, PASSENGER, NGINX (недоступная ссылка)
- Создание плагинов для Redmine
- RedmineApp Архивная копия от 27 апреля 2020 на Wayback Machine — iPhone-приложение для Redmine
- Redmine PM — клиент Redmine для iPhone/iPad
- Redmine To Go — Windows Phone клиент для Redmine
- RedmineUP – Набор бесплатных и коммерческих плагинов и тем для Redmine.
- RMClient – Клиент для Windows, Mac, Linux, коммерческий.
- Настройка жизненного цикла задач
- Решение проблем с производительностью
- Оперативное планирование в Redmine
- Руководство по написанию плагинов
- Подробная инструкция по установке
- Easy Redmine — коммерческий вариант
- Конструктор Jetware инсталляторов и виртуальных машин с Redmine