Do wydruku PDF(info)

Modele i praktyka audytu informatycznego#

Andrzej Zalewski,  Rafał Cegieła,  Krzysztof Sacha
Instytut Automatyki i Informatyki Stosowanej,  Wydział Elektroniki i Technik Informacyjnych, Politechnika Warszawska
{a.zalewski, r.cegiela, k.sacha}@ia.pw.edu.pl

Streszczenie
W rozdziale wyróżniono i scharakteryzowano trzy modele audytu informatycznego: klasyczny (przez analogię do roli audytu ksiąg rachunkowych), formalny i merytoryczny. W odniesieniu do każdego z nich przedstawiono czynniki warunkujące działania podejmowane przez audytora: źródła i sposób pozyskania informacji o przedmiocie audytu, kryteria oceny, zakresy wiedzy niezbędnej do przeprowadzenia oceny. Szczególnie dużo miejsca poświęcono tzw. audytowi merytorycznemu, którego istotą jest ocena rozwiązań informatycznych na różnych etapach ich cyklu życia.

1. Wstęp#

Rosnące uzależnienie współczesnych przedsiębiorstw i innych organizacji od sprawnego funkcjonowania systemów informacyjnych, przy coraz większej złożoności rozwiązań informatycznych wchodzących w skład tych systemów, dało impuls do rozwoju tzw. audytu informatycznego – usług polegających na niezależnej ocenie rozwiązań informatycznych i organizacyjnych składających się na systemy informacyjne działające w organizacjach.

Celem niniejszego rozdziału jest przedstawienie podstawowych modeli, w jakich audyt informatyczny jest wykorzystywany w zarządzaniu przedsięwzięciami i systemami informatycznymi. Artykuł ten stanowi wynik doświadczeń w zakresie audytu informatycznego w projektach realizowanych przez Zespół Inżynierii Oprogramowania Instytutu Automatyki i Informatyki Stosowanej Politechniki Warszawskiej.

2. Modele audytu informatycznego#

Przedmiotem oceny w audycie informatycznym są:

Wymienionym wyżej przedmiotom odpowiadają poszczególne, rozważane w niniejszej pracy modele audytu:

Przyjęta klasyfikacja ma przede wszystkim walor poznawczy. W ramach jednego przedsięwzięcia audyt jest bardzo często realizowany wg kilku wymienionych wyżej modeli jednocześnie.

Główne zadania i problemy, jakie stają przed audytorem, to:

Powyższe kwestie wyznaczają sytuację audytora w omówionych poniżej modelach audytu informatycznego.

2.1. Model klasyczny#

W modelu klasycznym (nazwanym w nawiązaniu do funkcji pełnionej przez audyt finansowy) audyt informatyczny stanowi jeden z mechanizmów nadzoru nad organizacją. Jego celem jest odpowiedź na pytanie: czy dana organizacja posiada wystarczający nadzór nad wykorzystywanymi w niej systemami informacyjnymi (w szczególności nad systemami informatycznymi) oraz ich rozwojem. Ocena ta stanowi, obok oceny sprawozdań i ksiąg finansowych, składnik oceny wiarygodności przedsiębiorstwa i, w założeniu, element tzw. „ładu korporacyjnego” (ang. corporate goveranance).

W modelu tym ocenia się rozwiązania techniczne i organizacyjne składające się na funkcjonowanie systemów informacyjnych w danej organizacji względem modelu referencyjnego. Najpowszechniej stosowany jest model opisany w standardzie COBIT (ang. Control Objectives for Information and Related Technology) [COBIT].

Źródła i sposób pozyskania informacji zależą od dojrzałości danej organizacji. Informację o przedmiocie audytu pozyskuje się więc przede wszystkim na podstawie:

Do przeprowadzenia tak rozumianego audytu niezbędna jest wiedza na temat modelu referencyjnego opisanego w standardzie COBIT. Standard ten określa wzorcowy model procesów organizacyjnych zapewniających prawidłowy nadzór nad funkcjonowaniem i rozwojem infrastruktury teleinformatycznej przedsiębiorstwa. W modelu tym wyróżniono 4. dziedziny (ang. domains) odpowiadające cyklowi życia rozwiązań informatycznych w organizacji (por. rysunek 1). Obejmują więc one: planowanie i organizację, nabycie i implementację, dostarczenie i wsparcie, monitorowanie. W każdej z dziedzin wyróżniono procesy niezbędne dla prawidłowego nadzoru nad systemami informatycznymi w organizacji. Dla każdego procesu zdefiniowane zostały:

Standard obejmuje także wytyczne dotyczące procesu prowadzenia audytu poszczególnych procesów.

fig1.png
Rysunek 1. Dziedziny modelu COBIT.

2.2. Model audytu formalnego #

Istotą audytu formalnego jest ocena procesu wytwarzania (budowy) systemu informatycznego. Organizację przedsięwzięcia informatycznego można zobrazować jako strukturę dwuwarstwową, na którą składa się:

W audycie formalnym podstawą oceny są metodyki zarządzania i projektowania.

Metodyka zarządzania określa zwykle: procesy związane z zarządzaniem przedsięwzięciem i ich wzajemne powiązania, strukturę zespołu projektowego oraz sposób dokumentowania jego przebiegu. Przykładem metodyki zarządzania jest popularna na świecie metodyka PRINCE2 (ang. PRojects IN Controlled Environments). Metodyki zarządzania projektem nie są zwykle związane z żadną konkretną dziedziną zastosowań. W ramach metodyki zarządzania projektem wykorzystywane są z kolei metodyki projektowania.

Definiują one sam proces projektowania konkretnych rozwiązań informatycznych, sposób dokumentowania rozwiązań konstrukcyjnych (notacje i modele) oraz artefakty będące rezultatem poszczególnych faz projektowania.

W audycie formalnym bada się:

Źródłem informacji o przedmiocie audytu jest przede wszystkim dokumentacja związana z procesem projektowym oraz dokumentacja projektowa. Brak wymienionej wyżej dokumentacji lub nie stosowanie się do jakiejkolwiek metodyki zarządzania, czy projektowania sprowadza audyt formalny do stwierdzenia braku wyżej wymienionych. Praktyka dowodzi, że nie jest to przypadek odosobniony nawet w dużych przedsięwzięciach.

2.3. Model audytu merytorycznego#

Audyt merytoryczny ma na celu ocenę konkretnych rozwiązań informatycznych, a także całych systemów informatycznych na różnych etapach ich cyklu życia. Typowe sytuacje, w których przeprowadzany jest tak rozumiany audyt, to:

2.3.1. Kryteria oceny#

Celem audytu merytorycznego jest najogólniej: ocena sprawności rozwiązań informatycznych, przy czym przez sprawność rozumie się możliwość realizacji przez dane rozwiązanie powierzanych mu funkcji, w wymagany sposób. Jednakże przełożenie pojęcia „sprawność” na zestaw uniwersalnych kryteriów oceny nie wydaje się w ogólnym przypadku możliwe. W praktyce rozwiązania informatyczne oceniane są pod kątem właściwości takich, jak:

Z kolei wymienione powyżej właściwości rozwiązań informatycznych przekładają się na szereg kryteriów szczegółowych. Poniżej przedstawiono sytuację audytora przystępującego do oceny rozwiązań informatycznych pod kątem ww. właściwości.

2.3.1.1. Użyteczność#

Przez użyteczność rozumiemy spełnienie przez system wymagań funkcjonalnych, przy założeniu, że osiągnięte parametry wydajności i niezawodności systemu umożliwiają badanie funkcjonalności.

Przedmiotem oceny może być rozwiązanie informatyczne na dowolnym etapie jego cyklu życia, w skrajnym przypadku ocenie podlegać może specyfikacja wymagań względem dokumentów źródłowych.

2.3.1.2. Jakość#

Jakość nie jest pojęciem samoistnym lecz agregatem pojęciowym łączącym w sobie inne cechy składające się na to pojęcie (np. niezawodność, staranność wykonania, przydatność, ergonomia). W ocenie jakości oprogramowania wykorzystuje się m.in. powszechnie znany standard ISO 9126. Kryteria oceny jakości oprogramowania wg tego standardu zestawiono w tabeli 1. Ponadto standard definiuje:

Tabela 1. Kryteria oceny jakości oprogramowania
Grupa kryteriówKryterium
FunkcjonalnośćAdekwatność
Dokładność
Współdziałanie
Zgodność
Bezpieczeństwo
NiezawodnośćDojrzałość
Tolerancja błędów
Odtwarzalność
UżytecznośćZrozumiałość
Łatwość nauki
Łatwość użytkowania
WydajnośćCharakterystyki czasowe
Gospodarka zasobami
PielęgnowalnośćPodatność na analizę
Podatność na zmiany
Stabilność
Testowalność
PrzenośnośćŁatwość adaptacji
Łatwość instalacji
Zgodność
Zastępowalność

W odniesieniu do innych składników systemów informatycznych trudno jest przywołać właściwe normy jakościowe. W tym przypadku kryteriami oceny stają się:

2.3.1.3. Wydajność#

Ocena wydajności, w teorii, winna polegać na porównaniu wymaganych parametrów wydajnościowych rozwiązania z ich wartościami osiągniętymi przez zrealizowane rozwiązanie. Przeszkodą w zastosowaniu tego podejścia jest:

Typowo wymagania wydajnościowe formułowane są w kategoriach czasu reakcji na działania użytkownika oraz liczby przetwarzanych przez system danych, dokumentów itp. Oszacowanie tych wielkości na podstawie informacji projektowych jest zwykle nie możliwe. W efekcie ocena wydajności może być w sposób adekwatny prowadzona dopiero przez badanie już zrealizowanego rozwiązania.

Zagadnienie oceny wydajności rozwiązania informatycznego w wielu sytuacjach może zostać zdekomponowane na:

Pierwsze z ww. aspektów zmierza do oceny wiarygodności przyjętych założeń odnośnie ilości danych napływających lub przechowywanych w systemie oraz zastosowanych urządzeń wejściowych lub wyjściowych.

Ocena wydajności przetwarzania danych obok badań empirycznych może być poparta weryfikacją pod kątem stosowania tzw. dobrych praktyk, np. w konfiguracji bazy danych. Źródłem informacji o tych praktykach jest zwykle dokumentacja stosowanego komponentu (np. systemu zarządzania bazą danych).

2.3.1.4. Niezawodność#

Niezawodność jest miarą odporności rozwiązań na awarie. Wymagania niezawodnościowe winny być formułowane w sposób ilościowy. W odniesieniu do rozwiązań sprzętowych korzysta się zwykle z modelu średniego czasu między awariami (MTBF – ang. Mean Time Between Failure) – producenci poszczególnych komponentów systemu, zwłaszcza tych mechanicznych podają parametry tego typu dla wytwarzanych przez nich urządzeń.

W odniesieniu do wyższych warstw systemu obejmujących oprogramowanie aplikacyjne wymagania niezawodnościowe formułuje się w kategoriach maksymalnego akceptowalnego czasu awarii. Określenie wymagań w kategoriach MTBF jest wprawdzie możliwe, jednakże model ten nie obejmuje sytuacji niesprawności oprogramowania aplikacyjnego będącej rezultatem istniejącej usterki w oprogramowaniu, jak również na obecnym etapie brak jest możliwości oszacowania rzeczywistej wartości tego parametru dla złożonych rozwiązań.

Ocena niezawodności złożonych rozwiązań informatycznych ma więc przede wszystkim charakter jakościowy i obejmuje:

2.3.1.5. Bezpieczeństwo#

Bezpieczeństwo systemu jest miarą jego podatności na niepożądane zmiany i ingerencje. Właściwym punktem odniesienia dla oceny bezpieczeństwa są istniejące i uznawane standardy bezpieczeństwa TCSEC i ITSEC scharakteryzowane krótko poniżej.

Standard TCSEC#

Standard TCSEC (ang. Trusted Computer Security Evaluation Criteria) [TCSEC] został opublikowany przez Departament Obrony USA. Standard definiuje klasy bezpieczeństwa systemów komputerowych. Zostało zdefiniowanych 7 klas systemów (A1, B1, B2, B3, C1, C2, C3, D), przy czym systemy klasy A są najbezpieczniejsze a klasa D zawiera systemy nie spełniające norm właściwych dla pozostałych klas. Wymagania związane z każdą klasą bezpieczeństwa zostały podzielone na następujące kategorie:

Standard ITSEC#

Standard ITSEC (ang. information technology security criteria) [ITSEC] został sporządzony i przyjęty przez Unię Europejską w wyniku harmonizacji kryteriów wykorzystywanych w poszczególnych państwach Unii.

Standard definiuje dwie klasyfikacje systemów: związaną z deklarowanymi właściwościami systemu, określającymi jego bezpieczeństwo (ang. functionality class) oraz związaną z zapewnianiem, że zadeklarowany poziom bezpieczeństwa zostanie osiągnięty (ang. assurance class).

Deklarowane właściwości systemu mogą zostać skonfrontowane z właściwościami zdefiniowanymi przez tzw. sponsora systemu lub z właściwościami jednej z 10 przykładowych klas: F-C1, F-C2, F-B1, F-B2, F-B3, IN, AV, DI, DC, DX. Pierwsze 5 z przykładowych klas, to klasy mające odpowiedniki w standardzie TCSEC. Pozostałe, to klasy uwzględniające aspekty bezpieczeństwa związane z przyłączeniem do sieci komputerowej.

Standard sugeruje aby definicja klasy bezpieczeństwa składała się z następujących sekcji:

Ocena stopnia pewności, że system posiada zadeklarowane właściwości odbywa się na podstawie dwóch kryteriów:

Na podstawie tych kryteriów system jest przypisywany do jednej z klas noszących oznaczenia od E1 do E6. Zależność pomiędzy wynikami klasyfikacji zgodnej z ITSEC a klasami zdefiniowanym przez standard TCSEC przedstawia tabela 2.

Standardowi ITSEC towarzyszy dokument ITSEM (ang. IT Security Evaluation Manual) [ITSEM] określający szczegółowo zasady korzystania z tego pierwszego.

Tabela 2. Metody zapewnienia i oceny jakości. Źródło: [ITSEC]
Klasyfikacja ITSECKlasa TCSEC
E1, F-C1C1
E2, F-C2C2
E3, F-B1B1
E4, F-B2B2
E5, F-B3B3
E6, F-B3A1

2.3.1.6. Wiarygodność#

Pod pojęciem wiarygodności rozwiązania informatycznego rozumiemy stopień racjonalnego umotywowania poszczególnych decyzji konstrukcyjnych. W prawidłowo prowadzonych projekcie informatycznym każda istotna decyzja projektowa powinna zmierzać do osiągnięcia założonego celu, jakim jest realizacja zidentyfikowanych wymagań obejmujących zarówno funkcjonalność, jak i inne pożądane właściwości w tym właściwości niefunkcjonalne.

Cele te powinny więc być znane, udokumentowane i czytelnie powiązane z realizującymi je rozwiązaniami. Przedmiotem oceny staje się więc istnienie i poprawność ww. elementów.

Źródłami informacji są tutaj: w idealnym przypadku dokumentacja projektowa, a w praktyce także wywiady z autorami poszczególnych rozwiązań i innymi osobami zaangażowanymi w projekt.

2.3.1.7. Zgodność z odpowiednimi normami technicznymi#

Ocena względem tego kryterium dotyczy wyłącznie rozwiązań sprzętowych i polega na zbadaniu czy dane rozwiązanie posiada właściwości określone w odpowiednich normach technicznych. Ocena ta jest przeprowadzana w drodze badania deklaracji zgodności z odpowiednimi normami dawanymi przez wytwórców sprzętu lub bezpośrednich pomiarów ocenianej instalacji (np. sieci LAN, sieci zasilającej) lub urządzeń.

2.3.2. Źródła informacji#

Sposób pozyskania i źródła informacji w audycie merytorycznym są silnie uzależnione od konkretnej sytuacji projektowej: w idealnym przypadku informacje o przedmiocie audytu uzyskuje się na podstawie dokumentacji projektowej, powykonawczej, projektu i raportów testów oraz dokumentacji technicznej zastosowanych narzędzi komercyjnych, w nieco gorszym przypadku badając istniejący system i/lub dokumentację, w skrajnym zaś na podstawie informacji wydobytych w drodze wywiadu z osobami zaangażowanymi w realizację projektu oraz przez analizę dokumentacji technicznej produktów komercyjnych wykorzystanych przy budowie systemu.

Audyt merytoryczny wymaga posiadania obszernej i różnorodnej wiedzy na temat ocenianych rozwiązań informatycznych lub możliwości jej szybkiego pozyskania. W praktyce audytu często zachodzi konieczność konsultacji z ekspertami dziedzinowymi.

4. Uwarunkowania audytu według poszczególnych jego modeli#

Audyt
klasyczny
Audyt
formalny
Audyt
merytoryczny
Źródła
informacji o przedmiocie oceny
Dokumentacja procesów
biznesowych.
Pracownicy.
Bezpośrednie czynności na systemie
wykonywane przez audytora.
Dokumentacja
procesu zarządzania projektem.
Dokumentacja projektowa.
Trudne do kompletnego określenia a priori, przede wszystkim:
dokumentacja projektowa, badanie instalacji, makiet programów, wytworzonego oprogramowania, projekty i raporty z testów, dokumentacja użytkownika, dokumentacja powykonawcza, itd.
Kryteria ocenyModel wzorcowy np. COBIT.Zgodność z metodyką
zarządzania.
Zgodność z metodyką
projektowania.
Wymagają indywidualnego zdefiniowania w zależności od analizowanych rozwiązań informatycznych. Niekiedy wynikają ze standardów i norm.
Zakres
niezbędnej wiedzy
Zrozumienie procesów związanych z nadzorem nad SI.Znajomość metodyk zarządzania i projektowania.Wiedza merytoryczna na temat konkretnych rozwiązań informatycznych.
Konieczność konsultacji specjalistycznych.
Właściwe
normy
COBITStandardy
dokumentowania,
UML, RUP,
Metodyki i notacje strukturalne.
Metodyki zarządzania projektami (np. PRINCE2, FOCUS PM)
Normy dziedzinowe,
ISO 9126
(jakość oprogramowania),
normy bezpieczeństwa
(ITSEC, TCSEC)

5. Podsumowanie#

W rozdziale zaproponowano klasyfikację podstawowych modeli, w ramach których audyt informatyczny jest wykorzystywany w zarządzaniu przedsięwzięciami i systemami informatycznymi. Scharakteryzowano ponadto: dostępność i źródła informacji o przedmiocie audytu, kryteria oceny, zakres niezbędnej wiedzy oraz wskazano najistotniejsze normy wykorzystywane w audycie. Czynniki te określają sytuację audytora przy przeprowadzaniu audytu wg opisanych tutaj modeli.

Audyt klasyczny, dzięki istnieniu dobrze zdefiniowanych standardów systemu nadzoru nad systemami informatycznymi, jest obecnie zadaniem precyzyjnie zdefiniowanym. Jego przeprowadzenie wymaga ograniczonej wiedzy specjalistycznej i dobrej wiedzy z zakresu standardów nadzoru nad systemami informatycznymi.

Audyt formalny wymaga wiedzy z zakresu metodyk projektowania rozwiązań informatycznych oraz zarządzania projektami. Może on zostać przeprowadzony również przez osoby nie posiadające specjalistycznej wiedzy dziedzinowej, w szczególności informatycznej.

Audyt merytoryczny wymaga szczegółowej wiedzy specjalistycznej pozwalającej poznać i ocenić rzeczywiste rozwiązania techniczne i organizacyjne. Wymaga on samodzielnego, indywidualnego zdefiniowania kryteriów oceny, a często także umiejętności przeprowadzenia badań na konkretnym, działającym rozwiązaniu.

Przeprowadzenie oceny rozwiązań informatycznych na odpowiednim etapie ich tworzenia może znacząco ograniczyć ryzyko przedsięwzięcia i zwiększyć jakość ostatecznego rozwiązania. Z kolei kryteria oceny rozwiązań informatycznych mogą stanowić istotne wytyczne przy ich projektowaniu. W tym kontekście prace nad metodyką audytu merytorycznego mogą w istotny sposób wpłynąć na metody wytwarzania rozwiązań informatycznych.

Bibliografia#

[COBIT] COBIT 3rd Edition, IT Governance Institute, 2002.
[ISO9126] ISO/IEC 9126 : Information technology - Software Product Evaluation - Quality characteristics and guidelines for their use, 1991.
[ITSEC] European Orange Book, EC advisory group, Senior Officials Group - Information Systems Security, Department of Trade and Industry, London.
[ITSEM] Information Technology Security Evaluation Manual, EC advisory group, Senior Officials Group - Information Systems Security, Department of Trade and Industry, London.
[PRINCE2] strona internetowa metodyki PRINCE2, www.prince2.org.uk, www.prince2.com.
[TCSCEC] DoD 5200.28-STD Orange Book, American Department of Defence (DoD).

Tags:  Zapewnienie jakości, KKIO V