Szablony assurance case bazujące na modelach

Pracujemy nad rozszerzeniem wzorców GSN o powiązania do modeli kontekstowych systemu. Wzorce GSN obejmują abstrakcję argumentacji, ale szczegóły jak ona działa nie są dokładnie opisane. Można zdefiniować postulat „{System S} jest wystarczająco bezpieczny”, ale Standard GSN nie powie, w jaki sposób zarządzać parametrem S. Można znaleźć publikacje, jak argumentacje bazujące na modelach mogą działać dla SACM, ale nie ma takich informacji w Standardzie GSN.

Pracujemy nad rozwiązaniem umożliwiającym systematyczne odwołania szablonów argumentacji do modeli systemu z zapewnieniem spójności dla modularnego assurance case. Budujemy to jako rozszerzenie parametrów szablonów argumentacji proponowane w Standardzie GSN.

Poniższy rysunek przedstawia szablon w stylu GSN po lewej stronie i odpowiadający mu szablon oparty na modelu po prawej stronie. Można zauważyć kilka różnic między tymi dwoma szablonami.

  • Szablon oparty na modelu określa warunek, że G3 jest tworzony tylko wtedy, gdy atrybut contracts w C nie jest pusty, gdzie C jest typu Component. Ten formalny warunek odpowiada opisowi tekstowemu opcjonalnej instancji w szablonie GSN.
  • Zamiast czarnego koła dla wielokrotnej instancji we wzorcu GSN, wzorzec oparty na modelu określa, że G9 powinien być tworzony dla każdego K, które należy do atrybutu contracts w C.
Model-based assurance case pattern

Warunki określone w takim szablonie będą działać z System Assurance Reference Model (SARM), który opisuje cały kontekst assurance case. Może to obejmować modele architektury systemu, modele ryzyka (zagrożenia, zagrożenia itp.), środowisko, warunki operacyjne, procesy cyklu życia i inne istotne czynniki.

Podejście jest opisane w naszym artykule „Automated Generation of Modular Assurance Cases with the System Assurance Reference Model” opublikowanym w grudniu w the ACM Journal Formal Aspects of Computing (https://dl.acm.org/doi/10.1145/3685936)

Obecnie prowadzimy eksperymenty z prototypowym narzędziem, które generuje modularne assurance case na podstawie szablonów odwołujących się do modeli kontekstowych. Generowane są pliki XML definiujące assurance case, które są następne importowane do PREMIS. Prowadzimy testy generowania argumentacji, a w kolejnym etapie naszego projektu będziemy pracować nad aktualizowaniem assurance case dla zmian w modelach systemu.

Jeżeli jesteś zainteresowany takim podejściem do stosowania szablonów assurance case, chętnie przedstawimy nasze podejście i sprawdzimy, czy będzie też skuteczne dla Twoich szablonów.