Fazy modelu cyklu tworzenia

Wielkość: px
Rozpocząć pokaz od strony:

Download "Fazy modelu cyklu tworzenia"

Transkrypt

1 Podstawowe pojęcia system (gr. umieścić razem) zbiór lub ułożenie elementów tak powiązanych, że tworzą jedność lub ograniczoną całość; jak na przykład system słoneczny, system nawadniający; inaczej regularnie współpracująca lub współzależna grupa elementów tworzących jednolitą całość zakres obowiązków (odpowiedzialności) systemu powiązany w całości zbiór rzeczy, za które system odpowiada system informacyjny przechowywanie, przesyłanie, przetwarzanie, udostępnianie informacji system informatyczny system zautomatyzowany, skomputeryzowany, w całości lub części projektowanie cel: szybkie i bezkonfliktowe wprowadzenie zmian bez zakłócenia normalnego funkcjonowania organizacji projekt pod pojęciem projektu możemy rozumieć tworzenie nowych obiektów, wprowadzanie zmian organizacyjnych, modernizację istniejących obiektów czy też promowanie nowej usługi lub produktu; projekt jest określony przez: produkt końcowy (zakres) czas realizacji (terminy) koszty realizacji (budżet) jakość (parametr dodatkowy, czwarty wymiar) zarządzanie projektem ogół aktywności związanych z planowaniem i kontrolą projektu projekt informatyczny; przedsięwzięcie projektowe zestaw zadań, których realizacja ma doprowadzić do skonstruowania i/lub wdrożenia systemu informatycznego (systemu oprogramowania) spełniającego zdefiniowane wcześniej wymagania, w ramach określonego czasu i budżetu systemy informatyczne to szczególna klasa projektów, ze względu na złożoność, różnorodność oddziaływania; istnieje duża liczba zakończonych niepowodzeniem/niezakończonych projektów informatycznych w różnych krajach (rozmaite przyczyny), stąd prace nad doskonaleniem procesu prowadzenia projektu

2 próg złożoności człowiek nie jest w stanie ogarnąć w pełni wycinka rzeczywistości powyżej pewnej złożoności (objętości problemu), stąd konieczność dekompozycji i strukturalizacja problemu na mniejsze podproblemy problem różnice między aktualnym stanem a tym, co chcielibyśmy osiągnąć identyfikacja problemu proces definiowania tych różnic rozwiązanie problemu przedsięwzięcie mające na celu zniwelowanie tych różnic dziedzina problemu rozważane pole działania (wycinek rzeczywistości) abstrakcja zasada ignorowania tych aspektów rzeczywistości, które nie są istotne z punktu widzenia bieżącego celu, by móc pełniej koncentrować się na tych ważnych; nawet jeśli analityk wie o wielu rzeczach, pewne z nich przedkłada nad inne model uproszczony fragment rzeczywistości opisany przy pomocy pewnej notacji, np. z punktu widzenia struktury funkcjonalnej (DFD), struktury danych (ERD), dynamiki systemu (STD, czyli diagramy stanów) model cyklu życia oprogramowania/systemu czyli System Development Life Circle (SDLC); całość działań z okresu życia systemu: od projektowania przez eksploatację, aż po wycofanie model cyklu tworzenia (konstrukcji) oprogramowania/systemu definiowany przez kierownika projektu; dostarcza środki kontroli projektu; rodzaj przewodnika uwzględniającego cele i potrzeby projektu, np. model kaskadowy MTBF (Mean Time Between Failures) parametr charakteryzujący niezawodność systemu: średni czas pomiędzy awariami MTTR (Mean Time To Repair) parametr charakteryzujący pielęgnowalność systemu (czas przywrócenia do działania po awarii) System cechy dobrego systemu: użyteczny (spełnia postawione wymagania i realizuje cele) komfortowy w obsłudze (user friendly) bezpieczny (stopień zagrożenia dla środowiska, w którym jest zanurzony) niezawodny (parametr MTBF) pielęgnowalny (parametr MTTR) modyfikowalny, elastyczny (zmiana wymagań w czasie) niezbyt drogi co zwykle uniemożliwia osiągnięcie tych cech? niska jakość fazy analizy wymagań pominięcie wymagań i niespełnienie oczekiwań klienta częste zmiany wymagań w trakcie realizacji projektu system przestarzały po zakończeniu prac nad nim ze względu na bardzo długi czas tworzenia błędy techniczne jak zbudować dobry system? wykorzystać dobrze zdefiniowany proces projektowania: z jasno określonymi fazami, z których każda kończy się dostarczeniem produktu końcowego (np. dokumentu)

3 jak najwcześniej zdefiniować jasno określony zestaw wymagań koniecznie uwzględnić weryfikację i walidację (testowanie) użyć zestawu odpowiednich architektur, komponentów i narzędzi składniki systemu: komponenty (podsystemy) wzajemne powiązania komponentów granice środowisko, w którym system jest zanurzony cel istnienia wejście wyjście interfejsy (sposób w jaki środowisko może komunikować się z systemem) wymagania odnośnie powstającego systemu: funkcjonalne (co system ma robić, w tym obsługa błędów) niefunkcjonalne (parametry systemu, np. wydajność, zgodność ze starą bazą danych firmy oraz parametry projektu ich źródłem są ograniczenia sprecyzowane na etapie określenia wymagań) Fazy modelu cyklu tworzenia W zależności od definicji, jest 5 lub 6 podstawowych faz konstrukcji systemu: 1. (1A) określenie wymagań 2. (1B) analiza (modelowanie) 3. projektowanie 4. implementacja 5. instalacja i testowanie 6. konserwacja i rozwój Poniższa tabela zestawia fazy dla nieklasycznego modelu kaskadowego. Warto ją znać, bowiem te same fazy występują w pozostałych modelach w tej czy innej formie. Dokładne zapoznanie się z tym schematem powinno ułatwić ogólne zrozumienie przedsięwzięcia projektowego: Określenie wymagań Projektowanie Implementacja Testowanie Wdrożenie Konserwacja Faza strategiczna Analiza Instalacja < DOKUMENTOWANIE > Planowanie Planowanie to analiza celowości i potrzeb (odpowiada głównie na pytanie czy realizować system? ). Jest podstawą do podjęcia decyzji o ustanowieniu projektu oraz punktem wyjścia do dalszego, szczegółowego planowania. Jej podstawowym składnikiem jest faza strategiczna. Wyniki: wstępne założenia dotyczące budowy systemu, podstawowe informacje dotyczące zamierzonego przedsięwzięcia, wstępna wizja systemu, założenia jakościowe i parametry techniczne, standardy, słownik danych.

4 Faza strategiczna jest wykonywana zanim podjęta zostanie ostateczna decyzja o realizacji dalszych etapów (czyli np. w momencie przetargu). Jest szeregiem decyzji o dużym znaczeniu dla dalszych etapów przedsięwzięcia. Czynności tej fazy: rozmowy z przedstawicielami klienta: wstępne określenie celów przedsięwzięcia z punktu widzenia klienta (punkt odniesienia na dalszych etapach pracy), a także wstępne określenie zakresu (pozwala oszacować koszt) oraz kontekstu przedsięwzięcia ogólne określanie wymagań i wykonanie na tej podstawie zgrubnej analizy oraz projektu (również do potrzeb oszacowania kosztów) określenie wstępnego harmonogramu projektu (wykresy Gantta) określenie proponowanych rozwiązań wraz z oceną ich kosztu i ryzyka zdefiniowanie wymaganych standardów określających przebieg dalszej pracy (dobra firma korzysta wciąż z tych samych, dostosowując je tylko do potrzeb zadania) Firma informatyczna przystępuje do wstępnego projektowania systemu spełniającego określone cele, a następnie podejmuje się analizy proponowanych rozwiązań. Wyniki prezentuje się klientowi przy czym zwykle pokazuje się jedynie najlepsze, wybrane rozwiązanie. Klient może się na nie zgodzić (wtedy przedsięwzięcie przechodzi w kolejną fazę) bądź nie (co oznacza całkowite zerwanie prac albo ewentualną poprawę zgodnie ze wskazówkami). Jako, że należy dokonać oceny złożoności systemu i kosztów budowy, konieczne jest dokonanie wstępnej analizy (środki i czas ograniczone, więc nie koncentrujemy się na detalach). Decyzje strategiczne: wybór modelu cyklu tworzenia oprogramowania wybór technik stosowanych w fazach analizy i projektowania wybór narzędzia CASE wybór środowiska implementacji określenie wykorzystania gotowych komponentów podjęcie decyzji na temat współpracy z np. ekspertem z zewnątrz Faza nazywana jest strategiczną, bo decyzje podjęte w trakcie jej trwania są podstawowym warunkiem końcowego sukcesu całego przedsięwzięcia. Zakończenie sukcesem fazy strategicznej wymaga: szybkiej pracy (czynności wykonuje mała ilość pracowników w niewielkim czasie, bo budżet jest niewielki) zaangażowania kluczowych osób ze strony klienta (dobra wstępna specyfikacja wymagań) uchwycenia całościowej postaci systemu Wynik: raport wykonalności (technicznej, ekonomicznej, organizacyjnej), czyli ustalenie możliwości realizacji przedsięwzięcia, opis proponowanego rozwiązania i oszacowanie jego kosztu (raport oceny rozwiązań), opis wymaganych zasobów (pracownicy, oprogramowanie), wstępny harmonogram prac. Ocena kosztu i ryzyka poszczególnych rozwiązań Źródła trudności podczas szacowania kosztu: wielość kryteriów niepewność, tzn. żadne rozwiązanie nigdy nie jest rozwiązaniem stuprocentowo skutecznym

5 Przykładowe kryteria stosowane do oceny: koszt czas niezawodność stopień możliwości ponownego wykorzystania fragmentów systemu przenośność wydajność Przy wybieraniu najlepszego rozwiązania można przyjąć strategię: optymistyczną bierze pod uwagi szacunku optymistyczne pesymistyczną (konserwatywną) bierze pod uwagę szacunki pesymistyczne Aby uzyskać dokładniejsze wyniki do zestawienia rozwiązań można wprowadzić prawdopodobieństwa. Koszt szacujemy oczywiście dla każdego z proponowanych rozwiązań. Dodatkowo, dla ostatecznie wybranego, najlepszego rozwiązania ponawiamy oszacowanie tym razem dokładniej. Koszt przedsięwzięcia wyznaczają: sprzęt będący częścią systemu koszt wyjazdów i szkoleń personelu (wdrożenie zmian w działaniu organizacji) koszt zakupu narzędzi nakład pracy (najtrudniej ocenić) Sposoby szacowania: modele algorytmiczne (np. COCOMO) ocena przez ekspertów w dziedzinie ocena przez analogię z podobnymi przedsięwzięciami z przeszłości Uwaga: prawo Parkinsona mówi, że przedsięwzięcia wydłuża się tak, aby wypełnić cały założony czas pracy. Kilka słów o COCOMO (wzór roboczy: nakład [osobomiesiące ]=B KDSI a : model szacuje czas trwania projektu lub jego faz oszacowanie nakładu pracy na podstawie tysięcy linii kodu (KDSI), które finalny system będzie zawierał niedokładność oszacowań (problem z jednoznacznym zakwalifikowania projektu do odpowiedniego poziomu trudności, aby uzyskać wartości parametrów niezbędnych do wzoru) Szacowanie ryzyka to zadanie z dziedziny zarządzania ryzykiem: identyfikacja ryzyka minimalizacja prawdopodobieństwa wystąpienia jego przyczyn ewentualna redukcja efektów wystąpienia problemów, jeśli nie da się im zapobiec Rodzaje ryzyka: czasowe (harmonogram, ścieżka krytyczna) kosztowe (budżet i jego przekroczenie) jakościowe (nie spełnienie wymagań z zakresu) inne (techniczne, organizacyjne)

6 Nie ma srebrnych kul, ale są pewne metody minimalizacji ryzyka: stały wgląd w postęp prac, sprawdzanie rozbieżności z harmonogramem dostarczanie klientowi prototypów (ryzyko techniczne rozproszone na etapy) plan osiągania kamieni milowych Analiza Najważniejszym aspektem analizy jest zrozumienie dziedziny problemu. Analiza dzieli się na określenie wymagań i fazę modelowania. Pierwsza subfaza odpowiada na pytanie co i pod jakimi założeniami system ma robić? a druga jak system ma działać by spełnić te założenia?. Studium dziedziny problemu prowadzi do specyfikacji obserwowalnego zachowania systemu; jest to kompletne, spójne i prawdopodobne sformułowanie potrzeb podanie zarówno ilościowych, jak i funkcjonalnych charakterystyk operacyjnych (np. niezawodności, dostępności, wydajności). Trudności: zrozumienie i usystematyzowanie obszernej dziedziny problemu ustawiczne zmiany wymagań (trudność z uświadomieniem sobie kompletu wymagań przez użytkownika w jednej chwili) komunikacja międzyludzka Problematyka analizy inaczej (wg Brooks): jak zaprojektować i zbudować zbiór programów, żeby powstał system (niskopoziomowo) jak zaprojektować i zbudować program lub system, żeby powstał produkt o dużej mocy, sprawdzony, udokumentowany i stale pielęgnowany (wyższy poziom rozważań) jak utrzymać intelektualną kontrolę nad dużymi porcjami złożoności (próg złożoności) Określenie wymagań jest podobne do prowadzenia śledztwa. Składa się głównie z wywiadów prowadzonych przez analityków z pracownikami klienckiej firmy. Zespół analityków usiłuje ustalić w jaki sposób pracownicy wykonują i jak chcieliby wykonywać swoją pracę. Ważne pytania: w jaki sposób funkcjonuje bieżący system? jest ręczny czy zautomatyzowany? które dane są niezbędne do jego funkcjonowania? które są potrzebne aby działał płynnie? jakie raporty są generowane? w jaki sposób korzystają z niego użytkownicy? jakie nowe lub udoskonalone usługi trzeba wprowadzić, aby zapewnić realizację przyszłych celów? Skuteczny przebieg tego procesu jest uzależniony od: użytkownik znajomość i umiejętność formułowania wymagań, analityk systemowy pokonywanie barier komunikacyjnych: aspekty techniczne i psychologiczne, identyfikacja użytkowników/dostęp do nich, zrozumienie zakresu systemu oraz celów biznesowych systemu; analityk systemowy musi umieć wyłowić, opisać i rozumieć, na czym polegają poszczególne funkcje, jakie ma spełniać system; musi stać się ekspertem w dziedzinie działania przedsiębiorstwa

7 Pozyskiwanie wymagań i przygotowywanie specyfikacji to zagadnienia złożone będące funkcją: strategii, zarządzania, struktury organizacji, kompetencji użytkowników i analityków, osobistego nastawienia etc. Uwaga: na tym etapie należy już brać pod uwagę sytuacje nietypowe, bardzo głęboko analizować szczegóły. Wyniki: dokument specyfikacji wymagań, czyli zewnętrzny opis systemu (kompletne i niesprzeczne wymagania funkcjonalne i niefunkcjonalne) opisujący jego zachowanie Potem występuje faza modelowania, analizy wymagań i konstrukcji modelu logicznego. Wyniki: model logiczny systemu (CASE diagramy oraz opis abstrahujący od szczegółów implementacyjnych, opisujący sposób realizacji postawionych wymagań), szkic podręczników użytkownika, rozszerzony słownik danych Wymagania Wymagania funkcjonalne opisują funkcje (czynności, operacje) wykonywane przez system. Funkcje te mogą być wykonywane przy udziale systemów zewnętrznych. Inna definicja: jakie usługi ma oferować system, jak reagować na określone dane wejściowe, jak się zachowywać w określonych sytuacjach, czego system ma nie robić? Język naturalny jest tu często stosowaną metodą opisu, ale ma wady: niejednoznaczność, która utrudnia precyzyjny zapis; może prowadzić do różnej interpretacji tej samej treści przez różne osoby elastyczność, utrudniająca wykrycie powiązanych wymagań; może prowadzić do sprzeczności wymagań sformułowanych dla tej samej funkcji w różny sposób Notacje formalne nie mają powyższych wad, ale w większości przypadków są niezrozumiałe dla klienta, stąd mogą być jedynie uzupełnieniem zapisu słownego. Kompromisem jest stosowanie formularzy: wykorzystują język naturalny zapis podzielony na konkretne pola pozwala uniknąć szeregu błędów w określaniu wymagań uwaga: z reguły podaje się jedynie efekt działania funkcji, a nie algorytm; czasem pojawia się konieczność zastosowania konkretnego algorytmu jest to wtedy przykład wymagania niefunkcjonalnego Pola formularza opisu: Nazwa funkcji Opis Dane wejściowe Źródło danych wejściowych Wynik i przeznaczenie Warunek wstępny Warunek końcowy Efekty uboczne \ uwagi Powód (uzasadnienie)

8 Jak zapanować nad dużą liczbą wymagań? hierarchiczny zapis wymagań diagramy przypadków użycia (use cases) Wymagania niefunkcjonalne to ograniczenia usług i funkcji systemu (np. czasowe, standardy itd.). Mogą dotyczyć właściwości systemu takich jak niezawodność czy zajętość pamięci. Definiują również ograniczenia systemu (możliwości urządzeń wejścia wyjścia, reprezentację danych). Klasyfikacja tego rodzaju wymagań: produktowe: zachowanie produktu (wymaganie efektywnościowe: szybkość działania systemu i jego zapotrzebowanie na pamięć, niezawodność akceptowalna częstość awarii, przenośność, użyteczność) organizacyjne: wynikają ze strategii i procedur klienta i wytwórcy (standardy procesu implementowania: język, metoda oraz ograniczenia czasowe: kiedy dostarczyć produkt i dokumentację) zewnętrzne: szeroka kategoria (wymagania współpracy z innymi firmami, ograniczenia prawne, etyczne) Wymagania produktowe: użyteczność sprawność (efektywność, pamięć) niezawodność przenośność Wymagania organizacyjne: dostawcy wymagania implementacyjne standardy Wymagania zewnętrzne: współpracy etyczne prawne (ochrona prywatności, zabezpieczenia) Wymagania niefunkcjonalne trudno zweryfikować w produkcie finalnym, co zostawia duży margines do interpretacji i konfliktów przy dostarczeniu systemu. Należy uściślić kryteria oceny: cel systemu: łatwość, sposób jego działania powinien zmniejszać błędy użytkownika (możliwość używania wszystkich funkcji systemu dwie godziny po szkoleniu, średnia liczba błędów: trzy dziennie) niezawodność (średni czas bez awarii, częstość błędów) solidność (czas uruchomienia po awarii, p stwo utraty danych, procent zdarzeń powodujących awarie) przenośność (procent poleceń zależnych od platformy, liczba systemów docelowych) Dobrze sformułowane wymagania niefunkcjonalne są weryfikowalne wyrażamy je przy pomocy wielkości mierzalnych. Projektowanie Odwzorowuje wymagania organizacji w funkcje/metody. Odpowiada na pytanie: jak system ma zostać zaimplementowany bo dobrze realizował założone cele?.

9 projektowanie logiczne projektowanie wysokiego poziomu: określamy strukturę, komponenty, architekturę projektowanie fizyczne projektowanie niskiego poziomu Wyniki: dokumentacja projektu konstrukcyjnego (sposobu implementacji), rozszerzony słownik danych Implementacja Odwzorowuje wyniki poprzednich faz w kod. Odpowiada na pytanie: w jaki sposób system ma działać?. Wyniki: kod, dokumentacja wstępnych testów, podręczniki użytkownika i instalacyjne Testowanie i integracja Scalanie kodu w całość (sprawdzanie zgodności: funkcjonalności, poprawności, efektywności, użyteczności itd. z oczekiwaną). Wyniki: kompletne oprogramowanie, dokumentacja, dokumentacja testów, finalne podręczniki Wdrożenie Instalacja systemu, przeprowadzenie szkoleń, ewentualna reorganizacja struktury przedsiębiorstwa. Wyniki: raporty z procesu przebiegu zmian Utrzymanie Usuwanie defektów, poszerzanie funkcjonalności. Rodzaje: utrzymanie naprawcze adaptacja ulepszanie utrzymanie prewencyjne Wyniki: dokumenty i raporty

10 Model kaskadowy Model klasyczny: przejście do następnego etapu wymaga ukończenia prac i dostarczenia produktów etapu poprzedniego Model zmodyfikowany: faza analizy pokrywa się częściowo zarówno z fazami określania wymagań jak i projektowania; uwzględnia nie tylko kaskadowość, ale również równoległą realizację niektórych faz Główne etapy projektu są realizowane w ściśle zdefiniowanej kolejności. Każdy etap musi być zakończony przed rozpoczęciem następnego. Nie występuje (wprost) weryfikacja. Działania weryfikacyjne w ramach każdej fazy (oraz pomiędzy sąsiednimi) są dodatkową decyzja szefa projektu. Zalety: naturalność (analogia do projektów inżynierskich z innych dziedzin), zrozumiałość strukturalność modelu: cykl dobrze zdefiniowanego ciągu kroków model dobrze sprawdzony, stosowany od lat

11 Wady: milczące założenie, że można wytworzyć poprawną (kompletną, spójną) specyfikację wymagań już na początku projektu, co w praktyce jest niemożliwe ze względu na: trudności w wydobywaniu wymagań i uświadomieniu sobie przez użytkowników kompletu wymagań długi czas między etapem tworzenia specyfikacji (założenie że jest prawidłowa!) a dostarczeniem systemu brak weryfikacji; w trakcie projektu występują liczne zmiany w wymaganiach, więc tworzenie specyfikacji nie może być procesem zamkniętym (wymagania użytkowników zazwyczaj rosną w miarę jedzenia ); koszt błędów z etapu specyfikacji szybko rośnie z czasem co przynosi katastrofalne skutki w kontekście całego przedsięwzięcia Uwaga: przejścia do góry pomiędzy sąsiadującymi etapami występują tylko w modelu nieklasycznym. Dodatkowo na schemacie należałoby dopisać wyniki poszczególnych faz (kod, model konstrukcji oprogramowania) i pracowników (analitycy, programiści). Model kaskadowy może być używany przy krótkich projektach (np. pół roku), gdzie wymagania są dobrze określone i zrozumiałe, a specyfikacja w pełni przygotowana (projekty na studiach). Długie projekty można próbować dopasować do modelu kaskadowego poprzez m. in. właściwą procedurę zarządzania zmianami specyfikacji oraz dobrą współpracę z klientem/użytkownikiem, ale tak czy inaczej lepiej odwołać się do bardziej nowoczesnych metod. Realizacja kierowana dokumentami Model zaproponowany przez armię amerykańską: ścisła realizacja modelu kaskadowego. Szereg faz następujących po sobie, a każda z nich kończy się opracowaniem dokładnie zestandaryzowanych dokumentów. Dokumenty te udostępniane klientowi są podstawą do realizacji kolejnych faz dopiero po ich zaakceptowaniu przedsięwzięcie można kontynuować. Zalety: łatwe planowanie i harmonogramowanie łatwy monitoring przedsięwzięcia możliwość dalszej realizacji przedsięwzięcia przez inną firmę, jeśli aktualna zawiedzie; wszystko to dzięki ścisłym standardom produkcji dokumentów opisujących projekt Wady: duży nakład pracy na opracowanie dokumentów zgodnych ze standardem (ponad 50% nakładów) przerwy niezbędne do weryfikacji dokumentów przez klienta

12 Model przyrostowy Fazy: określamy całość wymagań, następnie wykonujemy ogólny projekt systemu teraz wybieramy pewien podzbiór funkcji systemu (wg ważności to, co najważniejsze na początku) tworzymy szczegółowy projekt podzbioru (wg modelu kaskadowego) i przechodzimy do jego implementacji testujemy zrealizowany fragment i dostarczamy go klientowi powtarzamy proces od punktu drugiego, aż do ukończenia całości Zalety: częste kontakty z klientem brak konieczności zdefiniowania z góry wszystkich wymagań klient wykorzystuje fragmenty systemu dość wcześnie, może wpływać na kierunek prac jeżeli wystąpią opóźnienia w jakiejś fazie realizacji, można próbować je zniwelować w kolejnej Wady: dodatkowy koszt związany z niezależną realizacją podzbiorów trudności z wycinaniem podzbioru funkcji w pełni niezależnych w efekcie powstaje konieczność implementowania szkieletów (interfejsów zgodnych z systemem docelowym),

13 będąca dodatkowym nakładem pracy i dodatkowym ryzykiem, że coś umknie nam podczas testów Uwagi: model stosowany w przypadkach, gdy dopuszczalna jest okrojona funkcjonalność systemu finalnego przyrosty nie mogą być duże (<= linii kodu) ewolucją tego podejścia jest programowanie ekstremalne

14 Prototypowanie Cel: minimalizacja ryzyka związanego z niewłaściwym określeniem wymagań wczesne wykrycie brakujących funkcji, trudnych usług Fazy: ogólne określenie wymagań budowa prototypu i jego weryfikacja przez klienta pełne określenie wymagań realizacja pełnego systemu zgodnie z modelem kaskadowym Zalety: możliwość szybkiej demonstracji działającego systemu możliwość rozpoczęcia szkoleń przed zbudowaniem systemu testowanie równoległe (prototypu i systemu finalnego)

15 Wady: dodatkowy koszt budowy prototypu (choć rekompensuje to skutecznie spadek kosztów za błędy popełnione w fazie specyfikacji wymagań) potencjalne zdziwienie klienta ( dlaczego nie możemy dostać tego prototypu już teraz, za połowę ceny? ) Prototyp jest systemem ograniczonym. W zasadzie tylko nieliczne z jego fragmentów wykorzystuje się przy implementacji finalnego systemu, bowiem prototyp jest projektowany na szybko z pominięciem szczegółowej fazy testowania i bez zwracania większej uwagi na efektywność świadczonych usług.

16 Prototypowanie wytwórcze Przedstawiciel tzw. współczesnych cyklów wytwarzania, tzn. dających oprogramowanie o wyższej jakości: bardziej niezawodne, efektywne, użyteczne. Prototypowanie konstrukcji weryfikowanie hipotez projektowych dające odpowiedź na pytania takie jak: poprawność bądź efektywność rozwiązania itp. Prototypowanie wymagań szczególna analiza wymagań (faza określania wymagań analizy) Prototypowanie wytwórcze wiąże p. konstrukcji i p. wymagań: projekt (logiczny), potem dodawanie elementów konstrukcyjnych (konstrukcja szczegółowa) specyfikacja opis struktury statycznej i dynamicznej systemu oraz jego działania (realizacja funkcji i obsługa wyjątków) prototyp konstrukcyjny powstaje na bazie specyfikacji

17 Model spiralny Fazy (cztery, wykonywane cyklicznie): planowanie (nowej wersji) analiza ryzyka konstrukcja testowanie Planowanie: ustalane są generalne cele produkcji kolejnej wersji systemu Analiza ryzyka: rozważane są ogólne opcje budowy nowej wersji analiza możliwości realizacji (technicznej, ekonomicznej, organizacyjnej) może obejmować budowę prototypu Konstrukcja: tworzenie kolejnej wersji przybliżenia systemu (np. zgodnie z modelem kaskadowym) Testowanie: ocena przez klienta kolejnej wersji systemu (rozpoczynamy kolejny cykl, jeśli ocena nie jest w pełni pozytywna) Zalety: zmniejszenie ryzyka wprowadzenie oceny przez użytkownika dobry dla firm wytwarzających oprogramowanie rynkowe

18 Wady: przydatny jedynie w wypadku systemów, które można wdrożyć przy ograniczonej funkcjonalności i obniżonej jakości osiągnięcie wersji docelowej zajmuje dużo czasu Ocena praktyczna modeli Nie ma jednoznacznej odpowiedzi na to, którego warto używać w praktyce. Każdy z nich ma specyficzną dla siebie przydatność zależną od sytuacji: model kaskadowy: dobry przy dobrze zdefiniowanych wymaganiach i dobrze rozumianych zastosowaniach (krótkie projekty) prototypowanie: dobry dla nowatorskich zastosowań model przyrostowy: tam, gdzie dopuszcza się okrojoną funkcjonalność (duże projekty) model spiralny: tam, gdzie nieostro określone wymagania, brak fazy specyfikacji, ryzyko Modele nie wykluczają się nawzajem, np. model kaskadowy może być użyty w fazie konstrukcji modelu spiralnego, albo w fazie budowy finalnego systemu w modelu prototypowym. Wybór sposobu prowadzenia przedsięwzięcia to jedna z najważniejszych decyzji, mogąca zaważyć na jego losach.

Faza Określania Wymagań

Faza Określania Wymagań Faza Określania Wymagań Celem tej fazy jest dokładne określenie wymagań klienta wobec tworzonego systemu. W tej fazie dokonywana jest zamiana celów klienta na konkretne wymagania zapewniające osiągnięcie

Bardziej szczegółowo

Etapy życia oprogramowania

Etapy życia oprogramowania Modele cyklu życia projektu informatycznego Organizacja i Zarządzanie Projektem Informatycznym Jarosław Francik marzec 23 w prezentacji wykorzystano również materiały przygotowane przez Michała Kolano

Bardziej szczegółowo

Etapy życia oprogramowania. Modele cyklu życia projektu. Etapy życia oprogramowania. Etapy życia oprogramowania

Etapy życia oprogramowania. Modele cyklu życia projektu. Etapy życia oprogramowania. Etapy życia oprogramowania Etapy życia oprogramowania Modele cyklu życia projektu informatycznego Organizacja i Zarządzanie Projektem Informatycznym Jarosław Francik marzec 23 Określenie wymagań Testowanie Pielęgnacja Faza strategiczna

Bardziej szczegółowo

Faza strategiczna. Synteza. Analiza. Instalacja. Faza strategiczna. Dokumentacja. kodowanie implementacja. produkt konserwacja

Faza strategiczna. Synteza. Analiza. Instalacja. Faza strategiczna. Dokumentacja. kodowanie implementacja. produkt konserwacja Faza strategiczna określenie wymagań specyfikowanie projektowanie kodowanie implementacja testowanie produkt konserwacja Faza strategiczna Analiza Synteza Dokumentacja Instalacja Faza strategiczna (ang.

Bardziej szczegółowo

Cykle życia systemu informatycznego

Cykle życia systemu informatycznego Cykle życia systemu informatycznego Cykl życia systemu informatycznego - obejmuję on okres od zgłoszenia przez użytkownika potrzeby istnienia systemu aż do wycofania go z eksploatacji. Składa się z etapów

Bardziej szczegółowo

IO - inżynieria oprogramowania. dr inż. M. Żabińska, e-mail: zabinska@agh.edu.pl http://home.agh.edu.pl/~zabinska/

IO - inżynieria oprogramowania. dr inż. M. Żabińska, e-mail: zabinska@agh.edu.pl http://home.agh.edu.pl/~zabinska/ IO - inżynieria oprogramowania dr inż. M. Żabińska, e-mail: zabinska@agh.edu.pl http://home.agh.edu.pl/~zabinska/ Faza określania wymagań (1) Cel fazy określania wymagań dokładne ustalenie wymagań klienta

Bardziej szczegółowo

Co to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką?

Co to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką? ROZDZIAŁ1 Podstawy inżynierii oprogramowania: - Cele 2 - Zawartość 3 - Inżynieria oprogramowania 4 - Koszty oprogramowania 5 - FAQ o inżynierii oprogramowania: Co to jest jest oprogramowanie? 8 Co to jest

Bardziej szczegółowo

Metodyka projektowania komputerowych systemów sterowania

Metodyka projektowania komputerowych systemów sterowania Metodyka projektowania komputerowych systemów sterowania Andrzej URBANIAK Metodyka projektowania KSS (1) 1 Projektowanie KSS Analiza wymagań Opracowanie sprzętu Projektowanie systemu Opracowanie oprogramowania

Bardziej szczegółowo

MODELE CYKLU ŻYCIA OPROGRAMOWANIA (1) Model kaskadowy (często stosowany w praktyce do projektów o niewielkiej złożonoś

MODELE CYKLU ŻYCIA OPROGRAMOWANIA (1) Model kaskadowy (często stosowany w praktyce do projektów o niewielkiej złożonoś OPROGRAMOWANIA (1) Model kaskadowy (często stosowany w praktyce do projektów o niewielkiej złożonoś (często stosowany w praktyce do projektów o niewielkiej złożoności) wymagania specyfikowanie kodowanie

Bardziej szczegółowo

Programowanie zespołowe

Programowanie zespołowe Programowanie zespołowe Laboratorium 4 - modele tworzenia oprogramowania, manifest Agile i wstęp do Scruma mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 14 marca 2017 1 / 21 mgr inż. Krzysztof

Bardziej szczegółowo

Zasady organizacji projektów informatycznych

Zasady organizacji projektów informatycznych Zasady organizacji projektów informatycznych Systemy informatyczne w zarządzaniu dr hab. inż. Joanna Józefowska, prof. PP Plan Definicja projektu informatycznego Fazy realizacji projektów informatycznych

Bardziej szczegółowo

Wstęp. Inżynieria wymagań. Plan wykładu. Wstęp. Wstęp. Wstęp. Schemat procesu pozyskiwania wymagań

Wstęp. Inżynieria wymagań. Plan wykładu. Wstęp. Wstęp. Wstęp. Schemat procesu pozyskiwania wymagań Wstęp Inżynieria wymagań Schemat procesu pozyskiwania wymagań identyfikacja źródeł wymagań Organizacja i Zarządzanie Projektem Informatycznym pozyskiwanie pozyskiwanie pozyskiwanie Jarosław Francik marzec

Bardziej szczegółowo

Testowanie oprogramowania

Testowanie oprogramowania Testowanie oprogramowania 1/17 Testowanie oprogramowania Wykład 01 dr inż. Grzegorz Michalski 13 października 2015 Testowanie oprogramowania 2/17 Dane kontaktowe: Kontakt dr inż. Grzegorz Michalski pokój

Bardziej szczegółowo

Wprowadzenie do metodologii modelowania systemów informacyjnych. Strategia (1) Strategia (2) Etapy Ŝycia systemu informacyjnego

Wprowadzenie do metodologii modelowania systemów informacyjnych. Strategia (1) Strategia (2) Etapy Ŝycia systemu informacyjnego Etapy Ŝycia systemu informacyjnego Wprowadzenie do metodologii modelowania systemów informacyjnych 1. Strategia 2. Analiza 3. Projektowanie 4. Implementowanie, testowanie i dokumentowanie 5. WdroŜenie

Bardziej szczegółowo

SVN. 10 października 2011. Instalacja. Wchodzimy na stronę http://tortoisesvn.tigris.org/ i pobieramy aplikację. Rysunek 1: Instalacja - krok 1

SVN. 10 października 2011. Instalacja. Wchodzimy na stronę http://tortoisesvn.tigris.org/ i pobieramy aplikację. Rysunek 1: Instalacja - krok 1 SVN 10 października 2011 Instalacja Wchodzimy na stronę http://tortoisesvn.tigris.org/ i pobieramy aplikację uruchamiany ponownie komputer Rysunek 1: Instalacja - krok 1 Rysunek 2: Instalacja - krok 2

Bardziej szczegółowo

Wstęp do zarządzania projektami

Wstęp do zarządzania projektami Wstęp do zarządzania projektami Definicja projektu Projekt to tymczasowe przedsięwzięcie podejmowane w celu wytworzenia unikalnego wyrobu, dostarczenia unikalnej usługi lub uzyskania unikalnego rezultatu.

Bardziej szczegółowo

Wstęp do zarządzania projektami

Wstęp do zarządzania projektami Wstęp do zarządzania projektami Definicja projektu Projekt to tymczasowe przedsięwzięcie podejmowane w celu wytworzenia unikalnego wyrobu, dostarczenia unikalnej usługi lub uzyskania unikalnego rezultatu.

Bardziej szczegółowo

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania 2/32 Cel analizy Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie:

Bardziej szczegółowo

Szczególne problemy projektowania aplikacji internetowych. Jarosław Kuchta Projektowanie Aplikacji Internetowych

Szczególne problemy projektowania aplikacji internetowych. Jarosław Kuchta Projektowanie Aplikacji Internetowych Szczególne problemy projektowania aplikacji Jarosław Kuchta Miejsce projektowania w cyklu wytwarzania aplikacji SWS Analiza systemowa Analiza statyczna Analiza funkcjonalna Analiza dynamiczna Analiza behawioralna

Bardziej szczegółowo

Nie o narzędziach a o rezultatach. czyli skuteczny sposób dokonywania uzgodnień pomiędzy biznesem i IT. Władysławowo, 6 października 2011 r.

Nie o narzędziach a o rezultatach. czyli skuteczny sposób dokonywania uzgodnień pomiędzy biznesem i IT. Władysławowo, 6 października 2011 r. Nie o narzędziach a o rezultatach czyli skuteczny sposób dokonywania uzgodnień pomiędzy biznesem i IT Władysławowo, 6 października 2011 r. Dlaczego taki temat? Ci którzy wykorzystują technologie informacyjne

Bardziej szczegółowo

Usługa: Audyt kodu źródłowego

Usługa: Audyt kodu źródłowego Usługa: Audyt kodu źródłowego Audyt kodu źródłowego jest kompleksową usługą, której głównym celem jest weryfikacja jakości analizowanego kodu, jego skalowalności, łatwości utrzymania, poprawności i stabilności

Bardziej szczegółowo

Wstęp do zarządzania projektami

Wstęp do zarządzania projektami Wstęp do zarządzania projektami Definicja projektu Projekt to tymczasowe przedsięwzięcie podejmowane w celu wytworzenia unikalnego wyrobu, dostarczenia unikalnej usługi lub uzyskania unikalnego rezultatu.

Bardziej szczegółowo

Wprowadzenie do systemów informacyjnych

Wprowadzenie do systemów informacyjnych Wprowadzenie do systemów informacyjnych Kryteria oceny systemu Podstawowe metody projektowania UEK w Krakowie Ryszard Tadeusiewicz 1 UEK w Krakowie Ryszard Tadeusiewicz 2 Technologia informatyczna dzisiaj

Bardziej szczegółowo

Narzędzia informatyczne wspierające przedsięwzięcia e-commerce

Narzędzia informatyczne wspierające przedsięwzięcia e-commerce Narzędzia informatyczne wspierające przedsięwzięcia e-commerce Zarządzanie projektami e-commerce, Meblini.pl, UE we Wrocławiu Wrocław, 11-03-2018 1. Cykl życia projektu 2. Pomysł / Planowanie 3. Analiza

Bardziej szczegółowo

Szkolenie: Zarządzanie cyklem projektu w Jednostkach Samorządu Terytorialnego

Szkolenie: Zarządzanie cyklem projektu w Jednostkach Samorządu Terytorialnego Szkolenie: Zarządzanie cyklem projektu w Jednostkach Samorządu Terytorialnego Temat: Szkolenie: Zarządzanie cyklem projektu w Jednostkach Samorządu Terytorialnego Termin: do ustalenia Miejsce: do ustalenia

Bardziej szczegółowo

IO - inżynieria oprogramowania. dr inż. M. Żabińska, e-mail: zabinska@agh.edu.pl http://home.agh.edu.pl/~zabinska/

IO - inżynieria oprogramowania. dr inż. M. Żabińska, e-mail: zabinska@agh.edu.pl http://home.agh.edu.pl/~zabinska/ IO - inżynieria oprogramowania dr inż. M. Żabińska, e-mail: zabinska@agh.edu.pl http://home.agh.edu.pl/~zabinska/ Modele cyklu życia Modele cyklu życia SI/wytwarzania sofw.: odwzorowują prowadzone działania

Bardziej szczegółowo

REQB POZIOM PODSTAWOWY PRZYKŁADOWY EGZAMIN

REQB POZIOM PODSTAWOWY PRZYKŁADOWY EGZAMIN REQB POZIOM PODSTAWOWY PRZYKŁADOWY EGZAMIN Podziękowania REQB Poziom Podstawowy Przykładowy Egzamin Dokument ten został stworzony przez główny zespół Grupy Roboczej REQB dla Poziomu Podstawowego. Tłumaczenie

Bardziej szczegółowo

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34 Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34 Projektowanie oprogramowania cd. 2/34 Modelowanie CRC Modelowanie CRC (class-responsibility-collaborator) Metoda identyfikowania poszczególnych

Bardziej szczegółowo

Wykład 3 Wymagania. MIS n Inżynieria oprogramowania Październik Kazimierz Michalik Akademia Górniczo-Hutnicza im. S. Staszica w Krakowie

Wykład 3 Wymagania. MIS n Inżynieria oprogramowania Październik Kazimierz Michalik Akademia Górniczo-Hutnicza im. S. Staszica w Krakowie Wykład 3 MIS-1-505-n Inżynieria Październik 2014 Kazimierz Michalik Akademia Górniczo-Hutnicza im. S. Staszica w Krakowie 3.1 Agenda 1 2 3 4 5 3.2 Czynności w czasie produkcji. Inżynieria stara się zidentyfikować

Bardziej szczegółowo

Architektura Systemu. Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu.

Architektura Systemu. Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu. Architektura Systemu Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu. Architektura jest zbiorem decyzji dotyczących: organizacji systemu komputerowego,

Bardziej szczegółowo

Waterfall model. (iteracyjny model kaskadowy) Marcin Wilk

Waterfall model. (iteracyjny model kaskadowy) Marcin Wilk Waterfall model (iteracyjny model kaskadowy) Marcin Wilk Iteracyjny model kaskadowy jeden z kilku rodzajów procesów tworzenia oprogramowania zdefiniowany w inżynierii oprogramowania. Jego nazwa wprowadzona

Bardziej szczegółowo

Jarosław Kuchta Dokumentacja i Jakość Oprogramowania. Wymagania jakości w Agile Programming

Jarosław Kuchta Dokumentacja i Jakość Oprogramowania. Wymagania jakości w Agile Programming Jarosław Kuchta Wymagania jakości w Agile Programming Wady klasycznych metod zapewnienia jakości Duży narzut na dokumentowanie Późne uzyskiwanie konkretnych rezultatów Trudność w odpowiednio wczesnym definiowaniu

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: PROJEKTOWANIE SYSTEMÓW INFORMATYCZNYCH I KARTA PRZEDMIOTU CEL PRZEDMIOTU PRZEWODNIK PO PRZEDMIOCIE C1. Podniesienie poziomu wiedzy studentów z inżynierii oprogramowania w zakresie C.

Bardziej szczegółowo

IO - inżynieria oprogramowania

IO - inżynieria oprogramowania IO - inżynieria oprogramowania dr inż. M. Żabińska, e-mail: zabinska@agh.edu.pl http://home.agh.edu.pl/~zabinska/ Faza strategiczna Faza strategiczna (strategy phase) wykonywana zanim podjęta ostateczna

Bardziej szczegółowo

RUP. Rational Unified Process

RUP. Rational Unified Process RUP Rational Unified Process Agenda RUP wprowadzenie Struktura RUP Przepływy prac w RUP Fazy RUP RUP wprowadzenie RUP (Rational Unified Process) jest : Iteracyjną i przyrostową metodyka W pełni konfigurowalną

Bardziej szczegółowo

WPROWADZENIE DO UML-a

WPROWADZENIE DO UML-a WPROWADZENIE DO UML-a Maciej Patan Instytut Sterowania i Systemów Informatycznych Dlaczego modelujemy... tworzenie metodologii rozwiązywania problemów, eksploracja różnorakich rozwiązań na drodze eksperymentalnej,

Bardziej szczegółowo

Inżynieria oprogramowania wykład IV Faza określenia wymagań

Inżynieria oprogramowania wykład IV Faza określenia wymagań Inżynieria oprogramowania wykład IV Faza określenia wymagań prowadzący: dr inż. Krzysztof Bartecki Faza określenia wymagań Wymagania Projektowanie Implementacja Testowanie Konserwacja Strategiczna Analiza

Bardziej szczegółowo

DLA SEKTORA INFORMATYCZNEGO W POLSCE

DLA SEKTORA INFORMATYCZNEGO W POLSCE DLA SEKTORA INFORMATYCZNEGO W POLSCE SRK IT obejmuje kompetencje najważniejsze i specyficzne dla samego IT są: programowanie i zarządzanie systemami informatycznymi. Z rozwiązań IT korzysta się w każdej

Bardziej szczegółowo

Projektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Studium wykonalności

Projektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Studium wykonalności Projektowanie systemów informatycznych Roman Simiński roman.siminski@us.edu.pl siminskionline.pl Studium wykonalności Główne procesy w realizacji projektu informatycznego Studium wykonalności (ang. feasibility

Bardziej szczegółowo

FAZA STRATEGICZNA. Podstawowe hasło: Nie skupiać się na szczegółach! (na razie) Czynności w fazie strategicznej: Decyzje strategiczne:

FAZA STRATEGICZNA. Podstawowe hasło: Nie skupiać się na szczegółach! (na razie) Czynności w fazie strategicznej: Decyzje strategiczne: FAZA STRATEGICZNA Faza strategiczna jest wykonywana zanim podejmowana jest decyzja o realizacji przedsięwzięcia. Jej zadaniem jest określenie celów tworzonego systemu oraz wymagań odnośnie szczegółów jego

Bardziej szczegółowo

Maciej Oleksy Zenon Matuszyk

Maciej Oleksy Zenon Matuszyk Maciej Oleksy Zenon Matuszyk Jest to proces związany z wytwarzaniem oprogramowania. Jest on jednym z procesów kontroli jakości oprogramowania. Weryfikacja oprogramowania - testowanie zgodności systemu

Bardziej szczegółowo

Przedsięwzięcia Informatyczne w Zarządzaniu

Przedsięwzięcia Informatyczne w Zarządzaniu Przedsięwzięcia Informatyczne w Zarządzaniu 2005/06 dr inż. Grażyna Hołodnik-Janczura GHJ 1 LITERATURA 1. Praca zbiorowa p.r. Górski J., Inżynieria oprogramowania, MIKOM, W-wa, 2000 2. Jaszkiewicz A.,

Bardziej szczegółowo

Zarządzanie Projektami zgodnie z PRINCE2

Zarządzanie Projektami zgodnie z PRINCE2 Zarządzanie Projektami zgodnie z PRINCE2 Opis Metodyka PRINCE2 powstała na bazie doświadczeń z wielu lat dobrych praktyk zarządzania projektami. Metodyka ta oferuje elastyczne i łatwe do adaptacji podejście

Bardziej szczegółowo

Testowanie i walidacja oprogramowania

Testowanie i walidacja oprogramowania i walidacja oprogramowania Inżynieria oprogramowania, sem.5 cz. 3 Rok akademicki 2010/2011 Dr inż. Wojciech Koziński Zarządzanie testami Cykl życia testów (proces) Planowanie Wykonanie Ocena Dokumentacja

Bardziej szczegółowo

Feature Driven Development

Feature Driven Development Feature Driven Development lekka metodyka tworzenia oprogramowania Kasprzyk Andrzej IS II Wstęp Feature Driven Development (FDD) to metodyka tworzenia oprogramowania, która wspomaga zarządzanie fazami

Bardziej szczegółowo

Projektowanie systemów informatycznych

Projektowanie systemów informatycznych Projektowanie systemów informatycznych Zarządzanie projektem Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski Główne procesy w realizacji projektu informatycznego (ang. feasibility

Bardziej szczegółowo

Cele przedsięwzięcia

Cele przedsięwzięcia Określanie wymagań Cele przedsięwzięcia Klienta, np. Wzrost efektywności, spadek kosztów, rozszerzenie rynku, unikanie błędów Wykonawcy Biznesowe Techniczne Priorytety! Kontekst przedsięwzięcia Użytkownicy

Bardziej szczegółowo

Inżynieria wymagań. Inżynieria wymagań 1/1

Inżynieria wymagań. Inżynieria wymagań 1/1 Inżynieria wymagań Inżynieria wymagań 1/1 Inżynieria wymagań 2/1 Wymagania stawiane oprogramowaniu Opisy usług i ograniczeń są wymaganiami stawianymi systemowi. Proces wynajdowania, analizowania, dokumentowania

Bardziej szczegółowo

In ż ynieria oprogramowania wykład II Modele i fazy cyklu życia oprogramowania

In ż ynieria oprogramowania wykład II Modele i fazy cyklu życia oprogramowania In ż ynieria oprogramowania wykład II Modele i fazy cyklu życia oprogramowania prowadzący: dr inż. Krzysztof Bartecki www.k.bartecki.po.opole.pl Proces tworzenia oprogramowania jest zbiorem czynności i

Bardziej szczegółowo

OPROGRAMOWANIE WSPOMAGAJĄCE ZARZĄDZANIE PROJEKTAMI. PLANOWANIE ZADAŃ I HARMONOGRAMÓW. WYKRESY GANTTA

OPROGRAMOWANIE WSPOMAGAJĄCE ZARZĄDZANIE PROJEKTAMI. PLANOWANIE ZADAŃ I HARMONOGRAMÓW. WYKRESY GANTTA OPROGRAMOWANIE WSPOMAGAJĄCE ZARZĄDZANIE PROJEKTAMI. PLANOWANIE ZADAŃ I HARMONOGRAMÓW. WYKRESY GANTTA Projekt to metoda na osiągnięcie celów organizacyjnych. Jest to zbiór powiązanych ze sobą, zmierzających

Bardziej szczegółowo

POLITYKA JAKOŚCI. Polityka jakości to formalna i ogólna deklaracja firmy, jak zamierza traktować sprawy zarządzania jakością.

POLITYKA JAKOŚCI. Polityka jakości to formalna i ogólna deklaracja firmy, jak zamierza traktować sprawy zarządzania jakością. POLITYKA JAKOŚCI Polityka jakości jest zestawem nadrzędnych celów, zamiarów oraz orientacji organizacji na jakość. Stanowi ona dowód na to, że przedsiębiorca wie, czego chce i kieruje swoim przedsiębiorstwem

Bardziej szczegółowo

ŚCIEŻKA: Zarządzanie projektami

ŚCIEŻKA: Zarządzanie projektami ŚCIEŻKA: Zarządzanie projektami Ścieżka dedykowana jest każdej osobie, która chce rozwijać siebie i swoją organizację - w szczególności: Kadrze menedżerskiej i kierowniczej przedsiębiorstw Kierownikom

Bardziej szczegółowo

<Nazwa firmy> <Nazwa projektu> Specyfikacja dodatkowa. Wersja <1.0>

<Nazwa firmy> <Nazwa projektu> Specyfikacja dodatkowa. Wersja <1.0> Wersja [Uwaga: Niniejszy wzór dostarczony jest w celu użytkowania z Unified Process for EDUcation. Tekst zawarty w nawiasach kwadratowych i napisany błękitną kursywą

Bardziej szczegółowo

Komputerowe wspomaganie zarządzania projektami innowacyjnymi realizowanymi w oparciu o podejście. Rozdział pochodzi z książki:

Komputerowe wspomaganie zarządzania projektami innowacyjnymi realizowanymi w oparciu o podejście. Rozdział pochodzi z książki: Rozdział pochodzi z książki: Zarządzanie projektami badawczo-rozwojowymi. Tytuł rozdziału 6: Komputerowe wspomaganie zarządzania projektami innowacyjnymi realizowanymi w oparciu o podejście adaptacyjne

Bardziej szczegółowo

Inżynieria oprogramowania II

Inżynieria oprogramowania II Wymagania funkcjonalne, przypadki użycia Inżynieria oprogramowania II Problem i cel Tworzenie projektów bez konkretnego celu nie jest dobre Praktycznie każdy projekt informatyczny powstaje z uwagi na jakiś

Bardziej szczegółowo

Błędy procesu tworzenia oprogramowania (Badania firmy Rational Software Corporation)

Błędy procesu tworzenia oprogramowania (Badania firmy Rational Software Corporation) Błędy procesu tworzenia oprogramowania (Badania firmy Rational Software Corporation) Zarządzanie wymaganiami Ad hoc (najczęściej brak zarządzania nimi) Niejednoznaczna, nieprecyzyjna komunikacja Architektura

Bardziej szczegółowo

MODELE CYKLU śycia OPROGRAMOWANIA

MODELE CYKLU śycia OPROGRAMOWANIA MODELE CYKLU śycia OPROGRAMOWANIA Plan prezentacji: Definicja procesu i procesu programowego Model buduj i poprawiaj Model kaskadowy (czysty i z nawrotami) Modele ewolucyjne (spiralny i przyrostowy) Prototypowanie

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH Modeling and analysis of computer systems Kierunek: Informatyka Forma studiów: Stacjonarne Rodzaj przedmiotu: Poziom kwalifikacji: obowiązkowy

Bardziej szczegółowo

Inżynieria oprogramowania (Software Engineering)

Inżynieria oprogramowania (Software Engineering) Inżynieria oprogramowania (Software Engineering) Wykład 2 Proces produkcji oprogramowania Proces produkcji oprogramowania (Software Process) Podstawowe założenia: Dobre procesy prowadzą do dobrego oprogramowania

Bardziej szczegółowo

Zarządzanie projektami. Wykład 2 Zarządzanie projektem

Zarządzanie projektami. Wykład 2 Zarządzanie projektem Zarządzanie projektami Wykład 2 Zarządzanie projektem Plan wykładu Definicja zarzadzania projektami Typy podejść do zarządzania projektami Cykl życia projektu/cykl zarządzania projektem Grupy procesów

Bardziej szczegółowo

Zarządzanie i realizacja projektów systemu Microsoft SharePoint 2010

Zarządzanie i realizacja projektów systemu Microsoft SharePoint 2010 Zarządzanie i realizacja projektów systemu Microsoft SharePoint 2010 Geoff Evelyn Przekład: Natalia Chounlamany APN Promise Warszawa 2011 Spis treści Podziękowania......................................................

Bardziej szczegółowo

Wykład 1 Inżynieria Oprogramowania

Wykład 1 Inżynieria Oprogramowania Wykład 1 Inżynieria Oprogramowania Wstęp do inżynierii oprogramowania. Cykle rozwoju oprogramowaniaiteracyjno-rozwojowy cykl oprogramowania Autor: Zofia Kruczkiewicz System Informacyjny =Techniczny SI

Bardziej szczegółowo

Zapewnij sukces swym projektom

Zapewnij sukces swym projektom Zapewnij sukces swym projektom HumanWork PROJECT to aplikacja dla zespołów projektowych, które chcą poprawić swą komunikację, uprościć procesy podejmowania decyzji oraz kończyć projekty na czas i zgodnie

Bardziej szczegółowo

Procesy wytwarzania oprogramowania Specyfikacja i projektowanie oprogramowania

Procesy wytwarzania oprogramowania Specyfikacja i projektowanie oprogramowania Procesy wytwarzania oprogramowania Specyfikacja i projektowanie oprogramowania dr inż. Marcin Szlenk Politechnika Warszawska Wydział Elektroniki i Technik Informacyjnych Wprowadzenie O mnie dr inż. Marcin

Bardziej szczegółowo

INSTRUKCJA ZARZĄDZANIA PROJEKTAMI STRATEGICZNYMI

INSTRUKCJA ZARZĄDZANIA PROJEKTAMI STRATEGICZNYMI Załącznik Nr 2 do Zarządzenia Nr 52/2014 Rektora UMCS INSTRUKCJA ZARZĄDZANIA PROJEKTAMI STRATEGICZNYMI Spis treści Słownik pojęć... 1 Cz. 1 Inicjatywy Projektów Strategicznych... 2 Cz. 2 Realizacja Projektów

Bardziej szczegółowo

Inżynieria Programowania Inżynieria wymagań. Plan wykładu. Motto. Wstęp. Notatki. Notatki. Notatki. Notatki. Arkadiusz Chrobot

Inżynieria Programowania Inżynieria wymagań. Plan wykładu. Motto. Wstęp. Notatki. Notatki. Notatki. Notatki. Arkadiusz Chrobot Inżynieria Programowania Inżynieria Arkadiusz Chrobot Katedra Informatyki, Politechnika Świętokrzyska w Kielcach Kielce, 20 października 2015 Plan wykładu 1. Wstęp 2. Studium wykonywalności 3. Określanie

Bardziej szczegółowo

Zarządzanie projektami IT

Zarządzanie projektami IT Zarządzanie projektami IT Źródła Zarządzanie projektami, J. Betta, Politechnika Wrocławska, 2011 Zarządzanie projektami IT, P. Brzózka, CuCamp, styczeń 2011 Zarządzanie projektami IT w przedsiębiorstwie

Bardziej szczegółowo

Procesowa specyfikacja systemów IT

Procesowa specyfikacja systemów IT Procesowa specyfikacja systemów IT BOC Group BOC Information Technologies Consulting Sp. z o.o. e-mail: boc@boc-pl.com Tel.: (+48 22) 628 00 15, 696 69 26 Fax: (+48 22) 621 66 88 BOC Management Office

Bardziej szczegółowo

Krzysztof Wawrzyniak Quo vadis BS? Ożarów Mazowiecki, styczeń 2014

Krzysztof Wawrzyniak Quo vadis BS? Ożarów Mazowiecki, styczeń 2014 1 QUO VADIS.. BS? Rekomendacja D dlaczego? Mocne fundamenty to dynamiczny rozwój. Rzeczywistość wdrożeniowa. 2 Determinanty sukcesu w biznesie. strategia, zasoby (ludzie, kompetencje, procedury, technologia)

Bardziej szczegółowo

Tematy seminariów wg Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, Zofia Kruczkiewicz

Tematy seminariów wg Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, Zofia Kruczkiewicz Tematy seminariów wg Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, 2004 Zofia Kruczkiewicz 1. Przedstaw znaczenie oprogramowania we współczesnym świecie. x 3 2. Jaki wpływ na ludzi, komunikację

Bardziej szczegółowo

Certified IT Manager Training (CITM ) Dni: 3. Opis:

Certified IT Manager Training (CITM ) Dni: 3. Opis: Kod szkolenia: Tytuł szkolenia: HK333S Certified IT Manager Training (CITM ) Dni: 3 Opis: Jest to trzydniowe szkolenie przeznaczone dla kierowników działów informatycznych oraz osób, które ubiegają się

Bardziej szczegółowo

Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH. Modeling and analysis of computer systems Forma studiów: Stacjonarne

Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH. Modeling and analysis of computer systems Forma studiów: Stacjonarne Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH Kierunek: Informatyka Modeling and analysis of computer systems Forma studiów: Stacjonarne Rodzaj przedmiotu: obowiązkowy w ramach specjalności:

Bardziej szczegółowo

Praktyczne aspekty stosowania metody punktów funkcyjnych COSMIC. Jarosław Świerczek

Praktyczne aspekty stosowania metody punktów funkcyjnych COSMIC. Jarosław Świerczek Praktyczne aspekty stosowania metody punktów funkcyjnych COSMIC Jarosław Świerczek Punkty funkcyjne Punkt funkcyjny to metryka złożoności oprogramowania wyznaczana w oparciu o określające to oprogramowanie

Bardziej szczegółowo

Określanie wymagań. Cele przedsięwzięcia. Kontekst przedsięwzięcia. Rodzaje wymagań. Diagramy przypadków użycia use case diagrams

Określanie wymagań. Cele przedsięwzięcia. Kontekst przedsięwzięcia. Rodzaje wymagań. Diagramy przypadków użycia use case diagrams Cele przedsięwzięcia Określanie wymagań Klienta, np. Wzrost efektywności, spadek kosztów, rozszerzenie rynku, unikanie błędów Wykonawcy Biznesowe Techniczne Priorytety! Kontekst przedsięwzięcia Użytkownicy

Bardziej szczegółowo

Architektura korporacyjna jako narzędzie koordynacji wdrażania przetwarzania w chmurze

Architektura korporacyjna jako narzędzie koordynacji wdrażania przetwarzania w chmurze Architektura korporacyjna jako narzędzie koordynacji wdrażania przetwarzania w chmurze Prof. SGH, dr hab. Andrzej Sobczak, Kierownik Zakładu Systemów Informacyjnych, Katedra Informatyki Gospodarczej SGH

Bardziej szczegółowo

Wytwarzanie oprogramowania

Wytwarzanie oprogramowania AiPA 6 Wytwarzanie oprogramowania Proces tworzenia oprogramowania jest procesem przekształcenia wymagań w oprogramowanie zgodnie z metodyką, która określa KTO CO robi JAK i KIEDY. - Wymagania Proces tworzenia

Bardziej szczegółowo

Diagramu Związków Encji - CELE. Diagram Związków Encji - CHARAKTERYSTYKA. Diagram Związków Encji - Podstawowe bloki składowe i reguły konstrukcji

Diagramu Związków Encji - CELE. Diagram Związków Encji - CHARAKTERYSTYKA. Diagram Związków Encji - Podstawowe bloki składowe i reguły konstrukcji Diagramy związków encji (ERD) 1 Projektowanie bazy danych za pomocą narzędzi CASE Materiał pochodzi ze strony : http://jjakiela.prz.edu.pl/labs.htm Diagramu Związków Encji - CELE Zrozumienie struktury

Bardziej szczegółowo

Usługa: Testowanie wydajności oprogramowania

Usługa: Testowanie wydajności oprogramowania Usługa: Testowanie wydajności oprogramowania testerzy.pl przeprowadzają kompleksowe testowanie wydajności różnych systemów informatycznych. Testowanie wydajności to próba obciążenia serwera, bazy danych

Bardziej szczegółowo

Model referencyjny doboru narzędzi Open Source dla zarządzania wymaganiami

Model referencyjny doboru narzędzi Open Source dla zarządzania wymaganiami Politechnika Gdańska Wydział Zarządzania i Ekonomii Katedra Zastosowań Informatyki w Zarządzaniu Zakład Zarządzania Technologiami Informatycznymi Model referencyjny Open Source dla dr hab. inż. Cezary

Bardziej szczegółowo

Wytwórstwo oprogramowania. michał możdżonek

Wytwórstwo oprogramowania. michał możdżonek Wytwórstwo oprogramowania michał możdżonek 01.2008 Plan wykładu 1. Proces tworzenie oprogramowania 2. Zarządzanie projektami 3. Wymagania 4. Projektowanie 5. Testowanie 6. Szacowanie złożoności i kosztu

Bardziej szczegółowo

Łatwa czy niełatwa droga do celu? - wdrożenie COSMIC w ZUS

Łatwa czy niełatwa droga do celu? - wdrożenie COSMIC w ZUS - wdrożenie COSMIC w ZUS Warszawa, 07.06.2017 Dlaczego w ZUS zdecydowano się na wdrożenie wymiarowanie złożoności oprogramowania akurat metodą COSMIC? jest metodą najbardziej transparentną i ograniczającą

Bardziej szczegółowo

Projektowanie BAZY DANYCH

Projektowanie BAZY DANYCH Projektowanie BAZY DANYCH Podstawowe pojęcia Encją jest każdy przedmiot, zjawisko, stan lub pojęcie, czyli każdy obiekt, który potrafimy odróżnić od innych obiektów ( np. pies, rower,upał). Encje podobne

Bardziej szczegółowo

Opis metodyki i procesu produkcji oprogramowania

Opis metodyki i procesu produkcji oprogramowania Opis metodyki i procesu produkcji oprogramowania Rational Unified Process Rational Unified Process (RUP) to iteracyjny proces wytwarzania oprogramowania opracowany przez firmę Rational Software, a obecnie

Bardziej szczegółowo

Dlaczego testowanie jest ważne?

Dlaczego testowanie jest ważne? Testowanie Dlaczego testowanie jest ważne? Oprogramowanie które nie działa poprawnie może doprowadzić do: straty czasu, pieniędzy utraty reputacji uszkodzeń ciała a nawet śmierci Definicja błędu Oprogramowanie

Bardziej szczegółowo

Odniesienie do efektów kształcenia dla obszaru nauk EFEKTY KSZTAŁCENIA Symbol

Odniesienie do efektów kształcenia dla obszaru nauk EFEKTY KSZTAŁCENIA Symbol KIERUNKOWE EFEKTY KSZTAŁCENIA Wydział Informatyki i Zarządzania Kierunek studiów INFORMATYKA (INF) Stopień studiów - pierwszy Profil studiów - ogólnoakademicki Projekt v1.0 z 18.02.2015 Odniesienie do

Bardziej szczegółowo

Kurs programowania. Wykład 12. Wojciech Macyna. 7 czerwca 2017

Kurs programowania. Wykład 12. Wojciech Macyna. 7 czerwca 2017 Wykład 12 7 czerwca 2017 Czym jest UML? UML składa się z dwóch podstawowych elementów: notacja: elementy graficzne, składnia języka modelowania, metamodel: definicje pojęć języka i powiazania pomiędzy

Bardziej szczegółowo

KIERUNKOWE EFEKTY KSZTAŁCENIA

KIERUNKOWE EFEKTY KSZTAŁCENIA WYDZIAŁ INFORMATYKI I ZARZĄDZANIA Kierunek studiów: INFORMATYKA Stopień studiów: STUDIA I STOPNIA Obszar Wiedzy/Kształcenia: OBSZAR NAUK TECHNICZNYCH Obszar nauki: DZIEDZINA NAUK TECHNICZNYCH Dyscyplina

Bardziej szczegółowo

Wykład I. Wprowadzenie do baz danych

Wykład I. Wprowadzenie do baz danych Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles

Bardziej szczegółowo

Modelowanie jako sposób opisu rzeczywistości. Katedra Mikroelektroniki i Technik Informatycznych Politechnika Łódzka

Modelowanie jako sposób opisu rzeczywistości. Katedra Mikroelektroniki i Technik Informatycznych Politechnika Łódzka Modelowanie jako sposób opisu rzeczywistości Katedra Mikroelektroniki i Technik Informatycznych Politechnika Łódzka 2015 Wprowadzenie: Modelowanie i symulacja PROBLEM: Podstawowy problem z opisem otaczającej

Bardziej szczegółowo

Projektowanie systemów informatycznych. wykład 6

Projektowanie systemów informatycznych. wykład 6 Projektowanie systemów informatycznych wykład 6 Iteracyjno-przyrostowy proces projektowania systemów Metodyka (ang. methodology) tworzenia systemów informatycznych (TSI) stanowi spójny, logicznie uporządkowany

Bardziej szczegółowo

AL 1302 ZARZĄDZANIE PROJEKTAMI W OPARCIU O METODYKĘ PRINCE2

AL 1302 ZARZĄDZANIE PROJEKTAMI W OPARCIU O METODYKĘ PRINCE2 AL 1302 ZARZĄDZANIE PROJEKTAMI W OPARCIU O METODYKĘ PRINCE2 1. Definicja projektu: cechy projektu, przyczyny porażek projektów, czynniki sukcesu projektów, cele projektu, produkty projektu, cykl życia

Bardziej szczegółowo

Tematy seminariów wg Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, Zofia Kruczkiewicz

Tematy seminariów wg Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, Zofia Kruczkiewicz Tematy seminariów wg Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, 2004 Zofia Kruczkiewicz 1. Przedstaw znaczenie oprogramowania we współczesnym świecie x 1 2. Jaki wpływ na ludzi, komunikację

Bardziej szczegółowo

Projektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Modelowanie danych Diagramy ERD

Projektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Modelowanie danych Diagramy ERD Projektowanie systemów informatycznych Roman Simiński roman.siminski@us.edu.pl siminskionline.pl Modelowanie danych Diagramy ERD Modelowanie danych dlaczego? Od biznesowego gadania do magazynu na biznesowe

Bardziej szczegółowo

ZARZĄDZANIE RYZYKIEM W LABORATORIUM BADAWCZYM W ASPEKCIE NOWELIZACJI NORMY PN-EN ISO/ IEC 17025:

ZARZĄDZANIE RYZYKIEM W LABORATORIUM BADAWCZYM W ASPEKCIE NOWELIZACJI NORMY PN-EN ISO/ IEC 17025: ZARZĄDZANIE RYZYKIEM W LABORATORIUM BADAWCZYM W ASPEKCIE NOWELIZACJI NORMY PN-EN ISO/ IEC 17025:2018-02 DR INŻ. AGNIESZKA WIŚNIEWSKA DOCTUS SZKOLENIA I DORADZTWO e-mail: biuro@doctus.edu.pl tel. +48 514

Bardziej szczegółowo

Strategia parasolowa

Strategia parasolowa Strategia parasolowa Partnerstwo samorządów Południowej Wielkopolski na rzecz zwiększenia dostępności i jakości usług publicznych Dr hab. Jacek F. Nowak UEP Plan prezentacji Odpowiedzi napytania: Co to

Bardziej szczegółowo

KIERUNKOWE EFEKTY KSZTAŁCENIA

KIERUNKOWE EFEKTY KSZTAŁCENIA WYDZIAŁ INFORMATYKI I ZARZĄDZANIA Kierunek studiów: INFORMATYKA Stopień studiów: STUDIA II STOPNIA Obszar Wiedzy/Kształcenia: OBSZAR NAUK TECHNICZNYCH Obszar nauki: DZIEDZINA NAUK TECHNICZNYCH Dyscyplina

Bardziej szczegółowo

Wykład 7. Projektowanie kodu oprogramowania

Wykład 7. Projektowanie kodu oprogramowania Wykład 7 Projektowanie kodu oprogramowania Treść wykładu cykl życiowy oprogramowania zagadnienia inżynierii oprogramowania tworzenie oprogramowania z gotowych elementów tworzenie niezawodnego oprogramowania

Bardziej szczegółowo

Wprowadzenie w tematykę zarządzania projektami/przedsięwzięciami

Wprowadzenie w tematykę zarządzania projektami/przedsięwzięciami Wprowadzenie w tematykę zarządzania projektami/przedsięwzięciami punkt 2 planu zajęć dr inż. Agata Klaus-Rosińska 1 DEFINICJA PROJEKTU Zbiór działań podejmowanych dla zrealizowania określonego celu i uzyskania

Bardziej szczegółowo

Plan zarządzania projektem

Plan zarządzania projektem Plan zarządzania projektem Opracował: Zatwierdził: Podpis: Podpis: Spis treści: 1. Wst p... 2 1.1 Cel... 2 1.2 Zakres... 2 1.3 Przeznaczenie dokumentu... 2 1.4 Organizacja dokumentu... 2 1.5 Dokumenty

Bardziej szczegółowo

Inżynieria wymagań. Jarosław Kuchta Dokumentacja i Jakość Oprogramowania

Inżynieria wymagań. Jarosław Kuchta Dokumentacja i Jakość Oprogramowania Inżynieria wymagań Jarosław Kuchta Cele inżynierii wymagań Określenie celu biznesowego projektu Cel biznesowy określa korzyści, jakie osiągną udziałowcy projektu dzięki jego realizacji Identyfikacja wymagań

Bardziej szczegółowo