Część 5

21
Organizacja i Zarządzanie Projektem Informatycznym Część 5 Część 5 OiZPI OiZPI >narzędzia CASE 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™

description

Część 5. OiZPI narzędzia CASE 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™. Narzędzia CASE Zarządzanie procesem formułowania wymagań - PowerPoint PPT Presentation

Transcript of Część 5

Page 1: 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™

Page 2: Część 5

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

Page 3: Część 5

Organizacja i Zarządzanie Projektem Informatycznym

Narzędzia CASENarzędzia CASE

Przeznaczenie i funkcje Architektura Przykłady

Page 4: Część 5

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)

Page 5: Część 5

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

Page 6: Część 5

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

Page 7: Część 5

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ł.

Page 8: Część 5

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

Page 9: Część 5

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ł.

Page 10: Część 5

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ł.

Page 11: Część 5

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ł.

Page 12: Część 5

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ł.

Page 13: Część 5

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ł.

Page 14: Część 5

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

Page 15: Część 5

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ł.

Page 16: Część 5

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

Page 17: Część 5

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).

Page 18: Część 5

Organizacja i Zarządzanie Projektem Informatycznym

LBMS Systems EngineerLBMS Systems Engineer

Page 19: Część 5

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

Page 20: Część 5

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

Page 21: Część 5

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