Budowa i integracja systemów informacyjnych

Slides:



Advertisements
Podobne prezentacje
Inżynieria Programowania zakres i organizacja przedmiotu
Advertisements

Projektowanie w cyklu życia oprogramowania
Studia Podyplomowe IT w Biznesie Inżynieria Oprogramowania
Złożoność procesu konstrukcji oprogramowania wymusza podział na etapy.
7-8 października 2003, I Seminarium Integrujące Komponenty B.1 i B.2Projekt Usuwania Skutków Powodzi - Polska, kredyt nr 4264 POL 1 System Monitoringu.
Zarządzanie projektem informatycznym ZPR
Zarządzanie projektem informatycznym
Budowa i integracja systemów informacyjnych
Budowa i integracja systemów informacyjnych
1 / 47 WARSZAWA 2005 Przemysław Siekierko Stanisław Andraszek Rational Unified Process.
Rational Unified Process www-306.ibm.com/software/rational/
Zarządzanie projektem (ZPR)
Zarządzanie projektem informatycznym ZPR
Planowanie zadań i metody ich obrazowania
Inżynieria Oprogramowania 5. Prototypowanie
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 8 Slide 1 Prototypowanie oprogramowania l Błyskawiczne tworzenie oprogramowania służące.
Projektowanie Aplikacji Komputerowych
Na Etapie Inżynierii Wymagań
Tomasz Pieciukiewicz Rafał Hryniów
Cykle życia oprogramowania
Jakość systemów informacyjnych (aspekt eksploatacyjny)
Quartz. Wstęp Framework stworzony do budowy aplikacji biznesowych Metodologia która łączy prototypowanie, modelowanie wizualne oraz automatyzację budowy.
Rational Unified Process
Podstawy Inżynierii Oprogramowania
Podstawy Inżynierii Oprogramowania
Projektowanie i programowanie obiektowe II - Wykład IV
Proces tworzenia oprogramowania
Projekt zaliczeniowy z przedmiotu "Inżynieria oprogramowania"
Dalsze elementy metodologii projektowania. Naszym celem jest...
Analiza, projekt i częściowa implementacja systemu obsługi kina
Projekt i implementacja aplikacji wspomagającej testowanie oprogramowania, zgodne z metodologią Unified Software Development Process (RUP). Włodzimierz.
Wykład 2 Cykl życia systemu informacyjnego
Projekt i implementacja aplikacji wspomagającej testowanie
C.d. wstępu do tematyki RUP
ŚCIEŻKA KRYTYCZNA Ciąg następujących po sobie zadań w ramach projektu trwających najdłużej ze wszystkich możliwych ciągów, mających taką własność, że opóźnienie.
EasyLoad BI zarządzanie wczytywaniem danych do hurtowni przez użytkowników biznesowych Prezentacja rozwiązania.
Microsoft Solution Framework
Mirosław Grybalow Business Development Manager SAS Polska
Moduł: Informatyka w Zarządzaniu
Rational Unified Process Implementacja Aleksandra Reiman, gr. I-52.
Dr Karolina Muszyńska Na podst.:
Studia Podyplomowe IT w Biznesie Inżynieria Oprogramowania
Komputerowe wspomaganie projektowania
Waterfall model.
Zarządzanie zagrożeniami
ŁUKASZ DZWONKOWSKI Modele zwinne i ekstremalne. Podejście tradycyjne
Inżynieria oprogramowania
Studium osiągalności. Rozmiar projektu (np. w punktach funkcyjny projektu w porównaniu do rozmiaru zakładanego zespołu projektowego i czasu Dostępność.
Proces tworzenia oprogramowania Proces tworzenia oprogramowania jest zbiorem czynności i związanych z nimi wyników, które prowadzą do powstania produktu.
Podstawy zarządzania projektami Karta projektu
Copyright © Jerzy R. Nawrocki Team Software Process Inżynieria oprogramowania II Wykład.
ZASTOSOWANIE KOMPUTEROWEGO WSPOMAGANIA W ZARZĄDZANIU JAKOŚCIĄ - METODY FMEA I QFD Politechnika Śląska, Wydział Organizacji i Zarządzania, Katedra Zarządzania.
ZINTEGROWANE SYSTEMY ZARZĄDZANIA
Eksploatacja zasobów informatycznych przedsiębiorstwa.
Ergonomia procesów informacyjnych
Bartosz Baliś, 2006 Wstęp do Inżynierii Oprogramowania Bartosz Baliś.
7/1/ Projektowanie Aplikacji Komputerowych Piotr Górczyński Cykl życia systemu.
Logical Framework Approach Metoda Macierzy Logicznej
Studia Podyplomowe IT w Biznesie Inżynieria Oprogramowania
Wykład 2 – Zintegrowane systemy informatyczne Michał Wilbrandt.
Budowa i integracja systemów informacyjnych Wykład 1 Wprowadzenie do inżynierii oprogramowania mgr inż. Rafał Hryniów P olsko J apońska W yższa S zkoła.
Budowa i integracja systemów informacyjnych Wykład 4 Faza strategiczna mgr inż. Rafał Hryniów P olsko J apońska W yższa S zkoła T echnik K omputerowych.
Budowa i integracja systemów informacyjnych Wykład 2 Cykl życiowy oprogramowania dr inż. Włodzimierz Dąbrowski P olsko J apońska W yższa S zkoła T echnik.
Z. SroczyńskiInżynieria programowania Modele cyklu życia oprogramowania Zdzisław Sroczyński
Cykle życia oprogramowania oraz role w zespole projektowym Autor: Sebastian Szałachowski s4104.
Agile Programming a jakość
Zarządzanie projektami informatycznymi
Budowa i integracja systemów informacyjnych
Cykl życia oprogramowania
Zapis prezentacji:

Budowa i integracja systemów informacyjnych Wykład 2 Cykl życiowy oprogramowania dr inż. Włodzimierz Dąbrowski Polsko Japońska Wyższa Szkoła Technik Komputerowych Katedra Systemów Informacyjnych, pokój 310 e-mail: Wlodek@pjwstk.edu.pl Materiał wyłącznie do użytku przez studentów PJWSTK kursu Zarządzanie projektem informatycznym. Copyright © 2002 – 2004 by W. Dąbrowski - wszelkie prawa zastrzeżone. Materiał ani jego część nie może być w żadnej formie i za pomocą jakichkolwiek środków technicznych reprodukowany bez zgody właściciela praw autorskich. Wersja C

Plan wykładu Jak wygląda życie wewnętrzne …? Jaką drogę wybrać? Od czego zacząć? Czy wiemy czego chcemy? Inne trudne pytania Co to jest strategia, i po co …? To są notatki

Cykl życiowy oprogramowania

Analiza: dziedziny przedsiębiorczości, wymagań systemowych Od czego zacząć? Faza strategiczna: określenie strategicznych celów, planowanie i definicja projektu Określenie wymagań Analiza: dziedziny przedsiębiorczości, wymagań systemowych Projektowanie: projektowanie pojęciowe, projektowanie logiczne Implementacja/konstrukcja: rozwijanie, testowanie, dokumentacja Testowanie Dokumentacja Instalacja Przygotowanie użytkowników, akceptacja, szkolenie Działanie, włączając wspomaganie tworzenia aplikacji Utrzymanie, konserwacja, pielęgnacja

Modele cyklu życia oprogramowania Model kaskadowy (wodospadowy) Model spiralny Prototypowanie Montaż z gotowych komponentów Tego rodzaju modeli (oraz ich mutacji) jest bardzo dużo. Określenie wymagań Projektowanie Implementacja Testowanie Konserwacja Faza strategiczna Analiza Instalacja Dokumentacja

Model wodospadowy – wersja 1 waterfall model

Model wodospadowy – wersja 2 pure model

Model kaskadowy (wodospadowy) waterfall model Określenie wymagań Cele i szczegółowe wymagania wobec systemu. Analiza Projektowanie Szczegółowy projekt systemu uwzględniający wcześniejsze wymagania. Implementacja Testowanie Konserwacja Modyfikacje producenta - usunięcie błędów, zmiany i rozszerzenia.

Ocena modelu kaskadowego Istnieją zróżnicowane poglądy co do przydatności praktycznej modelu kaskadowego. Podkreślane są następujące wady: Narzucenie twórcom oprogramowania ścisłej kolejności wykonywania prac Wysoki koszt błędów popełnionych we wczesnych fazach Długa przerwa w kontaktach z klientem Z drugiej strony, jest on do pewnego stopnia niezbędny dla planowania, harmonogramowania, monitorowania i rozliczeń finansowych. Określenie wymagań Zmodyfikowany model kaskadowy z iteracjami Analiza Projektowanie Implementacja Testowanie Konserwacja

Code-and-Fix

Realizacja kierowana dokumentami Przyjęty przez armią amerykańską dla realizacji projektów w języku Ada. Jest to odmiana modelu kaskadowego. Każda faza kończy się sporządzeniem szeregu dokumentów, w których opisuje się wyniki danej fazy. Łatwe planowanie, harmonogramowanie oraz monitorowanie przedsięwzięcia. Dodatkowa zaleta: (teoretyczna) możliwość realizacji dalszych faz przez inną firmę. Wady Duży nakład pracy na opracowanie dokumentów zgodnych ze standardem (DOD STD 2167) - ponad 50% całkowitych nakładów. Przerwy w realizacji niezbędne dla weryfikacji dokumentów przez klienta.

Model spiralny – wersja uproszczona spiral model Planowanie: Ustalenie celów produkcji kolejnej wersji systemu Analiza ryzyka (ew. budowa prototypu) Konstrukcja (model kaskadowy) Atestowanie (przez klienta). Jeżeli ocena nie jest w pełni pozytywna, rozpoczynany jest kolejny cykl. Istnieje wiele wariantów tego modelu.

Model spiralny – wersja rozbudowana

Realizacja przyrostowa incremental development Określenie wymagań Wybierany jest i realizowany podstawowy zestaw funkcji. Po realizacji pewnych funkcji następuje zrealizowanie i dostarczenie kolejnych funkcji. Ogólny projekt Proces realizowany iteracyjnie Wybór podzbioru funkcji Szczegółowy projekt, implementacja testy Dostarczenie zrealizowanej części systemu

ogólne określenie wymagań budowa prototypu Prototypowanie prototyping Sposób na uniknięcie zbyt wysokich kosztów błędów popełnionych w fazie określania wymagań. Zalecany w przypadku, gdy określenie początkowych wymagań jest stosunkowo łatwe. ogólne określenie wymagań budowa prototypu weryfikacja prototypu przez klienta pełne określenie wymagań realizacja pełnego systemu zgodnie z modelem kaskadowym Fazy wykrycie nieporozumień pomiędzy klientem a twórcami systemu wykrycie brakujących funkcji wykrycie trudnych usług wykrycie braków w specyfikacji wymagań Cele możliwość demonstracji pracującej wersji systemu możliwość szkoleń zanim zbudowany zostanie pełny system Zalety

Metody prototypowania Niepełna realizacja: objęcie tylko części funkcji Języki wysokiego poziomu: Smalltalk, Lisp, Prolog, 4GL, ... Wykorzystanie gotowych komponentów Generatory interfejsu użytkownika: wykonywany jest wyłącznie interfejs, wnętrze systemu jest “podróbką”. Szybkie programowanie (quick-and-dirty): normalne programowanie, ale bez zwracania uwagi na niektóre jego elementy, np. zaniechanie testowania Dość często następuje ewolucyjne przejście od prototypu do końcowego systemu. Należy starać się nie dopuścić do sytuacji, aby klient miał wrażenie, że prototyp jest prawie ukończonym produktem. Po fazie prototypowania najlepiej prototyp skierować do archiwum.

Montaż z gotowych komponentów Kładzie nacisk na możliwość redukcji nakładów poprzez wykorzystanie podobieństwa tworzonego oprogramowania do wcześniej tworzonych systemów oraz wykorzystanie gotowych komponentów dostępnych na rynku. Temat jest określany jako ponowne użycie (reuse) Metody zakup elementów ponownego użycia od dostawców przygotowanie elementów poprzednich przedsięwzięć do ponownego użycia wysoka niezawodność zmniejszenie ryzyka efektywne wykorzystanie specjalistów narzucenie standardów dodatkowy koszt przygotowania elementów ponownego użycia ryzyko uzależnienia się od dostawcy elementów niedostatki narzędzi wspomagających ten rodzaj pracy. Zalety Wady

Który model jest lepszy? Lifecycle Model Capability Pure Waterfall Code-and-Fix Spiral Modified Waterfalls Prototyping Źle określone wymagania Poor Excellent Fair to excellent Niejasna architektura Poor to fair Systemy wysokiej niezawodności Fair Systemy „rozwojowe” Poor to Zarządzanie ryzykiem Systemy ze sztywno zdef. deadlinem Niskobudżetowe Jasne postępy dla klienta Jasne postępy dla zarządu Małe doświadczenie w stosowaniu modelu

Podsumowanie

Literatura [1] Steve McConnell, Rapid Development, MS Press 1996