Stosowanie argumentacji zaufania w assurance case

Argumentacje zaufania (confidence argument) pomagają uzasadnić, że główne argumentacje w assurance case są skuteczne i wiarygodne. Podczas gdy argumentacja główna bezpośrednio odnosi się do bezpieczeństwa systemu, celem argumentacji zaufania jest odpowiedź na pytanie, dlaczego powinniśmy ufać, że argumentacja główny jest wiarygodna. Niektóre standardy i wytyczne, a także niektóre organizacje certyfikujące, wymagają wykazania wprost argumentacji zaufania, czyli spójnego i kompletnego uzasadnienia dla argumentacji głównej.

Punktem początkowym jest zademonstrowanie zaufania w pojedynczym kroku argumentacji. Istnieje kilka sposobów, aby to zrobić. Poniżej przedstawiamy zastosowanie elementów argumentacji typu uzasadnienia. Standard GSN, wersja 3, w sekcji 1:2.2.18 podaje: „Uzasadnienie może być również powiązane ze strategią, aby zapewnić wsparcie dla argumentacji opisanej przez strategię” („A justification can also be connected to a strategy, to provide backing for the argument described by the strategy”). O to właśnie chodzi. Potrzebujemy wyraźnego wsparcia dla kroku wnioskowania argumentacji opisanego przez strategię. Wsparcie powinno mówić, na jakiej podstawie powinniśmy zaufać, że dana argumentacja jest właściwa, działająca dla pełnego wymaganego zakresu, wspierana przez wszystkie wymagane przesłanki, a wszystkie znane problemy i słabości zostały rozwiązane. Aby stworzyć takie wsparcie, rozszerzyliśmy stosowanie elementu typu Uzasadnienia o możliwość jego wsparcia przez argumentację. Umożliwiamy również powiązanie uzasadnień z postulatami zaufania (confidence claims). Takie podejście pozwala na oddzielenie argumentu głównego od argumentu o pewności.

PREMIS rozszerza strukturę argumentacji GSN umożliwiając wsparcie uzasadnienie przez dowolną argumentację. Poniższy diagram przedstawia po lewej stronie prostą argumentację bezpieczeństwa z uzasadnieniem J1, które jest linkiem do postulatu zaufania CC1. Jego struktura argumentacji jest przedstawiona po prawej stronie. Ten przykład ilustruje, jak można zaimplementować argumentację zaufania i jak jest ona powiązana z główną argumentacją bezpieczeństwa.

To podejście można zastosować zarówno do poszczególnych kroków argumentacji, jak i do przypadków pełnego zapewnienia bezpieczeństwa.

  • Argument główny stwierdza, że osiągnięto akceptowalny poziom bezpieczeństwa systemu. Każde stwierdzenie w tym argumencie przyczynia się do osiągnięcia bezpieczeństwa systemu.
  • Argument pewności powinien uzasadniać, że każdy krok argumentacji argumentu głównego jest prawidłowy. Nie przyczynia się to bezpośrednio do bezpieczeństwa systemu, ale jest wymagane, aby zaufać głównemu argumentowi bezpieczeństwa. Jeśli nie możemy przedstawić przekonującego argumentu pewności dla danego kroku argumentu głównego, nie możemy ufać jego poprawności.

Przykład argumentacji bezpieczeństwa i wiarygodności procesu

Poniższy diagram mapy argumentacji przedstawia to zastosowanie opisywanego podejścia dla prostego przykładu assurance case. Mapa argumentacji pokazuje strony diagramów sekcji argumentacji. Dla każdej strony podana jest nazwa głównego postulatu danej strony. Lewa część diagramu zawiera główną argumentację bezpieczeństwa, a argumentacja zaufania jest wyświetlana po prawej stronie. Pełna argumentacja tego assurance case jest dostępna online w systemie PREMIS pod poniższym linkiem.

Przedstawiona tutaj argumentacja zaufania zawiera zaledwie pięć postulatów, co jednak wystarcza do zademonstrowania jej struktury. Powinna być tworzona bezpośrednio w oparciu o proces rozwoju systemu lub jego cykl życia. Argumentacja zaufania powinna być z jednej strony spójna z procesem rozwoju, a jednocześnie zachowywać spójność ze strukturą głównej argumentacji bezpieczeństwa. Dla każdego kroku głównej argumentacji należy przedstawić odpowiadającą mu argumentacje zaufania. W praktyce będą istnieć setki postulatów zaufania oraz linków do argumentacji bezpieczeństwa. Chociaż zastosowanie bramek jakości i innych punktów kontrolnych wdrożonych w procesie zapewnienia bezpieczeństwa może uprościć powiązanie tych dwóch argumentacji, to cały czas argumentacja zaufania musi pokrywać swoim zasięgiem wszystkie wymagania odpowiednich standardów w zakresie procesu rozwoju systemu.

To podejście można rozszerzyć o stosowanie dodatkowych warstwy argumentacji. Na przykład w wytycznych MISRA dotyczących argumentacji bezpieczeństwa w motoryzacji zaproponowano kolejną warstwę argumentacji o nazwie „Środowisko organizacyjne”, która powinna zawierać argumentacje wykazującą, że wszystkie działania w cyklu życia systemu są wykonywane przez organizację w odpowiednim środowisku, obejmującym między innymi system zarządzania jakością (SZJ), proces ciągłego doskonalenia i odpowiednie kwalifikacje zespołu.

Podział warstw argumentacji poprzez stosowanie oddzielnych gałęzi lub modułów argumentacji może ułatwić zarządzanie dużymi assurance case podczas rozwoju, przeglądów i utrzymania systemów. Relacje między główną argumentacją a warstwami argumentacji zaufania są łatwe do utrzymania w systemie PREMIS, gdy struktura argumentacji głównej jest spójna z procesem rozwoju systemu.