ації можна, використовуючи готові рішення, інтегровані в єдину систему.
У свій час компанія В«ЛюксофтВ», проаналізувавши й випробувавши в реальних проектах ряд доступних продуктів, створила інтеграційне рішення для автоматизації процесу розробки - LUXproject.
При створенні даного рішення були поставлені наступні цілі:
пЃ® пЂ комплексна підтримка життєвого циклу розробки ПЗ (від укладення контракту до підтримки клієнта);
пЃ® пЂ підтримка розподіленої розробки;
пЃ® пЂ підтримка різних методологій розробки;
пЃ® пЂ зниження витрат на розробку і впровадження системи за рахунок використання готових рішень (як комерційних, так і безкоштовних).
LUXproject по суті є В«процесної оболонкою В», яка інтегрує в собі наступні технології і продуті: JIRA, Confluence, GreenHopper, Cruise Control, Subversion, FishEye, WebDAV та ін
Вони добре зарекомендували себе на ринку, накопичений багатий досвід їх використання.
Одним з достоїнств даних продуктів є великий потенціал їх кастомізації. Існують цілі співтовариства програмістів, що займаються розробкою open-source-плагінов1 для JIRA і Confluence. Також на ринку є багато комерційних плагінів, істотно розширюють функціонал.
У результаті було створено рішення, яке можна віднести до систем ALM (Application Lifecycle Management), об'єднуючим в собі:
пЃ® пЂ інструменти управління проектами та процесами;
пЃ® пЂ інструменти розробки і тестування;
пЃ® пЂ засоби комунікацій для розподілених команд.
Оскільки облік трудовитрат здійснюється на всьому протязі розробки ПЗ, то автоматизація управління повинна В«пронизуватиВ» всі проектні процеси життєвого циклу створення ПЗ.
При цьому щоб не вводити читача в оману, варто відзначити, що мова йде не про спеціальні інструментах розробки або тестування, а в першу чергу про засоби управління. При цьому не виключається інтеграція інструментів, що використовуються для управління і для безпосередньої роботи.
Далі будуть описані основні напрямки, концепції і способи автоматизації проектів розробки ПЗ, завдяки яким можливо ефективно управляти проектними трудовитратами, запобігаючи появі незапланованих трудовитрат. В якості практичного прикладу буде розглянута реалізація функціоналу LUXproject.
1. Планування та контроль виконання завдань
При управлінні проектами важливо не тільки правильно спланувати роботи, але і відстежувати їх виконання, постійно контролюючи хід проекту.
Стосовно до проектів розробки ПЗ одним з недоліків популярних систем календарного планування та управління (Типу MS Project) є відсутність можливості пов'язувати завдання з іншими проектними активностями і встановлювати залежність між елементами їх життєвих циклів.
Для вирішення даної проблеми все частіше використовуються системи з можливістю відстежувати стан проектних активностей (Issue ...