jarosław Świerczek

21
Praktyczne aspekty stosowania metody punktów funkcyjnych COSMIC Jarosław Świerczek

Upload: herman-munoz

Post on 02-Jan-2016

67 views

Category:

Documents


1 download

DESCRIPTION

Praktyczne aspekty stosowania metody punktów funkcyjnych COSMIC. Jarosław Świerczek. Punkty funkcyjne. Punkt funkcyjny to metryka złożoności oprogramowania wyznaczana w oparciu o określające to oprogramowanie wymagania. - PowerPoint PPT Presentation

TRANSCRIPT

Praktyczne aspekty stosowania metody punktów funkcyjnych

COSMIC

Jarosław Świerczek

Punkty funkcyjne

• Punkt funkcyjny to metryka złożoności oprogramowania wyznaczana w oparciu o określające to oprogramowanie wymagania.

• Liczba punktów funkcyjnych, wraz z benchmarkami, może być wykorzystana jako podstawa do wymiarowania projektów IT.

• Praktycznie zastosowanie metod punktów funkcyjnych wymaga integracji metody z procesami zarządczym i wytwórczym w celu:

– doboru sposobu wyliczania PF dla danego etapu projektu,– optymalnego dopasowania sposobu wyliczania do

dostępnych w etapie artefaktów projektu.

Czy warto?

• Czy metody PF są skuteczne?– 20% dokładności szacowania zapewnia wystarczające informacje zarządcze.

• Czy metody PF są efektywne?– Odpowiednia integracja procesów w minimalnym stopniu wpływa na

produktywność zespołu.– Miary efektywności i jakości pozwalają na obiektywną optymalizację procesu

wytwórczego co podnosi produktywność.

• Czy metody PF są dopasowane do projektów?– Metody punktów funkcyjnych II generacji (np. COSMIC) można efektywnie

wykorzystać we współczesnych projektach.

• Czy metody PF są stosowane?– Dane z > 90 000 nowych projektów.– Dane z > 55 000 projektów utrzymaniowych.

Jak wdrażać?

W celu skutecznego wdrożenia procesu wymiarowania oprogramowania konieczne jest uwzględnienie związku tego procesu z innymi procesami w organizacji tak by możliwie najlepiej je dopasować:

• Proces obsługi zamówień i zleceń• Proces zarządzania projektami• Proces analizy wymagań

Metoda COSMIC

• Najstarsza metoda punktów funkcyjnych (Function Point Analysis) powstała w latach ’70 celem szacowania rozmiaru oprogramowania klasy MIS. Metoda jest utrzymywana do dziś przez organizację IFPUG.

• W latach ‘90 rozwinięto ideę metody FPA do metody FFP (Full Function Point) celem dostosowania jej do oprogramowania czasu rzeczywistego i systemowego.

• Jednym z efektów prac nad FFP jest metoda COSMIC, opublikowana po raz pierwszy w 1999 roku (wtedy jeszcze jako COSMIC-FFP).

• Metoda COSMIC jest utrzymywana przez organizację o tej samej nazwie.

Metoda COSMIC

Metoda COSMIC bazuje na odpowiednim zliczaniu przesunięć grup danych w ramach procesów funkcjonalnych przy czym zarówno procesy funkcjonalne jak i grupy danych wynikają z wymagań funkcjonalnych celu użytkownika.

AplikacjaE

R

M

X

Baza

W

Proces funkcjonalny

LICZBA CFP

Wymagania funkcjonalne celu użytkownika

• Wymagania funkcjonalne celu użytkownika (FUR – Functional User Requirements) definiują co oprogramowanie ma realizować dla użytkowników funkcjonalnych.

• Wymagania z grupy FUR są zazwyczaj podzbiorem wymagań definiowanych dla oprogramowania – abstrahują od wymagań technologicznych, jakościowych oraz wydajnościowych.

• W praktyce projektowej wymagania funkcjonalne celu użytkownika modeluje się jako przypadki użycia na poziomie celu użytkownika oraz jako klasy modelu dziedziny problemu. Modele te najczęściej zapisuje się w notacji UML.

Model analityczny a metoda COSMIC

• Z zastrzeżeniem kilku dodatkowych reguł można przyjąć iż proces funkcjonalny COSMIC to przypadek użycia celu użytkownika oraz iż grupa danych COSMIC to klasa modelu dziedziny.

• Dodatkowe reguły muszą objąć takie zagadnienia jak:

– stosowanie relacji include i extend dla przypadków użycia,– stosowanie relacji gen-spec dla przypadków użycia i klas,– kroki przypadków użycia będące algorytmami,– identyfikację zmian.

UML a metoda COSMIC

• Standardowo narzędzia CASE stosowane do modelowania w notacji UML nie wspierają metody COSMIC. Należy zatem określić praktyczny sposób wprowadzenia dodatkowych elementów modelu:

– przesunięć COSMIC,– powiązania przesunięć COSMIC z klasami modelu

dziedziny,– oznaczania modyfikacji przesunięć,– oznaczania punktów rozszerzeń metody (dla algorytmów).

COSMIC - UML - CASE

Idea integracji

LICZBA CFP

COSMIC - UML - CASE

Idea integracji

LICZBA CFP

Zmiana

COSMIC - UML - CASE

Model przypadków użycia celu użytkownika

COSMIC - UML - CASE

Model klas dziedziny i klasy pomocnicze COSMIC

COSMIC - UML - CASE

Diagram przebiegu przypadku użycia

COSMIC - UML - CASE

Doprecyzowanie cech aktywności poprzez wskazanie wykorzystywanych operacji podstawowych oraz biznesowych

sterowanie.uruchom

Artykuł.Odczytaj ListęArtykuł.Prezentuj Listę

Artykuł.Weryfikuj Kompletność

COSMIC - UML - CASE

Automatyczny raport z CASE dla danego procesu funkcjonalnego tożsamego z przypadkiem użycia

Rozmiar funkcjonalny: 10 CFP (z pominięciem trywialnego A)

E sterowanie.uruchomR Artykuł.Odczytaj ListęX Artykuł.Prezentuj ListęE Artykuł.Wybierz Z ListyR Kategoria.Pobierz ListęX Kategoria.Prezentuj ListęE Kategoria.Wybierz Z ListyE Artykuł.AktualizujA Artykuł.Weryfikuj KompletnośćX Błąd.Prezentuj ListęW Artykuł.Zapisz

A jeśli nie mamy analizy funkcjonalnej?

• Wbudowane w metodę rozwiązania pozwalają aproksymować liczbę CFP na poziomie planowania projektu w oparciu o wymagania biznesowe aczkolwiek poziom błędu takich oszacowań jest dosyć wysoki (50%) a sposób szacowania słabo weryfikowalny.

• Projektowane rozszerzenia metody pozwalają szacować o zbiór wstępnie zidentyfikowanych przypadków użycia i zidentyfikowanych klas modelu dziedziny. Podejście ma spodziewany niższy poziom błędu (35%) niż metody oryginalne i jest łatwiej weryfikowalne.

• Powyższe rozwiązania są aktualnie w fazie projektowania i oceniania skuteczności.

A jak już to wszystko zadziała?

• Automatyzacja wyliczania punktów funkcyjnych COSMIC, w połączeniu z danymi benchmarkowymi, niesie ze sobą szereg konsekwencji z których najważniejsze to:

– na poziomie operacyjnym – zarówno analityk jak i użytkownik stają się świadomi kosztów definiowanych wymagań,

– na poziomie zarządczym – zarówno wykonawca jak i zamawiający stają się świadomi realnych wymiarów projektu.

Sprawy intrygujące i do przemyśleń

• Jak praktyczne wdrożenie metod PF wpłynie na typowe w polskim IT kontrakty fix-price oparte o wymagania zdefiniowane na poziomie biznesowym? Czy to utrudni czy ułatwi współpracę stron umowy?

• Jak praktyczne stosowanie metod PF wpłynie na określanie budżetów dla planowanych projektów, budowana SIWZ’ów oraz ocenę ofert? Czy to poprawi jakość realizacji projektów czy też utrudni ich uruchamianie?

Sprawy intrygujące i do przemyśleń

• Czy nadszedł już czas powszechnego wprowadzenia metod PF dla szacowania złożoności projektów informatycznych w Polsce? Kto będzie tego procesu zwolennikiem, a kto przeciwnikiem?

– Wprowadzenie metod PF to droga do unormowania procesu wyceny usług dla dużych projektów utrzymaniowych oraz procesu wyceny pracochłonności dla dużych zespołów softwareowych.

COSMIC – co dalej?

• Trwają przygotowania do opracowania polskiej wersji oficjalnej specyfikacji metody.

• Trwają przygotowania do publikacji w ramach organizacji COSMIC polskich artykułów dotyczących:– integracji metody COSMIC z analizą funkcjonalną opartą o

notację UML,– skuteczniejszego podejścia do szacowania wstępnego,– wykorzystania metody do praktycznego szacowania

algorytmów „biznesowych” dla systemów klasy MIS.

• Planowane jest pierwszy polskojęzyczny egzamin certyfikujący COSMIC.