Część 2 OiZPI Iteracyjny przyrostowy model cyklu życiowego Rational Unified Process™ w materiałach wykorzystano: K.Subieta: Budowa i integracja systemów.

Slides:



Advertisements
Podobne prezentacje
Modelowanie przypadków użycia
Advertisements

Projektowanie w cyklu życia oprogramowania
Złożoność procesu konstrukcji oprogramowania wymusza podział na etapy.
OiZPI Część 5 narzędzia CASE w materiałach wykorzystano:
OiZPI Część 1 zakres tematyczny inżynieria systemów terminologia
Role w zespole projektowym
1 / 47 WARSZAWA 2005 Przemysław Siekierko Stanisław Andraszek Rational Unified Process.
Referat 3. Planowanie zadań i metody ich obrazowania
Rational Unified Process www-306.ibm.com/software/rational/
Zespół L Prezentacja aplikacji Friendly Help Desk.
UML Unified Modeling Language
Propozycja metodyki nauczania inżynierii oprogramowania
Co UML może zrobić dla Twojego projektu?
Dokumentowanie wymagań w języku XML
Inżynieria oprogramowania II Wykład 12 Projekty dyplomowe
Tomasz Pieciukiewicz Rafał Hryniów
Cykle życia oprogramowania
Rational Unified Process
Projektowanie i programowanie obiektowe II - Wykład IV
Projekt zaliczeniowy z przedmiotu "Inżynieria oprogramowania"
1/18 LOGO Profil zespołu. 2/18 O nas Produkcja autorskich rozwiązań informatycznych dla małych i średnich firm w zakresie systemów: Baz danych Aplikacji.
Analiza i projektowanie Informacyjnych Systemów Zarządzania
Projektowanie - wprowadzenie
Dalsze elementy metodologii projektowania. Naszym celem jest...
Wykład 4 Analiza i projektowanie obiektowe
Wykład 5 UML - Unified Modeling Language
Wykład 2 Cykl życia systemu informacyjnego
Psychologiczne aspekty pracy testera oprogramowania
Projekt i implementacja aplikacji wspomagającej testowanie
Projekt i implementacja aplikacji wspomagającej testowanie oprogramowania, zgodne z metodologią Unified Software Development Process (RUP). Włodzimierz.
C.d. wstępu do tematyki RUP
Unified Modeling Language graficzny język wizualizacji, specyfikowania, tworzenia i dokumentowania systemów informatycznych.
Zadanie: Integracja oprogramowania w gminach i starostwie
Stanisław Jerzy Niepostyn, Ilona Bluemke Instytut Informatyki,
Zarządzanie projektami IT
Diagramy obiegu dokumentów a UML w modelowaniu procesów biznesowych
Wykład 1 – część pierwsza
Microsoft Solution Framework
Wykład 6 Przypadki użycia a proces
Zarządzanie projektami
Rational Unified Process Implementacja Aleksandra Reiman, gr. I-52.
Program Operacyjny Kapitał Ludzki
Modelowanie obiektowe Diagramy UML – diagram przypadków użycia
Unified Modeling Language - Zunifikowany Język Modelowania
Wprowadzenie do UML dr hab. inż. Kazimierz Subieta profesor PJWSTK.
Proces tworzenia oprogramowania
UML W V ISUAL S TUDIO Mateusz Lamparski. UML D EFINICJA Unified Modeling Language (UML) to graficzny język do obrazowania, specyfikowania, tworzenia i.
Service Oriented Architecture
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski 1 informatyka +
Komputerowe wspomaganie projektowania
Metodologia CASE. Przyczyny użycia narzędzi CASE Główną przesłanką użycia narzędzi CASE jest zwiększenie produktywności i jakości produkowanych systemów.
Zarządzanie zagrożeniami
Proces tworzenia oprogramowania Proces tworzenia oprogramowania jest zbiorem czynności i związanych z nimi wyników, które prowadzą do powstania produktu.
Projektowanie relacyjnych baz danych – diagramy związków encji
Podstawy zarządzania projektami Karta projektu
Michał Sipek Piotr Kapciak
Copyright © Jerzy R. Nawrocki Team Software Process Inżynieria oprogramowania II Wykład.
Projekt modułu Nazwa całego projektu Nazwa modułu Imię i Nazwisko Inżynieria Oprogramowania II dzień, godzina rok akademicki W szablonie na niebiesko zamieszczone.
Bartosz Baliś, 2006 Wstęp do Inżynierii Oprogramowania Bartosz Baliś.
Systemy zarządzania przepływem pracy i systemy zarządzania procesami biznesowymi Karolina Muszyńska.
E. Stemposz. Rational Unified Process, Wykład 10, Slajd 1 wrzesień 2002 Powrót Studia Podyplomowe IT w Biznesie Rational Unified Process Wykład 10 Przepływ.
E. Stemposz. Rational Unified Process, Wykład 11, Slajd 1 wrzesień 2002 Powrót Studia Podyplomowe IT w Biznesie Rational Unified Process Wykład 11 Typowe.
E. Stemposz. Rational Unified Process, Wykład 2, Slajd 1 Studia Podyplomowe IT w Biznesie Rational Unified Process Wykład 2 Krótka charakterystyka RUP.
Inżynieria systemów informacyjnych
Zarządzanie projektami informatycznymi
Inżynieria Oprogramowania Laboratorium
Wykład 1 – część pierwsza
IEEE SPMP Autor : Tomasz Czwarno
Cykl życia oprogramowania
Zapis prezentacji:

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™

Model iteracyjny przyrostowy Metodyka RUP – nakład pracy w ramach poszczególnych etapów. © IBM-Rational Software

Model iteracyjny przyrostowy

Model iteracyjny przyrostowy

Porównanie z cyklem kaskadowym tradycyjny model kaskadowy Przykłady skopiowane z metodyki RUP – jak widać model iteracyjny, w którym w każdym cyklu większość nakładów dotyczy jednego z etapów model iteracyjny przyrostowy © IBM-Rational Software

Etapy i fazy cyklu Etapy (oś pionowa) Fazy (oś pozioma) są powtarzane w kolejnych iteracjach odzwierciedlają grupy czynności Fazy (oś pozioma) następują kolejno po sobie odzwierciedlają stan zaawansowania projektu © IBM-Rational Software w dalszej części mowa będzie o planowaniu, harmonogramowaniu i doborze osób. Inne aspekty przy okazji innych zagadnień na dalszych wykładach

Etapy i fazy cyklu Fazy Inception (faza wstępna) Elaboration (faza opracowania) Contruction (faza budowy systemu) Transition (faza przekazania) w dalszej części mowa będzie o planowaniu, harmonogramowaniu i doborze osób. Inne aspekty przy okazji innych zagadnień na dalszych wykładach © IBM-Rational Software

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 Znamy odpowiedź na pytanie: Jaka jest skala przedsięwzięcia ? w dalszej części mowa będzie o planowaniu, harmonogramowaniu i doborze osób. Inne aspekty przy okazji innych zagadnień na dalszych wykładach

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 Znamy odpowiedź na pytanie: Wiemy co robić ? w dalszej części mowa będzie o planowaniu, harmonogramowaniu i doborze osób. Inne aspekty przy okazji innych zagadnień na dalszych wykładach

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 System działa poprawnie Jest prawdą, że: przy założeniu określonego poziomu jakości. w dalszej części mowa będzie o planowaniu, harmonogramowaniu i doborze osób. Inne aspekty przy okazji innych zagadnień na dalszych wykładach

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ń Użytkownik jest samodzielny Jest prawdą, że: przy założeniu określonego poziomu wsparcia. w dalszej części mowa będzie o planowaniu, harmonogramowaniu i doborze osób. Inne aspekty przy okazji innych zagadnień na dalszych wykładach

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) w dalszej części mowa będzie o planowaniu, harmonogramowaniu i doborze osób. Inne aspekty przy okazji innych zagadnień na dalszych wykładach

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) w dalszej części mowa będzie o planowaniu, harmonogramowaniu i doborze osób. Inne aspekty przy okazji innych zagadnień na dalszych wykładach

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

Analiza i projektowanie Główne cele prac w ramach etapu Transformacja wymagań w projekt systemu Rozwinięcie architektury Dopasowanie projektu do środowiska implementacyjnego w dalszej części mowa będzie o planowaniu, harmonogramowaniu i doborze osób. Inne aspekty przy okazji innych zagadnień na dalszych wykładach

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 w dalszej części mowa będzie o planowaniu, harmonogramowaniu i doborze osób. Inne aspekty przy okazji innych zagadnień na dalszych wykładach

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ń w dalszej części mowa będzie o planowaniu, harmonogramowaniu i doborze osób. Inne aspekty przy okazji innych zagadnień na dalszych wykładach

Rozpowszechnianie Główne cele prac w ramach etapu Instalacja systemu (oprogramowania) w dalszej części mowa będzie o planowaniu, harmonogramowaniu i doborze osób. Inne aspekty przy okazji innych zagadnień na dalszych wykładach

Czynności przekrojowe w dalszej części mowa będzie o planowaniu, harmonogramowaniu i doborze osób. Inne aspekty przy okazji innych zagadnień na dalszych wykładach © IBM-Rational Software

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.

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

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/

Diagramy przebiegu pracy (Workflows) Objaśnienie podstawowych pojęć Symbole Role uczestników projektu przewidziane w RUP™

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)

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

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

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

Symbole graficzne (notacja) Symbole artefaktów różnego rodzaju

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

Diagram podstawowy (notacja) Symbol grupujący (stan) Początek Blok decyzyjny Element synchronizujący Koniec

Diagram podstawowy i szczegółowy (przykład)

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

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

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