Część 5
description
Transcript of Część 5
Organizacja i Zarządzanie Projektem Informatycznym
Część 5Część 5
OiZPIOiZPI>narzędzia CASE
w materiałach wykorzystano:
K.Subieta: Budowa i integracja systemów informatycznychA.Kobieliński: Inżynieria Oprogramowania
I.Sommerville: Software EngineeringIBM Rational: RUP™
Organizacja i Zarządzanie Projektem Informatycznym
Konspekt bieżącego wykładuKonspekt bieżącego wykładu
Narzędzia CASE Zarządzanie procesem formułowania wymagań Metodyka budowy modelu procesów biznesowych
Organizacja i Zarządzanie Projektem Informatycznym
Narzędzia CASENarzędzia CASE
Przeznaczenie i funkcje Architektura Przykłady
Organizacja i Zarządzanie Projektem Informatycznym
Narzędzia CASE - definicjeNarzędzia CASE - definicje
Tradycyjnie przez CASE Tradycyjnie przez CASE rozumiało się narzędzia, rozumiało się narzędzia, które wspomagają ogólnie które wspomagają ogólnie rozumiane wytwarzanie rozumiane wytwarzanie oprogramowania oraz oprogramowania oraz koncentrują się na głównie koncentrują się na głównie na fazach analizy i na fazach analizy i projektowania oraz projektowania oraz bezpośrednim bezpośrednim wykorzystaniu wyników wykorzystaniu wyników tych faz w implementacji.tych faz w implementacji.
dziśdziśwczorajwczorajjutrjutroo
W przyszłości CASE będą W przyszłości CASE będą wykorzystywane w fazie wykorzystywane w fazie strategicznej oraz w czasie strategicznej oraz w czasie konserwacji oprogramowania konserwacji oprogramowania (modelowania organizacji, (modelowania organizacji, procedury, organizacja pracy procedury, organizacja pracy w przedsiębiorstwie, w przedsiębiorstwie, przepływ dokumentów, przepływ dokumentów, reinżynieria biznesowa)reinżynieria biznesowa)
Obecnie narzędzia CASE Obecnie narzędzia CASE obejmują definiowanie obejmują definiowanie wymagań, czasem wymagań, czasem implementację, testowanie implementację, testowanie i uruchamianie, i uruchamianie, organizację pracy zespołu)organizację pracy zespołu)
Organizacja i Zarządzanie Projektem Informatycznym
Narzędzia CASE - podziałNarzędzia CASE - podział
Narzędzia CASE
upper-CASE – upper-CASE – wspomaganie wczesnych faz prac nad oprogramowaniem bez związku ze środowiskiem implementacyjnym
lower-CASE lower-CASE wspomaganie faz projektowania i implementacji w ścisłym związku ze środowiskiem implementacji
Organizacja i Zarządzanie Projektem Informatycznym
Korzyści ze stosowania narzędzi CASEKorzyści ze stosowania narzędzi CASE
Podniesienie jakości realizowanego systemu
Usprawnienie komunikacji
Produktywność
Sformalizowana metodyka realizacji SI
Łatwiejsza konserwacja SI
Lepsze zarządzanie projektem
Inne
% respondentów5 10 15 20 25 30 35
Organizacja i Zarządzanie Projektem Informatycznym
Wielośrodowiskowe narzędzie I-CASEWielośrodowiskowe narzędzie I-CASE
Środowiskoprogramistyczne
AŚrodowisko
programistyczneB
Środowiskoprogramistyczne
C
Środowiskoprogramistyczne
D
Pakiet typuLower-CASE
dla środowiska A
Pakiet typuLower-CASE
dla środowiska C
Pakiet typuLower-CASE
dla środowiska D
Pakiet typuLower-CASE
dla środowiska B
Jądro systemu.Uniwersalny pakiet
Upper-CASE
Źródło:K.Subieta wykł.
Organizacja i Zarządzanie Projektem Informatycznym
Składowe architektury CASESkładowe architektury CASE
Źródło:K.Subieta wykł.
Środowisko implementacji
Moduł inżynieriiodwrotnej
Generatorykodu
Moduł pracysieciowej
Moduł zarządzaniapracą grupową
Moduł zarządzaniakonfiguracjami
Generatoryraportów
Generatory dokumentacjitechnicznej
Moduł kontrolijakości
Moduł kontrolipoprawności
Moduł importu/eksportu danych
Sprzęgi do narzędzi RAD
Repozytoriumdanych
Moduł projektowaniainterfejsu użytkownika
Edytorydiagramów
Organizacja i Zarządzanie Projektem Informatycznym
Edytor notacji graficznychEdytor notacji graficznych
Funkcje• Tworzenie, edycja i wydruk diagramów wykorzystywanych w fazach
określania wymagań.• Tworzenie i edycja powiązań pomiędzy poszczególnymi symbolami i
diagramami oraz nawigowanie po sieci powiązanych diagramów.
Ocena• Ergonomia pracy. Diagramy graficzne są jednym z podstawowych
narzędzi pracy w fazach analizy i projektowania. Powinny one pozwalać analitykom i projektantom skupić się na pracy, a nie na “zmaganiach” z edytorem.
• Możliwość kontrolowania ilości informacji prezentowanej graficznie.• Jakość i możliwość formatowania wydruków.• Wykrywanie na bieżąco konstrukcji niepoprawnych.• Zapewnienie spójności informacji umieszczonych na różnych
diagramach
Źródło:K.Subieta wykł.
Organizacja i Zarządzanie Projektem Informatycznym
Funkcje Ewidencja danych o realizowanym projekcie Wprowadzenie oraz edycja specyfikacji modelu i projektu, a także innych
informacji związanych z przedsięwzięciem. Wyszukiwanie pożądanej informacji
Ocena Możliwy dostęp z programów zewnętrznych, możliwość wykorzystania w
powiązaniu z narzędziami 4GL Jakość serwera zarządzającego SZBD SQL, ODBC, itd. W niektórych narzędziach CASE użytkownik ma możliwość rozbudowania
struktury repozytorium oraz wprowadzania własnych funkcji działających na repozytorium.
Repozytorium (słownik) Repozytorium (słownik)
Źródło:K.Subieta wykł.
Organizacja i Zarządzanie Projektem Informatycznym
Pozostałe moduły narzędzi CASE (1)Pozostałe moduły narzędzi CASE (1)
Moduł kontroli poprawności: Pewne błędy mogą być wykrywane na bieżąco w trakcie edycji
diagramów i słownika danych., np. uczynienie klasy swoja własną specjalizacją.
Moduł kontroli jakości: Pewne systemy pozwalają na automatyczną ocenę pewnych miar
jakości projektu. Dotyczy to szczególnie złożoności oraz stopnia powiązania składowych.
Generator raportów: Służy do przygotowania raportów na podstawie zawartości słownika
danych. Niektóre raporty są parametryczne. Narzędzia CASE zawierają sporo gotowych generatorów raportów. Niektóre z nich pozwalają na definiowanie własnych.
Generator dokumentacji technicznej: Moduł służący do przygotowania dokumentacji technicznej złożonej z
szeregu diagramów. Swobodne formatowanie dokumentów. Przykładowe dokumenty. Łatwe i efektywne uaktualnienie dokumentacji po dokonaniu zmian w projekcie.
Źródło:K.Subieta wykł.
Organizacja i Zarządzanie Projektem Informatycznym
Pozostałe moduły narzędzi CASE (2)Pozostałe moduły narzędzi CASE (2)
Generatory kodu: Narzędzia służące do generacji kodu w rozmaitych językach
programowania. Często generują szkielety, które muszą być uzupełnione przez użytkownika dodatkowym kodem. Wygenerowany kod jest uzupełniony o komentarze i inne informacje. Może także zawierać pewne elementy do modyfikacji. Nazwy użyte w projekcie przechodzą do wynikowego kodu.
Moduł zarządzania wersjami: Umożliwia kontrolę różnych wersji projektu powstających ze względu
na konieczność grupowego wprowadzania zmian oraz na wskutek zastosowania wielu środowisk.
Moduł projektowania interfejsu użytkownika: Dotyczy projektowania dialogów, okien, menu. Zaletą jest
wykorzystanie informacji znajdujących się w słowniku danych. Pozwala to np. na automatyczne wygenerowanie dialogu do edycji pewnej struktury danych.
Moduł inżynierii odwrotnej
Źródło:K.Subieta wykł.
Organizacja i Zarządzanie Projektem Informatycznym
Traktowanie narzędzi CASE wyłącznie jako generatorów kodu. Nie jest to efektywne przy braku rzetelnego podejścia do analizy i
projektowania ponieważ: nakłady na implementację stanowią tylko ok. 15-30% całych nakładów, koszt błędów popełnionych w fazie implementacji jest stosunkowo niewielki a ponadto istnieją inne, tańsze narzędzia programistyczne (RAD)
Nieznajomość metodyki analizy i projektowania. Narzędzia CASE nie zwalniają z myślenia, wiedzy i doświadczenia.
Niewłaściwa organizacja i zarządzanie przedsięwzięciem. Nieuporządkowanie prac, brak planu, brak właściwych ocen, brak
monitorowania postępu, itd.
Zbyt wysokie oczekiwania w stosunku do narzędzia CASE. Może ono wprawdzie zredukować koszty (twierdzi się, że co najwyżej o 50%)
ale koszt wdrożenia jest wysoki, efekty pojawiają się z pewnym opóźnieniem, wymaga dyscypliny w przedsięwzięciu.
Przyczyny trudności z narzędziami CASEPrzyczyny trudności z narzędziami CASE
Źródło:K.Subieta wykł.
Organizacja i Zarządzanie Projektem Informatycznym
Przeszkody we wdrażaniu CASEPrzeszkody we wdrażaniu CASE
Brak współpracy kierownictwa
Brak doświadczenia z systemami CASE
Brak integracji z istniejącymi narzędziami
Nieodpowiednia organizacja prac projektowo/programowych
Brak dowodów przydatności CASE
Brak metodyki projektowania SI
Niezgodność z istniejącą praktyką
Obawa przed zmianami
Brak akceptacji klienta
2 4 6 8 10 12 14% respondentów
Organizacja i Zarządzanie Projektem Informatycznym
Rozkład kosztów realizacji SIRozkład kosztów realizacji SIKosztrealizacji
Metody inarzędzia
CASE
Metodytradycyjne“ad hoc”
Planowanie Analiza Projektowanie Konstrukcja Wdrożenie Konserwacja
Źródło:K.Subieta wykł.
Organizacja i Zarządzanie Projektem Informatycznym
LBMS Systems EngineerLBMS Systems Engineer
• Oprogramowanie pochodzi z drugiej połowy lat 90-tych, wspiera metodologię strukturalną
• Obejmuje– ewidencja problemów, wymagań, rozwiązań– zdarzenia– transakcje– słownik danych elementarne– model procesów (diagramy DFD, PHD, PDD)– model danych (diagram ERD)– projektowanie interfejsu (UNIX, Windows)– generator skryptów baz danych
• Narzędzie spójne w warstwie narzędziowej jak i koncepcyjnej
Organizacja i Zarządzanie Projektem Informatycznym
Architektura systemu LBMS Systems EngineerArchitektura systemu LBMS Systems Engineer
klasyczny model klient-serwerklient: Windows 95/98serwer: SQLBase (Gupta/Centura)
Wszystkie dane o projekcie, a więc wymagania, role użytkowników, tabele, modele itp. przechowywane są w tzw. repozytorium projektu, zarządzanym przez profesjonalny, komercyjny DBMS (SQL Base, ORACLE).
Organizacja i Zarządzanie Projektem Informatycznym
LBMS Systems EngineerLBMS Systems Engineer
Organizacja i Zarządzanie Projektem Informatycznym
Rational Suite Enterprise Rational Suite Enterprise
• Jeden z najsilniejszych pakietów CASE dostępnych na rynku
• Wspiera metodologię obiektową i język UML• Wspiera model cyklu RUP (Rational Unified Process)
dostarczając wiedzy niezbędnej do zarządzania projektem w oparciu o artefakty
• Wbudowana integracja z Visual C++, obecnie środowiskiem .NET
• Generatory kodu wysokiej jakości• Wspiera nowoczesne (choć w naszych realiach rzadko
stosowane) rozwiązania typu JAVA, CORBA• Wada – dotyczy wszystkich obiektowych CASE – problem
trwałości obiektów (obiektowe bazy danych ciągle na wczesnym etapie rozwoju)
• Wada – rezygnacja z zewnętrznego generatora raportów - integracja pakietu z zewnętrznymi narzędziami Microsoft Office
Organizacja i Zarządzanie Projektem Informatycznym
Enterprise ArchitectEnterprise Architect
• Producent – Sparx Systems• Silna współpraca z OMG• Wsparcie dla UML, SysML, BPMN, MDA• Wsparcie dla pracy grupowej (baza danych, system
kontroli wersji)• Generatory kodu źródłowego i DDL• Audyt modelu
Organizacja i Zarządzanie Projektem Informatycznym
Enterprise ArchitectEnterprise Architect
• Przykład 1 – tworzenie i zawartość modelu• Przykład 2 – praca grupowa z bazą SQL• Przykład 3 – praca grupowa z zastosowaniem SVN• Przykład 4 – generowanie i synchronizacja kodu (c++)• Przykład 5 – generowanie i synchronizacja DDL (SQL)• Przykład 6 - audyt projektu