Керована моделлю розробка наступного покоління (IBM Rational), HTML, XML, DHTML, Інтернет-технології, статті


В даній статті представлена ​​еволюція автоматизованих засобів моделювання IBM Rational, Описані розширені можливості IBM Rational Software Architect. Стаття допоможе користувачам оцінити можливі переваги при переході до використання даного програмного засобу. У статті також розглядаються переваги використання інтегрованих засобів при розробці програмного забезпечення на платформі Eclipse компанії IBM.


У жовтні 2004 г компанія IBM випустила основну версію платформи розробки програмного забезпечення IBM ® Software Development Platform, що представляє собою нове покоління засобів моделювання та розробки на основі моделей (MDD). У центрі категорії проектування і структури цієї версії знаходиться IBM Rational ® Software Architect – комплексне інтегроване засіб проектування і розробки з підтримкою MDD з уніфікованим мовою моделювання (UML) для створення додатків і сервісів з добре структурованої архітектурою.


Rational Software Architect підтримує розробку традиційних і веб-додатків (статичних і динамічних) використовуючи сучасні технології індустрії програмного забезпечення, включаючи:


· Технології Java 2, Enterprise Edition ™ (J2EE) і веб-сервісів


· Ініціативу “Керована моделлю архітектура” (MDA) і стиль розробки “Архітектура, орієнтована на обслуговування” (SOA), запропоновані (OMG) та пов’язані стандарти


· Можливості JavaServer ™ Faces (JSF), які допускають швидку розробку додатків


· Специфікацію авуарів багаторазового використання (RAS) для підтримки розробки на основі авуарів


Rational Software Architect включає всі можливості IBM Rational Application Developer для WebSphere (остання версія вироби IBM WebSphere ® Studio Application Developer) і доповнює їх останніми досягненнями MDD технології. Результат: інтегроване рішення для проектування та розробки, упаковане в одному виробі.


Мета цієї статті полягає в тому, щоб обговорити Rational Software Architect з точки зору розвитку як інструмент MDD наступного покоління, який підтримує потоки робіт і сценарії використання, особливо відрізняються від підтримуваних попередніми інструментами MDD. Зверніть увагу, що це не керівництво по використанню Rational Software Architect. В планах IBM Rational видати таке керівництво в найближчому майбутньому.


Еволюція інструментальних засобів моделювання IBM Rational


Щоб зрозуміти місце Rational Software Architect в еволюційному процесі розвитку програм моделювання, кинемо короткий погляд на історію програм IBM Rational в цій галузі.


Rational Rose


Програмне забезпечення IBM Rational Rose ® було і продовжує бути провідним на ринку інструментів візуального моделювання. Автономний інструмент, він інтегрується провідними на ринку інтегрованими середовищами розробки на рівні інтерфейсу прикладного програмування (API), щоб підтримати різноманітні мови програмування й інші технології реалізації. Однак, незважаючи на успіх Rational Rose та удосконалення в практиці моделювання на UML, тільки невелика частка розробників використовувала моделювання встановленим порядком, і Rational вивчала значущі пропозиції користувачів. Більшість розробників не хоче виходити зі своєї інтегрованого середовища розробки, щоб використовувати додаткові інструментальні засоби, вони хочуть, щоб візуальне моделювання було органічно інтегровано в IDE.


Rational XDE


У відповідь на побажання користувачів, в 2002 IBM Rational випустила програмне забезпечення Rational XDE ™, яке надає розширену середовище розробки для з’явилися в той час технологій програмування: Java і Microsoft. NET. Ми характеризували Rational XDE як наступне покоління Rational Rose; це не була, строго кажучи, нова версія Rose (звідси зміна назви), і не обов’язково заміна для Rose, так як ми свідомо обмежили Rational XDE підтримкою тільки обраного числа технологій програмування та інтегрованих середовищ розробки.


Архітектурне рішення Rational XDE як доповнення до популярних інтегрованим середах розробки заохочувала багатьох розробників використовувати моделювання та керовану моделлю розробку. Rational XDE серйозно просунув стан MDD: був реалізований дуже потужний механізм, що допускає розробку на основі шаблонів. це підняло багаторазове використання рівня проектування програм до нових висот. Пізніше були додані спеціальні настройки, що забезпечують підтримку ініціативи MDA IBM Rational (див. Підтримка керованої моделлю архітектури нижче).


В жовтні 2003, після входження в IBM, ми об’єднали програми Rational Rose і Rational XDE в єдине сімейство – IBM Rational Rose XDE Developer. Тепер клієнти, які бажають придбати автономний інструмент моделювання або той, який був би інтегрований безпосередньо в їх IDE, можуть купити один пакет і встановити той інструмент, в якому вони потребують.


Безпрецедентні можливості інтеграції з Eclipse


Ще до придбання Rational Software компанією IBM, ці дві організації стали партнерами в розробці нового і більш потужного підходу до можливостей інтеграції MDD в структуру Eclipse та інтегровані середовища розробки, що базуються на Eclipse. Першим результатом цієї роботи була візуалізація коду і можливість візуального редагування, додана до WebSphere Studio Application Developer в 2003, які реалізували прості і дуже ефективні засоби для розробки моделей рівня виконання для Java.


Ця технологія тепер представляє базу для підходу IBM до підготовки робочого місця MDD. Замість того, щоб просто інтегруватися з Eclipse, ми будуємо нові можливості MDD на вершині Eclipse. Це забезпечує безпрецедентний рівень підтримки розробки на Java і C / C + +, а так само новий рівень можливостей інтеграції додаткових інструментальних засобів життєвого циклу. З цими новими інструментальними засобами став реальністю продукт IBM Software Development Platform, який ми випустили в жовтні 2004 на основі концепцій Eclipse. Тепер ми надаємо закінчену і повністю інтегровану платформу для розробки програмного забезпечення, оптимізовану для кожної ролі в групі розробки. Використання переваг цього підходу на повному підставі дозволяє розглядати розробку програмного забезпечення як основний бізнес-процес в організації, який забезпечує конкурентоспроможні переваги та забезпечує новий дохід і ринкові можливості наших клієнтів.


Тепер, з Eclipse, ми можемо досягти більш глибокої і широкої інтеграція для наших програм моделювання. Ми можемо підвищити розширюваність користувальницького інтерфейсу і інструменту на основі ролей; ми можемо краще інтегрувати моделювання з іншими аспектами життєвого циклу, типу управління вимогами. Rational Software Architect перетворює артефакти, які Ви раніше визначали при моделюванні, розробці та аналізі коду, в інтегрований і уніфікований досвід проектування і розробки. Працюючи в межах відкритої, а не приватної, середовища, користувачі всіх типів можуть більш легко налаштовувати свої комплект інструментальних засобів для задоволення своїх потреб.


Rational Software Architect: Інтеграція проектування і розробки


Наша нова, що базується на Eclipse програма Rational Software Architect – це закінчене рішення інструменту проектування і розробки. Як ми відзначили раніше, вона включає всі можливості програмного забезпечення Rational Application Developer для WebSphere (нова версія називається WebSphere Studio Application Developer), яке охоплює можливості візуалізації коду та візуального редагування. Це робить Rational Software Architect привабливим для клієнтів, які тільки починають працювати з MDD. Програма також включає повні модифіковані можливості програмного забезпечення Rational Web Developer для WebSphere (стара назва – WebSphere Studio Site Developer).


Покладаючись на можливості Rational Application Developer, Rational Software Architect додає повну підтримку MDD, включаючи моделювання на UML 2-ої версії (UML 2), генерацію об’єктного коду, шаблони і перетворення моделей і новий підхід до реалізації стилю розробки MDA. Ця пропозиція наступного покоління – не зовсім новий виріб. Представляючи природний розвиток і об’єднання можливостей існуючих інструментальних засобів IBM Rational, воно призначене спеціально для клієнтів, що прагнуть застосувати MDD в самому широкому сенсі терміна.


Структурний огляд і управління


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


Для боротьби з цим синдромом, програмний архітектор виробляє огляд існуючого коду перед виконанням, щоб оцінити його фактичну архітектуру і якість. Зазвичай, при цьому він знаходять різноманітні проблеми неправильного відображення проекту в код; зміни рівня коду, які викликали паразитні проектні та архітектурні залежності; порушення стандартів і правил кодування, проблеми стилю і так далі. В кінцевому рахунку, архітектура програми представлена ​​розгорнутим кодом, так що програмні архітектори повинні аналізувати код, щоб оцінити його ремонтопридатність і управляти розвитком архітектури за допомогою правил.


Щоб забезпечити автоматизовану підтримку для таких досліджень, Rational Software Architect вводить можливість, названу “структурний огляд і керування додатком Java” (Java application structural review and control), який вбудований в інструмент. Ця можливість підтримує правила авторства на основі шаблону і дає можливість користувачам побачити реалізовану архітектуру для J2EE і J2SE, використовуючи високорівневу технологію візуалізації програмного забезпечення. Користувачі можуть більш легко виявити архітектурно слабкі осередки, або “антішаблони”, типу циклічних залежностей, концентраторів або крихких предметів, які “проповзали” в вихідний код програми.


Використовуючи автоматизовані структурні огляди і управління, візуалізацію коду і тестування рівня розробника, програмні архітектори можуть значно поліпшити якість програм, які вони проектують і розгортають. Удосконалення, які ми ввели в Rational Software Architect, почнуть змінювати спосіб, яким архітектори і розробники думають про процес розробки.


Кошти динамічної та мовної підтримки


Наші клієнти також сказали нам, яку важливу роль можуть грати інструментальні засоби проектування та розробки в наданні середовища динамічної підтримки програми. Rational Software Architect робить суттєвий крок в оптимізації коштів динамічної підтримки для додатків Java на WebSphere Application Server. Він також допускає підтримку мультиплатформовий виконання на базі віртуальної машини Java і можливість взаємодії з даними на базі її підтримки відкритим промисловим стандартам. Крім того, так як Rational Software Architect включає Rational Application Developer, який підтримує BEA WebLogic Server, розгорнуті програми, що використовують Rational Software Architect, також неявно мультиплатформенні. Eclipse C / C + + Development Tool (CDT), який являє собою частину IBM Rational Software Architect також забезпечує підтримку розробки на C + + і C. Рішення, засноване на Eclipse, дозволяє нам багаторазово використовувати деякі можливості в Rational Software Architect, щоб підтримати MDD і між цими мовами і Java.


Створення сучасної екосистеми моделювання


У нашому недавньому випуску був варіант Rational Software Architect, зосереджений на моделюванні, який призначений для користувачів, які не потребують генерації або візуалізації об’єктного коду. Rational Software Modeler підтримує всі можливості моделювання на UML 2, наявні в Rational Software Architect, і пропонує можливості розширюваності через Eclipse Modeling Framework (EMF). Відкритість і стійка розширюваність, які надає основа Eclipse, роблять Rational Software Modeler добре відповідним для підтримки “екосистеми” моделювання для клієнтів і сторонніх розробників розширень, подібно екосистемі, яка внесла вклад в успіх Rational Rose.


Rational Software Architect і Rational Software Modeler – це всього лише два приклади, які висвітлюють стратегію IBM Software Development Platform: допомагати підприємцям автоматизувати та інтегрувати розробку програмного забезпечення як бізнес-процес. Наша концепція полягає в тому, щоб забезпечити всі ролі можливістю спільно використовувати несуперечливий користувальницький досвід і загальне визначення і керування авуарами, які вони створюють або використовують. Кожна людина в групі може просто вибрати програми, які найкраще відповідають їх ролі та обов’язків. IBM Software Development Platform – Це все для продуктивності групи та організації.


Підтримка керованої моделлю архітектури


У той час, як MDD представляє безліч стилів для того, щоб використовувати моделі для розробки програмного забезпечення, Керована моделлю архітектура (Model Driven Architecture, або MDA) – це специфічний стиль, сформульований Об’єктній групою управління (OMG). MDA базується на кількох стандартах OMG, включаючи UML 2, поряд з з’являється філософією про те, як найкраще застосовувати моделювання до процесу розробки програмного забезпечення. MDA визначає моделі на різних рівнях абстракції, а потім визначає перетворення, які відображають і керують відносинами між цими моделями і різними технологіями реалізації.


Є корисні, хоч і неточні, визначення рівнів моделювання для MDA:


· Незалежна від обчислень модель (Computation-Independent Model – CIM) – розглядає середовище і вимоги до системи, не розглядаючи її структуру або внутрішні процеси.


· Незалежна від платформи модель (Platform-Independent Model – PIM) – розглядає операції в системі без подробиць, пов’язаних із специфічною платформою.


· Обумовлена ​​платформою модель (Platform-Specific Model – PSM) – включає в PIM деталі, пов’язані зі специфічною платформою.


· Модель платформи (Platform Model – PM – визначає, для використання з PIM, технічні концепціями, елементи і сервіси, які становлять певну платформу.


· Модель перетворення (Transformation Model – ТМ) – визначає і специфікує перетворення, необхідні для переходу від певної PIM до певної PSM.


Хоча MDA – це не стандарт, вона явно запитує використання декількох стандартів OMG:


· Для визначення метамоделі використовуються мета-об’єктні засоби (Meta-Object Facility – MOF).


· Для визначення моделей і перетворень розробляється, використовується
UML 2.


· Для визначення перетворень (як тільки вони повинні стати формалізованими) використовується формат MOF “запит / подання / перетворення” (Query / View / Transform – (MOF QVT).


Деякі з наших клієнтів говорять, що вони вже застосовували MDA “в такому дусі” протягом довгого часу, і співробітники IBM Rational працювали з багатьма з них і з OMG, щоб розвинути MDA до його існуючому стану. Rational Software Architect підтримує всі принципи MDA і стандарти, на яких MDA базується.


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


Чи годиться для Вас Rational Software Architect?


Rational Software Architect – це саме закінчене і стійке рішення IBM для моделювання і керованої моделлю розробки. Але чи дійсно воно годиться для Вас? Цей розділ допоможе Вам відповісти на це питання.


Ви працюєте над архітектурою програмного забезпечення?


Наприклад, в останніх версіях продуктів різниться роль програмних архітекторів і архітекторів даних. Такий підвищений рівень гранулярності відображений у всіх інструментах платформи IBM Software Development Platform, яка характеризується високим ступенем орієнтації ролей. Використовувані в назвах продуктів визначення і розрізнення ролей допомагають клієнтам визначити, які інструменти краще всього підходять для різних співробітників залежно від їх роботи і обов’язків. Але імена ролей розрізняються по галузях, підприємствам і навіть в проектних серіях. Тому назви нових продуктів слід розглядати тільки як відправну точку для визначення найбільш корисних інструментів для конкретних груп розробки.


Програмні архітектори в групах розробки відповідають за прийняття основних технічних рішень, які часто виражаються через архітектуру додатків. У деяких випадках за цю функцію відповідає один співробітник – єдиний власник уявлення про систему. Таких співробітників часто називають провідними розробниками проектів. У деяких випадках ця роль розподілена серед кількох членів групи, один з яких може бути головним архітектором. В інших випадках все розробники групи в той чи інший момент часу займаються архітектурою, і це є зростаючу тенденцію. Часто поняття «Архітектор» більшою мірою пов’язане з діяльністю розробників, а не з назвами їхніх посад.


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


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


Як уже зазначено вище, співробітники, що займаються питаннями, пов’язаними з архітектурою, часто не є архітекторами за посадою. Члени команд, що використовують переваги Rational Software Architect:


· Програмні архітектори, також займаються розробкою коду.


· Розробники, що працюють з кодом і моделями.


· Розробники, що працюють з моделями, яким потрібно використовувати всю ефективність MDD.


· Будь-які розробники, переглядали і оцінюють існуючі архітектури, або яким потрібно переглянути, як реалізація впливає на розвиток архітектури.


· Розробники C + +, яким потрібно застосовувати MDD на платформі Eclipse.


Слід враховувати, що Rational Software Architect включає всі функції Rational Application Developer і масштабовану середу IDE. Замовники в одному продукті отримують комплексне рішення по проектуванню і розробці. Для тих же, хто хоче повністю використати можливості моделювання UML 2, але не є архітектором по розробці, призначений пакет Rational Software Modeler.


В яку підтримку UML Ви потребуєте?


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


Саме для таких розробників можливості UML вбудовані в Rational Application Developer. Пакет включає досить UML функцій, щоб розробники могли використовувати цю технологію, тобто функції візуалізації коду і візуального редагування. Rational Application Developer візуалізує класи коду, дані і функції їх членів, а також їхні взаємини. Пакет дозволяє візуалізувати інформацію про тіло функції члена за допомогою циклограм UML 2. Також є підтримка візуалізації даних в різній нотації (UML, IE і IDEF0) і візуалізації ієрархій Web-сторінок.


Саме для цих типів розробників ми хотіли з’єднуватися, вибирають можливості UML в Rational Application Developer. Інструмент забезпечує тільки достатню UML можливість запустити розробників з технології – рівень звертаємо Вашу увагу як візуалізація коду та візуальне редагування. Rational Application Developer візуалізує класи коду, їх даних члена і функцій, і їх відносин один до одному. Це також дозволяє Вам візуалізувати інформацію тіла функції члена через UML 2 діаграми послідовності. І це підтримує візуалізацію даних в декількох нотациях (UML, IE і IDEF0), так само як візуалізації ієрархій Веб-сторінки.


Ці ефективні та зручні у використанні функції є цінними для більшості розробників. Для тих розробників, які ще не вивчили рішення MDD, Rational Application Developer є ідеальним засобом для початку роботи. Якщо пізніше розробникам потрібні додаткові функції MDD, вони зможуть оновити пакет до продукту Rational Software Architect зі значною знижкою.


Вони потужний, все ж зручні в роботі можливості не забезпечують безпосереднє (негайне) значення панівним розробникам, і, ще готові до повного MDD рішенням знайдуть, ЩО Rational Application Developer буде ідеальною відправною точкою. Якщо вони хочуть додаткові MDD можливості пізніше, вони можуть модернізувати Rational Software Architect для знеціненої навантаження (обвинувачення).


Ви використовуєте інші програми моделювання IBM Rational?


Якщо Ви вже клієнт IBM Rational, ми рекомендуємо Вам розглянути можливість переміщення до Rational Software Architect або Rational Software Modeler, де і коли це має сенс. Переваги цих нових виробів:


· Інтеграція з Eclipse


· Розширена модель і розширюваність інструменту через EMF


· Простота використання


· UML 2, остання версія мови моделювання


· Нові можливості структурного огляду та управління (в Rational Software Architect)


· MDD з використанням C + + на базі Eclipse


· Можливість створювати складні настроюються перетворення


· Можливість візуалізувати код як статичні діаграми послідовності


· Можливість огляду коду


· Використання інструментів Java IDE і MDD (в Rational Software Architect)


Якщо ваша група в даний час використовує Rational Rose або Rational XDE, для Вас також може мати сенс перейти до Rational Application Developer. Візуалізація коду та можливості візуального редагування в WebSphere Studio Application Developer були модернізовані для UML 2 і продовжують постійно перебувати в Rational Application Developer. Хоча цей інструмент не підтримує універсальне моделювання або MDD в повному масштабі, Rational Application Developer дійсно підтримує використання мінімальної конфігурації UML. Якщо Ви тепер використовуєте Rational Rose або Rational XDE, перш за все, для розпакування графічної документації з коду, то цей рівень підтримки UML може бути достатній для ваших потреб.


Для розробок Java і Web ми наполегливо заохочуємо наших клієнтів до переходу від їх поточних програм моделювання до Rational Software Architect. На додаток до невідпорним технічних переваг переміщення в Eclipse, IBM пропонує ряд пільгових способів переходу.
Див http://www-306.ibm.com/software/awdtools/architect/swarchitect/support/index.html для отримання інформації про підтримку.

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


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

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

Ваш отзыв

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

*

*