Програмування в картинках. Rational Rose

Java, C + +, Visual C + + – це чудові об'єктно-орієнтовані мови програмування, однак для написання великих і складних додатків потрібно чималий досвід роботи з цими мовами.


Rational Rose дозволяє не тільки спроектувати і створити каркас програми (не надрукувавши жодного оператора), але і вносити істотні зміни в ієрархію класів в ході розробки.


Технології


Rational Rose – Це об'єктно-орієнтоване засіб проектування, тобто реалізація CASE-технології. Поняття CASE-технологія розшифровується як Computer-Aided Software / System Engineering – розробка систем (або програмного забезпечення) за допомогою комп'ютера.


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


Для роботи з Rational Rose необхідно знати UML (Unified Modeling Language – уніфікована мова моделювання). UML – це графічна мова опису архітектури системи. У Rational Rose можна працювати з UML в одній з нотацій:



Найбільш поширена Unified (уніфікована) нотація.


Програма на UML не кодується, а описується за допомогою діаграм, дуже нагадують шкільний алгоритмічну мову. Діаграми UML складаються з об'єктів і зв'язків між ними (як на рис. 1) Або з етапів процесу (як на рис. 2).

Рис. 1. Діаграма використання термометра

Рис. 2. Діаграма станів процесу порівняння двох змінних


Після проектування класів на діаграмах Rational Rose дає можливість прив'язати їх до конкретної мови програмування й створити на ньому програмний код. Rational Rose підтримує роботу з такими мовами: C + +, Ada, Java/J2EE, Visual C + +, Visual Basic і XML. Існує надбудова, що забезпечує інтеграцію Rational Rose з середовищем Delphi. Rational Rose розуміє моделі COM і CORBA, схеми Oracle.


Розробник


Сама назва Rational Rose перекладається з англійської або як "Раціональна троянда", або як "Підвищення раціональності", що пов'язано з неоднозначністю перекладу слова "Rose".


Rational Rose розроблена компанією Rational, яка заснована в 1981 році і займається створенням CASE-технологій. Програмні продукти фірми Rational призначені для аналізу вимог до системи, розробки програмного забезпечення, тестування, управління проектами і підтримки команди розробників.


Сторінка на сайті розробника присвячена Rational Rose. Попередньо зареєструвавшись, з сайту розробника можна завантажити безкоштовну 15-денну версію Rational Rose. Там же можна отримати документацію (Англійською мовою).


Rational Rose існує для двох платформ – Windows (починаючи з 98) і UNIX (Solaris 2.6, 7 і 8, HP-UX 10.20, 11, 11.11 (11i), Linux).


Ті, кому не вистачає можливостей, що надаються Rational Rose, можуть додатково закачати і встановити різноманітні надбудови і утиліти до неї.


Робота


У Rational Rose модель представлена з чотирьох точок зору, або видів (View):



Корисність


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


Rational Rose в цьому плані відрізняється від мов програмування. "З кондачка" її не вивчиш – потрібен дуже серйозний стимул. Оскільки система комплексна і багатогранна – орієнтуватися в ній так само непросто, як у сучасній політиці.


Хоча, втім, не варто забувати, що робота програміста – це теж творчість, а тому випадки, схожі на осяяння, – не рідкість. Коли виявляється, що для зміни моделі не потрібно переписувати її зверху до низу; коли розумієш, що можеш показати замовнику майбутній продукт з будь-яким ступенем деталізації; коли начальство багатозначно хмикає при погляді на стрункі ряди класів і об'єктів – в такі моменти відчуваєш себе деміургом, творцем невеликий всесвіту. Що теж не шкідливо для самолюбства.


При установці Rational Rose виявляє програмне забезпечення розробника і активно з ним взаємодіє. У Rational Rose 2001 реалізований контроль версій за допомогою Microsoft Visual SourceSafe або вбудованого засоби фірми Rational.


Любителям "відкритого програмування", та й тим, у кого просто є бажання поділитися власним відкриттям, варто знати, що Rational Rose за допомогою засобу Rose Web Publisher може публікувати свої діаграми, щоб вони стали надбанням громадськості, на будь-якому веб-сервері. Або в локальній мережі – все залежить від настройок. На рис. 3 показана діаграма Use Case, викладена на веб-сервер на ім'я HAWK.

Рис. 3. Публікація моделі Rational Rose в мережі


Господині на замітку: коментарі можна вставляти в класи при їх проектуванні. Тобто на тому етапі, коли розробник ще не забув, для чого повинні служити ці класи, і не захопився написанням коду. У Rational Rose існує також можливість, звана Reverse Engeneering – реінжиніринг. Припустимо, є працююча програма на мові. У даному випадку реінжиніринг – це набір методів, що дозволяють отримати на основі вихідного коду модель Rational Rose.


Але не все так безхмарно, як може здатися на перший погляд, – при створенні програми з допомогою Rational Rose доводиться довго настроювати середовище і вводити різноманітну інформацію про створюваних класах. Але в майбутньому це окупається сторицею – зміни в модель вносяться з легкістю, не порушуючи при цьому цілісності програмного продукту.


При створенні класу його ім'я вводиться один раз, а потім вибирається зі списку доступних об'єктів. Це охороняє від граматичних помилок. Коли додаток складається з декількох класів, кожен з яких використовує довільну кількість інших, не заплутатися складно. Але на діаграмі Rational Rose відмінно видно, які сутності використовує кожен клас.

Рис. 4. Зв'язки між класами


На рис. 4 показано, що клас EnvironmentalController успадкований від Controller. Він використовує класи TemperatureSensor і pHSensor. Клас pHSensor включає в себе класи pH і location, а клас TemperatureSensor – Класи temp і location.


Після створення моделі додатки в Rational Rose залишається тільки асоціювати її з мовою програмування, список яких знаходиться в меню Tools (Сервіс). Потім для генерування програмного коду використовується пункт підменю Code Generation. Rational Rose може бути корисна не тільки розробникам. Системні аналітики та менеджери проектів цілком можуть застосовувати її для розуміння архітектури і вимог при створенні великих програм. З її допомогою керівник проекту легко може розділити роботу між командою програмістів так, щоб кожен не втручався в роботу інших, але при цьому бачив результати роботи товаришів.


На ранніх етапах проектування програм Rational Rose може полегшити взаєморозуміння замовника і проектувальника. Не секрет, що програмісту іноді доводиться пояснювати клієнтові, що йому потрібно. Чітка і акуратна діаграма дій легше сприйметься замовником, ніж розлоге пояснення, повне термінів, або нескінченні рядки коду на дисплеї. Але в будь-якому випадку головну роль відіграє політ творчої думки творця проекту, незалежно від використовуваних засобів. Можна, користуючись стандартним текстовим редактором і компілятором з командного рядка, створювати шедеври. А можна і за допомогою найсучасніших засобів проектування створити громіздку і непотрібну програму.

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


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


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

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

Ваш отзыв

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

*

*