W obszarze inżynierii wymagań możemy wyróżnić różne typy i poziomy wymagań – od klasycznej klasyfikacji wymagań biznesowych, interesariuszy i rozwiązania, poprzez szczegółowy model jakości oprogramowania znany ze standardu ISO 25010.
Na poziomie rozwiązania znajdują się dwie podstawowe kategorie wymagań:
- funkcjonalne – w wielu przypadkach skupiamy się niestety wyłącznie na aspektach funkcjonalnych, co może prowadzić do przeoczenia istotnych cech jakościowych, mających krytyczne wpływ na postrzeganą przez odbiorców jakość produktu,
- jakościowe – wśród wymagań jakościowych szczególne znaczenie mają wymagania bezpieczeństwa, ponieważ nie tylko są kluczowe dla wielu systemów, ale również stanowią znaczne wyzwanie w ich specyfikacji i implementacji ze względu na potrzebę szerokiej ekspertyzy technicznej.
Wymagania bezpieczeństwa w przypadku wielu systemów są krytyczne – wiążą się one bowiem bezpośrednio z cyberbezpieczeństwem, czyli kluczową kwestią w naszym cyfrowym świecie, gdzie niemal wszystko jest połączone przez „światową sieć komputerową” (World Wide Web).
Ta współzależność obejmuje różne dziedziny, w tym:
- systemy wsparcia biznesu,
- aplikacje domowe,
- samochody,
- inteligentne zegarki,
- inteligentne domy.
Wszechobecne poleganie na połączonych technologiach podkreśla kluczową rolę wymagań bezpieczeństwa w ochronie naszych danych, prywatności i ogólnego dobrostanu cyfrowego, na co szczególną uwagę powinni zwracać opisaniu w artykule analitycy biznesowi.
Wymagania bezpieczeństwa
Rozpocznijmy od wyjaśnienia, czym są wymagania bezpieczeństwa (źródło: Słownik IREB):
Stopień, w jakim system chroni swoje dane i zasoby przed nieautoryzowanym dostępem lub użyciem i zapewnia niezakłócony dostęp i użytkowanie dla swoich legalnych użytkowników.
Uwaga: Wymagania bezpieczeństwa mogą być określone jako wymagania jakościowe lub w formie wymagań funkcjonalnych. Cyberbezpieczeństwo z kolei to praktyka obrony komputerów, serwerów, urządzeń mobilnych, systemów elektronicznych, sieci i danych przed złośliwymi atakami.
Ujmując rzecz w prostych słowach: wymagania bezpieczeństwa odnoszą się do mechanizmów chroniących system przed atakami. Są jednym z kilku rodzajów wymagań klasyfikowanych jako wymagania jakościowe.
Wymagania bezpieczeństwa mogą dotyczyć różnych aspektów:
- fizyczna lokalizacja (np.: serwery muszą być zlokalizowane na terytorium Rzeczypospolitej Polskiej),
- logiczne oddzielenie (np.: na miejscu lub w chmurze).
Mogą także wiązać się z przestrzeganiem różnych norm i standardów. Jednym z najpopularniejszych wytycznych dla bezpieczeństwa jest OWASP Top 10. Ten dokument służy jako standardowe źródło świadomości dla programistów i bezpieczeństwa aplikacji internetowych, reprezentując szeroko akceptowany konsensus co do najważniejszych zagrożeń bezpieczeństwa dla aplikacji internetowych.
Ponadto, wymagania bezpieczeństwa mogą być narzucone przez regulatorów w konkretnych sektorach, takich jak branża bankowa. Wówczas obejmują zarówno aspekty niefunkcjonalne (np.: szyfrowanie danych za pomocą AES-256 z zarządzaniem kluczami i kopią zapasową przez moduły bezpieczeństwa sprzętowego) jak i funkcjonalne (np.: metody dostępu do danych zapewniane przez system).
Czy wymagania bezpieczeństwa są naprawdę tak ważne?
Odpowiedź na to pytanie jest bardzo prosta. Tak, wymagania bezpieczeństwa są kluczowe, ponieważ ich niespełnienie może prowadzić do odrzucenia projektu przez klienta, nawet jeśli pozostałe charakterystyki jakościowe zostały zaimplementowane poprawnie.
Wymagania bezpieczeństwa mają znaczenie w niemal każdym projekcie, szczególnie gdy system obsługuje wrażliwe dane, takie jak informacje o klientach. Jednak nie zawsze są one jasno sformułowane, co często staje się problemem. Klient musi wiedzieć lub przynajmniej rozumieć oczekiwany i wymagany poziom bezpieczeństwa, ponieważ obecnie stanowi on ważny czynnik finansowy w całkowitym projekcie.
Zaufanie to waluta bezpieczeństwa. Problemy związane z lukami bezpieczeństwa są bardzo widoczne i mogą wystawić firmę na krytykę ze strony całego rynku, skutkując znacznymi stratami finansowymi i karami, ale – co jest równie ważne w perspektywie długoterminowej – mogą zaszkodzić reputacji firmy. W końcu – kto chciałby trzymać swoje pieniądze w banku, który „nie może chronić” ich danych przed wyciekami?
W wielu przypadkach wymagania bezpieczeństwa są uznawane za „ABSOLUTNIE KONIECZNE”, nie pozostawiając miejsca na zakończenie projektu lub uzyskanie akceptacji klienta, jeśli te wymagania nie są spełnione. Istotne jest zatem przeprowadzenie dokładnej analizy tych wymagań i ich doprecyzowanie, aby upewnić się, że mogą być spełnione w ramach ograniczeń projektu. Niektóre specyfikacje dostarczone przez klienta bywają niejasne lub pozornie osiągalne, ale bez odpowiedniej analizy, weryfikacji i oceny wykonalności, mogą prowadzić do poważnych problemów w późniejszych etapach projektu.
Problemy z bezpieczeństwem i ich konsekwencje
W tabeli zaprezentowaliśmy wybrane przykłady problemów z bezpieczeństwem wraz z ich skutkami:
Wyciek danych | Powód naruszenia | Koszt problemu | Kary |
Wyciek Edwarda Snowdena | Wewnętrzny wyciek klasyfikowanych danych | Szacowany na 3-5 miliardów dolarów | Snowdenowi postawiono zarzuty na podstawie ustawy o szpiegostwie, azyl w Rosji |
Naruszenie danych Equifax | Zaniedbanie pracownika | Ponad 4 miliardy dolarów | Ugody z FTC, CFPB, Prokuratorami Generalnymi stanów i pozwy zbiorowe |
Sabotaż w Tesli | Niezadowolenie pracownika | Nieujawnione | Pracownikowi postawiono zarzuty karne i został pozwany przez Teslę |
Wyciek danych Morgan Stanley | Kradzież danych klientów przez pracownika | Nieujawnione | Pracownik został zwolniony, szczegóły nie są publicznie dostępne |
Więcej o tych problemach dowiecie się ze źródeł:
- wyciek Edwarda Snowdena: The Guardian oraz BBC News,
- naruszenie danych Equifax: FTC, CFPB oraz CNBC,
- sabotaż wewnętrzny w Tesli: CNBC oraz The Verge,
- wyciek danych Morgan Stanley: Reuters oraz Business Insider.
Wymagania bezpieczeństwa a inne wymagania systemowe
Wymagania bezpieczeństwa mogą mieć znaczący wpływ na inne wymagania i często wpływają na krytyczne decyzje projektowe lub techniczne. W niektórych przypadkach ostateczny system może nie posiadać pewnych funkcjonalności oczekiwanych przez klienta, ponieważ te znacząco oddziałują na ogólny poziom bezpieczeństwa systemu. Zależność pomiędzy wymaganiami funkcjonalnymi a bezpieczeństwo działa w obie strony – pewne funkcjonalności mogą być konieczne ze względu na wymagania regulacyjne.
Rozważania architektoniczne i kwestie lokalizacji dodatkowo komplikują sytuację. Wszystkie te czynniki nie tylko wpływają na zakres systemu, ale także mają implikacje kosztowe. Zrównoważenie wymagań bezpieczeństwa z innymi potrzebami systemu jest delikatnym zadaniem, które wymaga starannego planowania i uwagi, aby zapewnić rozwój solidnego oraz zgodnego (z najlepszymi praktykami, wymaganiami regulatorów) rozwiązania.
Wymagania bezpieczeństwa a rola analityka biznesowego
Dość często można spotkać się z błędnym przekonaniem, że wymagania bezpieczeństwa są czysto techniczne i nie mają nic wspólnego z pracą analityka biznesowego czy systemowego. W wielu projektach analitycy skupiają się głównie na pozyskiwaniu wymagań funkcjonalnych od interesariuszy biznesowych, pozostawiając kwestie takie jak bezpieczeństwo i wydajność „innym”. Podejście to może prowadzić do znaczących problemów podczas realizacji projektu.
Jak wcześniej wspomnieliśmy, wymagania bezpieczeństwa mogą wpływać na architekturę systemu i inne aspekty. Opóźnienie ich pozyskania i analizy często skutkuje późniejszą koniecznością dokonywania kosztownych i ryzykownych zmian w systemie. Lepiej więc unikać podobnego ryzyka poprzez uwzględnienie wymagań bezpieczeństwa (jak i innych wymagań jakościowych) podczas wczesnych czynności pozyskiwania oraz analizy wymagań. Oczywiście typowy analityk biznesowy może nie posiadać głębokiej wiedzy technicznej, nadal ma jednak kompetencje w zakresie pozyskiwania i analizy wymagań, niezależnie od ich typu, a także sposobu ich zbierania.
Wymagania bezpieczeństwa są tylko konkretnym typem wymagań i mogą być pozyskiwane w ten sam sposób, co funkcjonalne lub inne rodzaje wymagań. Tak jak w przypadku innych wymagań, analitycy mogą korzystać z analizy dokumentacji, wywiadów i innych technik. Istotne jest skupienie się na zrozumieniu środowiska biznesowego i identyfikacji interesariuszy, w tym regulatorów.
Odpowiedzialności w zespole
Odpowiedzialnością analityka biznesowego jest zrozumienie kontekstu biznesowego i zidentyfikowanie potrzeb różnych interesariuszy, w tym organów regulacyjnych. Na podstawie tych informacji analityk może określić wymagania bezpieczeństwa, które mogą pojawić się, taki jak te związane z ochroną danych na mocy regulacji np.: RODO.
Szczegóły implementacji środków bezpieczeństwa są zadaniem dla zespołu deweloperskiego, a nie analityka. Współpraca w zespole jest kluczowa, a posiadanie członków z wiedzą zarówno biznesową, jak i techniczną zapewnia lepsze zrozumienie i minimalizuje nieporozumienia, gdy mowa nie tylko o wymaganiach bezpieczeństwa, ale o wszystkich wymaganiach technicznych.
Priorytetyzacja wymagań bezpieczeństwa kieruje się tymi samymi zasadami, co priorytetyzacja wymagań innego typu. Analizując potencjalne ryzyko związane z naruszeniami danych lub innymi problemami bezpieczeństwa, zespół może odpowiednio priorytetyzować środki bezpieczeństwa.
Podsumowując, wymagania bezpieczeństwa są tylko kolejnym zestawem wymagań. Kluczem jest zrozumienie ich pochodzenia, motywacji stojących za nimi oraz konkretnych rodzajów ryzyka, którym mają przeciwdziałać. Analitycy biznesowi odgrywają kluczową rolę w zbieraniu i analizowaniu tych wymagań, zapewniając kompleksowe zrozumienie potrzeb klienta, w tym kwestii bezpieczeństwa.
Jestem analitykiem. Nie znam się zbytnio na bezpieczeństwie
Co zrobić, jeśli brakuje Ci konkretnej wiedzy, aby skutecznie określić i zarządzać wymaganiami bezpieczeństwa? Co może Ci pomóc i gdzie możesz zdobyć podstawowe informacje?
W takiej sytuacji pierwszym krokiem jest przyznanie się do braku wiedzy i szukanie wsparcia u kolegów z zespołu lub ekspertów w dziedzinie. Cyberbezpieczeństwo to złożona i podlegająca stałej ewolucji dziedzina. Całkowicie akceptowalne (wręcz profesjonalne) jest przyznanie, że są obszary, w których możesz nie czuć się pewnie. Współpraca z kolegami posiadającymi niezbędną wiedzę może być korzystna i pomóc wypełnić luki.
Równie ważne jest proaktywne poszerzanie swojej wiedzy i zrozumienie istoty wymagań bezpieczeństwa. Istnieje wiele informacji dostępnych za darmo lub za stosunkowo niską cenę.
Jedną z cennych treści do zbadania jest OWASP (Open Web Application Security Project), który oferuje kompleksowy zakres zasobów związanych z bezpieczeństwem aplikacji internetowych.
Inne godne uwagi źródła to normy NIST (National Institute of Standards and Technology), takie jak:
- SP 800-160 Inżynieria bezpieczeństwa systemów,
- SP 800-53 Rev. 5 Kontrole bezpieczeństwa i prywatności dla systemów informacyjnych i organizacji,
- SP 800-218 Bezpieczne Ramy Rozwoju Oprogramowania (SSDF) Wersja 1.1: Rekomendacje dotyczące zmniejszania ryzyka wystąpienia podatności oprogramowania.
Wiele cennych informacji może również dostarczyć organizacja ISO (Międzynarodowa Organizacja Normalizacyjna) ze swoimi standardami, w szczególności:
- ISO/IEC 15408-1:2009 Technologie informacyjne – Techniki bezpieczeństwa – Kryteria oceny bezpieczeństwa IT – Część 1: Wprowadzenie i model ogólny lub
- ISO/IEC 13335-1:2004 Technologie informacyjne – Techniki bezpieczeństwa – Zarządzanie bezpieczeństwem informacji i technologii komunikacyjnych – Część 1: Pojęcia i modele zarządzania bezpieczeństwem informacji i technologii komunikacyjnych.
Jest jeszcze wiele innych cennych źródeł, jednak zapoznanie się z powyższymi pozycjami może być pierwszym krokiem w zdobywaniu wiedzy na temat bezpieczeństwa.
Podsumowanie
Śledzenie najnowszych wydarzeń w cyberbezpieczeństwie jest kluczowe, ponieważ jest to dziedzina ciągle się rozwijająca, z regularnie pojawiającymi się nowymi zagrożeniami i rozwiązaniami. Wiele źródeł, w tym blogi, kursy online i webinary, oferuje dostępne i dobrze napisane treści, które mogą pomóc Ci być na bieżąco i uczyć się o istotnych koncepcjach bezpieczeństwa (OWASP, normy ISO oraz NIST, a także artykuły naukowe np.: Security Threat Oriented Requirements Engineering Methodology).
Z punktu widzenia analityka biznesowego, istotne jest, aby podejść do procesu nauki z chęcią eksploracji tematu i pragnieniem zrozumienia wymagań bezpieczeństwa oraz ich wpływu na ogólną jakość systemu. Dzięki temu możesz efektywniej przyczynić się do powodzenia projektu i podejmować świadome decyzje, które priorytetyzują bezpieczeństwo.
Równie ważne jest to, aby nie obawiać się przyznać do braku eksperckiej wiedzy w dziedzinie bezpieczeństwa. Bycie otwartym na swoje luki w wiedzy i szukanie wsparcia u osób z odpowiednimi kompetencjami nie tylko ograniczy ryzyko wynikające z podejmowania błędnych decyzji, może również być znakomitym sposobem uzupełnienia braków kompetencyjnych. Otwarta komunikacja na temat obszarów, w których możesz potrzebować wsparcia, świadczy o uczciwości i buduje zaufanie, co jest podstawą praktyk bezpieczeństwa.
Ostatecznie, cyberbezpieczeństwo jest wspólną odpowiedzialnością, a kultywowanie kultury nauki i współpracy może znacznie poprawić postawę bezpieczeństwa organizacji. Wykorzystuj okazje do zdobywania wiedzy i współpracuj z ekspertami, aby upewnić się, że wymagania bezpieczeństwa są dobrze zdefiniowane i skutecznie zarządzane w Twoich projektach.
***
Jeśli interesuje Cię tematyka Cyberbezpieczeństwa, zajrzyj koniecznie również do innych artykułów naszych specjalistów.
Zostaw komentarz