©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 1 Ulepszanie procesu l Jak ulepszyć proces tworzenia oprogramowanie, aby w jego trakcie.

Slides:



Advertisements
Podobne prezentacje
Temat 2: Podstawy programowania Algorytmy – 1 z 2 _________________________________________________________________________________________________________________.
Advertisements

Proces doboru próby. Badana populacja – (zbiorowość generalna, populacja generalna) ogół rzeczywistych jednostek, o których chcemy uzyskać informacje.
©Ian Sommerville 2000 Inżynieria oprogramowania, Rozdział 26Slide 1 Systemy odziedziczone l Omówienie systemów odziedziczonych.
©Ian Sommerville 2000 Inżynieria oprogramowania, Rozdział 22Slide 1 Zarządzanie personelem l Omówienie znaczenia personelu w procesie inżynierii oprogramowania.
Zarządzanie Projektami w Mieście Poznaniu. Wstęp i podstawowe założenia Cykl życia projektu – zarys metodyki zarządzania projektami Dalsze działania wdrożeniowe.
OBOWIĄZKI INFORMACYJNE BENEFICJENTA Zintegrowane Inwestycje Terytorialne Aglomeracji Wałbrzyskiej.
Tworzenie odwołania zewnętrznego (łącza) do zakresu komórek w innym skoroszycie Możliwości efektywnego stosowania odwołań zewnętrznych Odwołania zewnętrzne.
Podstawy Przedsiębiorczości Wykład 4h + Ćwiczenia 4h Rafał Paśko PWSW Przemyśl.
GRUPY I ZESPOŁY © dr E.Kuczmera-Ludwiczyńska, mgr D.Ludwiczyński.
ŚRODOWISKO PONAD WSZYSTKO Mała bateria-duży problem.. Co roku w Polsce sprzedaje się około 300 mln baterii. Wyrzucanie ich do kosza negatywnie wpływa.
InMoST, Analiza architektury metodą ATAM Jerzy Nawrocki
Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego Benchmarking – narzędzie efektywnej kontroli zarządczej.
Jak rozwijać PS po zakończeniu finansowania ze środków projektowych? OWES subregion centralno-zachodni Tadeusz Durczok
OPERATORZY LOGISTYCZNI 3 PL I 4PL NA TLE RYNKU TSL Prof. zw.dr hab. Włodzimierz Rydzkowski Uniwersytet Gdańsk, Katedra Polityki Transportowej.
Umowy Partnerskie w projektach zbiór najważniejszych składników Uwaga! Poniżej znajdują się jedynie praktyczne wskazówki dotyczące tworzenia umów. Dokładne.
Olsztyn, 27 czerwca 2012 Propozycja zmian kryteriów merytorycznych dla Osi I Przedsiębiorczość RPO WiM w ramach Poddziałania
Ocena poziomu dojrzałości wielkopolskich przedsiębiorstw w odniesieniu do modelu CMMI
Metodologia tworzenia strategii wg Mirosława Gębskiego Euroinvestment.
Ćwiczenia Zarządzanie Ryzykiem Renata Karkowska, ćwiczenia „Zarządzanie ryzykiem” 1.
Połączenie towarzystw budownictwa społecznego Opracowano w BNW UMP 2008.
Instytucjonalne uwarunkowania realizacji koncepcji CSR w obszarze merchandisingu – zarys problemu Dr Jarosław Plichta Katedra Handlu i Instytucji Rynkowych.
AS-QUAL Szkolenia Doradztwo Audity Usprawnienia zarządzania organizacjami (normy zarzadzania) Grażyna.
Projekt Regulaminu Działania Komitetu Monitorującego Regionalny Program Operacyjny Województwa Pomorskiego na lata
EWALUACJA PROJEKTU WSPÓŁFINANSOWANEGO ZE ŚRODKÓW UNII EUROPEJSKIE J „Wyrównywanie dysproporcji w dostępie do przedszkoli dzieci z terenów wiejskich, w.
“In God we trust, all others bring data.” W. Edwards Deming.
Bezpieczeństwo i zdrowie w pracy dotyczy każdego. Jest dobre dla ciebie. Dobre dla firmy. Partnerstwo dla prewencji Co badanie ESENER może nam powiedzieć.
Motywy i bariery ekspansji zagranicznej polskich przedsiębiorstw Rafał Tuziak, Instytut Rynków i Konkurencji SGH.
KOMUNIKOWANIE W PROCESIE WSPIERANIA ROZWOJU SZKOŁY Jarosław Kordziński NA.
EWALUACJA JAKO ISTOTNY ELEMENT PROJEKTÓW SYSTEMOWYCH Sonia Rzeczkowska.
OBSŁUGA KARTY DILO. Karta diagnostyki i leczenia onkologicznego zawiera: - oznaczenie pacjenta, pozwalające na ustalenie jego tożsamości, - oznaczenie.
Innowacje i konkurencyjność łańcuchów dostaw we współczesnej gospodarce Dr hab. Grażyna Śmigielska, Prof. UEK.
… przemy ś lenia pedagogiczne. „Najważniejszym okresem w życiu nie są lata studiowania na wyższej uczelni, ale te najwcześniejsze, czyli okres od narodzenia.
Wiem czego chcę!!!.  Każdy z Nas staje przed różnymi wyborami. Jednym z najważniejszych jest wybór ścieżki kształcenia.  Twoja Kariera jest w twoich.
OPTYMALNY CEL I PODSTAWY ROZWOJU SZKOŁY. PRZEDE WSZYSTKIM DZISIEJSZA SZKOŁA POWINNA PRZYGOTOWYWAĆ DO ŻYCIA W DRUGIEJ POŁOWIE XXI WIEKU.
W YBRANE ZAGADNIENIA POSTĘPOWANIA CYWILNEGO W SPRAWACH O OCHRONĘ WŁASNOŚCI PRZEMYSŁOWEJ Prof. dr hab. Feliks Zedler Konferencja „Rynek leków a ochrona.
Magdalena Guillet i Irena Wielowiejska – Comi 05 listopada 2008 r.
Zarządzanie zmianą Sesja 4 Skuteczne współdziałanie w ramach organizacji.
Michał Nowiński 1D.  Czym jest komunikacja? Czym jest komunikacja?  Wybrane rodzaje komunikacji Wybrane rodzaje komunikacji  Komunikacja człowieka.
Sesja 6 Planowanie wdrożenia: Mapa Procesu Zmian
Zarządzanie systemami dystrybucji
W KRAINIE TRAPEZÓW. W "Szkole Myślenia" stawiamy na umiejętność rozumowania, zadawania pytań badawczych, rozwiązywania problemów oraz wykorzystania wiedzy.
Opodatkowanie spółek Podziały Spółek. Podziały spółek Rodzaje podziałów wg KSH Przewidziane są cztery sposoby podziału: 1) podział przez przejęcie, który.
RAPORT Z BADAŃ opartych na analizie wyników testów kompetencyjnych przeprowadzonych wśród uczestników szkoleń w związku z realizacją.
KOSZTY W UJĘCIU ZARZĄDCZYM. POJĘCIE KOSZTU Koszt stanowi wyrażone w pieniądzu celowe zużycie majątku trwałego i obrotowego, usług obcych, nakładów pracy.
AKCJA LATO 2016 Gdański Inkubator Przedsiębiorczości STARTER.
„Gdański model aktywizacji społeczności lokalnych” Gdańsk, 27 kwietnia 2009.
Ocena poziomu kompetencji i umiejętności administracji publicznej w zakresie zarządzania rozwojem i kreowania innowacji Urząd Marszałkowski Województwa.
LIDER PROJEKTUPARTNERZY PROJEKTU Towarzystwo Wiedzy Powszechnej Oddział Regionalny w Płocku Stowarzyszenie Academia Economica Projekt współfinansowany.
Finansowanie wybranych działań w parkach narodowych przy udziale środków funduszu leśnego - zakres merytoryczny Warszawa, 06 kwietnia 2016 r.
Skuteczności i koszty windykacji polubownej Wyniki badań zrealizowanych w ramach grantu Narodowego Centrum Nauki „Ocena poziomu rzeczywistej.
Andrzej Feterowski Dyrektor Wydziału Informatyki Urząd Miasta Szczecin BEZPIECZNI RAZEM, czyli zachodniopomorski portal o bezpieczeństwie.
Wieloaspektowa analiza czasowo- kosztowa projektów ze szczególnym uwzględnieniem kryterium jakości rozwiązań projektowych AUTOR: ANNA MARCINKOWSKA PROMOTOR:
Dobre praktyki oraz najczęstsze błędy popełniane przez przedsiębiorców r. Piotr Nędzewicz.
Optymalna wielkość produkcji przedsiębiorstwa działającego w doskonałej konkurencji (analiza krótkookresowa) Przypomnijmy założenia modelu doskonałej.
Podsumowanie wdrażania części Osi „Przedsiębiorczość” RPO Warmia i Mazury 2007–2013 w 2008 roku.
Definiowanie i planowanie zadań typu P 1.  Planowanie zadań typu P  Zadania typu P to zadania unikalne służące zwykle dokonaniu jednorazowej, konkretnej.
INSTYTUCJE GOSPODRKI RYNKOWEJ Jerzy Wilkin i Dominika Milczarek Wykład 1 Wiedza o instytucjach w nauczaniu ekonomii.
Zasada równości szans kobiet i mężczyzn (w oparciu o standard minimum) Olsztyn, 6 czerwca 2016r.
Wykonał: Mgr Inż. Krzysztof Harwacki. Value Mapping for Lean management Sytuacja stanowi mały, prosty przykład zastosowania mapowania strumienia wartości.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 23Slide 1 Szacowanie kosztu oprogramowania l Przedstawienie metod szacowania kosztu i pracy.
1 Definiowanie i planowanie zadań budżetowych typu B.
Renata Maciaszczyk Kamila Kutarba. Teoria gier a ekonomia: problem duopolu  Dupol- stan w którym dwaj producenci kontrolują łącznie cały rynek jakiegoś.
Schematy blokowe.
Nazwa firmy Plan biznesowy.
Zgłoszenie do konkursu
Zgłoszenie do konkursu
Prezentacja planu biznesowego
Zgłoszenie w ramach kategorii Najlepszy Team Leader Contact Center
Nazwa firmy Biznesplan.
Zgłoszenia do nagrody specjalnej Najlepszy praCCodawca
Zapis prezentacji:

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 1 Ulepszanie procesu l Jak ulepszyć proces tworzenia oprogramowanie, aby w jego trakcie powstało doskonalsze oprogramowanie ?

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 2 l Poznać podstawowe zasady ulepszania procesu tworzenia oprogramowania. l Dowiedzieć, w jaki sposób czynniki procesu tworzenia oprogramowania wpływają na jakość oprogramowania i produktywność twórców oprogramowania. l Zrozumieć model CMM (Process Capability Maturity Model- model dojrzewania zdolności procesu), który można wykorzystać do oceny jakości procesu tworzenia oprogramowania w wielkich firmach. l Dowiedzieć, dlaczego ulepszanie, którego podstawą jest CMM, nie dotyczy wszystkich procesów tworzenia oprogramowania. Cele

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 3 l Jakość procesu i produktu l Analiza i modelowanie procesu l Miernictwo procesu l CMM l Klasyfikacja procesów Zawartość

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 4 l W ostatnich kilku latach w społeczności inżynierów oprogramowania pojawiło się ogromne zainteresowanie ulepszaniem procesu. l Ulepszanie procesu polega na rozpoznaniu istniejących procesów i zmodyfikowanie ich tak, aby poprawić jakość produktu lub zmniejszyć koszt i czas tworzenia. l W większości publikacji na temat ulepszania procesu skoncentrowano się na zwiększeniu jakości produktu, a w szczególności na zmniejszeniu liczby defektów w dostarczonym oprogramowaniu. l Dalszym zasadniczym celem ulepszeń, stanie się redukcja kosztu i czasu. Zainteresowanie ulepszaniem procesu

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 5 Właściwości procesu WłaściwośćOpis Procesu ZrozumiałośćDo jakiego stopnia proces jest jawnie zdefiniowany i jak łatwo jest zrozumieć jego definicję? JawnośćCzy czynności procesu kończą się jasnymi rezultatami, tak że postęp procesu jest jawny na zewnątrz? Podatność naDo jakiego stopnia czynności procesu można wspomagać narzędziami CASE? wspomaganie AkceptowalnośćCzy inżynierowie odpowiedzialni za tworzenie produktu programowego akceptują proces i czy są w stanie go używać? NiezawodnośćCzy proces zaprojektowano w taki sposób, aby unikać błędów w procesie albo zauważać je, zanim spowodują błędy w produkcie? SolidnośćCzy proces może być kontynuowany mimo niespodziewanych komplikacji? Zdatność doCzy proces rozwija się tak, aby odzwierciedlić zmieniające się wymagania pielęgnacjifirmowe lub zidentyfikowane ulepszenia procesu? BłyskawicznośćJak szybko można ukończyć proces dostarczenia systemu na podstawie zadanej specyfikacji?

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 6 Proces ulepszania procesu Model procesu Model procesu Dostosuj Zmiany procesu Dostosuj Zmiany procesu Wyszkól inżynierów Wyszkól inżynierów Zidentyfikuj ulepszenia Zidentyfikuj ulepszenia Zanalizuj proces Zanalizuj proces Wprowadź zmiany procesu Wprowadź zmiany procesu Plan zmian procesu Plan zmian procesu Plan szkoleń Plan szkoleń Informacje zwrotne o ulepszeniach Informacje zwrotne o ulepszeniach Poprawiony model procesu Poprawiony model procesu

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 7 l Analiza procesu l Identyfikacja ulepszeń l Wprowadzenie zmiany procesu l Szkolenia w związku ze zmianami procesu l Dostosowanie zmian Podstawowe etapy procesu ulepszania

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 8 Jakość procesu i produktu l Podstawą ulepszania procesu jest złożenie, że krytycznym czynnikiem wpływającym na jakość produktu jest jakość procesu tworzenia produktu. l Pomysł ulepszenia procesu pojawił się w pracach amerykańskiego inżyniera W. E. Deminga, który po drugiej wojnie światowej pracował w japońskim przemyśle nad poprawą jakości. Japoński przemysł na wiele lat zaangażował się w proces ustawicznego ulepszania (w języku japońskim nosi ono nazwę kaizen). Przyczyniło się to znacznie do ogólnie wysokiej jakości towarów produkowanych w Japonii.

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 9 Główne czynniki wpływające na jakość produktów programowych Jakość produktu Jakość produktu Technologia tworzenia Koszt, czas i harmonogram Jakość procesu Jakość personelu

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 10 Małe przedsięwzięcia l W wypadku małych przedsięwzięć, w których zespół składa się tylko z kilku członków, jakość zespołu wytwarzającego jest znacznie ważniejsza niż zastosowany proces tworzenia. l Jeśli poziom umiejętności i doświadczenia członków zespołu jest bardzo wysoki, to jakość produktu prawdopodobnie też będzie wysoka. l Jeśli członkowie zespołu są nieumiejętni i niedoświadczeni, to dobry proces może ograniczyć szkody, ale sam nie doprowadzi do zbudowania oprogramowania wysokiej jakości.

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 11 Analiza i modelowanie procesu l Analizowanie i modelowanie procesu polega na badaniu istniejących procesów i opracowywaniu ich abstrakcyjnych modeli, w których rejestruje się ich główne właściwości. l Analiza procesu polega na badaniu istniejących procesów w celu zrozumienia związków między różnymi jego częściami. l Początkowy etap analizy procesu jest nieuchronnie jakościowy- analityk po prostu stara się odkryć główne elementy modelu. Późniejsze fazy są bardziej ilościowe. l Proces podlega bardziej szczegółowej analizie za pomocą różnych miar, które gromadzi się automatycznie lub manualnie. Po zakończeniu analizy można ten proces zapisać w postaci modelu procesu.

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 12 l Kwestionariusze i wywiady. Inżynierowie pracujący w przedsięwzięciu są pytani o to, co się obecnie dzieje. Odpowiedzi na formalne kwestionariusze są dopracowywane w trakcie indywidualnych rozmów z osobami biorącymi udział w procesie. l Studia etnograficzne. Mogą posłużyć do zrozumienia natury budowania oprogramowania jako działalności człowieka. Taka analiza umożliwia odkrycie subtelności i złożoności, których nie ujawniono by za pomocą innych metod. Metody analizy procesów

Element modeluOpis procesu Czynność (przedstawianaCzynność ma jasno zdefiniowany cel oraz warunki wejściowy i wyjściowy. w postaci zaokrąglonegoPrzykładami czynności są przygotowanie zbioru danych testowych do testowania prostokąta nie rzucającego modułu, korekta dokumentu itd.. Zwykle czynność jest niepodzielna, tzn. jest zadaniem cienia)jednej osoby lub grupy. Nie dzieli się jej na czynności podrzędne. Proces (przedstawianyProces to zbiór czynności mający pewna spójność. Cel procesu jest ogólnie w postaci zaokrąglonegouzgodniony w ramach firmy. Przykładami procesów są analiza wymagań, prostokątaprojektowanie architektoniczne, planowanie testowania itd. rzucającego cień) Wynik (przedstawiony w Wynik jest namacalnym rezultatem czynności przewidzianym w planie postaci prostokątaprzedsięwzięcia. rzucającego cień) Warunek (przedstawiany wWarunek jest albo warunkiem początkowym. Który musi być spełniony przed postaci równoległoboku)rozpoczęciem procesu lub czynności, albo warunkiem końcowym, który jest spełniony po ukończeniu procesu lub czynności. Rola (przedstawiana w Rola jest ustalonym zakresem odpowiedzialności. Przykładami ról są menedżer okręgu rzucającego cień)konfiguracji, inżynier testów, projektant oprogramowania itp. Jedna osoba może odgrywać kilka ról, a jedną rolę można nadać kilku osobom. Wyjątek (nie występuje wWyjątek to opis sposobu modyfikacji procesu, gdy wystąpi jakieś przewidziane lub pokazanych przykładach, alenieprzewidziane zdarzenie. Wyjątki są zwykle niezdefiniowane. Często sposób można go przedstawić w postaciobsługi wyjątku zależy jedynie od talentu menedżerów przedsięwzięcia i inżynierów. prostokąta z podwójną krawędzią) Komunikacja (przedstawianaWymiana informacji między osobami lub między osobą i wspomagającym systemem w postaci strzałki)komputerowym. Komunikacja może być formalna lub nieformalna. K.formalna to np. akceptacja wyniku przez menedżera. K. nieformalna to m.in. Wymiana poczty elektronicznej w celu wyjaśnienia niejednoznaczności w dokumencie. Elementy modelu procesu

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 14 Proces testowania modelu Inżynier testów Inżynier testów Specyfikacja modułu Specyfikacja modułu Przetestuj moduł Przetestuj moduł Rola Podpisany rejestr testów Podpisany rejestr testów Dane testowe modułu Dane testowe modułu Model kompiluje się bez błędów składniowych Modułowi zadano wszystkie zdefiniowane testy Warunek początkowy Warunek końcowy Dane wyjściowe Odpowiada za Dane wejściowe Proces

Czynności wchodzące w skład testowania modułu ©Ian Sommerville 1995 Software Engineering, 5th edition. Chapter 31. Slide ## Zadaj modułowi zaakceptowane testy Zadaj modułowi zaakceptowane testy Zgłoś raport do akceptacji Zgłoś raport do akceptacji Umieść wyniki testowania w systemie zarządzania konfiguracjami Umieść wyniki testowania w systemie zarządzania konfiguracjami Napisz raport o testowaniu modułu ze szczegółami wykrytych problemów Napisz raport o testowaniu modułu ze szczegółami wykrytych problemów Zarejestruj wyniki testów do testowania regresywnego Zarejestruj wyniki testów do testowania regresywnego Zintegruj moduł z uprzężą testową Zintegruj moduł z uprzężą testową Skompiluj uprząż testową Skompiluj uprząż testową Opracuj uprząż testową dla modułu Opracuj uprząż testową dla modułu Przeczytaj i zrozum interfejs modułu Przeczytaj i zrozum interfejs modułu Przeczytaj specyfikację modułu Przeczytaj specyfikację modułu Pobierz moduł z systemu zarządzania konfiguracjami Pobierz moduł z systemu zarządzania konfiguracjami Opracuj dane testowe zgodne ze specyfikacja Opracuj dane testowe zgodne ze specyfikacja Zgłoś dane testowe do przeglądu Zgłoś dane testowe do przeglądu Wykonaj przegląd danych testowych Wykonaj przegląd danych testowych PRZYGOTOWANIE DANYCH TESTOWYCH PRZYGOTOWANIE UPRZĘŻY TESTOWEJ DLA MODUŁU WYKONANIE TESTÓW PRZEKAZANIE RAPORTU Z TESTOWANIA

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 16 Wyjątki w procesie l Procesy budowania oprogramowania to procesy złożone. l Chociaż firma może mieć zdefiniowany model procesu, zawsze jednak jest on reprezentacją idealnej sytuacji, w której zespół wytwórczy nie napotyka żadnych niespodziewanych komplikacji. l W rzeczywistości nieoczekiwane kłopoty są chlebem powszednim menedżerów przedsięwzięć. l „Idealny” model procesu musi być dynamicznie aktualizowany w miarę znajdowania rozwiązań tych trudności.

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 17 l Kilka ważnych osób zapada na chorobę w tym samym czasie tuż przed krytycznym przeglądem przedsięwzięcia. l Następuje awaria procesora komunikacyjnego, co oznacza, że poczta elektroniczna nie działa przez kilka dni. l Następuje reorganizacja przedsiębiorstwa, co oznacza, że menedżerowie musza spędzić dużo czasu przy pracy nad kwestiami organizacyjnymi zamiast nad zarządzaniem przedsięwzięciem l Zgłoszono niespodziewaną propozycję nowego przedsięwzięcia. Siła robocza musi być przekazana z obecnego przedsięwzięcia do zadań związanych z nowa propozycją. Przykładowe rodzaje wyjątków

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 18 l Pomiar procesu daje ilościowe dane o procesie tworzenia oprogramowania. l Można na przykład monitorować czas i pracę niezbędna do testowania. l Skuteczne ulepszenie procesu testowania powinno umożliwić redukcje pracy, czasu lub obu tych wartości. l Miary procesowe nie mogą jednak posłużyć do oceny, czy poprawiono jakość produktu. Miernictwo procesu

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 19 l Czas spędzony nad ukończeniem konkretnego procesu l Zasoby niezbędne w konkretnym procesie l Liczba wystąpień konkretnego zdarzenia Klasy miar procesowych

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 20 l Cele. Co firma próbuje osiągnąć? l Pytania. Powstają z uszczegółowienia celów przez identyfikację konkretnych obszarów niejednoznaczności związanej z celami. Cel jest zwykle związany z pytaniami, na które trzeba znaleźć odpowiedź. Paradygmat GQM (Goal Question Metric - cel pytanie miara)

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 21 SEI CMM l Software Engineering Institute (SEI) w Carnegie-Mellon Uniwersity jest instytutem utworzony przez Departament Obrony Stanów Zjednoczonych. Jego misją jest przekazywanie technologii oprogramowania. l Wynikiem prac w ramach tej misji nad oceną zdolności jest CMM (Capability Maturity Model- model dojrzewania zdolności). Ma on ogromny wkład w przekonanie społeczności inżynierów oprogramowania do poważnego traktowania ulepszania procesu.

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 22 Model dojrzewania zdolności SEI Poziom 1 Początkowy Poziom 1 Początkowy Poziom 2 Powtarzalny Poziom 2 Powtarzalny Poziom 3 Zdefiniowany Poziom 3 Zdefiniowany Poziom 4 Zarządzany Poziom 4 Zarządzany Poziom 5 Optymalizowany Poziom 5 Optymalizowany

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 23 l Poziom początkowy. Firma na tym poziomie nie ma skutecznych procedur zarządzania ani planów przedsięwzięcia. Jeśli nawet istnieją jakieś formalne procedury do sterowania przedsiębiorstwem, to nie są one wykorzystywane. l Poziom powtarzalny. Firma na tym poziomie wdrożyła już formalne zarządzanie, zapewnianie jakości i procedury zarządzania konfiguracjami. Poziom nosi nazwę powtarzalnego, ponieważ firma może z powodzeniem powtarzać przedsięwzięcia tego samego rodzaju. l Poziom zdefiniowany. Firma na tym poziomie zdefiniowała już swój proces, ma więc podstawy do ilościowego ulepszania procesu. l Poziom zarządzany. Firma na tym poziomie zdefiniowała już swój proces i formalny program zbierania danych ilościowych. l Poziom optymalizowany. Firma na tym poziomie jest zaangażowana w ustawiczne ulepszanie procesu. Pięć poziomów modelu

Główne obszary procesu Programowe zarządzanie konfiguracjami Programowe zapewnianie jakości Programowe zarządzanie podwykonawcami Programowe śledzenie i przewidywanie przedsięwzięcia Zarządzanie wymaganiami Programowe zarządzanie konfiguracjami Programowe zapewnianie jakości Programowe zarządzanie podwykonawcami Programowe śledzenie i przewidywanie przedsięwzięcia Zarządzanie wymaganiami Powtarzalny Przeglądy partnerskie Koordynacja międzygrupowa Oprogramowana inżynieria produktów Zintegrowane zarządzanie oprogramowaniem Program szkoleń Definicja procesu przedsiębiorstwa Koncentracja firmy na procesie Przeglądy partnerskie Koordynacja międzygrupowa Oprogramowana inżynieria produktów Zintegrowane zarządzanie oprogramowaniem Program szkoleń Definicja procesu przedsiębiorstwa Koncentracja firmy na procesie Zdefiniowany Zarządzanie zmianami procesu Zarządzanie zmianami technologii Zapobieganie defektom Zarządzanie zmianami procesu Zarządzanie zmianami technologii Zapobieganie defektom Zarządzanie jakością oprogramowania Ilościowe zarządzanie procesem Zarządzany Optymalizowany Początkowy

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 25 l Przy omawianiu zdolności procesu w modelu CMM często zapomina się, że celem opracowania tego modelu było to, aby Departament Obrony Stanów Zjednoczonych mógł oceniać zdolność zleceniobiorców pragnących tworzyć dla niego oprogramowanie. l Uważa się, że firmy z wyższego poziomu mają przewagę w zdobywaniu kontraktów. l W przyszłości Departament Obrony będzie prawdopodobnie wymagać, aby firmy osiągnęły pewien poziom dojrzałości (przypuszczalnie poziom 3), zanim zaczną starać się o zlecenia na budowę oprogramowania. Ocena zdolności

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 26 Proces oceny zdolności Wybierz przedsięwzięcia do oceny Wybierz przedsięwzięcia do oceny Rozdaj kwestionariusze Rozdaj kwestionariusze Zanalizuj odpowiedzi Zanalizuj odpowiedzi Wyjaśnij odpowiedzi Wyjaśnij odpowiedzi Rozpoznaj kwestie do dyskusji Rozpoznaj kwestie do dyskusji Przeprowadź wywiady z menedżerami przedsięwzięć Przeprowadź wywiady z menedżerami przedsięwzięć Przeprowadź wywiady z menedżerami Przeprowadź wywiady z menedżerami Spotkaj się z menedżerami i inżynierami Spotkaj się z menedżerami i inżynierami Przedstaw ocenę Napisz raport Przeprowadź wywiady z inżynierami

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 27 l Klasyfikacja dojrzałości procesu zaproponowana w modelu SEI jest odpowiednia w wypadku wielkich i długotrwałych przedsięwzięć informatycznych realizowanych przez ogromne firmy. l Istnieje wiele innych rodzajów przedsięwzięć i przedsiębiorstw informatycznych, w których bezpośrednie zastosowanie tego punktu widzenia na dojrzałość procesu jest niemożliwe. Klasyfikacja procesów

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 28 Rodzaje procesów l Procesy nieformalne. Są to procesy, w których nie ma ściśle zdefiniowanego modelu procesu. Zespół wytwórczy sam wybiera proces. l Procesy zarządzane. Są to procesy, które obejmują zdefiniowany model procesu. Używa się go do kierowania procesem tworzenia. l Procesy metodyczne. Są to procesy, w których używa się pewnej metody lub metod tworzenia (takich jak np. systematyczne metody projektowania obiektowego). l Procesy ulepszane. Są to procesy, które w naturalny sposób obejmują ulepszanie jako cel.

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 29 Zastosowania procesów Proces zarządzany Proces zarządzany Proces metodyczny Proces metodyczny Dobrze rozpoznane dziedziny Zastosowań Systemy restrukturyzowane Dobrze rozpoznane dziedziny Zastosowań Systemy restrukturyzowane Wielkie systemy Produkty o długim czasie życia Wielkie systemy Produkty o długim czasie życia Prototypy Systemy o krótkim czasie życia Systemy gospodarcze Małe i średnie systemy Prototypy Systemy o krótkim czasie życia Systemy gospodarcze Małe i średnie systemy Proces nieformalny Proces nieformalny

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 30 Wspomaganie narzędziowe procesów Proces nieformalny Proces nieformalny Proces metodyczny Proces metodyczny Proces zarządzany Proces zarządzany Proces ulepszany Proces ulepszany Narzędzia Narzędzia Narzędzia Warsztaty Narzędzia uniwersalne do zarządzania do zarządzania analityczne specjalistyczne konfiguracjami przedsięwzięciami i projektowe

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 31 l Ulepszanie procesu obejmuje analizę, standaryzację, pomiary i zmianę procesu. Jeśli ulepszenie procesu ma być skuteczne, to nie można pominąć szkoleń. l Modele procesu to opisy czynności, podprocesów, ról, wyjątków, komunikacji, wyników i innych procesów. l Pomiarów należy używać do poszukiwania odpowiedzi na konkretne pytania na temat używanego procesu tworzenia oprogramowania. Podstawą tych pytań powinny być cele związane z ulepszaniem firmy. l Istnieją trzy typy miar procesów: miary czasowe, miary wykorzystania zasobów i miary zdarzeniowe. Główne tezy

©Ian Sommerville 2000Inżynieria oprogramowania, Rozdział 25 Slide 32 l W modelu CMM podzielono procesy tworzenia oprogramowania na początkowe, powtarzalne, zdefiniowane, zarządzane i optymalizowane. W modelu wskazano główne procesy, których należy przestrzegać na każdym z tych poziomów. l Model CMM nadaje się dla wielkich zespołów inżynierów budujących wielkie systemy. Nie należy go stosować bez adaptacji do lokalnych warunków. l Procesy można podzielić na nieformalne, zarządzane, metodyczne i ulepszane. Tej klasyfikacji można użyć do rozpoznania wspomagania narzędziowego dla procesu. Główne tezy