Уніфікований процес розробки від Rational Software – RUP (Rational Unified Process), Комерція, Різне, статті

Розробка програмних продуктів, ще недавно колишня долею обраних одинаків, в даний час перетворилася на високоприбуткову сферу бізнесу. В ІТ-проектах зайняті мільйони програмістів і аналітиків, керівників різного рангу і простих інженерів по всьому світу. Процес створення програмних систем став технологією, де у кожного члена проектної команди визначено своє місце і коло обов’язків, де строго регламентовані всі етапи – від задуму до передачі користувачам робочої версії програми. Це єдиний шлях до створення великих і малих програмних систем, який дозволяє вкластися у встановлені терміни і виділений бюджет, створивши при цьому систему потрібної якості.
Хоча індустрія розробки ПО достатньо молода, багато компаній-розробники вже усвідомили, що успіх програмних проектів залежить від однозначного визначення і грамотного документування процесу. Корпорація Rational Software провідний виробник інструментарію для створення складних програмних систем, формалізувала технологічний процес розробки ПЗ і випустила на ринок структуровану базу знань під назвою Rational Unified Process (RUP), до якої увійшли методичні рекомендації провідних розробників з ефективного створення додатків і систем. При цьому RUP не є щось застигле. База знань регулярно оновлюється і вдосконалюється з урахуванням передового досвіду.

Rational Unified Process Overview (фази і процеси RUP)RUP створена у вигляді сторінок формату HTML, мають велику систему гіперпосилань, графічну навігацію, докладний зміст і вбудований пошуковий механізм. База поширюється на компакт-дисках і за допомогою мережі Інтернет. Остання версія продукту завжди доступна на сайті виробника. Там же можна безкоштовно ознайомитися з повнофункціональної тридцятиденний пробною версією для прийняття рішення про її використання і переглянути деморолик. Разом з самою базою надається книга Ф. Крачтена (Ph. Kruchten) “Rational Unified Process – an Introduction”, що полегшує занурення в RUP (в минулому році вона вийшла в російській перекладі *).
RUP підтримує технологію розробки програмних продуктів для різних платформ, надає детальні рекомендації команді програмістів як по переходу до розробки на платформі Microsoft . NET, так і по самій цій розробці. Також підтримується плагін WinDNA для тих, хто не збирається переходити на платформу. NET
Можлива і розробка ПО для платформи Java 2 Enterprise Edition (J2EE). Доступні плагіни для використання платформ IBM WebSphere, BEA WebLogic і HP Bluestone Total e-Server. Останній був включений у версію RUP 2002 і в поточному вигляді не був доступний в попередніх версіях продукту.
RUP веде свою історію від продуктів Rational Approach і Objectory Process 3.8, об’єднання яких відбулося після злиття в 1995 р. корпорацій Rational Software і Objectory AB.
Зараз більше тисячі компаній скористалися перевагами розробки на основі RUP. Уніфікований процес розробки використовується в різних прикладних областях, у великих і малих проектах, що доводить його універсальність і широку застосовність. В телекомуннікаціонной сфері його використовують Ericsson, Alcatel, MCI, в авіаційно-космічній та оборонній промисловості – Lockheed-Martin, British Aerospace, на промислових підприємствах – Xerox, Volvo, Intel, у фінансовій сфері – Visa, Merrill Lynch, Schwab. Цей процес також взято на озброєння такими інтеграторами, як Ernst & Young, Oracle, Deloitte & Toucche.

Процес аналізу проблеми в RUP

Кожна з цих компаній використовує RUP по-своєму. Одні строго слідують всім рекомендаціям Rational Software, інші ж створюють на його основі свої методики, вдаючись до цієї бази знань як до джерела рад, шаблонів та настанов.
Основними поняттями RUP є артефакт (artifact) і прецедент (precedent). Артефакти – це деякі продукти проекту, породжувані або використовувані в ньому при роботі над остаточним продуктом. Прецеденти – це послідовності дій, виконуваних системою для отримання спостережуваного результату.
Весь процес розробки програмної системи розглядається в RUP як процес створення артефактів. Причому те, що потрапляє в руки кінцевого користувача, будь то програмний модуль або програмна документація, – це один з підкласів всіх артефактів проекту.
Кожен член проектної групи створює свої артефакти і несе за них відповідальність. Програміст розробляє програму, керівник – проектний план, а аналітик – моделі системи. RUP дозволяє визначити, коли, кому і який артефакт необхідно створити.
Основний упор в RUP робиться не на підготовку документів як таких, а на моделювання розроблюваної системи. Моделі допомагають окреслювати як проблему, так і шляхи її вирішення, і створюються вони за допомогою уніфікованої мови Unified Modeling Language (UML), запропонованого компанією Rational і згодом затвердженого OMG як стандарт, але ще до це UML став стандартом де-факто для опису складних систем і дозволяє розробникам визначати, візуалізувати, конструювати і документувати артефакти програмних систем.
Усі завдання, описані в RUP, підтримуються засобами розробки від Rational Software. У RUP включений розділ Tool Mentors, в якому детально описується використання Rational Rose для створення UML-моделей, Rational RequisitePro, Rational Clear Quest, Rational Clear Case для аналізу вимог, запитів на вимірювання і виправлення дефектів і для підтримки процесу уніфікованого управління змінами (UCM). У цьому ж розділі описуються методи застосування Rational Purify, Rational PureCoverage, Rational Quantify, Rational Robot для автоматизації процесу тестування і пошуку дефектів програмного забезпечення, а Rational SoDa – для автоматизації процесу документування. Крім того, Tool Mentors містить докладні рекомендації з використання цих та інших коштів компанії Rational для створення конкретних артефактів розроблюваної системи.





Процес визначення вимог в RUP 

Весь процес розробки з точки зору RUP розглядається в двох площинах. В динаміці процес виражається через цикли, фази, ітерації і віхи, а в статиці – через види діяльності, технологічні процеси, артефакти і ролі виконавців.
Кожен такий процес видається за допомогою діаграм, що складаються з піктограм, пов’язаних гіперпосиланнями з іншими документами. При активізації гіперпосилань відбувається деталізація процесу.
Це дає можливість пройти через всю послідовність необхідних робіт – від загального погляду на них “з висоти пташиного польоту” до створення конкретних артефактів.
Система гіперпосилань побудована таким чином, що можна легко переходити від робіт до артефактів, створюваним в процесі конкретної діяльності, а через них до ролей виконавців і назад. До артефактів можна дістатися різними шляхами – наприклад, через список процесів, приклади ітерацій, ролі виконавців, а можна просто знайти потрібний артефакт в дереві посилань, що дозволяє розглядати один і той же процес розробки з різних точок зору – керівника і виконавця, користувача і програміста.
Основні артефакти, створювані в процесі розробки, представлені в RUP у вигляді готових шаблонів, що полегшують їх створення в конкретному проекті. В базу включені шаблони більше тридцяти документів, для більшості поширених типів звітів представлені в форматах MS Word і Adobe FrameMaker. Шаблони Rational SoDa дозволяють автоматизувати процес збору документів з багатьох джерел, а шаблони RequisitePro полегшують керування вимогами. На допомогу фахівцям, які займаються плануванням ітеративних проектів на основі RUP, в нього включені шаблони Microsoft Project. Також доступні шаблони формату HTML, дозволяють розширювати базу знань.





Роботи системного аналітика в RUP 

Відповідальність за створення артефактів лежить на виконавцях. В останніх версіях RUP частіше застосовується поняття роль, оскільки один виконавець може виконувати кілька ролей в проекті і відповідати за різні артефакти. У RUP визначено понад тридцять ролей, які можуть виконувати різні члени команди розробників. Обов’язки кожної ролі, послідовність робіт і створювані артефакти представлені у вигляді зрозумілих з першого погляду діаграм. Наприклад, на рис. показана схема обов’язків системного аналітика, так як вона визначається в RUP.
І звичайно ж кожна піктограма на цій схемі є гіперпосилання, що дозволяє виробляти подальшу деталізацію.
RUP досить великий. Це набір рекомендацій і прикладів по всіх стадіях і фазах розробки програм. Хоча в основу цих рекомендацій покладено багаторічний досвід розробки програмних систем, не для кожного проекту RUP підходить на сто відсотків. Будь програмний проект по-своєму унікальний. Не можна бездумно копіювати чужий процес, створюючи артефакти, які мають незначну цінність. У багатьох невеликих організаціях з розробки програмного забезпечення, особливо в тих, що не мають власної потужної системи розробки, RUP можна використовувати “як є”, але він може бути і уточнено, розширено і специфічно настроєний для максимального наближення до потреб організації-розробника.
Але в будь-якому випадку застосування уніфікованого процесу розробки дозволить зменшити витрати проекту, укластися в задані терміни і підвищити якість створюваного програмного продукту.

* Крачтен Філіп. Введення в Rational Unified Process. – 2-e изд.: Пер. з англ. – M.: Видавничий дім “Вільямс”, 2002. – 240 с.


Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*