18(45) Metody tworzenia systemów informatycznychid 17860 ppt

background image

Slajd 1

Metody tworzenia

systemów

informatycznych

background image

Slajd 2

Plan wykładu

Tworzenie kaskadowe

Tworzenie ewolucyjne

Tworzenie formalne systemu

Tworzenie z użyciem wielokrotnym

Iteracja procesu tworzenia
oprogramowania

Tworzenie przyrostowe

Tworzenie spiralne

background image

Slajd 3

Tworzenie
kaskadowe

background image

Slajd 4

Metody tworzenia systemów
informatycznych

Tworzenie kaskadowe

W tym modelu podstawowe

czynności specyfikowania,
tworzenia, zatwierdzania i ewolucji
odrębnymi fazami procesu.

background image

Slajd 5

Fazy modelu kaskadowego

Definiowanie i analiza wymagań

Projektowanie systemu i analiza
wymagań

Implementacja i testowanie jednostek

Integracja i testowanie systemu

Działanie i pielęgnacja

background image

Slajd 6

Model kaskadowy

Definiowanie wymagań

Definiowanie wymagań

Projektowanie systemu

i oprogramowania

Implementacja i testowanie

jednostek

Integracja i testowanie

systemu

Działanie i
pielęgnacja

background image

Slajd 7

Problemy modelu
kaskadowego

Następnej fazy nie powinno się

rozpoczynać, jeśli poprzednia się nie zakończy.

Koszty opracowania i akceptacji

dokumentów są wysokie i dlatego iteracje są

również kosztowne oraz wymagają powtarzania

wielu prac.

Wadą modelu kaskadowego jest zawarty w nim

nieelastyczny podział na rozłączne etapy.

Model kaskadowy powinien być używany

jedynie wówczas, gdy wymagania są jasne i

zrozumiałe.

background image

Slajd 8

Tworzenie
ewolucyjne

background image

Slajd 9

Metody tworzenia systemów
informatycznych

Tworzenie ewolucyjne

W tym procesie czynności

specyfikowania, projektowania i
zatwierdzania przeplatają się.

background image

Slajd 10

Tworzenie ewolucyjne

Tworzenie badawcze

Celem procesu jest praca z klientem, polegająca na

badaniu wymagań i dostarczeniu ostatecznego

systemu. Tworzenie rozpoczyna się od tych części

systemu, które są dobrze rozpoznane. System

ewoluuje przez dodawanie nowych cech, które

proponuje klient.

Prototypowanie z porzuceniem

Celem procesu tworzenia ewolucyjnego jest

zrozumienie wymagań klienta i wypracowanie lepszej

definicji wymagań stawianych systemowi. Budowanie

prototypu ma głównie na celu eksperymentowanie z

tymi wymaganiami użytkownika, które są niejasne.

background image

Slajd 11

Tworzenie ewolucyjne

Wersja
początko
wa

Ogólny opis

Specyfikacja

Tworzenie

Zatwierdzenie

Wersje pośrednie

Wersja końcowa

Równolegle czynności

background image

Slajd 12

Tworzenie ewolucyjne

Problemy

Proces nie jest widoczny

System ma złą strukturę

Konieczne mogą być specjalne narzędzia i techniki

Stosowanie

W wypadku systemów małych (mniej niż 100 000
wierszy kodu) lub średnich (do 500 000 wierszy kodu) z
krótkim czasem życia podejście ewolucyjne jest
najlepsze.

W wypadku dużych systemów o długim czasie życia
wady tworzenia ewolucyjnego ujawniają się jednak z
całą ostrością.

background image

Slajd 13

Tworzenie formalne
systemu

background image

Slajd 14

Metody tworzenia systemów
informatycznych

Tworzenie formalne systemu

To podejście jest oparte na

budowaniu formalnych
matematycznych specyfikacji
systemu i przekształcaniu tych
specyfikacji w program za pomocą
metod matematycznych.

background image

Slajd 15

Tworzenie formalne
systemów

Definicja
wymagań

Specyfikacja
formalna

Przekształce
nie
formalne

Integracja i testowanie
systemu

background image

Slajd 16

Tworzenie formalne
systemów

R2

Formal

specification

R3

Executable

program

P2

P3

P4

T1

T2

T3

T4

Proofs of transformation correctness

Formal transformations

R1

P1

background image

Slajd 17

Problemy i stosowalność

Oprócz specjalistycznych dziedzin procesy

oparte na przekształceniach formalnych

są używane rzadko.

Wymagają specjalistycznej wiedzy i w

praktyce okazuje się, że w wypadku

większości systemów nie powodują

zmniejszenia kosztów lub polepszenia

jakości w porównaniu z innymi

podejściami.

Interakcje systemów nie poddają się

łatwo specyfikowaniu formalnemu.

background image

Slajd 18

Tworzenie z użyciem
wielokrotnym

background image

Slajd 19

Metody tworzenia systemów
informatycznych

Tworzenie z użyciem wielokrotnym

W tym podejściu zakłada się

istnienie dużej liczby komponentów
zdatnych do ponownego użycia.

background image

Slajd 20

Tworzenie z użyciem
wielokrotnym

W większości przedsięwzięć

programistycznych występuje użycie

wielokrotne oprogramowania.

Etapy procesu

Analiza komponentów

Modyfikacja wymagań

Projektowanie systemu z użyciem wielokrotnym

Tworzenie i integracja

Zakłada się

istnienie wielkiego zbioru

dostępnych komponentów programowych

użycia wielokrotnego

oraz integrującej je

struktury.

background image

Slajd 21

Tworzenie z użyciem
wielokrotnym

Specyfikacja
wymagań

Zatwierdze
nie
systemu

Tworzenie i
integracja

Projekt systemu z
użyciem
wielokrotnym

Analiza
komponentów

Modyfikacja
wymagań

background image

Slajd 22

Iteracja procesu

tworzenia

oprogramowania

background image

Slajd 23

Iteracja procesu

Potrzebne jest wspomaganie iteracji
procesu, która polega na powtarzaniu
fragmentu w miarę ewolucji wymagań
stawianych
systemowi.

Prace projektowe i implementacyjne
muszą być ponownie wykonane, aby
spełnić zmienione wymagania.

Dwa hybrydowe modele

Tworzenie przyrostowe

Tworzenie spiralne

background image

Slajd 24

Tworzenie przyrostowe

background image

Slajd 25

Tworzenie przyrostowe

Podejście przyrostowe do tworzenia zaproponował

Mills jako sposób na ograniczenie powtarzania

prac w procesie tworzenia oraz danie klientom

pewnych możliwości odkładania decyzji o

szczegółowych wymaganiach do czasu, aż zdobędą

pewne doświadczenia w pracy z systemem.

W procesie przyrostowym klienci identyfikują w

zarysie usługi, które system ma oferować. Wskazują,

które z nich są dla nich najważniejsze, a które

najmniej ważne. Definiuje się następnie pewną liczbę

przyrostów, które mają być dostarczone.

Gdy przyrost jest już gotowy i dostarczony, klienci

mogą go uruchomić. Oznacza to, że szybko otrzymują

część funkcjonalności systemu

background image

Slajd 26

Przyrostowy model tworzenia
systemu

Definicja

wymagań

Architektur

a

Analiza

Projekt

Kodowanie i

testowanie

Wdrożenie

Projekt

Projekt

Kodowanie i

testowanie

Kodowanie i

testowanie

Wdrożenie

Wdrożenie

.

.

background image

Slajd 27

Tworzenie przyrostowe

Zdefiniuj zarys
wymagań

Wytwórz przyrost
systemu

Przypisz wymagania
do przyrostów

Zweryfikuj
przyrost

Zaprojektuj
architekturę systemu

Zintegruj system

Zweryfikuj system

System
końcowy

System nie ukończony

background image

Slajd 28

Zalety procesu tworzenia
przyrostowego

Klienci nie musza czekać na dostarczenie
całego systemu
, zanim zaczną czerpać z niego
korzyść.

Klienci mogą używać wstępnych przyrostów
jako rodzaju prototypu
i zdobywać
doświadczenia, które inspirują wymagania wobec
późniejszych przyrostów.

Ryzyko całkowitej porażki przedsięwzięcia jest
mniejsze.

Usługi o najwyższym priorytecie będą
dostarczane jako pierwsze.

background image

Slajd 29

Tworzenie spiralne

background image

Slajd 30

Tworzenie spiralne

Każda pętla spirali reprezentuje
jedną
fazę procesu.

Najbardziej wewnętrzna pętla
może być poświęcona
wykonalności systemu
, następna
- definicji wymagań stawianych
systemowi, kolejna projektowaniu
itd..

background image

Slajd 31

Każda pętla spirali jest
podzielona na cztery
sektory:

Ustalanie celów

Definiuje się konkretne cele tej fazy przedsięwzięcia.
Identyfikuje się ograniczenia, którym podlega proces i
produkt.

Rozpoznanie i redukcja zagrożeń

Przeprowadza się szczegółową analizę każdego z
rozpoznanych zagrożeń przedsięwzięcia

.

Tworzenie i zatwierdzanie

Po ocenie zagrożeń wybiera się model tworzenia systemu.

Planowanie

Recenzuje się przedsięwzięcie i podejmuje decyzję, czy
rozpoczynać następną pętlę spirali.

background image

Slajd 32

Model spiralny procesu
tworzenia oprogramowania

Określ cele,
inne strategie
i ograniczenia

Oceń inne strategie,
rozpoznaj i zmniejsz
zagrożenia

RECENZJA

Plan wymagań
Plan cyklu życia

Plan tworzenia

Plan testowania
i integracji

Zaplanuj następną
fazę

Analiza zagrożeń

Analiza zagrożeń

Analiza zagrożeń

Analiza
zagrożeń

Prototyp 1

Prototyp 2

Prototyp 3

Działający
prototyp

Sposób
postępowania

Symulacje, modele, miary odniesienia

Zatwierdzenie
wymagań

Wymagania
S/W Projekto-

wanie
produktu

Weryfikacja i
zatwierdzenie

działanie

Testy
akceptacji

Testy
integracji

Testy
jednostek

kodowanie

Szczegółowe
projekto-
wanie

Utwórz, zweryfikuj
produkt następnego
poziomu

background image

Slajd 33

Model cyklu życia
oprogramowania

Analiza

Projektowanie

Programowanie

Kaskadowy

Bardzo dokładna

Staranne, ale nie narażone na
ciągłe zmiany. Znaczna część pracy

przerzucona na projektantów i
programistów

Łatwe jeśli dobry projekt.

Kaskadowy z nawrotami

Dokładna

Staranne, ale nie narażone na

ciągłe zmiany. Znaczna część pracy
przerzucona na projektantów i

programistów

Dość łatwe ale musi uwzględniać

możliwość pewnych zmian.


Przyrostowy

Dokładna w obrębie podzbioru

Łatwe na początku bo projektuje się
mały podzbiór, jednocześnie przy
rozszerzaniu funkcjonalności jest

się związanym tym co się wcześniej
zaprojektowało. System należy tak

projektować aby był
konfigurowalny

Prowadzi od improwizacji, wymaga
dużej wiedzy od programistów.

Prototypowy

Nie wymaga dużej przenikliwości.

J.w. Znaczna część pracy

przerzucona na programistów.


Odkrywczy

Brak

Brak

Czasem trzeba wszystko zrobić od
nowa. Kod nieprofesjonalny

Komponentowy

Dokładna

Brak

Znikome lub brak

Oprogramowanie oparte na

koncepcji rodzin

Dokładna zarówno dla rodziny i narzędzi z

nią związanych
Bardzo dokładna dla produktu.
Specyfikacja produktu w języku specjalnie
zaprojektowanym dla całej rodziny

Bardzo dokładne dla narzędzi dla

całej rodziny i języka opisu
członków rodziny

Bardzo dokładne dla narzędzi dla

całej rodziny
Wykonywane automatycznie dla

konkretnych produktów.


Zestawienie modeli cykli życia oprogramowania

background image

Slajd 34

O czym był wykład?

Tworzenie kaskadowe

Tworzenie ewolucyjne

Tworzenie formalne systemu

Tworzenie z użyciem wielokrotnym

Iteracja procesu tworzenia
oprogramowania

Tworzenie przyrostowe

Tworzenie spiralne

background image

Slajd 35

Literatura dodatkowa

1. Z. Szyjewski, Metodyki zarządzania

projektami

informatycznymi,

Wydawnictwo Placet, Warszawa 2004

2. M. Flasiński, Wstęp do analitycznych

metod

projektowania

systemów

informatycznych,

Wydawnictwa

Naukowo-Techniczne, Warszawa 1997


Document Outline


Wyszukiwarka

Podobne podstrony:
17(45) Modele systemów informatycznychid 17383 ppt
15 Logistyka zaopatrzenia Systemy informatyczneid 16277 ppt
zasady tworzenia systemu informacji marketingowej ZF5NNT6F7J53W2DOGPK7JIRP7UGFCBR4NEDABTQ
SIP 10-18, Ochrona Środowiska, semestr V, Systemy Informacji Przestrzennej
5 Systemy informatyczne przyklady ppt
OK W3 Etapy i fazy procesu tworzenia systemu informatycznego
zymonik,METODY BADANIA Systemów Informacyjnych Zarządzania,Organizacja Środowiskiem SI
zymonik,METODY BADANIA Systemów Informacyjnych Zarządzania,Analiza wymagań informacyjnych
zymonik,METODY BADANIA Systemów Informacyjnych Zarządzania,WYWIADY – technika pozyskiwania wymagań
zymonik,METODY BADANIA Systemów Informacyjnych Zarządzania,ANALIZA DOKUMENTÓW
zymonik,METODY BADANIA Systemów Informacyjnych Zarządzania,DECYZJE
Metodyka punktow wezlowych w realizacji systemu informatycznego
4 Systemy informatyczne 2 ppt
Metodyka punktow wezlowych w realizacji systemu informatycznego, Informatyka, Studia dodać do folder
PODSTAWY SYSTEM W INFORMACYJNYCH 18 01 2012(b)
03 Systemy informatyczne 1 ppt
2(45) Inżynieria systemów komputerowychid 21043 ppt
14(45) Proces Tworzenia oprogramowaniaid 15602 ppt

więcej podobnych podstron