• Nie Znaleziono Wyników

PARAM ETRY W PŁYW U - CZYNNIK

koszty użytkowania SI

PARAM ETRY W PŁYW U - CZYNNIK

*

PARAM ETRY W PŁYW U - CZYNNIK

KORYGUJĄCY

OSTATECZNA LICZBA PF - WIELKOŚĆ SI

W ERYFIKACJA §---...

Rys. 1. Metoda p f - etapy pomiaru i szacowania produktywności ŹRÓDŁO: Opracowanie własne.

Analiza oparta na PF uwzględnia w pomiarze i estymacji następujące elementy:

31

> rozmiar funkcjonalny - obliczany przez przypisanie każdej funkcji użytkownika odpowiedniej wagi, co w rezultacie prowadzi do uzyskania nieostatecznej liczby PF (NPF) i pokrywa proces pomiaru dwóch typów funkcji: danych i transakcji;

> czynnik korygujący - obliczany przy wykorzystaniu predefiniowanych charakterystyk systemu, tzw. parametrów wpływu, w celu oceny złożoności środowiska systemu i sposobu przetwarzania SI jako całości.

Rozmiar funkcjonalny poddany wpływowi czynnika korygującego daje ostateczną liczbę PF (LPF). Jest ona wyprowadzana zgodnie z etapami zaprezentowanymi na rysunku 1.

W stępne kroki zmierzające do wyznaczenia rozmiaru funkcjonalnego to identyfikacja granic obliczeń oraz wyróżnienie modułów projektu (funkcji użytkownika). Kolejno, dla każdej funkcji określa się tzw. typy fun kcji, do których zalicza się:

> funkcje transakcyjne:

S wejścia - dane z zewnątrz SI (np. formularze, ekrany, wartości sterujące itp.

wchodzące do SI);

S wyjścia - dane wychodzące poza granice SI (np. raporty, ekrany, sygnały elektroniczne, itp. opuszczające SI);

■f zapytania - pary wejście-wyjście wywołujące wyszukiwanie danych (pierwotnych);

> funkcje typu dane:

-Z logiczne zbiory wewnętrzne - grupy powiązanych danych pozwalające SI na generowanie wyjść: informacje użytkownika utrzymywane w ramach aplikacji;

Z zewnętrzne zbiory komunikacyjne (interfejsy) - grupy powiązanych danych pozwalające SI na przekazywanie informacji do innego systemu: zbiory przekraczające granice SI, dostępne dla danego SI, ale w nim nie utrzymywane.

Następny etap polega na określeniu poziomu złożoności przetw arzania dla każdego z wyróżnionych typów funkcji przy użyciu trzystopniowej skali: prosty, średni i złożony. Umożliwia to przypisanie tymże typom funkcji wag zgodnie ze standardow ą tablicą (tablica 1). Zsumowanie wag dla wszystkich typów funkcji daje w rezultacie rozmiar funkcjonalny w PF.

Rozmiar funkcjonalny stanowi jedynie rezultat pośredni (por. rys. 1).

W ymaga on korekty ze względu na parametry wpływu (rys. 2), uwzględniające zarówno złożoność środowiska SI, jak i złożoność systemu jako całości. Dla każdego z tych parametrów określa się stopień jego wpływu w skali od 0 - 5. W wyniku zsumowania stopni wpływu otrzymuje się całkow itą wartość wpływu (F).

Kolejno, oblicza się czynnik korygujący według wzoru:

C = 0.65 + (0.01 * F),

a następnie ostateczną liczbę PF, czyli wielkości systemu w jednostkach umownych, zgodnie z formułą:

LPF = NPF * C = NPF * (0.65 + F * 0.01).

Tablica 1. W agi dla typów funkcji w metodzie p f

Poziom złożoności Prosty Średni Złożony

Typy funkcji

W ejścia 3 4 6

W yjścia 4 5 7

Zbiory wewnętrzne 7 10 15

Zbiory zewnętrzne (interfejsowe)

5 7 10

Zapytania 3 4 6

ŹRÓDŁO: [IFPU99]

1) przesyłanie danych,

2) występowanie przetwarzania rozproszonego,

3) czas oczekiwania na odpowiedź systemu, ^ ---4) stopień obciążenia konfiguracji s p rz ę to w e j^ /^ ' N . 5) częstotliw ość wykonywania transakcji,/ /

6) bezpośrednie wprowadzanie danych, U \ \

7) um iejętności/wydajność użytkownika końcowego, \ \ 8) bezpośrednie aktualizowanie danych (zbiorów wewnętrznych), \ \ 9) występowanie przetwarzania złożonego,

10) m ożliwość ponownego wykorzystania programów, \

11) łatwość instalacji systemu, v_ _ _ — ^

12) łatwość obsługi systemu,

13) wielokrotna lokalizacja systemu (rozproszenie terytorialne), 14) łatwość wprowadzania zmian do systemu (elastyczność)

Np. bezpośrednie wprowadzanie danych:

S 0-2 pkt.: 0-15% danych wprowadza się interaktywnie, S 3-4 pkt.: 15-30% danych wprowadza się interaktywnie, S 5 pkt.: powyżej 30% danych wprowadza się interaktywnie.

L

---Rys. 2. Metoda pf - parametry wpływu ŹRÓDŁO: Opracowanie własne na podstawie [IFPU99].

Po określeniu wielkości projektowanego SI można przystąpić do oszacowania kosztów, czasu i produktywności projektowania. Najwłaściwsze oceny estymacyjne zostaną wyprowadzone przy uwzględnieniu funkcji, która

33

odzwierciedla dane historyczne pokazujące zależności występujące w projektach realizowanych w przeszłości dla konkretnej organizacji (por. rys. 3). Ponieważ jednak organizacje często nie dysponują takimi danymi, można skorzystać z danych dla szerszego zakresu dziedzinowego, np. różnych rodzajów SI dla różnych gałęzi gospodarki (por. tablica 2), wyprowadzonych na podstawie wieloletnich praktyk projektowych w tych sektorach. S ą to oczywiście informacje o znacznie większym stopniu ogólności, a zatem należy je traktować z ostrożnością. W każdym przypadku konieczne jest również uwzględnienie wszelkich modyfikacji środowiska projektowania stosowanych w określonym projekcie5.

-D ANE Z [KNOL91] —S — DRESDNER BANK VW AG IBM

450 X 40 0

->- u

< 350 -u< o 3 0 0 -CL

O. wUJ 250

>-n 5 20 0

-<-u o

m 15 0 •

*

< O w 10 0

-z O 50

-0 +

'S? &

LICZBA PUNKTÓW FUNKCYJNYCH

V

Rys. 3. Przykładowe krzywe zależności pomiędzy ostateczną liczbą pf a nakładami pracy dla różnych organizacji

ŹRÓDŁO: Opracowanie własne na podstawie [KNÓL91].

5 Przy uproszczonych analizach można przyjąć, że jeden punkt funkcyjny netto odpowiada 8 godzinom pracy w technologii języków trzeciej generacji lub 1,5 godziny pracy w technologii języków czwartej generacji (por. [WRYC99]). Takie ogólne średnie ustalono na podstawie doświadczeń praktycznych, jednak należy się do nich odnosić z dużą rezerwą, gdyż nie mogą one zastąpić właściwego (tj. opartego o dane historyczne) procesu estymacji, jako że nie uwzględniają wielu czynników (np. doświadczenia w pisaniu programów w danym języku przez określonych programistów).

Tablica 2. Średnia produktywność projektów się dla różnych sektorów biznesu

Sektor biznesu Produktywność

(punkty funkcyine/liczba godzin)

W ytwarzanie 0.337

Handel detaliczny i hurtowy 0.253

Administracja publiczna 0.232

Bankowość 0.116

Ubezpieczenia 0.116

ŹRÓDŁO: [MAXW00]

W szystkie uzyskane obliczenia powinno się oczywiście weryfikować.

Powyższy proces wyznaczania podstawowych parametrów projektu powtarza się zwykle trzykrotnie w różnych stadiach projektowania. Każde kolejne przybliżenie powinno być dokładniejsze^.

W ciągu ponad 20 lat istnienia metoda oparta na punktach funkcyjnych ulegała różnym modyfikacjom i uściśleniom, których celem była przede wszystkim jej obiektywizacja. Od połowy lat 80. standardy owej analizy ustalane są przez International Function Point U sers Group (IFPUG), m iędzynarodową organizację skupiającą użytkowników tej funkcjonalnej miary. Obecnie obowiązuje wersja 4.1 Function Point Counting Practices Manuał, opublikowana przez IFPUG w 1999 roku. Jest to ju ż kolejny zbiór standardów objaśniający reguły i kryteria postępowania, ale nie wprowadzający żadnych zmian w sposobie pomiaru. Ciągle obowiązują bowiem elementy metody (typy funkcji, wagi, parametry wpływu) określone przez A. Albrecht'a w oryginalnym rozwiązaniu.

2.2 M etoda punktów funkcyjnych - zalety

2.2.1 Z punktu widzenia użytkownika projektowanego systemu istotne jest, że metoda PF:

> Uwzględnia najistotniejszy dla użytkownika parametr, mianowicie funkcjonalność SI;

> Um ożliwia oszacowanie kosztów i czasu we wstępnych fazach projektowania, co pozwala użytkownikowi na podjęcie decyzji o:

Z realizacji SI o przewidywanych parametrach lub zaniechaniu takiej realizacji,

Z udoskonalaniu i konserwacji gotowych SI na podstawie przewidywanych kosztów tych działań,

Z porównanie i ocenę konkurencyjnych ofert dostawców SI;

6 Przyjęto, iż 30% powinno stanowić górną granicę błędu metody PF na etapie analizy systemu. W przypadku systemów, przy których dostępne są już kody programu oraz szczegółowa specyfikacja projektowa, błąd pomiaru powinien być nie większy niż 10%.

35

> Uznaje, iż udział użytkownika w projektowaniu jest niezbędny, gdyż umożliwia:

•ó lepsze zrozumienie zasad działania systemu,

✓ precyzyjne określenie wymagań dla SI, co zwiększa prawdopodobieństwo:

S zatwierdzenia systemu,

■/ prawidłowego jego funkcjonowania i użytkowania, i co przyczynia się do zmniejszenie liczby projektów:

S przerwanych,

■S przekraczających zaplanowany czas i koszty realizacji,

■/ zakończonych, ale nie wykorzystywanych7;

> Jest zrozumiała dla użytkowników bez umiejętności i doświadczenia technicznego;

> W ykazuje niezależność technologiczną;

> Uwzględnia wiele czynników projektowania w postaci typów funkcji i parametrów wpływu.

Analiza oparta na PF reprezentuje zatem przede wszystkim punkt widzenia użytkownika na system. M odele oparte na jednostkach programowych preferują zaś punkt widzenia projektantów. Ale z ich perspektywy metoda punktów funkcyjnych posiada również wiele zalet, jako że daje ona projektantom możliwość:

> Analizy, oceny i porównania parametrów projektów zrealizowanych (napisanych również w różnych językach programowania), co umożliwia:

S wyprowadzenie pracochłonność dla SI o różnej wielkości, a to stanowi podstawę ocen estymacyjnych dla przyszłych projektów,

S prognozowanie kosztów konserwacji i udoskonalania gotowych SI,

•S wyciągnięcie wniosków dotyczących wpływu konkretnych decyzji i czynności projektowych;

> W czesnego ustalenia dla projektowanego systemu'.

■S ocen estymacyjnych dla wielkość SI, nakładów pracy, produktywności, czasu i kosztów projektowania, co pozwala na podjęcie właściwych decyzji inwestycyjnych,

S rozkładu kosztów w czasie i w poszczególnych stadiach cyklu życia systemu,

•ó wielkości zmian wprowadzanych przez użytkownika na poszczególnych etapach projektowania (zakres i koszt modyfikacji);

> Analizy, oceny i porównania parametrów działania zespołów projektow ych, co umożliwia:

■S obserwację i ocenę efektywności bieżącej pracy projektantów oraz sygnalizowanie sytuacji niezgodnych z planem,

S rozpoznanie i przedstawienie trendów produktywności zespołów projektowych i poszczególnych projektantów,

7 Jest to szczególnie istotne w kontekście badań Standish Group (por. [STAN95]), które pokazują, że średnio ponad 30% projektów nigdy nie zostaje zakończonych, a ok. 53%

przekracza czas i koszty realizacji.

■S wykazanie, że zasoby ludzkie i sprzętowe będące w dyspozycji zespołów projektowych są wykorzystywane w sposób właściwy, tj. efektywnie i wydajnie.

2.3 M etoda punktów funkcyjnych - wady

Analiza i estym acja oparta na punktach funkcyjnych nie jest jednak metodą pozbawioną wad. Do podstawowych zalicza się między innymi:

> Subiektywność w ocenie złożoności funkcji:

S Np. dlaczego w każdych warunkach interfejs ma większą wartość dla użytkownika niż wejście czy wyjście ?

S Typy funkcji są często trudne do zdefiniowania i wyodrębnienia ze względu na brak wyraźnej granicy pomiędzy niektórymi z nich (np. wyjścia i

zapytania);

S Klasyfikacja typów funkcji pod względem ich złożoności bywa zależna od doświadczenia projektantów.

Dlatego działania IFPUG zmierzają przede wszystkim do obiektywizacji ocen.

Zgodnie z wynikami badań zaprezentowanych w [JONE98] ustalenie przez IFPUG standardów stosowania metody PF, których znajomość potwierdza się specjalnymi egzaminami, oraz wykorzystywanie odpowiednich narzędzi (certyfikowanych przez tę organizację) do wspomagania procesu pomiaru i szacowania powoduje, iż odchylenie w otrzymywanych wynikach mieści się w założonych granicach, czyli wynosi nie więcej niż 10%.

^ Niewystarczające odzwierciedlenie wysokiej złożoności wewnętrznej SI:

W ewnętrzna złożoność procesu przetwarzania jest wprawdzie odzwierciedlana na dwa sposoby, ale wydają się one być rozwiązaniem nieadekwatnym w zestawieniu ze swoim znaczeniem:

^ Po pierwsze, klasyfikacja wejścia, wyjścia, zapytania czy interfejsu jako prostego, średniego czy złożonego, zależy po części od liczby powiązanych z tym składnikiem logicznych zbiorów wewnętrznych, które są bezpośrednio skorelowane z wewnętrzną kompleksowością przetwarzania, ale klasyfikacja ta jest subiektywna.

^ Po drugie, wewnętrzna złożoność występuje jako jeden z czternastu parametrów wpływu i może w ten sposób wpływać jedynie do 5% na czynnik korygujący ze względu na złożoność przetwarzania.

Toteż metoda A. Albrecht'a sprawdza się w przypadku takich systemów, które dostarczają zaprogramowane funkcje, przy których użytkownik wprowadza lub otrzymuje dane. S ą to zazwyczaj systemy informatyczne wspomagające zarządzanie, które stanowią, jak wykazują badania, ok. 70% wszystkich SI. Nie sprawdza się natomiast w odniesieniu do narzędzi lub języków (czyli programów które dostarczają komend, dzięki którym użytkownik może stworzyć własne funkcje). Analiza oparta na punktach funkcyjnych, z tych samych względów, nie powinna być również podstaw ą obliczeń dla systemów czasu rzeczywistego oraz programów naukowych.

37

> Niepełna lista parametrów wpływu:

Nie uwzględniono bowiem między innymi następujących czynników:

konieczności współpracy projektowanego systemu z innymi aplikacjami, wymogów dotyczących ochrony danych, wymogów dotyczących dokumentacji, konieczności szkolenia użytkownika końcowego, specyficznych wymagań programowych i sprzętowych dla tworzonego SI.

> Trudności w zastosowaniu metody:

Metoda punktów funkcyjnych nie jest łatwa do zastosowania w praktyce, gdyż wymaga dużego doświadczenia i jest pracochłonna^. Proces pomiaru jest utrudniony ze względu na różne poziomy doświadczeń i um iejętności wśród analityków przeprowadzających analizę. Zmniejszeniu pracochłonności, jak również obiektywizacji metody, sprzyja stosowanie właściwych narzędzi wspomagających analizę opartą na PF. Najpopularniejsze z nich to Function Point Workbench i SPR KnowledgePLAN.

2.4 Inne metody oparte na jednostkach umownych

Ze względu głównie na niemożność odzwierciedlania przez analizę opartą na PF wysokiej złożoności wewnętrznej SI, co ma znaczenie dla systemów innych niż systemy wspomagające zarządzanie (czyli dla ok. 30% SI), pojawiło się wiele wariantów owej metody. M odyfikują one klasyfikację A. Albrecht'a i IFPUG odnośnie głównych typów funkcji oraz parametrów wpływu. Ocenia się, iż obecnie istnieje co najmniej 20 takich wariantów (por. [JONE98]). N ajpopularniejsze z nich ujęto w tablicy 3.

Tablica 3. W arianty metody punktów funkcyjnych

NAZW A UW AGI

M etoda P F A.

A lb rech fa i IFPU G

• głównie: systemy informatyczne zarządzania,

• 5 typów funkcji,

• 14 parametrów wpływu.

SPQRJ20 T.C. Jones’a

• głównie: systemy informatyczne zarządzania,

• 5 typów funkcji,

• klasyfikacja wszystkich typów funkcji jako średnie,

• 2 parametry wpływu (złożoność logiczna i złożoność danych).

8 W związku z dużą pracochłonnością metody niektórzy postulują jej wykorzystywanie jedynie w przypadku tworzenia systemów dużych, związanych z poważnymi nakładami finansowymi (por. [WRYC99]). Trudno się zgodzić z tym twierdzeniem, jeżeli zważy się fakt, iż istnieją skuteczne i niedrogie narzędzia, które ją wspomagają.

NAZWA UWAGI