Punkty funkcyjne jako narzędzie wspierające realizację projektu informatycznego Doświadczenia Biura Geodezji i Katastru Urzędu m.st. Warszawa m.st. Warszawa 7.06.2017r. Konferencja PSMO
AGENDA Wprowadzenie ogólny opis projektu 1. Problemy i ryzyka związane z zamówieniem publicznym 2. Problem kontroli kosztów modyfikacji systemu 3. Zastosowanie metody punktów funkcyjnych COSMIC do kontroli kosztów w projekcie 4. Wybrane zastosowania punktów funkcyjnych w projekcie ZGiK 5. Podsumowanie doświadczeń BGiK m.st. Warszawa 7.06.2017r. Konferencja PSMO
Wprowadzenie Ogólny opis projektu
Ogólny cel przedsięwzięcia Zbudowanie rozwiązania informatycznego wspierającego działanie zreorganizowanej miejskiej służby geodezyjnej i kartograficznej Efektem wdrożenia systemu będzie zintegrowanie oraz uspójnienie zbiorów danych i procesów ich obsługi
granica strefy DMZ Schemat logiczny systemu ZGiK Wizja Systemu ZGiK Wizja miejsca systemu ZGiK w infrastrukturze informacji przestrzennej miasta SIGNUM LEGENDA Centralne Repozytorium Bazy Danych Ewidencji Ludności Zintegrowany System Zarządzania Urzędem (SAP) Aplikacje klienckie Systemy obsługujące bazy danych przestrzennych Centralna Baza Danych Przestrzennych m.st. Warszawa Miejska Baza Danych (centralne Georeferencyjnych repozytorium Centralna Baza danych Ewidencji Gruntów przestrzennych) Obsługa Zasobu Centralna Cyfrowe archiwum Baza dokumentacji geodezyjnej Danych i kartograficznej Zasobu Baza Nazw Miejskich WEWNĘTRZNE USŁUGI SIECIOWE (SOAP) WEWNĘRZNE USŁUGI SIECIOWE DANYCH PRESTRZENNYCH ( zgodnie z OGC i INSPIRE) Wymiana usług sieciowych Automatyczne przesyłanie danych Przesyłanie danych do obsługi przez operatora Elementy wchodzące w zakres Systemu * System tymczasowy Istniejące systemy Publiczny dostęp do danych przestrzennych m.st. Warszawy Zewnętrzna Baza Danych Przestrzennych Obsługa Podmiotów Zewnętrznych (geodetów i rzeczoznawców) Zewnętrzna Baza Danych Zasobu System ZGiK ZEWNĘRZNE USŁUGI DANYCH PRZESTRZENNYCH (OGC, INSPIRE) Nazewnictwo miejskie* System do Elektronicznej Archiwizacji Aktów Notarialnych* m.st. Warszawa 7.05.2017r. 7.06.2017r. Konferencja PSMO
Pierwotnie określony zakres zamówienia publicznego A. Zarządzanie projektem B. Budowa rozwiązania informatycznego jako projekt wytwórczy lub dostosowanie gotowego oprogramowania, poprzedzona analizą przedwdrożeniową i fazą pilotażu,. C. Przygotowanie danych do migracji, poprzez wprowadzanie zmian w systemach źródłowych D. Migracja danych E. Cyfryzacja dokumentacji geodezyjnej i kartograficznej i map analogowych. F. Wdrożenie, w tym optymalizacja procesów i szkolenia. G. Opieka serwisowa w okresie do 1 roku po wdrożeniu.
Etapy realizacji przedsięwzięcia Analiza przedwdrożeniowa Projekt pilotowy (na obszarze jednej dzielnicy) Rozszerzanie zakresu terytorialnego objętego systemem na kolejne dzielnice. m.st. Warszawa 7.05.2017r. 7.06.2017r. Konferencja PSMO
Problemy i ryzyka związane z zamówieniem publicznym m.st. Warszawa 7.05.2017r. 7.06.2017r. Konferencja PSMO
Trudności w oszacowaniu wartości zamówienia Różne podejścia: W oparciu o ceny rynkowe podobnych zamówień W oparciu o szacowaną liczbę jednostek (roboczogodziny, strony przeliczeniowe, arkusze map, godziny szkoleń) i cenę rynkową jednostki Narzuty procentowe (zarządzanie projektem, serwis) Duży stopień niepewności związany z różnymi czynnikami wpływającymi na cenę ofertową w innych zamówieniach
Ryzyko nietrafnego wyboru. Wybór oferty w oparciu o cenę za dzieło określone przez ogólne wymagania co do zakresu funkcjonalnego i ogólne wymagania pozafunkcjonalne, jest obarczony ryzykiem ograniczonej użyteczności zakupionego oprogramowania a w efekcie ryzykiem poniesienia nieadekwatnych do ceny zakupy kosztów dostosowywania do konkretnych potrzeb.
Problem kontroli kosztów modyfikacji
Ryzyko utraty kontroli kosztów projektu i kosztów eksploatacji systemu po wdrożeniu W przypadku konieczności wprowadzenia zmian w oprogramowaniu na koszty modyfikacji będą miały wpływ: wyjściowa jakość oprogramowania, powiązana ze sposobem wytwarzania (stopniem dojrzałości procesu wytwarzania); szeroko rozumiana architektura systemu: struktury logiczne (struktura danych i oprogramowania) i struktura technologiczna; subiektywna ocena pracochłonności modyfikacji po stronie Dostawcy. m.st. Warszawa Lorem ipsum dolor sit amet
Oczekiwania co do sposobu wyceny kosztów modyfikacji oprogramowania A. Adekwatność kosztów modyfikacji do ceny całości systemu. B. Koszt modyfikacji niezależny od sposobu realizacji zmiany funkcjonalnej, a jedynie od jej złożoności. C. Obiektywność i powtarzalność procesu wyliczenia złożoności modyfikacji. Dodatkowe oczekiwania D. Możliwość wstępnej oceny kosztów planowanej modyfikacji. E. Możliwość automatyzacji wyliczeń.
Zastosowanie punktów funkcyjnych do kontroli kosztów w projekcie informatycznym
Warunki ogólne A. Oprogramowanie użytkowe oraz jego modyfikacje muszą być realizowane zgodnie z tą samą przyjętą metodyką (procesem) wytwarzania. B. Przyjęta metoda punktów funkcyjnych musi zostać zastosowana zarówno do oszacowania całości systemu jak też modyfikacji. C. Sposób wyliczenia liczby punktów funkcyjnych musi być częścią kontraktu D. Koszt realizacji pojedynczego punktu funkcyjnego będzie obejmował wszystkie koszty związane z wytworzeniem oprogramowania, w tym spełnienie wymagań pozafunkcjonalnych. Cel: zapewnienie adekwatności kosztu modyfikacji do ceny całości systemu.
Warunki zastosowania w projekcie metody punktów funkcyjnych COSMIC 1. Utrzymywanie w bieżącej aktualności dokumentacji analitycznej o szczegółowości pozwalającej na wymiarowanie złożoności metodą COSMIC 2. Ze względu na automatyzację procesu wymiarowania utrzymywanie modelu analitycznego w odpowiednim oprogramowaniu (np. EA) 3. Odpowiednie kompetencje po obu stronach kontraktu: Zamawiający musi posiadać podstawowe umiejętności analityczne - znajomość UML) i metodyki COSMIC. Może je zbudować (szkolenia) lub pozyskać z zewnątrz (udział ekspertów); Wykonawca/Dostawca musi posiadać doświadczenie w zakresie stosowania przyjętej w projekcie metodyki wytwarzania oprogramowania oraz metodyki COSMIC.
Wybrane zastosowania punktów funkcyjnych COSMIC w projekcie ZGiK
Przykład zastosowanie Szacowania Wstępnego w celu określenia przewidywanej złożoności funkcjonalnej.
Założenia dla Szacowania Wstępnego nowe przypadki użycia [fragment OPZ] Dla każdego nowego Przypadku Użycia określana jest liczba wykorzystywanych przez niego Grup Danych. Każdy nowy Przypadek Użycia jest klasyfikowany jako: Przypadek odczytu (przeglądanie danych, raporty, eksporty, wizualizacje) lub ew. prosta edycja (bez kontroli spójności z innymi danymi w systemie); Przypadek modyfikacji (wprowadzanie danych, import danych, zmiana statusów, modyfikacja danych) lub ew. złożone wyprowadzanie danych (wykorzystujące złożony interfejs użytkownika, przekrojowe dane lub zaawansowane filtrowanie); Przypadek złożonego przetwarzania (weryfikacja zależności pomiędzy różnymi Grupami Danych, złożone kontrole lub wyliczenia wykorzystujące wiele Grup Danych). Sposób wyliczania wstępnej liczby punktów funkcyjnych COSMIC dla nowych Przypadków Użycia : Dla Przypadków odczytu wstępną liczbę PF określa się jako: 1 + 2 x liczba Grup Danych, Dla Przypadków modyfikacji wstępną liczbę PF określa się jako: 1 + 2,4 x liczba Grup Danych, Dla Przypadków złożonego przetwarzania wstępną liczbę PF określa się jako: 1 + 3,4 x liczba Grup Danych.
Fragment Opisu Wymagań Zamawiającego Ochrona danych osobowych (AM.1) Profile użytkowników Administratorzy: merytoryczny, bezpieczeństwa danych osobowych, techniczny Podstawowe funkcje 1. Rejestrowanie każdego udostępnienia danych osobowych na zewnątrz Urzędu, w trakcie procesów przetwarzania danych osobowych, ze szczególnym uwzględnieniem: 1. daty udostępnienia (przekazania) danych, 2. danych o operatorze (informacji o osobie udostępniającej), 3. sygnatury sprawy (pisma), 4. podstawy prawnej udostępniania (przekazania) danych, 5. danych podmiotu, którego dotyczy sprawa, 6. nazwy i adresu odbiorcy danych, 7. sposobu udostępniania (przekazania) danych (np. informacja ustna, wydruk, pliki SWDE itp.). 2. Utworzenie raportu o przechowywanych danych osobowych, na wniosek osoby, której dane osobowe są przechowywane w Systemie ZGiK, zawierającego: 1. daty pierwszego wprowadzenia danych do systemu, 2. identyfikatora operatora (użytkownika) wprowadzającego dane osobowe do Systemu ZGiK, 3. źródła wprowadzonych danych osobowych, w przypadku zbierania danych, nie pochodzących od osoby, której one dotyczą, 4. informacji o odbiorcach, w rozumieniu art. 7 pkt 6 ustawy o ochronie danych osobowych, którym dane osobowe zostały udostępnione, dacie i zakresie tego udostępnienia, 5. sprzeciwu, o którym mowa w art. 32 ust. 1 pkt 8 ustawy o ochronie danych osobowych. 3. Utworzenie raportu o udostępnionych danych osobowych (dla danej osoby fizycznej z wskazaniem jako minimum: kategorii dokumentu/zaświadczenia, daty wydania, kto i komu wydał). 4. Utworzenie raportu o dostępie do danych osobowych, tj zestawienia wszystkich logowań danej osoby, oraz ew. treści zapytania, z możliwością selekcji zakresu dat logowania 5. Utworzenie raportu o uprawnieniach dostępu do danych osobowych, w oparciu o historię uprawnień nadawanych w funkcji AT.1.
uc AM.1 Ochrona danych osobowych Podmioty::Podmiot Podmioty::Osoba fizyczna Podmioty:: Operacja na danych osobowych Podmioty::Typ udostępnienia danych osobowych Podmioty:: Telekomunikacja Podmioty::Adres Użytkownicy:: Użytkownik Obsługa raportów danych osobowych Uproszczony model dla potrzeb Szacowania Wstępnego Utworzenie raportu o uprawnieniach dostępu do danych osobowych Utworzenie raportu o dostępie do danych osobowych Utworzenie raportu o udostępnionych danych osobowych Utworzenie raportu o danych osobowych podmiotu Rejestracja udostępnienia danych osobowych Administrator (from Aktorzy) System (from Aktorzy) m.st. Warszawa 7.05.2017r. Konferencja PSMO
Raport z Szacowania Wstępnego dla Systemu ZGiK (fragment dotyczący tej samej grupy funkcji) Grupa funkcyjna AM Administracja danymi/am.1 Ochrona danych osobowych AM Administracja danymi/am.1 Ochrona danych osobowych AM Administracja danymi/am.1 Ochrona danych osobowych AM Administracja danymi/am.1 Ochrona danych osobowych AM Administracja danymi/am.1 Ochrona danych osobowych Przypadek użycia Rejestracja udostępnienia danych osobowych Utworzenie raportu o danych osobowych podmiotu Utworzenie raportu o dostępie do danych osobowych Utworzenie raportu o udostępnionych danych osobowych Utworzenie raportu o uprawnieniach dostępu do danych osobowych Liczna grup danych Typ Wstępne szacowanie CFP 7 2 18 7 1 15 7 1 15 7 1 15 7 1 15 AM Administracja danymi/am.1 Ochrona danych osobowych 78
Efekt zastosowania Szacowania Wstępnego do określenia wartości zamówienia w odniesieniu do wytworzenia oprogramowania Systemu ZGiK Modele wyjściowe opracowane w oparciu o OPZ Model dziedziny systemu Modelu funkcjonalny Wynik oszacowania: 8 536 CPF Zakładany błąd szacowania ± 24% m.st. Warszawa Lorem ipsum dolor sit amet
Podstawowe warunki zamówienia.
Zmodyfikowany zakres zamówienia na system ZGiK A. Zarządzanie projektem, w tym zarządzanie zakresem projektu poprzez: Rejestr Wymagań i pomiar złożoności planowanego do wdrożenia i wdrażanego oprogramowania z wykorzystaniem metodyki COSMIC. B. Budowa rozwiązania informatycznego jako projekt wytwórczy realizowany zgodnie z metodą MDA i metodyką RUP, z wyłączeniem dostaw elementów infrastruktury teleinformatycznej, poprzedzona analizą przedwdrożeniową. C. Wykonanie migracji danych z systemów źródłowych z użyciem dedykowanego Oprogramowania do Przenoszenia Danych (proces wytwarzania analogiczny jak dla oprogramowania Systemu)
Zmodyfikowany zakres zamówienia na system ZGiK D. Archiwizacja dokumentacji geodezyjnej i kartograficznej w postaci cyfrowej określona liczba dokumentów jako element testów rozwiązania w zakresie wydajności. E. Wdrożenie, w tym szkolenia. F. Opieka serwisowa w okresie do 1 roku po wdrożeniu, obejmująca również modyfikacje oprogramowania.
Zmiana strategii budowy systemu ZGiK A. Rezygnacja z projektu pilotowego. B. Podział zakresu funkcjonalnego Systemu ZGiK na Podsystemy, które mogą być niezależnie wdrażane i rozliczane, które obejmują określone w Etapie Wstępnym obszary funkcjonalne. C. Wdrożenie kolejnych Podsystemów zawsze dotyczy całego obszaru Miasta. D. Migracja danych jest wykonywana przy użyciu Oprogramowania do Przenoszenia Danych, które podlega prawie tym samym rygorom procesu wytwórczego jak oprogramowanie Podsystemów.
Wynagrodzenie oparte o liczbę wykonanych jednostek rozliczeniowych i ich ceny ofertowe Nie mniej niż: [ ] 6487 Punktów Funkcyjnych w odniesieniu do Wytworzenia Systemu ZGiK i Oprogramowania do Przenoszenia Danych, Nie więcej niż [ ] 10585 Punktów Funkcyjnych w odniesieniu do Wytworzenia Systemu ZGiK i Oprogramowania do Przenoszenia Danych, 2300 Punktów Funkcyjnych w odniesieniu do Modyfikacji Systemu ZGiK i Oprogramowania do Przenoszenia Danych, [ ]
Koszty składające się na cenę punktu funkcyjnego: wszelkie koszty związane z realizacją zadań cząstkowych Procesu Wytwórczego wszelkie koszty, opłaty i podatki ponoszone przez Wykonawcę w związku z realizacją Procesu Wytwórczego, koszty związane z Oprogramowaniem Narzędziowym wykorzystywanym przez Wykonawcę w Procesie Wytwórczym koszty związane z wytworzonymi lub dostarczonymi przez Wykonawcę elementami Oprogramowania Środowiska Systemu, wartość przewidzianych niniejszą Umową: licencji i sublicencji oraz autorskich praw majątkowych koszty świadczenia gwarancji i rękojmi, koszty świadczenia Serwisu (tj. Serwisu Projektu i Opieki Technicznej) z wyłączeniem prac, do których mają zastosowanie odpowiednie jednostki rozliczeniowe koszty opracowania i wsparcia przeprowadzenia Testów Współdziałania, koszty spełnienia pozostałych wymagań niefunkcjonalnych dla Systemu ZGiK wynikających z Umowy, w tym OPZ i Oferty.
Wybrane elementy Opisu Przedmiotu Zamówienia odnoszące się do punktów funkcyjnych.
Udział zadań cząstkowych Procesu Wytwórczego w cenie punktu funkcyjnego W celu określania wynagrodzenia związanego z realizacją poszczególnych zadań cząstkowych Umowa określa ich procentowy udział w cenie punktu funkcyjnego: Wykonanie analizy wstępnej: 1,5%, Wykonanie analizy szczegółowej : 1%, Aktualizacja Projektu Ogólnego Systemu ZGiK: 0,5%, Wykonanie Analitycznego Opisu Podsystemu lub wykonanie Analitycznego Opisu Oprogramowania do Przenoszenia Danych: 23%, Wykonanie i wdrożenie Podsystemu lub Oprogramowania do Przenoszenia Danych 74%,
Procentowy udział pracochłonności prac cząstkowych w ramach pracochłonności wykonania i wdrożenia oprogramowania opracowanie Projektu Technicznego : 10%, opracowanie Planu Testów Akceptacyjnych i ich udział w ich wykonaniu : 5%, wszelkie czynności związane z wytworzeniem lub modyfikacją oprogramowania wraz z: przygotowaniem odpowiednich prototypów, przeprowadzeniem kompletu wewnętrznych testów funkcjonalnych i testów integracyjnych wraz z przygotowaniem, danych testowych, wytworzeniem pakietu instalacyjnego, przygotowaniem pakietu kodów źródłowych: 44%, opracowanie Dokumentacji Użytkownika: 5%, opracowanie Dokumentacji Administratora: 1%, opracowanie Dokumentacji Technicznej i aktualizacja Projektu Ogólnego Systemu ZGiK: 4%, uruchomienie Podsystemu lub Oprogramowania do Przenoszenia Danych w Środowisku Testowym: 2%, wdrożenie Podsystemu lub Oprogramowania do Przenoszenia Danych w Środowisku Produkcyjnym: 2%, wszelkie inne prace, w tym związane z wytworzeniem innych Produktów niż wymienione powyżej.
Wykonanie analizy projektowej Opis Podsystemu Raport z Szacowania Wstępnego Kontrola kosztów wykonania Podsystemu Ocena z punktu widzenia spełniania wymagań Ocena z punktu widzenia kosztów Wykonanie projektu analitycznego Analityczny Opis Podsystemu Akceptacja Opisu Raport z Szacowania Pełnego Ocena zgodności z Opisem Zgodnie z Opisem Porównanie wyników Szacowania Wstępnego i Pełnego Uzgadnianie zmian projektu analitycznego TAK <24% NIE NIE <5% TAK Odrzucenie AOP Zawarcie kontraktu na wykonanie Podsystemu
Podsumowanie doświadczeń związanych ze stosowaniem metody punktów funkcyjnych
Dojrzewanie organizacji do zastosowania punktów funkcyjnych jest złożonym, wieloaspektowym procesem.
Korzyści z zastosowania metody COSMIC w projekcie ZGiK Weryfikacja kompletności i spójności wymagań. Określenie wartości zamówienia ściśle odpowiadające wymaganiom. Możliwość weryfikacji harmonogramów, zarówno co do czasu jak i podziału kosztów w etapach. Precyzyjne bieżące zarządzanie kosztami wykonywania oprogramowania, w tym kosztami zmian.
Metoda punktów funkcyjnych COSMIC, także ze względu na swą elastyczność może mieć zastosowanie w wielu aspektach projektu informatycznego. Stworzenie dobrego modelu analitycznego wymaga ścisłego współdziałania Zamawiającego i Wykonawcy oraz posiadanie przez obie strony odpowiednich kompetencji analitycznych i znajomości dziedziny, a także zgodnego zrozumienia podstaw metodyki COSMIC. Wysokie wymagania co do szczegółowości i dyscypliny projektowania na poziomie modeli analitycznych są trudne do spełnienia przez Wykonawców, co powoduje, że zastosowanie tej metody może być trudne w sytuacji ograniczonego budżetu.
Dziękuję za uwagę