< Попередня  Змiст  Наступна >

2.2. ЗАСОБИ МОДЕЛЮВАННЯ ПРОЦЕСІВ IBM RATIONAL


2.2.1.  IBM Rational Unified Process

 

З  метою поширення практики успішних проектів ІС корпорація Rational Software в особі її ідеологів Граді Буча (Grady Booch), Айвора Джекобсона (Ivar Jacobson) і Джеймса Румбаха (James Rumbaugh) поставила завдання сформувати і документувати набір перевірених на практиці принципів, методів і процесів якісної й продуктивної роботи над проектами зі створення програмного забезпечення. Результатом стала база знань Rational Unified Process, що слугує ядром комплекту Rational Suite, решта компонентів якого забезпечують інструментальну підтримку процесу.

 

Нині IBM Rational Unified Process — це:

— підхід до розробки ІС, ґрунтований на використанні найкращих практичних методів, що успішно зарекомендували себе у проектах по всьому світу;

 

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

 

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

Rational Unified Process — це процес розробки програмного забезпечення, який має такі характеристики:

 

— ітеративність, що передбачає послідовне вдосконалення та поступову конкретизацію ефективних рішень з гнучкою реакцією на нові вимоги до ІС або зміни в ділових цілях, а також завчасною ідентифікацією та попередженням ризиків;

— керованість. Обов’язкове керування вимогами та змінами забезпечує визначення очікуваних функціональних можливостей і   рівня якості, найкраще управління витратами та графіками виконання;

— орієнтація на моделі — створення й обслуговування моделей, які семантично насичено подають ІС під час її розробки;

— наголос на початковому розробленні та компонуванні усталеної архітектури програми, яка полегшує розробку, мінімізує переробки, збільшує можливість багаторазового використання і надійність експлуатації. Ця архітектура використовується для планування, використання та управління розвитком програмних компонентів. У RUP передбачено створення окремого документа, що містить опис архітектури ІС;

 

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

— підтримка об’єктноорієнтованої технології з використанням мови UML. На додаток до мови метод, оснований на UML, потребує лише опису процесу як сукупності методик, що визначають виконання окремих його кроків. Усі моделі в RUP подаються в нотації UML;

 

— підтримка компонентноорієнтованого програмування. Компоненти — це нетривіальні модулі або підсистеми, які виконують конкретну функцію і можуть бути змонтовані в чітко окресленій архітектурі, спеціальній або якійсь загальнодоступній інфраструктурі компонентів на кшталт Інтернет, CORBA, COM/DCOM;

 

— можливість перебудови конфігурації. Крім самої архітектури, RUP містить рекомендації щодо конфігурування процесу для задоволення потреб певного проекту;

— підтримка керування якістю на підставі об’єктивних вимірювань та критеріїв;

 

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

 

RUP було створено за методикою, що використовується при проектуванні ІС. Зокрема, моделювання відбувається за стандартом Software Process Engineering Metamodel (SPEM) — стандартом моделювання процесів, основаним на UML.

 

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

Структура життєвого циклу ІС за RUP

RUP використовує ітеративну модель розробки (рис. 2.2). Наприкінці кожної ітерації, що триває від 2 до 6 тижнів, проектна команда має досягти запланованих цілей, створити чи доопрацювати проектні артефакти й отримати проміжну, але функціональну версію кінцевого продукту.

Ітеративна модель розроблення за RUP

RUP поділяє один цикл розвитку на чотири послідовні стадії:

 

1) початок (Inception) — формуються бачення та межі проекту; створюється економічне обґрунтування; визначаються основні вимоги, обмеження та ключова функціональність продукту; створюється базова версія моделі прецедентів; оцінюються ризики;

 

2)  уточнення (розробка, Elaboration) — аналіз предметної області та побудова виконуваної архітектури;

 

3)  побудова (Construction) — реалізація переважної частини функціональності продукту;

4)  перехід (упровадження, Transition) — створення фінальної версії продукту, що передається розробником замовникові, включно з бетатестуванням, навчанням користувачів, визначенням якості продукту. Якщо якість не відповідає очікуванням користувача або критеріям, встановленим на початковій стадії, впровадження повторюється.

 

Кожна стадія завершується конкретною віхою — точкою в часі, в якій слід досягти деяких ключових цілей і прийняти деякі критичні рішення.

 

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

 

Вертикальний вимір відображає процес за змістом дій учасників розробки (за дисциплінами). Це статичний аспект процесу— він описується у термінах основних потоків робіт (виконавці, дії, їх послідовність тощо). RUP включає дев’ять основних дисциплін, для кожної з яких визначено методику виконання Шість із них вважаються основними — дисципліни процесу розробки:

 

1) ділове моделювання (бізнесаналіз та моделювання, Business modeling) забезпечує реалізацію принципів моделювання з метою вивчення бізнесу та нагромадження знань про нього, оптимізації бізнеспроцесів і прийняття рішення про їх часткову чи повну автоматизацію. Можна використовувати інструментальні засоби IBM Websphere Business Modeler, IBM Rational Software Modeler, IBM Rational Rose, IBM Rational SoDA, IBM Rational RequisitePro;

 

2) вимоги (керування вимогами, Requirements) — отримання інформації від зацікавлених осіб та перетворення її на набір вимог, що визначають зміст і функціонування розроблюваної системи (IBM Rational RequisitePro, IBM Rational Software Modeler, IBM Rational Software Architect, IBM Rational Rose, IBM Rational XDE Developer, IBM Rational ClearQuest, IBM Rational SoDA);

3) аналіз і проектування (Analysis and Design) — процедури перетворення вимог на проміжні описи (моделі), що відображають шляхи реалізації цих вимог (IBM Rational Software Architect, IBM Rational Rose, IBM Rational Rose RealTime, IBM Rational XDE Developer, IBM Rational SoDA);

4) виконання (реалізація, Implementation) — розроблення коду, тестування на рівні розробників та інтеграція компонентів, підсистем і всієї системи згідно з установленими специфікаціями (IBM Rational Rose, IBM Rational Application Developer, IBM Rational XDE Developer, IBM Rational PurifyPlus, IBM Rational Software Architect, IBM Rational QualityArchitect, IBM Rational ClearCase);

 

5)  тестування (Test) — оцінювання якості створюваного продукту (IBM Rational TestManager, IBM Rational Functional Tester, IBM Rational Performance Tester, IBM Rational Robot, IBM Rational TestFactory, IBM Rational Test RealTime, IBM Rational ClearQuest, IBM Rational RequisitePro, IBM Rational PurifyPlus);

 

6) розгортання (Deployment) — операції з передавання продуктів замовникам і забезпечення доступності продукту кінцевим користувачам (IBM Rational BuildForge).

 

Останні три потоки є допоміжними — дисципліни підтримки:

1) керування конфігурацією та змінами (Configuration & Change management) — синхронізація проміжних і кінцевих продуктів, керування їх розвитком у перебігу виконання проекту і пошук прихованих проблем (IBM Rational ClearCase, IBM Rational ClearQuest, IBM Rational RequisitePro, IBM Rational ProjectConsole);

 

2) управління проектом (Project management) — планування проекту, керування ризиками, контроль перебігу виконання проекту, безперервне оцінювання ключових показників (IBM Rational Method Composer, IBM Rational ClearQuest, IBM Rational ProjectConsole);

 

3) середовище (керування середовищем, Environment) — формування середовища розробки ІС та підтримка проектної діяльності (IBM Rational Method Composer, IBM Rational RequisitePro, IBM Rational ProjectConsole, IBM Rational Rose, IBM Rational Robot, IBM Rational TestFactory, IBM Rational Test RealTime, IBM Rational ClearCase, IBM Rational Administrator, IBM Rational ClearQuest, IBM Rational XDE Developer).

 

Як продукт Rational Unified Process є базою знань, що розташовується на Web і складається з таких елементів:

— керівництва для всіх членів колективу розробників, для кожного часового інтервалу життєвого циклу ІС. Керівництва подають у загальній формі для усвідомлення процесу на верхньому рівні та як докладні настанови з повсякденної діяльності для постійного застосування. Керівництва публікуються в HTMLформаті;

— настанови з використання інструментальних засобів, що автоматизують великі частини процесу створення ІС у HTMLформаті;

— приклади і шаблони для Rational Rose, що можуть бути використані під час структуризації інформації в Rational Rose за вказівками RUP;

 

— шаблони для SoDa, що допомагають здійснювати автоматизацію документування;

— шаблони для Microsoft Word, призначені для підтримки документації з усіх послідовностей дій та інтервалів життєвого циклу ІС;

 

— плани у форматі Microsoft Project, що відображають ітераційне розроблення;

— опис можливостей з конфігурування та розширення RUP для специфічних потреб проекту, а також інструментів і шаблонів, що можуть бути використані;

— засоби конфігурування, що надають змогу підлаштувати процес під потреби конкретного проекту;

 

— засоби налаштування, що вможливлюють створення власних процесів (IBM Rational Workbench);

 

— розвинена система допомоги;

 

— книги у форматі pdf, зокрема Probasco L. «The Ten Essentials of RUP — the Essence of an Effective Development Process» та Kuntzmann–Combelles A., Kruchten Ph. «The Rational Unified Process — An Enabler for Higher Process Maturity»;

 

— посилання на додаткові ресурси з публікаціями, оновленнями, методиками, сервісами тощо;

 

— спільнота користувачів RUP, участь у якому дає можливість обмінюватись досвідом з іншими розробниками.

RUP передусім зорієнтований на дві категорії користувачів:

 

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

 

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

 

RUP надає можливість підлаштувати процес під потреби організаціїрозробника та конкретного проекту, включати до нього готові компоненти (plugin, плагін), а також розробляти і включати до складу процесу власні компоненти. Продукт містить подання (view), зручні для надання користувачам доступу до потрібної їм інформації залежно від їхніх рольових чи персональних налаштувань. Користувачі RUP можуть або обрати одне з типових подань процесу, або створити власне.

 

У результаті багаторічного розроблення RUP виріс у гнучку платформу, що дає змогу інженерамтехнологам (process engineers) і менеджерам створювати, змінювати, розгортати і підтримувати процеси розробки організації та окремих ІТпроектів —Rational Method Composer (RMC).

 


< Попередня  Змiст  Наступна >
Iншi роздiли:
2.3. АВТОМАТИЗОВАНА ПІДТРИМКА МЕТОДОЛОГІЇ MICROSOFT SOLUTIONS FRAMEWORK
2.4. АВТОМАТИЗОВАНА ПІДТРИМКА МЕТОДОЛОГІЇ DATARUN
Терміни та поняття
Тема 3. АВТОМАТИЗОВАНЕ КЕРУВАННЯ ВИМОГАМИ
3.2. АВТОМАТИЗОВАНА РОЗРОБКА ВИМОГ
Дисциплiни

Медичний довідник новиниКулінарний довідникАнглійська моваБанківська справаБухгалтерський облікЕкономікаМікроекономікаМакроекономікаЕтика та естетикаІнформатикаІсторіяМаркетингМенеджментПолітологіяПравоСтатистикаФілософіяФінанси

Бібліотека підручників та статтей Posibniki (2022)