XIII Konferencja PLOUG���������������� ��������
RUP w zastosowaniu – IBM RationalMethod Composer
� ������������
IBM Polska
Abstrakt. IBM Rational Unified �������������������������� ���������� ������������ ���� ��� �� ����!�"���� ������#�������� ������� ���� �� ��Rational $���� �� ���������������%����������&''(!�)�������#����������� �*+������ ,-.#���� ����� ����Rational prowadzi rozwój zarówno samego *+������� ���������� �������!�,-.�Rational Method Composer jest oprogramowa-��� ���������� ������/� ���� �� ��� ���*+#�� ��� ���������/������� �� �������� � ���������� �������� ������������������� ���!�*��� �� ���������� ���������������������� ���*+#�� ����������������������� ��� �0���� ����� ��1�� ������ %����� �� ���������� �������� �������!
Informacja o autorze. )%��������2�������.�� ����#�,��� �������.��������+���� �������2 ����������0&''�1!�3�������&''��� �������� �� �� ��� +4,5)6)7� ���� � �� ���#� �������� ���� � ����� �� � � %�� �����!� 3�� � ����� &''8� �� ,9$�Poland jako� �� ���������������������������������������!�Oracle. Od maja 2000 w IRM Polska jako Kierownik Asysty Technicznej. Od marca2002 w IBM Polska jako z/OS Services :������ !�)����������,-.�����#�����;�,-.�Technology Services, stanowisko: IT AdvisorySpecialist.
RUP w zastosowaniu – IBM Rational Method Composer 153
1. Wprowadzenie
4��������������������� �������<3+=�� ��������� � ��� ���������������� ���� ����a-��� ����� �� ���� ������ �� ��� ���� � ������ >� ,6,<� 0IT Infrastructure Library). Ale, zanim%����� �� �����������#���� ��� ���� ����� ���������� ��������� � �������%�/������ ���!5�������������#��������� ���� ���� �0���� ��������� ,6,<�>�Configuration Item) jest opro-� �����!�����#� ���� ������������������� ����� �� �� ��������#� ��� ���������� ����t-nym zagadnieniem jest organizacja pracy. I tutaj, podobnie jak w wielu innych obszarach, coraz% ����������� ������������� ����������� ����� �����!�,� ��#�������,6,<� ����� procesach za- ��������������*+�0Rational Unified Process) mówi o procesach wytwórczych. Obie te grupy� ����������� ��������������������������� ����������%�!�2��� ���������#��������/��� ������� ��� �� ��� ������� ������% ���/�������������� ��% ���;
Rys. 1. Relacja RUP – ITIL
5���%�������� ���� ������#�������������� ����?� ������@!�, ��� ������,6,<������Aciu IBM opisana jest w darmowym ITUP (IBM Tivoli Unified Process1#���� ��%����� �� � ������%����� �������� ��� ��!�*+�������� �������� ��� � 0���� ���� trial) RMC (IBM RationalMethod Composer).
2. RUP vs. RMC
Rational Unified Process������ ��������������� ������ �� ����!
Rational Method Compser� ����� ����� �� ���������� � �������/� ����� � ������� ������z RUP. Model „krojony jest��� � �@�������� ������������ �������� ������������ �����!
�������������� ���������
2� ����/� ����� ���� ��������/����������#������������*+!
1. Zestaw best pracitices��������������� ��������� �����������������
6�� ������������������ ����*+B��� ��� �������������/������������;
154 � ������������
• Zasady Kluczowe (Key Principles):
>���������������� ������0adapt the process)
>�� ��������� �������� �� ������0balance competing stakeholders priorities)
>��� �� ��������� ����� ������������ ��0collaborate accross teams)
>������������ ������������� ������ ���/�0demonstrate value iterativelly)
>��� �� ��������������� �����������0elevate level of abstraction)
>���������%��������/�0focus continuously in quality)
• Zasady Procesów (Process Essentials):
>�2���;���� ����������0develop a vision)
– Plan: planuj i pracuj zgodnie z planem (manage to the plan)
>�*�����;� ��� ������ ������������ �������� �������������0mitigate risks andtrack related issues)
– Biznes: rozpoznaj uzasadnienie biznesowe (examine the business case)
>�) �������� ;��� �������� �������� ���� ���������� 0design a component ar-chitecture)
– Prototyp: przyrostowo buduj i testuj produkt (incrementally build and test theproduct)
– Ewaluacja: regularnie oceniaj wyniki (regularly assess results)
>�C ���;�� ������� �� ��(manage and control changes)
>�2�� ���;��� ������ ��������� ���������� ����������0deploy a usable pro-duct)
– Proces: zaadoptuj proces do potrzeb projektu (adopt a process that fits yourproject)
2. Zestaw szablonów i uniwersalnych elementów dla budowania procesów wytwórczych
RUP definiuje framework�� ������#���� �� ����%�/���������������� ��%�%��������wol-ne��� �� �� ����� �� ������������� � ���������� � �������!� 5��������� 0RUP Tailor-ing1����������������������� �������������������#������������� ������������������ �A������������ ��%��%������������ �������������!
3. �������� ���� �����������������������������
Fundamentem RUP’a jest meta-model architektury. Unified Method Architecture (UMA) me-�A ������������������������� ������� ���������������������������� �������0 ����� �����SPEM dla UML, IGS Method, RUP 2003). Podstawowe zasady UMA:
• 4���������/�:�� ������0 ���#�� ������#�����1���� ������
:�� ������������� ���#�� ������#���������� ����%�/������������������������� � ������� � ��������� ���� ��������/� �� ������� � ������� �� �� �������������!
• Rodziny i wzorce Procesów
+.)� ���������� ������� ����������� � ������#� ��� �� ��� ����� �� ������� �b-szary projektów wytwórczych. Wzorce procesów (Capability Patterns1� �������%�� �� �������������#�����������������%��� ������� ��������������������a-
RUP w zastosowaniu – IBM Rational Method Composer 155
dania projektowe (Migracja Aplikacji, Pisanie Oprogramowania na Zamówienie,Dopasowanie Typowego Oprogramowania na potrzeby Klienta). Gotowe wzorce ����%�/����������������� �������� ������!�= ���� ��������� ��������o-��%������ ���������� �������� ������#���� � ����������/�%���������� �y-stania w podobnych projektach.
• D����������� ������
+.)����������� ����� ���������������� �������;�wodospadowy (waterfall), ite- �����#������������������!�*����� ������������������ ��������� �����/����o-�����/�������� �������� ������!
• Widoki Procesów
UMA definiuje zestaw spójnych widoków dla danego modelu procesów:
Struktura Prac (Work Breakdown) – prace wykonane/do wykonania
Produkty (Work Product Usage1�>������������������E�������������
C������0Team Allocation) – role przypisane do prac, odpowiedzialne za wyniki
• Elastyczna rozbudowa, mechanizm Plug-in
4������ ������ ��#������������ ����� �����/� ������� ���� ������ �����Plug-in (w praktyce – RMC jest plug-in’em Eclipse, rozszerzalnym przez kolejneplug-in’y)
2.2. Podstawowe cechy RMC
*.D������� ��������� �0����� �1������������ ��������������/� ������� ����������d-ne z RUP’em. Przygotowane jest w formie plug-in’ów i bibliotek :������!�2����� ���������������A ���� � ��������� � �������� IBM Rational Software Development Platform. Podstawowe ele-menty RMC to:
1. Samouczek – Method Delivery Tool
*��%������� ���� ����"6.<����������� ����/� � ����� ��� ���Rational Unified Pro-cess������� �������Rational Method Composer.
2. �����������������������Method Configuration Tool
4 ���������� ����%�%�������������������� ��������� ������� ������!��������������/��������%������� �������� �������� ����� ��/�������� ���������� ������ ������� ��e-sów dla konkretnych projektów.
3. � ��������������������������A Market place for process extentions
Strona ������������������������������*+#������������ ����/��������������� ��Aszerzenia w formie Plug-In’ów.
2.4. Open Unified Process
IBM uczestniczy w otwartym projekcie Eclipse Process 9 ��� �#� ��� �� ���� � ���������procesu Open Unified ������>���� ����� ����RUP’a. Na aplikacji Eclipse Process Frameworkoparty jest produkt Rational Method Composer.
156 � ������������
3. Podstawowe elementy RUP w RMC
3����� ������������ �������������RUP’a jest realizowany jako meta-model nazwany Uni-fied Method Architecture!� C������� �� ���������� *+B� #� +.)� ������ ����������� ������/Elementy (Method Content1� �� �����!�:�� ����� ����%�/���������� ����������������� ��Anych procesach.
:�� ������������#� ������ �������� ���� ��� %�/��������!������ ��� ���:�� ������ ����Dy�������!�5����������%�� ���� ����� � �� ������ ��� ����������� �������������� ������� �Adukcji oprogramowania.
�������������#������������ ������:�� ��� ���� �������9����� �������!
C����������� ������:�� ��� ���� ���� ����+.)������������ ������ �������wa-ny „jamnikami” RUP’a.
Rys. 2. „Jamniki” RUP’a
�������:�� �������� ��������� ����������������������� ���� ��;
RUP w zastosowaniu – IBM Rational Method Composer 157
Rys. 3. Elementy i Procesy Unified Method Architecture
3.1 Dyscypliny
����5����������������������������������*.D!�C ���������������� ��� ������5�Ascy�����#�����#�����#�� �������� �� ���� ��������������!�2������������������������ �5�������� �!��������� ��������������� ������ ��� ������5���������+.)!�C���� ���� �������������������������������� ����Rational Method Compser.
Dyscyplina Wybrane cele Wybrane Produkty/Wynik
Business Mode-ling
C ��� ��/�%�������� �%�� ��� ��������3d-%�� �����������������/�������������%�� �
��������
3����/�������� ������ ��������3�%�� ��
C�����/�������������������������� ��� �e-������� �������� ��������������0+�����w-nicy, Dostawcy, Odbiorcy, itp.)
+����/��� ����%������������� �����o-wywanego oprogramowania
+����/������ ������������ �������������oprogramowania z wymaganiami
Business Vision (Wizja Biznesowa)
Business Architecture (ArchitekturaBiznesowa)
Supplementary Business Specifica-tion (Dodatkowa Specyfikacja Biz-nesowa)
Business Rules / Business AnaysisModel (Model Biznesowy)
Business Glossary�0$�������-���e-sowy)
Requirements +������/��� ������3�%�� �����5������zakres funkcjonalny tworzonego systemu
C�����/�� ��� �������� ����� ��� o-jektantów i Programistów
+����/��� ������������� �
�������/����������������������� ���
�������/���������������� ����������
kosztu wytworzenia systemu
C��������/����� �������������������� ���o���� ��%��+�����������
Use Case Model (Model Przypad-����+����1
Requirements Attributes (Baza Atry-%�����2� ��1
Requirements Management Plan0���3%������2� ��1
Software Requirements Specification0$����������2� ������3� o-gramowania)
Supplementary Specification (Specy-������2� ���5����owych)
Vision (Wizja Systemu)
158 � ������������
Dyscyplina Wybrane cele Wybrane Produkty/Wynik
Analysis andDesign
6 ���� ����� ������ ����������� �
Przygotowanie ogólnej architektury systemu
+�������������� ������������������i��� ������A��������������0��!����j-���/1
Component Architecture (Architek-tura Komponentowa)
Software Architecture (ArchitekturaOprogramowania)
System Architecture (ArchitekturaSystemu)
Implementation Definicja organizacji kodu systemu,z�������������� ������������ ����
Implementacja projektu (programowanie)
Przygotowanie i testowanie zaprojektowanychKomponentów jako jednostek
,���� ����� ���������0%�/� ��������o- �������� ���� ������ ���1�������� ������o-wy
Implementation Model (Model Im-plemetacyjny)
Integration Build Plan (Plan Inte-gracji)
Test C����/�������� �����/������������������oprogramowania
3����/�������� �����/��������/������ ���wymaganiami
Test Plan (Plan Testów)
Test Cases (Przypadki do przetesto-wania)
Test Log (Dziennik Testów)
Workload Analysis Model (Model)���������3%�������1
Deployment C���������#���������������� ����������������������������������������� ������
Deployment Plan (Plan Instalacji)
Deployment Units (Jednstki Instala-cji)
Release Notes
Training Materials�0.�� ���Szkoleniowe)
Change Mana-gement
Kontrola i synchronizacja ewolucji elementówprodukowanego systemu
Change Request 0�������C �any)
Configuration Management Plan0���C �������������� ���1
Project Manage-ment
Planowanie zasobów, kosztów i harmonogra-mów
C ��������� ������ ������ ���
C �������� ������
Project Measusres 02�������� o-jektu)
Software Development Plan (PlanWytwórczy)
Iteration Plan (Plan Iteracji)
Environment C����������� ��������� �������������projektowego
Development Infrastructure (Infra-struktura Wytwórcza)
Development Process (Proces Wy-twórczy)
Project-Specific Guideliness (Wska-zówki Specyficzne dla Projektu)
�������� ������������������ ��*.D�0� ��������D������*+1���������5����������� ��win��Aciem Dyscypliny „Requirements”.
RUP w zastosowaniu – IBM Rational Method Composer 159
Rys. 4. Dyscypliny RUP – UMA
3.2 Fazy
����9�� ����� ��������������������*.D!� �������������� ��?� �����@�RUP’a ele- ���������������������������������������������� ���������������������� �����������!�9����������� ��� ��� !���������� ��������������� ������ ��� ������9��+.)!�C���� ���� �������������������������������� ����Rational Method Compser.
Faza Opis
Inception
0*����������1
C������� ����� ���������������������������� ��� ������� ������ ���� ��������� ��� ������������ �����!�5��� �������� ������������������� ����������������� �#���������������������������������� �������� ������������� ���������������������������� ��!�*���������������������#���������%�������#����� ����#����!����� �����%�/�������������������������� ���������������!
Elaboration
(Opracowanie)
Zasadniczym celem tej fazy jest przygotowanie punktu odniesienia dla projektu����� �����!�2� ������������������ ������������������������ ������a-��#���� � �����������/���� ������ �#�����������%���������������� ��!
Contruction
(Konstrukcja)
C������� ����� ������������������� ������� �����������������>������ �!
Transition
(Przeniesienie)
C������� ����� ��������������������������������� ������������ �����������w-���������������!
160 � ������������
�������� ������������������ ��*.D�0� ��������D������*+1���������9���� ���������� �9��„Inception”.
Rys. 5. fazy RUP – UMA
4. Praca z RMC
Celem pracy w Rational Method Composer jest przygotowanie konfiguracji RUP dopasowanej��� ������� � ������� ����� �����!� 2 �� �� � ������ � ������ �� ������ ���������� ��� �����podstawowych RUP (role, procesy, tid.) w formie plug-in’ów :������!�:�� ����� ������������a-�����������%�������������%�����>�������� ���!�2��� �����!&������� ��&F���� �����������i-�� ���#� ���������� �;
– Classic RUP (for large projects)
– RUP for small projects
– System Engineering (SE)
4.1. Modelowanie
.������������%���������� ���������Eclipse. Z dostarczonych elementów (plug-in’ów ba-������1�� ����%������ ����%����/���������� ���������������� ���������!�Mozna bu-���/� ���������������� �����0 ���#�����#����!1����������!
RUP w zastosowaniu – IBM Rational Method Composer 161
��������� ����������������� �� ��������;
Rys. 6. Modelowanie w RMC
4.2. Publikowanie
����������������� ������%���% ���� ������ ��� �����%�����/�>������� ��/��oku- ����"6.<#���� �������� ������ �����%���������������� ������������ �����!
��������� ��������������� ���� �������������%������#���� ������ ���%���������% a-nych procesów:
162 � ������������
Rys. 7. Publikowanie w RMC
����������������
3��%��������������� ���� ��� ��� ������/�0����%���������%����������� ���������r-��������*.D1!�2�� ������ ��#� ��� ����������������� ���������������#�� ���������/������� ������������ ���!
RUP w zastosowaniu – IBM Rational Method Composer 163
Rys. 8. Gotowa publikacja w RMC
5. Podsumowanie
Rational Unified ������%������������� �� ����%�� � ���% �����best practicess jest w natu-ralny sposób coraz bardziej popularny jako metodologia wytwarzania oprogramowania. Przedsta-wiony w tym referacie produkt IBM Rational Method D� ���� � �������� �����%�� �������������/������������� ��*+#�%���������������������#�%���?��������������� �@!
�����������������
1. http://www-306.ibm.com/software/rational/
2. IBM Rational Method Composer 7.1 – Help