MODELE CYKLU ŻYCIA OPROGRAMOWANIA
modele
modele
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>MODELE</strong> <strong>CYKLU</strong> <strong>ŻYCIA</strong><strong>OPROGRAMOWANIA</strong> (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)wymaganiaspecyfikowanieprojektowaniekodowanie1. sprzężenie zwrotne jedynie pomiędzysąsiednimi fazami2. fazy częściowo nakładają się na siebie3. niemożność weryfikacji decyzji podjętych wewcześniejszych fazach – (wada)4. powroty do zbyt wczesnych faz powodująopóźnienie projektu, brak dyscypliny i„pączkowanie”testowanieGotowy produktFazastrategicznaAnalizaSyntezaInstalacjaDokumentacja
<strong>MODELE</strong> <strong>CYKLU</strong> <strong>ŻYCIA</strong><strong>OPROGRAMOWANIA</strong> (2)Model przyrostowy (często stosowany w praktyce do modeli iteracyjnych i metodyk)modelowanieprojektowaniemodelowanieimplementacjaprojektowaniemodelowaniefragmentsystemuimplementacjafragmentsystemuprojektowanieimplementacja1. podział produktu na mniejsze fragmenty które przechodzą poszczególnefragmenty w sposób nakładający się2. konieczność dokładnej definicji interfejsów pomiędzy fragmentami3. łatwość implementacji w modelach kaskadowych i iteracyjnychfragmentsystemu
<strong>MODELE</strong> <strong>CYKLU</strong> <strong>ŻYCIA</strong><strong>OPROGRAMOWANIA</strong> (3)Model V (eliminacja niemożności testowania produktu danej fazy)modelowanietestowanie wymagań- walidacyjneprojektowanietestowanie jednostekoprogramowania - integracyjneimplementacjasystem1. udział dwóch zespołów: projektowego i testującego2. zespół projektowy opracowuje produkty poszczególnych faz – zespół testujący testuje powstające produkty3. testowanie jest związane z fazami produkcyjnymi
<strong>MODELE</strong> <strong>CYKLU</strong> <strong>ŻYCIA</strong><strong>OPROGRAMOWANIA</strong> (4)Model kaskadowy – rozbudowa testowaniawymaganiaspecyfikowanieprojektowaniekodowanietestowanieplan testówGotowy produktFazastrategicznaAnalizaSyntezaInstalacjaDokumentacja
<strong>MODELE</strong> <strong>CYKLU</strong> <strong>ŻYCIA</strong><strong>OPROGRAMOWANIA</strong> (5)Iteracje w modelu kaskadowym (model pragmatyczny, realistyczny)wymaganiaspecyfikowanieprojektowaniekodowanietestowanieGotowy produkt1. założenie – rezultaty żadnej fazy nie są kompletne i muszą ulegać modyfikacjom2. konieczność zmiany wymagań lub kosztu i czasu realizacji3. zagadnienia trudne, wieloaspektowe, prowadzące do złożonego systemupielęgnacja
<strong>MODELE</strong> <strong>CYKLU</strong> <strong>ŻYCIA</strong><strong>OPROGRAMOWANIA</strong> (6)Inne modeleProgramowanie odkrywcze –złożone systemy o trudnych dosprecyzowania wymaganiach – cykliczna realizacja systemuogólnego do wymagań weryfikowanych przez klientaOkreśl ogólnewymaganiaBudowa ogólnegosystemuWstępnetestowaniesystemuNieDostarcz systemTakSystem działa poprawnie?TakKlient zadowolony?NieModel może być stosowanyjako „sposób” tworzeniasystemu (amatorski).Profesjonalnie stosuje się gow prototypowaniu
<strong>MODELE</strong> <strong>CYKLU</strong> <strong>ŻYCIA</strong><strong>OPROGRAMOWANIA</strong> (7)Inne modeleModel konstrukcji prototypów –złożone systemy o wymaganiachniejasnych lub wieloznacznych – cykliczna realizacja systemupoprzez prototypy weryfikowane przez klientamodelowanieProjektowanieImplementacjaprototypuImplementacjasystemuInstalacja, testowanie,usuwanie błędówPrototypy prowizorycznemogą być konstruowanebardzo szybko w małychkosztachmetodologia pozwala naweryfikację wymagańpielęgnacja, dalszyrozwój
<strong>MODELE</strong> <strong>CYKLU</strong> <strong>ŻYCIA</strong><strong>OPROGRAMOWANIA</strong> (8)Inne modeleModel ewolucyjnej konstrukcji prototypów – złożone systemy o wymaganiachniejasnych lub wieloznacznych – cykliczna realizacja systemu poprzez prototypyweryfikowany przez klienta poprawiany, testowany i instalowany jakozrealizowany przyrostmodelowanieProjektowanieImplementacjaprototypuImplementacjasystemuPołączenie podejściaprzyrostowego i iteracyjnegoSzybkie dostarczanieniepełnej wersji systemuinstalacja, testowanie,usuwanie błędów prototypuInstalacja, testowanie,usuwanie błędówpielęgnacja, dalszyrozwój