Transcript Slajdy cz 2

Część 2
OiZPI
>Iteracyjny przyrostowy model cyklu życiowego Rational Unified
Process™
w materiałach wykorzystano:
K.Subieta: Budowa i integracja systemów informatycznych
A.Kobieliński: Inżynieria Oprogramowania
I.Sommerville: Software Engineering
IBM Rational: RUP™
Organizacja i Zarządzanie Projektem Informatycznym
Model iteracyjny przyrostowy
© IBM-Rational Software
Organizacja i Zarządzanie Projektem Informatycznym
Model iteracyjny przyrostowy
Organizacja i Zarządzanie Projektem Informatycznym
Model iteracyjny przyrostowy
Organizacja i Zarządzanie Projektem Informatycznym
Porównanie z cyklem kaskadowym
tradycyjny model kaskadowy
model iteracyjny przyrostowy
© IBM-Rational Software
Organizacja i Zarządzanie Projektem Informatycznym
Etapy i fazy cyklu
 Etapy (oś pionowa)

są powtarzane w kolejnych iteracjach

odzwierciedlają grupy czynności
 Fazy (oś pozioma)

następują kolejno po sobie

odzwierciedlają stan zaawansowania projektu
© IBM-Rational
Software
Organizacja i Zarządzanie Projektem Informatycznym
Etapy i fazy cyklu
 Fazy

Inception (faza wstępna)

Elaboration (faza opracowania)

Contruction (faza budowy systemu)

Transition (faza przekazania)
© IBM-Rational Software
Organizacja i Zarządzanie Projektem Informatycznym
Faza wstępna (inception)
 Cele fazy wstępnej

Ustalenie kontekstu projektu oraz granic systemu

Wydzielenie podstawowych przypadków użycia
(sytuacji, w których używany będzie system)

Oszacowanie kosztu przedsięwzięcia oraz wstępnego
harmonogramu realizacji*

Analiza ryzyka*

Przygotowanie środowiska projektu
* - czynności strategiczne
Organizacja i Zarządzanie Projektem Informatycznym
Faza opracowania (elaboration)
 Cele fazy opracowania

Zapewnienie wystarczającej stabilności wymagań,
architektury oraz planu budowy

Opracowanie zarysu architektury oraz zapewnienie,
że będzie ona w stanie zrealizować ustalone
wymagania

Ostateczne zamknięcie prac nad przygotowaniem
środowiska realizacji projektu
Organizacja i Zarządzanie Projektem Informatycznym
Faza budowy systemu (construction)
 Cele fazy budowy

Minimalizacja kosztów implementacji

Osiągnięcie określonej jakości

Opracowanie testowych wersji systemu (Alpha, Beta,
i innych)

Ustalenie momentu przekazania systemu do użytku
Organizacja i Zarządzanie Projektem Informatycznym
Faza przekazania (transition)
 Cele fazy przekazania

Przeprowadzenie testów beta

Szkolenie użytkowników

Wykonanie wszelkich czynności związanych z
rozprowadzaniem oprogramowania

Osiągnięcie samowystarczalności użytkowników

Osiągnięcie porozumienia z udziałowcami, co do
faktu wywiązania się z przyjętych zobowiązań
Organizacja i Zarządzanie Projektem Informatycznym
Etapy
 Etapy/Dyscypliny (pracy)

Business Modeling (modelowanie procesów
biznesowych)

Requirements (etap formułowania wymagań)

Analysis & Design (analiza i projektowanie)

Implementation (implementacja)

Test (testy)

Deployment (rozpowszechnianie)

Configuration & Change (zarządzanie zmianami i
konfiguracją)

Project Management (zarządzanie projektem)

Environment (zarządzanie środowiskiem projektu)
Organizacja i Zarządzanie Projektem Informatycznym
Modelowanie procesów biznesowych
 Główne cele prac w ramach etapu

Poznanie struktury i działania organizacji

Upewnienie się, czy uczestnicy projektu (klienci,
użytkownicy, projektanci) wiedzą co będzie
przedmiotem projektu

Wstępne ustalenie wymagań (w sensie wymagań
organizacji)
Organizacja i Zarządzanie Projektem Informatycznym
Formułowanie wymagań
 Główne cele prac w ramach etapu

Osiągnięcie porozumienia pomiędzy zamawiającym i
innymi udziałowcami, odnośne tego, co system
powinien robić

Edukacja projektantów w zakresie wymagań

Ustalenie granic systemu

Dostarczenie materiału pozwalającego zaplanować
projekt i oszacować jego koszty
Organizacja i Zarządzanie Projektem Informatycznym
Analiza i projektowanie
 Główne cele prac w ramach etapu

Transformacja wymagań w projekt systemu

Rozwinięcie architektury

Dopasowanie projektu do środowiska
implementacyjnego
Organizacja i Zarządzanie Projektem Informatycznym
Implementacja
 Główne cele prac w ramach etapu

Określenie konfiguracji kodu i innych komponentów

Implementacja i testowanie klas

Integracja pracy poszczególnych osób tworzących
kod źródłowy
Organizacja i Zarządzanie Projektem Informatycznym
Testy
 Główne cele prac w ramach etapu

Weryfikacja interakcji pomiędzy obiektami

Weryfikacja interakcji komponentów

Sprawdzenie, czy zaimplementowano wszystkie
funkcje wynikające z wymagań
Organizacja i Zarządzanie Projektem Informatycznym
Rozpowszechnianie
 Główne cele prac w ramach etapu

Instalacja systemu (oprogramowania)
Organizacja i Zarządzanie Projektem Informatycznym
Czynności przekrojowe
© IBM-Rational Software
Organizacja i Zarządzanie Projektem Informatycznym
Proces architekturocentryczny
 RUP™ jest procesem architekturocentrycznym
 Rola architektury

Zrozumieć to co system robi

Zrozumieć jak działa

Móc pracować z fragmentem systemu

Móc rozszerzać system

Móc wykorzystać części systemu w innym projekcie
 Co to jest architektura:
„Opis systemu, z którego nie można już nic usunąć, gdyż nie będzie
możliwe jego zrozumienie i wyjaśnienie jego działania.” [P.Kruchten]
Minimalna specyfikacja wystarczająca do zrozumienia systemu i
wyjaśnienia zasad jego działania.
 Element projektu mający znaczenie dla architektury –
element mający szeroki wpływ na strukturę systemu i
na jego istotne cechy.
Organizacja i Zarządzanie Projektem Informatycznym
Proces bazujący na przypadkach użycia
 Przypadki użycia są bazą dla wszystkich czynności
realizowanych w ramach procesu
 Przypadek użycia jest wyjściową jednostką
dekompozycji
 Ścieżka metodyczna

Przypadek użycia organizacji

Obiektowy model organizacji

Przypadek użycia

Model projektowy, Model wdrożenia, Scenariusz testów
class Class Model
Przypadek uzycia
organizacj i
Przypadek użycia
Realizuje
Realizuje
Testuje
Implementuje
Realizuje
Obiektow y model
organizacj i
Model proj ektow y
Automatyzuje
Model
implementacyj ny
Scenariusz testów
Organizacja i Zarządzanie Projektem Informatycznym
Metodyka jako produkt
 Wersja komercyjna - Rational Suite (metodyka +
narzędzia)
 Wersja otwarta metodyki – „Open UP”
 Interaktywna przeglądarka metodyki:
http://epf.eclipse.org/wikis/openup/
Organizacja i Zarządzanie Projektem Informatycznym
Diagramy przebiegu pracy (Workflows)
 Objaśnienie podstawowych pojęć
 Symbole
 Role uczestników projektu przewidziane w RUP™
Organizacja i Zarządzanie Projektem Informatycznym
Pojęcia

Rola – definicja zachowania i zakresu odpowiedzialności
określonego uczestnika projektu lub grupy takich
uczestników

Czynność – część prac nad projektem do której wykonania
zobowiązana jest określona rola

Artefakt – część informacji jaka powstaje, jest
modyfikowana lub wykorzystywana w określonym procesie
(zespole ról i czynności)
Organizacja i Zarządzanie Projektem Informatycznym
Rola

Rola jest abstrakcyjnym pojęciem definiującym pewien zbiór
czynności i posiadanych artefaktów

Rola jest przeważnie realizowana przez określonego
uczestnika projektu lub grupę takich uczestników
współpracujących w ramach zespołu

Każdy członek zespołu najczęściej spełnia wiele różnych ról

Rola nie wskazuje określonego uczestnika projektu, rola
określa sposób zachowania się osoby występującej w tej roli

Role określa się również dla osób spoza jednostki
realizującej projekt
Organizacja i Zarządzanie Projektem Informatycznym
Czynności

Każdej roli odpowiada pewien ściśle ustalony zbiór czynności

Czynności te są związane z daną rolą

Jedna czynność może być związana z większą liczbą ról,
wówczas czynność ta jest realizowana wspólnie przez kilka
osób występujących w różnych rolach

Czynności są powiązane z artefaktami, które są
przedmiotem tychże czynności
Organizacja i Zarządzanie Projektem Informatycznym
Artefakty

Artefakty są ostatecznymi lub pośrednimi "owocami" pracy

Artefakt może być:
 dokumentem – np. Dokument Wymagań, Dokument
Wizji
 modelem – Model Procesów Biznesowych, Biznesowy
Model Obiektowy
 elementem systemu – np. Klasa, Podsystem
Organizacja i Zarządzanie Projektem Informatycznym
Symbole graficzne (notacja)
Symbole artefaktów
różnego rodzaju
Organizacja i Zarządzanie Projektem Informatycznym
Diagramy podstawowe i szczegółowe

Do ogólnego przedstawienia przebiegu pracy służą diagramy
podstawowe (core workflows)

Diagramy podstawowe zapisuje się w notacji diagramów czynności
UML

Na diagramach tych występują strzałki, bloki decyzyjne, elementy
synchronizujące oraz symbole grupujące

Z każdy symbolem grupującym związany jest jeden lub wiele
diagramów szczegółowych

Jeśli diagramów szczegółowych jest więcej, stosuje się hierarchię
diagramów szczegółowych
Organizacja i Zarządzanie Projektem Informatycznym
Diagram podstawowy (notacja)
Symbol
grupujący
(stan)
Początek
Blok decyzyjny
Element synchronizujący
Koniec
Organizacja i Zarządzanie Projektem Informatycznym
Diagram podstawowy i szczegółowy (przykład)
Organizacja i Zarządzanie Projektem Informatycznym
Role uczestników RUP™


W Rational Unified Process™ uczestnicy projektu występują
następujące grupy ról:

Analitycy

Projektanci (developers)

Testerzy

Managerowie

Inni
W grupie analityków wyróżnia się takie role jak:

Analityk procesów biznesowych

Projektant biznesowy

Weryfikator (reviewer) modelu biznesowego

Weryfikator wymagań

Analityk systemowy

Specyfikator wymagań

Projektant interfejsu
Organizacja i Zarządzanie Projektem Informatycznym
Role uczestników RUP™



W grupie projektantów występują takie role jak:

Architekt oprogramowania

Weryfikator architektury

Weryfikator kodu

Projektant baz danych

Weryfikator projektów

Projektant

Implementator

Integrator
Do grupy testerów zalicza się następujące role:

Projektant testów

Tester
W grupie managerów występują:

Manager zmian

Manager konfiguracji

Manager wdrożenia

Inżynier procesów

Manager projektu

Weryfikator projektu
Organizacja i Zarządzanie Projektem Informatycznym
Role uczestników RUP™

Oprócz tego wyróżnia się pewne dodatkowe role, takie jak:

Użytkownik końcowy

Grafik

Udziałowiec

Administrator systemu

Specjalista do spraw narzędzi
Organizacja i Zarządzanie Projektem Informatycznym