Знаймо

Додати знання


Цей текст може містити помилки.

Redmine


Redmine-demo.png

План:


Введення

Redmine - відкрите серверне веб-додаток для управління проектами та відслідковування помилок. Redmine написаний на Ruby і являє собою додаток на основі широко відомого веб-фреймворку Ruby on Rails. Поширюється згідно GNU General Public License.


1. Функціональні можливості

Даний продукт надає наступні можливості:

  • ведення декількох проектів;
  • гнучка система доступу, заснована на ролях;
  • система відслідковування помилок;
  • діаграми Ганта та календар;
  • ведення новин проекту, документів і керування файлами;
  • оповіщення про зміни за допомогою RSS -потоків та електронної пошти;
  • вікі для кожного проекту;
  • форуми для кожного проекту;
  • облік тимчасових витрат;
  • настроюються довільні поля для інцидентів, тимчасових витрат, проектів і користувачів;
  • легка інтеграція з системами управління версіями ( SVN, CVS, Git, Mercurial, Bazaar і Darcs);
  • створення записів про помилки на основі отриманих листів;
  • підтримка множинної аутентифікації LDAP;
  • можливість самостійної реєстрації нових користувачів;
  • багатомовний інтерфейс (у тому числі російська);
  • підтримка СУБД MySQL, PostgreSQL, SQLite, Oracle.

2. Структура бази даних

2.1. Користувачі системи

Користувачі є одним з центральних понять предметної області. Модель користувача є основою для ідентифікації і аутентифікації працює з системою персоналу і клієнтів, а також для авторизації їх у різних ролях, проекти і т. п.

2.2. Ролі

Ролі користувачів визначаються гнучкою моделлю визначення прав доступу користувачів. Ролі включають в себе набір привілеїв, що дозволяють розмежовувати доступ до різних функцій системи.

Користувачам призначається роль в кожному проекті, в якому він бере участь, наприклад "менеджер у проекті по розробці сайту А", "розробник в проекті з підтримки інтранету компанії" або "клієнт у проекті з рефакторинг інформаційної системи компанії Б". Користувач може мати кілька ролей. Призначення ролі для окремого завдання (issue) в даний момент неможливо.


2.3. Проекти

Проект є одним з основних понять в предметної області систем управління проектами. Завдяки цій сутності можливо організувати спільну роботу і планування декількох проектів одночасно з розмежуванням доступу різним користувачам (див. вище). Проекти допускають ієрархічну вкладеність.

2.4. Трекери

Трекери є основною класифікацією, за якою сортуються завдання в проекті. Саме по собі поняття "трекер" сходить до систем обліку помилок ( англ. Bug tracking tool ), Який представляв кожна окремо один проект.

По суті, в "Redmine" трекери представляють собою аналог підкласів класу "Завдання" і є основою для поліморфізму різного роду завдань, дозволяючи визначати для кожного їх типу різні поля. Прикладами трекерів є "Поліпшення", "Помилка", "Документування", "Підтримка",


2.5. Завдання

Завдання є центральним поняттям всієї системи, що описує якусь задачу, яку необхідно виконати. У кожного завдання в обов'язковому порядку містить опис і автор, в обов'язковому порядку завдання прив'язана до трекера.

Кожне завдання має статус. Статуси представляють собою окрему сутність з можливістю визначення прав на призначення статусу для різних ролей (наприклад, статус "відхилено" може присвоїти тільки менеджер) або визначення актуальності завдання (наприклад, "відкритий", "призначений" - актуальні, а "закритий", " відхилено "- ні).

Для кожного проекту окремо визначаються набір етапів розробки і набір категорій завдань. Серед інших полів цікаві також "оцінене час", що служить основою для побудови управлінських діаграм, а також поле вибору спостерігачів за завданням (див. "Отримання повідомлень"). До завдань є можливість прикріплювати файли (є окрема сутність "Додаток").

Значення інших Перечіслімий властивостей (наприклад, пріоритетність) зберігаються в окремій загальній таблиці.


2.6. Відстеження зміни статусу завдань

За відстеження змін параметрів завдань користувачами в системі відповідають дві сутності: "Запис журналу змін" і "Змінений параметр". Запис журналу відображає одну дію користувача по редагуванню параметрів задачі і / або додавання коментаря до неї. Тобто служить одночасно інструментом ведення історії завдання і інструментом ведення діалогу.

Сутність "Змінений параметр" прив'язана до окремого запису журналу і призначена для зберігання старого і нового значення зміненого користувачем параметра.


2.7. Зв'язки між завданнями

Завдання можуть бути взаємопов'язані: наприклад, одна задача є підзадачі для іншої або передувати їй. Ця інформація може бути корисною в ході планування розробки програми, за її зберігання в Redmine відповідає окрема сутність.

2.8. Облік витраченого на проект часу

Система підтримує облік витраченого часу завдяки сутності "Витрачений час", пов'язаної з користувачами і завданням. Сутність дозволяє зберігати витрачений час, вид діяльності користувача (розробка, проектування, підтримка) і короткий коментар до роботи. Ці дані можуть бути використані, наприклад, для аналізу внеску кожного учасника в проект або для оцінки фактичної трудомісткості і вартості розробки

2.9. Прив'язка репозиторіїв

Redmine надає можливість інтеграції з різними системами контролю версій (репозиторіями). Інтеграція полягає у відстеженні змін у зовнішньому репозиторії, їх фіксації в базі даних, аналізі змін з метою їх прив'язки до певних завдань. У инфологической структурі системи за інтеграцію із зовнішніми репозиторіями відповідають три сутності: "Сховище", "Редакція" і "Зміна". "Сховище" представляє собою пов'язану з проектом сутність, що зберігає тип підключеного сховища, його місцезнаходження та ідентифікаційні дані його користувача.

"Редакція" є відображенням редакції сховища, і, крім інформаційних полів, може бути прив'язана до конкретного завдання (для цього потрібно вказати в описі змін "refs # NUM", де NUM - номер завдання), і до користувача-автору редакції. Сутність "Зміна" призначена для зберігання списку змінених (доданих, віддалених, переміщених, модифікованих) файлів у кожній редакції.


2.10. Отримання сповіщень

Повідомлення користувачів про зміни, що відбуваються на сайті, здійснюється за допомогою сутності "Спостерігачі", що зв'язує користувачів з об'єктами різних класів (проекти, завдання, форуми та ін.) У базі даних зберігаються також ключі доступу до підписки RSS, що дозволяють отримувати повідомлення за допомогою цієї технології, також повідомлення розсилаються за допомогою електронної пошти.

2.11. Деякі недоліки Redmine

  • Управління файлами і документами в Redmine зводиться до їх додаванню, видалення та редагування. Правами доступу ні до файлів, ні до окремих документів керувати не можна.
  • Відсутні сповіщення про зміну документів.
  • У Redmine не можна керувати правами доступу на рівні окремих полів завдання. Наприклад, на даний момент від клієнтів не можна сховати оцінки часу роботи над проектом або інформацію про витрачений час.
  • У Redmine можна керувати правами доступу на рівні проектів, але не можна призначити права на якусь версію проекту або окрему задачу. Це означає, що якщо користувачеві потрібен доступ усього до однієї задачі, то доведеться давати доступ до всього проекту.
  • Якщо користувач Redmine отримав доступ до проекту, то зараз не можна обмежити його активність якимись окремими типами задач (трекерами). Наприклад, не можна дозволити проглядати тільки "свої" завдання (це часто буває потрібно для організації техпідтримки) або дозволити створювати завдання тільки якогось певного типу.
  • У Redmine всі додаткові поля доступні всім користувачам, всі учасники проекту зможуть їх бачити і змінювати. Це обмеження може призвести до складнощів при наявності неоднорідної команди, коли доступ до проекту мають і менеджери, і розробники, і клієнти.
  • У Redmine немає прав на окремі типи конвертацій в workflow. Наприклад, зараз не можна вказати, що коли хтось закінчує виправляти помилку, він повинен вибрати відповідальним тестувальника і повинен вказати номер білду. Також не можна сховати внутрішню переписку між програмістами від клієнта.
  • У Redmine в список завдань не виводиться загальна трудомісткість завдань, а в звітах по трудомісткості не можна робити відбори, в тому числі і по виконавцю.
  • У Redmine не реалізовано делегування завдань - не можна передати завдання іншому виконавцю, зазначивши, що завдання має виконувати він, але залишивши собі спостереження за завданням.

3. ChiliProject

В результаті того, що бачення деяких користувачів щодо проекту відрізнялося від бачення лідера розробників, був створений форк Redmine під назвою ChiliProject.

Література

  • 前田刚(Go Maeda)入门Redmine Linux / Windows対応-秀和システム. - 226 с. - ISBN 978-4-7980-2137-9.
  • Gunther Popp Konfigurationsmanagement mit Subversion, Maven und Redmine: Grundlagen fr Softwarearchitekten und Entwickler - 3. - Dpunkt.Verlag GmbH, 2009. - P. 362. - ISBN 9783898645218.

Цей текст може містити помилки.

Схожі роботи | скачати
© Усі права захищені
написати до нас