Prace nad koncepcją systemu informacji o terenie (SIT) oraz wprowadzanie technik informatycznych w geodezji i kartografii rozpoczęto już na początku lat siedemdziesiątych, jednakże w dalszym ciągu jesteśmy dopiero na początku długiej drogi zmierzającej do efektywnego prowadzenia przez państwową służbę geodezyjną i kartograficzną przyszłego SIT. W chwili obecnej zasób geodezyjny i kartograficzny jest zinformatyzowany w niewielkim stopniu. Z części zasobu, które w przyszłości mają stanowić podstawę do założenia krajowego SIT, ewidencja gruntów i budynków jest zinformatyzowana w stopniu największym, ale tylko w części opisowej. Informatyzacja mapy zasadniczej nie jest działaniem powszechnym - prowadzona jest w kilku najbardziej prężnych ODGiK głównie na obszarach większych miast, a pełna (czy raczej "prawie pełna") informatyzacja działalności objęła dotychczas niewielką grupę ośrodków.
Do prowadzenia zasobu geodezyjnego i kartograficznego w sposób zinformatyzowany wykorzystywane są różnorodne programy komputerowe. Są wśród nich zarówno proste programy autorskie, jak i aplikacje zbudowane na bazie wyrafinowanych platform narzędziowych typu CAD (np. AutoCAD, MicroStation) oraz systemów zarządzania bazami danych (np. Informix, Oracle). Przydatność programów komputerowych do prowadzenia modułów systemu informacji o terenie uwarunkowana jest spełnieniem pewnych specyficznych wymagań, wynikających z zadań stawianych przed obligatoryjnymi warstwami SIT.
Obligatoryjnymi warstwami SIT wg proponowanych przepisów1) są:
Warstwy obligatoryjne SIT są urzędowymi bazami danych. Wszystkie dane stanowiące treść tego zasobu, jak również wszelkie działania, jakie są w jego ramach przeprowadzane, uregulowane są prawnie. Zdefiniowane są procedury funkcjonowania każdej z wymienionych ewidencji łącznie z formularzami dla wszystkich dokumentów. Dane zawarte w ewidencjach podlegają specjalnej ochronie jako zasób urzędowy o niekwestionowanej ważności. Chronione są przed zniszczeniem oraz przed dostępem osób niepowołanych (ze względu na istniejącą ustawę o ochronie danych osobowych oraz możliwość zafałszowania danych i spowodowania konsekwencji prawnych lub awarii).
Obligatoryjne warstwy SIT charakteryzuje konieczność bieżącej rejestracji zachodzących zmian (aktualizacji), przy czym na terenach dużych miast można nieraz zanotować do kilkuset zmian dziennie. Do obsługi tego rodzaju ewidencji należy wykorzystywać programy typu OLTP (On Line Transaction Processing - programy przetwarzania operacyjnego), przeznaczone są do wprowadzania zmian do istniejących danych, utrzymywania integralności danych, przedstawiania raportów, oraz szybkiego zarządzania operacjami. Złożone analizy przestrzenne powinny być wykonywane przez oprogramowanie obsługujące System Informacji o Terenie a nie jego poszczególne moduły. SIT, jako system wspomagający podejmowanie decyzji, szczególnie na poziomach regionalnym i krajowym, powinien być obsługiwany przez hurtownie danych i programy typu OLAP (On Line Analytical Processing - programy przetwarzania analitycznego).
Warunki, jakie powinny spełniać programy do prowadzenia modułów systemu informacji o terenie w sposób najbardziej ogólny można podzielić na merytoryczne oraz informatyczne. Przy podejmowaniu decyzji o wyborze oprogramowania istotne są również kryteria wdrożeniowe oraz ekonomiczne i handlowe. Przed dokonaniem zakupu warto przeanalizować koszty bezpośrednie oraz pośrednie związane z nabyciem oprogramowania oraz wynegocjować korzystną umowę z producentem.
Rozważając warunki, jakie powinno spełniać oprogramowanie do prowadzenia baz danych SIT oraz mając na uwadze postulowaną przez wielu użytkowników homologację, należy pamiętać o konieczności parametryzacji proponowanych kryteriów i przygotowaniu specjalnych procedur testujących.
Kryteria merytoryczne związane są ze spełnieniem wymogów przewidzianych prawem i przepisami (standardami) technicznymi. Jeżeli oprogramowanie nie spełnia wymogów aktualnie obowiązującego prawa, to jakiekolwiek inne zalety nie mogą stanowić podstawy do prowadzenia w nim obligatoryjnych baz danych SIT. Jednocześnie oprogramowanie powinno charakteryzować się pewną elastycznością w stosunku do prawa i przepisów technicznych, które mogą ulec zmianom.
Zamieszczone poniżej omówienie kryteriów merytorycznych zilustrowano konkretnymi przykładami odnoszącymi się do prowadzenia ewidencji gruntów i budynków.
Oprogramowanie powinno zapewniać zgodność zawartości informacyjnej zobowiązującymi przepisami prawnymi i technicznymi oraz zgodność reprezentacji graficznej obiektów taką reprezentację posiadających z obowiązującymi instrukcjami technicznymi.
Oprogramowanie powinno również zapewniać zgodność zakresu funkcjonalnego z obowiązującymi przepisami prawnymi i technicznymi.
W przypadku ewidencji gruntów i budynków zakres junkcjonalny powinien obejmować:
- założenie ewidencji gruntów i budynków:
- modernizację ewidencji gruntów i budynków;
- aktualizację ewidencji gruntów i budynków.
Oprogramowanie, powinno umożliwiać wygenerowanie dokumentów obligatoryjnych w formie dokumentów elektronicznych oraz wydruków.
W przypadku ewidencji gruntów i budynków będą to:
- wypis z danych opisowych ewidencji gruntów i budynków;
- wyrys z mapy ewidencyjnej;
- wykaz podmiotów;
- lista władających;
- skorowidz działek
- skorowidz adresów budynków;
- kartoteka budynku;
- wykaz budynków na dzień l stycznia każdego roku;
- wykaz gruntów na dzień l stycznia każdego roku;
- dziennik zgłoszeń zmian;
- zawiadomienie o zmianie;
- archiwum zapisów wycofanych.
Oprogramowanie powinno posiadać funkcje umożliwiające zaprojektowanie i wygenerowanie dodatkowych dokumentów w formie dokumentów elektronicznych oraz wydruków, takich jak:
Oprogramowanie powinno zapewniać integrację danych geometrycznych i opisowych, przy czym dane geometryczne i opisowe powinny być zapisane w profesjonalnej bazie danych (relacyjnej lub obiektowo-relacyjnej) i tworzyć spójną całość. Przechowywanie danych geometrycznych w bazie danych zamiast w plikach wektorowych ułatwia administrację danymi, ich archiwizację oraz zarządzanie bezpieczeństwem danych.
Oprogramowanie powinno posiadać funkcje umożliwiające prowadzenie pełnej archiwizacji zmienianych danych, w tym:
Oprogramowanie powinno umożliwiać wprowadzenie (migrację) danych z programów, w jakich były przechowywane do momentu przeniesienia do nowego systemu.
W przypadku ewidencji gruntów i budynków: z programów do prowadzenia części opisowej, np. MSEG, ISEG-M, EG-GMINA, EGB, EWOPIS, EWGRUN lub innych (w zależności od potrzeb użytkownika) oraz z programów do prowadzenia części kartograficznej, np. EW-Mapa, EWID, Mapa '95 lub innych (w zależności od potrzeb użytkownika).
Oprogramowanie powinno posiadać funkcje importu i eksportu danych w formatach:
Oprogramowanie powinno posiadać funkcje umożliwiające wykonywanie niezbędnych analiz przestrzennych.
W przypadku ewidencji gruntów i budynków będą to:
- ukazanie położenia działek ewidencyjnych tworzących nieruchomość gruntową;
- ukazanie położenia budynków tworzących nieruchomość budynkową;
- ukazanie położenia gruntów (działek ewidencyjnych) dla zadanego obszaru (np. obrębu), które znajdują się we władaniu posiadaczy zależnych;
- kontrola zgodności obszaru obrębu z powierzchnią wszystkich działek ewidencyjnych wchodzących w jego skład;
- analiza zgodności granic:
z granicami działek ewidencyjnych;
- obrębów i jednostek ewidencyjnych,
- jednostek terytorialnego (administracyjnego) podziału państwa,
- rejonów statystycznych i obwodów spisowych
- oraz rejonów urbanistycznych,
- wskazanie rozbieżności pomiędzy powierzchnią ewidencyjną i geodezyjną działki;
- wybór gruntów jednorodnych pod względem:
- przynależności do grup i podgrup rejestrowych,
- sposobu zagospodarowania gruntów (użytków),
- klas gleboznawczych;
- wskazanie:
- położenia działki ewidencyjnej według jej atrybutów (jednoznacznie ją identyfikujących),
- atrybutów działki według jej położenia;
- inne analizy dotyczące położenia działek lub budynków według kryteriów nakładanych na ich atrybuty (np. położenie, powierzchnie, ilość kondygnacji itp. oraz ich kombinacje).
Oprogramowanie powinno posiadać funkcje umożliwiające współdziałanie z innymi modułami informatycznymi wchodzącymi w skład SIT. Do funkcji tych należy zaliczyć przede wszystkim możliwość przekazywania danych do innych programów zapewnianą przez odpowiednie formaty danych, jak również możliwość korzystania z danych innych krajowych rejestrów urzędowych (np. system adresowy, system ewidencji ludności PESEL, REGON, NIP) do celów własnych.
Zapewnienie poprawnego działania oprogramowania powoduje konieczność sformułowania specyficznych wymagań technologicznych. Możemy te wymagania określić jako kryteria informatyczne.
Oprogramowanie powinno być przystosowane do pracy w systemie sieciowym w architekturze klient-serwer, czyli spełniać warunki współbieżności, wielodostępnościoraz transakcyjności.
Programy sieciowe używają mechanizmu współpracy zwanego klient-serwer. Termin "serwer" oznacza program, który przeznaczony jest do wykonywania określonych funkcji i obsługi wielu dowolnie odległych klientów naraz, działający na publicznie dostępnym komputerze i biernie czekający na połączenia. Programy tego typu są zazwyczaj umieszczane na wydajnych komputerach noszących nazwę "komputer klasy serwera". "Klientem" nazywany jest dowolny program użytkowy, który inicjuje kontakt z serwerem, działa lokalnie na komputerze osobistym użytkownika i nie wymaga specjalnego sprzętu ani wyrafinowanego systemu operacyjnego.
Zasadniczą cechą architektury klient-serwer jest współbieżność czyli jednoczesne wykonywanie wielu programów (funkcji). Współbieżny serwer pozwala na korzystanie ze swoich usług wielu klientom jednocześnie - kolejny klient nie musi czekać na zakończenie obsługi poprzedniego.
Oprogramowanie wielodostępne umożliwia jednoczesną pracę wielu użytkowników. Komunikują się oni z oprogramowaniem korzystając z połączeń sieciowych, w tym również za pomocą łączy internetowych. Oznacza to, że jednocześnie przetwarzanych jest wiele transakcji. Aby użytkownicy nie odczuwali swoich wzajemnych działań, oprogramowanie musi stosować specjalne techniki zarządzania transakcjami, czyli elementarnymi jednostkami pracy. Przed wykonaniem transakcji i po jej zakończeniu dane są spójne.
Specyfika obligatoryjnych baz SIT, a w szczególności ewidencji gruntów i budynków, powoduje, że użytecznym, a nawet niezbędnym narzędziem może okazać się funkcja umożliwiająca monitorowanie transakcji dla danych wykorzystywanych do podjęcia pewnych decyzji i sprawdzenie, czy dane te nie podlegają zmianom w chwili ich analizowania.
Dane są kluczowym elementem każdego systemu, dlatego też oprogramowanie powinno posiadać funkcje służące do kontroli i poprawy obsługiwanych danych, do ich ochrony przed niepowołanym dostępem oraz przed uszkodzeniem czy zniszczeniem.
Oprogramowanie powinno posiadać moduł do systemowego tworzenia kopii archiwalnych oraz możliwość automatycznego odtworzenia danych po awarii.
Oprogramowanie powinno posiadać funkcje weryfikujące poprawność wprowadzanych i modyfikowanych danych, informujące o znalezionych błędach oraz umożliwiające ich wyszukanie i poprawę.
Ochrona danych przed niepowołanym dostępem zapewniana jest przez dostęp wielopoziomowy, czyli zdefiniowanie użytkowników o różnych uprawnieniach do danych i funkcji oprogramowania. Zazwyczaj wśród użytkowników wyróżniamy użytkowników biernych, użytkowników czynnych (operatorów), administratorów danych i administratorów systemu.
Zagadnienie bezpieczeństwa danych komplikuje się w przypadku przesyłania ich za pomocą sieci komputerowych. Internet - prawie idealne medium do wyszukiwania i wymiany informacji, nie jest jednak bezpieczny. Wymusza to potrzebę budowania bezpiecznych sieci wirtualnych (VPN - Virtual Privet Network), umożliwiających komunikację między rozproszonymi sieciami niepublicznymi (w tym i urzędowymi) poprzez sieci publiczne.
Dane nie tylko mogą być obarczone błędami lub zmienione przez niepowołanych użytkowników, ale również zafałszowane zmianami wywołanymi zakłóceniami elektromagnetycznymi w sieci (błędy transmisji). Do zapewnienia integralności danych w takich sytuacjach wykorzystywane są bity parzystości, sumy kontrolne oraz CRC (Cyclic Redudancy Check - cykliczna kontrola redundancji).
Przed świadomą ingerencją dane podczas przesyłania zabezpieczane są za pomocą kodu uwierzytelnienia komunikatu (MAC - Message Authentication Code), wykorzystującego mechanizmy kryptograficznego rozpraszania.
Programy wykorzystujące standardy EDI (Electronic Data Interchange - elektroniczna wymiana danych) zapewniają następujące usługi związane z bezpieczeństwem danych:
Interfejsy użytkownika - funkcje umożliwiające korzystanie z aplikacji, uważane są za krytyczny element oprogramowania informatycznego. Procent kodu każdej aplikacji związany z interfejsem użytkownika jest znaczący i zwiększa się w miarę wzrostu złożoności interfejsów.
Interfejs użytkownika powinien być przyjazny, umożliwiać dostęp do pomocy kontekstowej oraz wyświetlać komunikaty o błędach.
Za przyjazny graficzny interfejs użytkownika należy uznać interfejs okienkowy składający się z rozwijalnego menu belkowego (paskowego), ułatwiającego wybór odpowiedniej funkcji oraz formatek ekranowych (elektronicznych formularzy) wypełnianych przez użytkownika, umożliwiających dostęp do danych i ich przetwarzanie. Zaawansowani użytkownicy oprogramowania (administratorzy) powinni mieć również możliwość korzystania z poleceń wprowadzanych w linii komend systemu operacyjnego.
Pożądane są listy podpowiedzi, wykorzystywane do ograniczenia zbioru wprowadzanych wartości oraz do przyspieszenia (ułatwienia) wprowadzanych danych.
Pomoc kontekstowa to fragmenty instrukcji wspomagające użytkownika w czasie pracy, skorelowane z wykorzystywaną właśnie fimkcją oprogramowania.
Przy ocenie interfejsu użytkownika należy zwrócić uwagę na jego efektywność, przyswajalność oraz elastyczność. Hierarchia menu powinna imitować zadania zinformatyzowanego systemu. Zastosowana terminologia powinna być spójna i zrozumiała dla użytkownika. Pożądane są różne interfejsy dla różnych grup użytkowników oraz menu dla użytkowników początkujących i doświadczonych. Użytkownik po wykonaniu Operacji powinien dowiedzieć się, czy jego działanie zakończyło się sukcesem (np. zobaczyć komunikat "nazwisko właściciela działki zostało zmienione"), a jeśli nie, to dlaczego (komunikat o błędzie). Komunikaty o błędach powinny być proste i znaczące. Wreszcie - interfejs nie powinien być przeładowany informacjami.
Wyróżniane są trzy główne typy modyfikacji oprogramowania:
Częścią składową oprogramowania powinna być przejrzysta dokumentacja, składająca się z komunikatów pomocy kontekstowej oraz instrukcji dla użytkowników wszystkich typów. Instrukcje powinny być dostępne w formie elektronicznej i tradycyjnej. Komunikaty pomocy kontekstowej i instrukcje powinny podlegać aktualizacji po każdej modyfikacji oprogramowania.
Na dokumentację oprogramowania składają się:
Oprogramowanie powinno zapewniać poprawną obsługę urządzeń peryferyjnych (głównie drukarek, ploterów i skanerów) niezbędnych do wprowadzania danych i drukowania dokumentów. Mogą to być rozwiązania własne lub też wykorzystujące możliwości, jakie dają w tym zakresie systemy operacyjne oraz platformy narzędziowe. Moduły do obsługi urządzeń peryferyjnych (sterowniki) powinny stanowić integralną część oprogramowania i uwzględniać sprzęt posiadany przez użytkownika.
Podstawowym celem wdrożenia oprogramowania jest zwiększenie wydajności instytucji odpowiedzialnej za prowadzenie baz danych SIT, poprawa komfortu pracy oraz jakości obsługi klientów. Wdrożone oprogramowanie powinno wyeliminować stosowane dotychczas metody tradycyjne. Jeśli wdrożone oprogramowanie nie doprowadziło do wyeliminowania tradycyjnych metod, to oznacza, że zamiast zwiększyć wydajność prawdopodobnie ją pogorszyło, zwiększyło koszty i wprowadziło bałagan w danych, które są teraz przechowywane dwukrotnie. Takie oprogramowanie, nawet jeśli dysponuje wieloma innymi zaletami, powinno być odrzucone jako nieprzydatne.
Ważnym parametrem jest czas wykonania pewnych zadań np. wygenerowania wyrysu czy wydruku o żądanej treści - wszystkie czynności związane z prowadzeniem baz danych SIT powinny być wykonywane sprawniej (szybciej) niż podczas prowadzenia metodą tradycyjną. Istotny jest również czas potrzebny pracownikom na osiągnięcie biegłości w obsłudze oprogramowania.
Efekty wdrożenia można ocenić również poprzez sprawdzenie, czy po wdrożeniu aplikacji zwiększyły się wpływy finansowe instytucji wykorzystującej oprogramowanie (np. ile wezwań do zapłacenia podatku od nieruchomości zostało wysłanych i jaki jest procent ich realizacji, czy zwiększyły się wpływy z udostępniania danych).
Oprogramowanie do prowadzenia baz danych SIT będzie funkcjonować w urzędach, gdzie ewidencje prowadzone są od lat według pewnych schematów i procedur. W chwili obecnej oprogramowanie powinno wpasować się w te procedury, ewentualnie uprościć je. W przyszłości, w miarę wprowadzania technik informatycznych i budowy społeczeństwa informacyjnego, zastosowanie komputeryzacji spowoduje najprawdopodobniej zmianę dotychczasowych procedur.
W przypadku wdrażania oprogramowania nowego należy zadbać o poprawne przeprowadzenie procedury testowania. Jeżeli oprogramowanie realizowane jest na specjalne zamówienie, to zwyczajowo zostaje przekazane do przetestowania przyszłemu użytkownikowi (testy alfa). W przypadku oprogramowania przeznaczonego do sprzedaży rynkowej powinno ono zostać bezpłatnie przekazane do przetestowania grupie użytkowników (testy beta).
Testowanie oprogramowania powinno obejmować sprawdzenie poprawności jego funkcjonowania na podstawie specjalnie do tego celu przygotowanej bazy danych. Działanie oprogramowania można sprawdzać również posługując się wybranym fragmentem danych rzeczywistych.
Jeżeli podczas etapu testowania została potwierdzona przydatność oprogramowania, to powinno ono zostać skierowane do wdrożenia pilotowego dla sprawdzenia działania w warunkach rzeczywistych. Programy bez wdrożenia pilotowego potwierdzonego przez instytucję niezależną od twórców oprogramowania nie powinny być dopuszczane do sprzedaży.
Obiektywna ocena spełnienia kryteriów ekonomicznych i handlowych jest bardzo trudna, warto jednak przed podjęciem decyzji o zakupie spróbować rozważyć najistotniejsze z nich.
Przy ocenie kosztów oprogramowania należy uwzględnić ich adekwatność w stosunku do możliwości oraz potrzeb użytkownika. Nie do przyjęcia jest sytuacja, gdy możliwości oprogramowania są niewystarczające. Przypadek istnienia funkcji wykraczających ponad potrzeby użytkownika należy również potraktować ostrożnie.
Należy zwrócić uwagę na ewentualne koszty dodatkowe:
W skład aplikacji do obsługi poszczególnych warstw Systemu Informacji o Terenie może wchodzić jeden lub wiele programów jednego lub wielu producentów, uzupełniających się i współdziałających ze sobą w celu spełnienia funkcji narzuconych przez prawo i przepisy techniczne.
Jednakże profesjonalne bazy danych (w chwili obecnej relacyjne, w najbliższej przyszłości obiektowo-relacyjne) należy potraktować jako obowiązkową platformę narzędziową dla oprogramowania nowego.
Obligatoryjne bazy danych SIT będą miały podstawowe znaczenie dla szerokiego kręgu odbiorców z różnych dziedzin oraz zasięg ogólnokrajowy. Istniejące profesjonalne bazy danych gwarantują pewność działania oraz bezpieczeństwo danych zgodnie ze standardami międzynarodowymi. Zapewniają możliwość pracy w systemie wielodostępnym w architekturze klient-serwer, są transakcyjne, posiadają zabezpieczenia działające na poziomach systemu operacyjnego, bazy danych, aplikacji Posiadają narzędzia wspomagające projektowanie i obsługę bazy danych. Niektóre z nich już w chwili obecnej próbują wprowadzić do swoich programów elementy obiektowości. Atrakcyjność wykorzystywania baz danych również w dziedzinie systemów informacji przestrzennej wyraźnie zwiększyła możliwość przechowywania w bazie danych nie tylko danych opisowych, ale również i geometrycznych.
Należy jednak wyraźnie zaznaczyć, że sam fakt zastosowania relacyjnej bazy danych jako platformy narzędziowej oprogramowania nie daje żadnych gwarancji poprawnego wykorzystywania jej możliwości. Główne zalety takich baz jak zintegrowane środowisko, bezpieczeństwo, transakcyjność, wielodostępność muszą być bezpośrednio zdefiniowane w kodzie programu.
Profesjonalne bazy danych mogą również posłużyć jako platforma narzędziowa do budowy wspomnianych we wstępie hurtowni danych - baz danych umożliwiających wypełnianie funkcji analitycznych wspomagających podejmowanie decyzji. Hurtownie danych służą do przechowywania bardzo dużych ilości danych, niezbędnych w procesie podejmowania decyzji. Nie są to dane z ostatniej chwili, lecz z określonego punktu w czasie. Użytkownicy hurtowni mogą dane przeglądać i przetwarzać, ale nie mają możliwości dokonania żadnych zmian. Aktualizacja hurtowni danych jest wykonywana okresowo. Dane zasilające hurtownię danych są wydzielane z systemów źródłowych, baz danych i plików, następnie integrowanej udostępniane użytkownikowi, który korzysta z nich posługując się tzw. wysuniętymi narzędziami dostępu. Do narzędzi tych zalicza się systemy zarządzania wielowymiarowymi bazami danych, narzędzia umożliwiające zadawanie zapytań i wizualizację ich wyników, a także zaawansowane narzędzia wspomagające podejmowanie decyzji. W przypadku korzystania z danych przestrzennych należy również pamiętać o narzędziach umożliwiających wykonywanie analiz przestrzennych.
W chwili obecnej oprogramowania modelowego jeszcze nie ma. Być może jest już projektowane, a być może znajduje się dopiero w sferze koncepcji. Przyszli użytkownicy oprogramowania mają więc przed sobą możliwość przygotowania się do współuczestniczenia w procesie projektowania i późniejszej realizacji projektu. Znajomość współczesnego warsztatu projektowego systemów informatycznych umożliwi sprawdzenie, czy oprogramowanie projektowane jest zgodnie z zasadami sztuki, a znajomość uniwersalnego sposobu zapisu projektu systemu pozwoli na aktywny udział w pracach projektowych i kontrolę realizacji projektu.