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