Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Jakość oprogramowania    oraz modele procesu    produkcji oprogramowania CZADO TOMASZ DOBOSZ PIOTR
<ul><li>Omawiane zagadnienia: </li></ul><ul><li>Jakość, opinie, punkty widzenia </li></ul><ul><li>Jakość oprogramowania </...
<ul><li>Czym jest jakość oprogramowania? </li></ul>Jakość oprogramowania i modele procesu produkcji  oprogramowania <ul><l...
<ul><li>Różne punkty widzenia jakości: </li></ul>Jakość oprogramowania i modele procesu produkcji  oprogramowania - wewnęt...
<ul><li>Schematy monitorowania jakościowego – CUPRIMDSO: </li></ul>Jakość oprogramowania i modele procesu produkcji  oprog...
<ul><li>Schematy monitorowania jakościowego – FURPS: </li></ul>Jakość oprogramowania i modele procesu produkcji  oprogramo...
<ul><li>Wzajemne zależności parametrów oprogramowania </li></ul>Jakość oprogramowania i modele procesu produkcji  oprogram...
<ul><li>Uproszczone przedstawienie procesu produkcji w modelu kaskadowym </li></ul>Jakość oprogramowania i modele procesu ...
<ul><li>Elementy kompleksowego zarządzania jakością </li></ul>Jakość oprogramowania i modele procesu produkcji  oprogramow...
<ul><li>Wzorce poprawy jakości bazujące na doświadczeniu produkcyjnym: </li></ul>Jakość oprogramowania i modele procesu pr...
Jakość oprogramowania i modele procesu produkcji  oprogramowania <ul><li>Modele życia oprogramowania – model kaskadowy </l...
Faza określania wymagań i  analizy - określane są cele  oraz szczegółowe  wymagania wobec tworzonego systemu Jakość oprogr...
Faza projektowania - powstaje szczegółowy projekt systemu  spełniającego ustalone wcześniej wymagania. Faza projektowania ...
Faza implementacji/kodowania - (oraz testowania modułów) projekt zostaje zaimplementowany w konkretnym środowisku programi...
Faza testowania i integracji  następuje integracja poszczególnych  podsystemów oraz całego oprogramowania  Jakość oprogram...
Faza konserwacji –  oprogramowanie  wykorzystywane jest przez użytkowników a producent dokonuje konserwacji oprogramowania...
Jakość oprogramowania i modele procesu produkcji  oprogramowania <ul><li>Modele życia oprogramowania – model kaskadowy </l...
Faza strategiczna – wykonywana przed formalnym podjęciem decyzji o realizacji przedsięwzięcia. W niej podejmowane są dalsz...
Faza dokumentacji - najdłuższa z faz modelu kaskadowego, w której wytwarzana jest dokumentacja użytkownika, tworzona równo...
Faza instalacji - przekazanie systemu użytkownikowi. Jakość oprogramowania i modele procesu produkcji  oprogramowania <ul>...
ZALETY - ułatwia organizację: planowanie, harmonogramowanie, monitorowanie przedsięwzięcia - zmusza do zdyscyplinowanego p...
Prototyp jest częściowym, fizycznym lub logicznym, wdrożeniem produktu, posiadającym wszystkie zewnętrzne interfejsy Jakoś...
Jakość oprogramowania i modele procesu produkcji  oprogramowania <ul><li>Modele życia oprogramowania – tworzenie prototypó...
<ul><li>ZALETY </li></ul><ul><li>- lepsze poznanie potrzeb i wymagań klienta </li></ul><ul><li>- możliwość szybkiej demons...
Szybkie odrzucanie prototypów - metodę tą stosuje się wówczas, gdy zespół analityczny nie do końca rozumie pewne części sy...
Jakość oprogramowania i modele procesu produkcji  oprogramowania <ul><li>Modele życia oprogramowania – model spiralny </li...
Fazy modelu spiralnego Analiza ryzyka  - rozważanie ogólnych opcji budowy nowej  wersji systemu, biorąc przy tym pod uwagę...
ZALETY - regularne kontakty z klientem - minimalizacja ryzyka porażki - realizacja przyrostowa - z punktu widzenia klienta...
Jakość oprogramowania i modele procesu produkcji  oprogramowania <ul><li>Modele życia  </li></ul><ul><li>oprogramowania – ...
<ul><ul><li>Analiza domen </li></ul></ul><ul><ul><li>- definiowanie wymagań </li></ul></ul><ul><ul><li>- określenie archit...
<ul><li>Osiem kroków w programowaniu obiektowym </li></ul><ul><li>wymodelowanie podstawowego systemu - określeniu wymagań ...
Praktyki stosowane w programowaniu XP - planowanie - metafora systemu - prosty projekt - programowanie parami - test jedno...
Jakość oprogramowania i modele procesu produkcji  oprogramowania <ul><li>Proces CLEANROOM </li></ul>
Jakość oprogramowania i modele procesu produkcji  oprogramowania <ul><li>Proces zapobiegania defektom składa się z czterec...
Jakość oprogramowania i modele procesu produkcji  oprogramowania <ul><li>Proces zapobiegania  </li></ul><ul><li>defektom s...
Jakość oprogramowania i modele procesu produkcji  oprogramowania - Poziom 1 – wstępny - Poziom 2 – Powtarzalny - Poziom 3 ...
Jakość oprogramowania i modele procesu produkcji  oprogramowania Ocena SPR porusza następujące tematy: - pomiary jakości i...
Jakość oprogramowania i modele procesu produkcji  oprogramowania Rezultaty oceny SPR dzieli się na pięć podstawowych kateg...
Jakość oprogramowania i modele procesu produkcji  oprogramowania Pod ocenę brane są trzy aspekty: - podejście do zagadnien...
Jakość oprogramowania i modele procesu produkcji  oprogramowania <ul><li>Ocena Malcolma Baldrige’a </li></ul>Aby ubiegać s...
Jakość oprogramowania i modele procesu produkcji  oprogramowania <ul><li>Model zarządzania jakością </li></ul>
Jakość oprogramowania i modele procesu produkcji  oprogramowania <ul><li>ISO 9000 </li></ul>Elementami wymaganymi do rejes...
- status sprawdzania testów - kontrola elementów nie spełniających wymagań - działania korekcyjne - zadania logistyczne (t...
Jakość oprogramowania i modele procesu produkcji  oprogramowania <ul><li>Autorzy </li></ul>CZADO Tomasz DOBOSZ Piotr Gr. 1...
 
Upcoming SlideShare
Loading in …5
×

Jakość Oprogramowania Oraz Modele Procesu Produkcji Oprogramowania Prezentacja

5,525 views

Published on

  • Be the first to comment

Jakość Oprogramowania Oraz Modele Procesu Produkcji Oprogramowania Prezentacja

  1. 1. Jakość oprogramowania oraz modele procesu produkcji oprogramowania CZADO TOMASZ DOBOSZ PIOTR
  2. 2. <ul><li>Omawiane zagadnienia: </li></ul><ul><li>Jakość, opinie, punkty widzenia </li></ul><ul><li>Jakość oprogramowania </li></ul><ul><li>Zarządzanie jakością </li></ul><ul><li>Model kaskadowy </li></ul><ul><li>Tworzenie prototypów </li></ul><ul><li>Model spiralny </li></ul><ul><li>Model iteracyjny </li></ul><ul><li>Model obiektowy </li></ul><ul><li>Metodologia Cleanroom </li></ul><ul><li>Proces zapobiegania defektom </li></ul><ul><li>Dojrzałość procesu i standard jakości </li></ul>Jakość oprogramowania i modele procesu produkcji oprogramowania
  3. 3. <ul><li>Czym jest jakość oprogramowania? </li></ul>Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>pojęcie jakości jako „zgodności z wymaganiami” czyli dokładność określenia </li></ul><ul><li>wymagań, do których chcemy porównywać końcowy efekt </li></ul><ul><li>pojęcie jakości jako „przydatności do użytku” czyli wymagania klienta </li></ul><ul><li>(przydatność produktu do określonego celu) </li></ul><ul><li>- satysfakcja miarą jakości dla klienta </li></ul>
  4. 4. <ul><li>Różne punkty widzenia jakości: </li></ul>Jakość oprogramowania i modele procesu produkcji oprogramowania - wewnętrzna jakość produktu (małe q) - końcowa jakość produktu, jakość procesu, zadowolenie klienta (duże Q) <ul><li>Sekwencja jakości produktu: </li></ul>potrzeby i oczekiwania klienta -> wymagania i specyfikacje -> zaprojektowany, opracowany i wykonany z wcześniejszymi ustaleniami produkt stale poprawiany jakościowo -> doskonała jakość produktu, dystrybucji serwisu -> zadowolenie klienta
  5. 5. <ul><li>Schematy monitorowania jakościowego – CUPRIMDSO: </li></ul>Jakość oprogramowania i modele procesu produkcji oprogramowania c – capability (funkcjonalność) u – usability (łatwość obsługi) p – performance (wydajność) r - reliability (niezawodność) i – installability (łatwość instalacji) m – maintainability (łatwość zarządzania)
  6. 6. <ul><li>Schematy monitorowania jakościowego – FURPS: </li></ul>Jakość oprogramowania i modele procesu produkcji oprogramowania f – functionality (funkcjonalność) u – usability (łatwość obsługi) r – reliability (niezawodność) p – performance (wydajność) s – service (serwis)
  7. 7. <ul><li>Wzajemne zależności parametrów oprogramowania </li></ul>Jakość oprogramowania i modele procesu produkcji oprogramowania
  8. 8. <ul><li>Uproszczone przedstawienie procesu produkcji w modelu kaskadowym </li></ul>Jakość oprogramowania i modele procesu produkcji oprogramowania W tym modelu każda faza jest pół projektem – klientem jest kolejny tester – programista. Nie będzie on mógł zacząć dalszej części projektu zanim poprzedni nie zostanie ukończony.
  9. 9. <ul><li>Elementy kompleksowego zarządzania jakością </li></ul>Jakość oprogramowania i modele procesu produkcji oprogramowania
  10. 10. <ul><li>Wzorce poprawy jakości bazujące na doświadczeniu produkcyjnym: </li></ul>Jakość oprogramowania i modele procesu produkcji oprogramowania - scharakteryzowanie projektu i środowiska jego działania - określenie celów - wybór odpowiednich procesów - wykonanie procesów - analiza danych - zachowanie doświadczeń w celu przyszłego użycia
  11. 11. Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – model kaskadowy </li></ul>
  12. 12. Faza określania wymagań i analizy - określane są cele oraz szczegółowe wymagania wobec tworzonego systemu Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – model kaskadowy </li></ul>
  13. 13. Faza projektowania - powstaje szczegółowy projekt systemu spełniającego ustalone wcześniej wymagania. Faza projektowania dzieli się na projektowanie pojęciowe oraz implementacyjne. W projektowaniu pojęciowym nie bierze się pod uwagę żadnego języka programowania. Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – model kaskadowy </li></ul>
  14. 14. Faza implementacji/kodowania - (oraz testowania modułów) projekt zostaje zaimplementowany w konkretnym środowisku programistycznym oraz wykonywane są testy poszczególnych modułów Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – model kaskadowy </li></ul>
  15. 15. Faza testowania i integracji następuje integracja poszczególnych podsystemów oraz całego oprogramowania Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – model kaskadowy </li></ul>
  16. 16. Faza konserwacji – oprogramowanie wykorzystywane jest przez użytkowników a producent dokonuje konserwacji oprogramowania - wykonuje modyfikacje polegające na usuwaniu błędów, zmianach i rozszerzaniu funkcji systemu. Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – model kaskadowy </li></ul>
  17. 17. Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – model kaskadowy </li></ul>
  18. 18. Faza strategiczna – wykonywana przed formalnym podjęciem decyzji o realizacji przedsięwzięcia. W niej podejmowane są dalsze decyzje odnośnie kolejnych etapów prac. Wymaga przynajmniej ogólnego określenia wymagań. Faza analizy - budowany jest logiczny model systemu. Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – model kaskadowy </li></ul>
  19. 19. Faza dokumentacji - najdłuższa z faz modelu kaskadowego, w której wytwarzana jest dokumentacja użytkownika, tworzona równolegle z produkcją oprogramowania Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – model kaskadowy </li></ul>
  20. 20. Faza instalacji - przekazanie systemu użytkownikowi. Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – model kaskadowy </li></ul>
  21. 21. ZALETY - ułatwia organizację: planowanie, harmonogramowanie, monitorowanie przedsięwzięcia - zmusza do zdyscyplinowanego podejścia - wymusza kończenie dokumentacji po każdej fazie Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – model kaskadowy </li></ul>WADY - narzucana ścisła kolejność wykonywania prac - występują trudności w sformułowaniu wymagań od samego początku - wysokie koszty błędów popełnionych we wczesnych fazach, - długie przerwy w kontaktach z klientem. - brak weryfikacji i elastyczności - możliwa jest niezgodność z faktycznymi potrzebami klienta - niedopasowanie - realizatorzy kolejnych faz muszą czekać na zakończenie wcześniejszych
  22. 22. Prototyp jest częściowym, fizycznym lub logicznym, wdrożeniem produktu, posiadającym wszystkie zewnętrzne interfejsy Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – tworzenie prototypów </li></ul>
  23. 23. Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – tworzenie prototypów </li></ul>
  24. 24. <ul><li>ZALETY </li></ul><ul><li>- lepsze poznanie potrzeb i wymagań klienta </li></ul><ul><li>- możliwość szybkiej demonstracji pracującej wersji systemu </li></ul><ul><li>możliwość szkoleń zanim zbudowany zostanie pełny </li></ul><ul><li>system </li></ul>Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – tworzenie prototypów </li></ul><ul><li>WADY </li></ul><ul><li>niezadowolenie klienta, który po obejrzeniu działającego </li></ul><ul><li>prototypu musi następnie długo czekać na dostawę </li></ul><ul><li>gotowego systemu </li></ul><ul><li>- (pozorna) koszt budowy prototypu </li></ul>
  25. 25. Szybkie odrzucanie prototypów - metodę tą stosuje się wówczas, gdy zespół analityczny nie do końca rozumie pewne części systemu, lub gdy zespół pracuje nad oprogramowaniem o wysokim współczynniku ryzyka. Ewolucja prototypu - Po ocenie klienta, prototyp nie jest odrzucany, ale jest ulepszany i dopracowywany. Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – tworzenie prototypów </li></ul>
  26. 26. Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – model spiralny </li></ul>
  27. 27. Fazy modelu spiralnego Analiza ryzyka - rozważanie ogólnych opcji budowy nowej wersji systemu, biorąc przy tym pod uwagę ryzyko związane z jego realizacją Konstrukcji - konstruowanie kolejnej wersji systemu w sposób zgodny z modelem kaskadowym Atestowanie - ocena przez klienta, przy pozytywnej ocenia, rozpoczyna się kolejny etap. Planowanie - ustalanie generalnych celów produkcji kolejnej wersji systemu. Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – model spiralny </li></ul>
  28. 28. ZALETY - regularne kontakty z klientem - minimalizacja ryzyka porażki - realizacja przyrostowa - z punktu widzenia klienta - pełna kontrola postępów prac - duże projekty - szybka reakcja na zmiany Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – model spiralny </li></ul>WADY - koszty realizacji większe niż w modelu kaskadowym - trudność w szacowaniu ryzyka - pokusa odkładania realizacji szczegółów na później
  29. 29. Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia </li></ul><ul><li>oprogramowania – iteracyjny </li></ul><ul><li>model procesu produkcji </li></ul>
  30. 30. <ul><ul><li>Analiza domen </li></ul></ul><ul><ul><li>- definiowanie wymagań </li></ul></ul><ul><ul><li>- określenie architektury </li></ul></ul><ul><ul><li>- analiza ryzyka </li></ul></ul><ul><ul><li>- tworzenie prototypu </li></ul></ul><ul><ul><li>- testowanie oprogramowania i towarzyszącego mu </li></ul></ul><ul><ul><li>środowiska </li></ul></ul><ul><ul><li>- integracja z poprzednimi wersjami (sprzed danej iteracji) </li></ul></ul><ul><ul><li>- wypuszczenie iteracji do użytku </li></ul></ul>Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – iteracyjny model procesu produkcji </li></ul>
  31. 31. <ul><li>Osiem kroków w programowaniu obiektowym </li></ul><ul><li>wymodelowanie podstawowego systemu - określeniu wymagań danego klienta </li></ul><ul><li>uzyskanie proponowanych klas - wybieranie odpowiednich klas oraz metod </li></ul><ul><li>ograniczenie podstawowego modelu - powstanie tzw. modelu inkarnacyjnego lub </li></ul><ul><li>wcieleniowego </li></ul><ul><li>- opracowanie dodatkowych klas - dobranie dodatkowych klas i metod </li></ul><ul><li>synteza klas - budowa hierarchii klas </li></ul><ul><li>definiowanie interfejsów - tworzenie definicji klas, deklaracji typów obiektów </li></ul><ul><li>oraz interfejsy </li></ul><ul><li>- dokończenie projektu </li></ul><ul><li>wdrożenie rozwiązania - kodowanie implementacji klas i testowania powstałej </li></ul><ul><li>aplikacji. </li></ul>Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – obiektowo zorientowany proces produkcji </li></ul>
  32. 32. Praktyki stosowane w programowaniu XP - planowanie - metafora systemu - prosty projekt - programowanie parami - test jednostki i test akceptacji - refaktoryzacja - uwspólnienie kodu - ciągła integracja - przedstawiciel klienta - 40-godzinny tydzień pracy - „Małe” wersje - standard kodowania Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Modele życia oprogramowania – programowanie ekstremalne XP </li></ul>
  33. 33. Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Proces CLEANROOM </li></ul>
  34. 34. Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Proces zapobiegania defektom składa się z czterech elementów: </li></ul>- Spotkania analityczne - Zespół operacyjny - Spotkania podczas rozpoczynania etapu produkcji - Śledzenie czynności i zbieranie danych
  35. 35. Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Proces zapobiegania </li></ul><ul><li>defektom składa się z </li></ul><ul><li>czterech elementów: </li></ul>
  36. 36. Jakość oprogramowania i modele procesu produkcji oprogramowania - Poziom 1 – wstępny - Poziom 2 – Powtarzalny - Poziom 3 – Zdefiniowany - Poziom 4 – Zarządzany - Poziom 5 – Optymalizujący <ul><li>Model dojrzałości procesu SEI </li></ul>
  37. 37. Jakość oprogramowania i modele procesu produkcji oprogramowania Ocena SPR porusza następujące tematy: - pomiary jakości i produktywności - doświadczenia programistów w usuwaniu defektów przed testami - doświadczenia programistów w usuwaniu defektów podczas testów - zamierzone cele jakości i niezawodności oprogramowania - usuwanie defektów na poziomie projektu przed testami - usuwanie defektów na poziomie projektu podczas testów - usuwanie defektów po wypuszczeniu oprogramowania <ul><li>Ocena Instytutu Badań Produktywności Oprogramowania </li></ul>
  38. 38. Jakość oprogramowania i modele procesu produkcji oprogramowania Rezultaty oceny SPR dzieli się na pięć podstawowych kategorii - oceniany projekt lub produkt - użyte technologie - użyte procesy - ergonomia i środowisko pracy zespołu - personel i szkolenie kadry zarządzającej i pozostałych pracowników <ul><li>Ocena Instytutu Badań Produktywności Oprogramowania </li></ul>
  39. 39. Jakość oprogramowania i modele procesu produkcji oprogramowania Pod ocenę brane są trzy aspekty: - podejście do zagadnienia – brane jest pod uwagę wykorzystanie przez firmę metod do osiągnięcia określonych uprzednio celów - rozwój – określa stopień wprowadzenia postanowień zawartych w podejściu do zagadnienia - wyniki – końcowy rezultat oraz stopień zrealizowania projektu <ul><li>Ocena Malcolma Baldrige’a </li></ul>
  40. 40. Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Ocena Malcolma Baldrige’a </li></ul>Aby ubiegać się o nagrodę Malcolma Baldrige’a firma musi spełnić pięć postulatów: - podnieść poziom oczekiwań jakościowych i standardów jakości (terytorium Stanów Zjednoczonych) - ułatwić komunikację i dzielenie się doświadczeniami pomiędzy organizacjami i wewnątrz organizacji kluczowymi wymaganiami jakościowymi - zapewnić działające narzędzia planowania, szkoleń itd. - określić warunki do przyznania nagrody - dokładnie ocenić aplikujące instytucje
  41. 41. Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Model zarządzania jakością </li></ul>
  42. 42. Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>ISO 9000 </li></ul>Elementami wymaganymi do rejestracji ISO 9000 są: - odpowiedzialność zarządzania - system jakości - sprawdzanie kontraktów - kontrola wykonania - kontrola dokumentów - sposób zakupu - produkt dostarczony kupującemu - identyfikacja i możliwość śledzenia produktu - kontrola procesu - sprawdzanie i testy - narzędzia sprawdzające i testujące
  43. 43. - status sprawdzania testów - kontrola elementów nie spełniających wymagań - działania korekcyjne - zadania logistyczne (transport, magazynowanie, pakowanie, dostawa) - historia jakości - wewnętrzne sprawdzanie jakości - szkolenie - serwis - techniki statystyczne Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>ISO 9000 </li></ul>
  44. 44. Jakość oprogramowania i modele procesu produkcji oprogramowania <ul><li>Autorzy </li></ul>CZADO Tomasz DOBOSZ Piotr Gr. 1, Rok 3 Wydział Inżynierii Mechanicznej i Informatyki Kierunek: Informatyka

×