Wykład X
Jakość i niezawodność SI

 

Jakość oprogramowania – czynniki


 

  • Poprawność określa, czy oprogramowanie wypełnia postawione przed nim zadania i czy jest wolne od błędów.
  • Łatwość użycia jest miarą stopnia łatwości korzystania z oprogramowania.
  • Czytelność pozwala na określenie wysiłku niezbędnego do zrozumienia oprogramowania.
  • Ponowne użycie charakteryzuje przydatność oprogramowania, całego lub tylko pewnych fragmentów, do wykorzystania w innych produktach programistycznych.
  • Stopień strukturalizacji (modularność) określa, jak łatwo oprogramowanie daje się podzielić na części o dobrze wyrażonej semantyce i dobrze wyspecyfikowanej wzajemnej interakcji.
  • Efektywność opisuje stopień wykorzystania zasobów sprzętowych i programowych stanowiących podstawę działania oprogramowania.
  • Przenaszalność mówi o łatwości przenoszenia oprogramowania na inne platformy sprzętowe czy programowe.
  • Skalowalność opisuje zachowanie się oprogramowania przy rozroście liczby użytkowników, objętości przetwarzanych danych, dołączaniu nowych składników, itp.
  • Współdziałanie charakteryzuje zdolność oprogramowania do niezawodnej współpracy z innym niezależnie skonstruowanym oprogramowaniem.

 

 

Normy ISO 9000

Normy ISO 9000

 

Dawniej mówiono o kontroli jakości, potem przedmiotem wysiłków było sterowanie jakością, następnie dbano o zapewnienie jakości i wreszcie obecnie hasłem przewodnim jest zarządzanie jakością.

 

Zarządzanie jakością systemu informatycznego jest jednym z najważniejszych zadań projektanta.

 

 

Kontrola jakości

Sterowanie jakością

Zapewnienie jakości

Zarządzanie jakością

Okres

60-...

70-...

80-...

90-...

Cel

Ewaluacja i uzyskanie jakości na końcu łańcucha

Regularność uzyskiwania jakości

Zapewnienie sterowania jakością

Zapewnienie zaufania

Ustawiczne doskonalenie jakości

Stosowane środki

Test:

- statyczny

- dynamiczny

Zdefiniowany, udokumentowany i opomiarowany proces:

- Proces standardowy

- Cykle życia

- Metody, narzędzia, zadania i procedury

- Bazy danych procesu

Zdefiniowany, udokumentowany i zweryfikowany system jakości:

- Audity

- Zapisy jakości

Zdefiniowany, udokumentowany i doskonalony system jakości:

- Przyczynowa analiza błędów

- Nadzór technologiczny

- Uwzględnianie potrzeb klientów, kierownictwa, pracowników

Jakość oferty

- Po opracowaniu

- W trakcie

- Przed opracowaniem

- Ustawiczna

 

- Tak (oprogramowanie)

 

- Tak

- Tak (terminy i koszty)

 

- Tak (+ usługi)

- Tak

- Tak (gwarancja)

 

- Tak

- Tak

- Tak (jeżeli stosowane jest zapewnienie jakości)

- Tak

Sposób otrzymania jakości produktów

Detekcja/korekcja na końcu łańcucha (oprogramowanie dostarczone)

Detekcja/korekcja na końcu łańcucha (produkty pośrednie)

Detekcja/korekcja w trakcie projektowania. Detekcja/korekcja w odniesieniu do procesu

Detekcja/korekcja w trakcie projektowania. Detekcja/korekcja w odniesieniu do procesu jeżeli stosowane jest zapewnienie jakości). Zapobieganie błędom poprzez analizę przyczynową.

Działy przedsiębiorstwa, których dotyczy problematyka jakości

Dział dostosowań

Dział opracowań

Dział opracowań, Dział rozwoju, Dział administracji, Dział kontroli jakości

Dział opracowań, Dział rozwoju, Dział administracji, Dział kontroli jakości

Średnia skuteczność (Liczba błędów na jeden milion linii kodu)

3000

100

70

<10

 

Ze względu na innowacyjność zwykle najbardziej cenione są programy tworzone przez młode zespoły programistów.

 

Z problemem jakości systemów informacyjnych wiąże się problem zapewnienia odpowiedniej niezawodności ich działania.

 

Różne kategorie ryzyka

Kategorie ryzyka

 

Etapy przygotowania strategii zabezpieczeń


 

  • Sprecyzowanie, co i przed czym mamy chronić, czyli określenie zasobów chronionych i zagrożeń.
  • Określenie prawdopodobieństwa poszczególnych zagrożeń
  • Określenie zabezpieczeń, czyli, w jaki sposób chronimy zasoby
  • Ciągłe analizowanie SI i zabezpieczeń w celu aktualizacji procedur zabezpieczających poprawiania jego ewentualnych błędów

 

 

Ryzyka można unikać albo można nim świadomie sterować

 

Sterowanie ryzykiem to działanie mające na celu ograniczanie ryzyka poprzez planowanie, projektowanie i wdrażanie rozwiązań mających zapewnić utrzymanie ryzyka na poziomie możliwym do zaakceptowania.

 

Etapy sterowania ryzykiem:


 

  • wskazywanie zagrożeń
  • rozpoznawanie zagrożeń
  • analiza ryzyka
  • planowanie i przeciwdziałanie ryzyku
  • określenie i projektowanie działań
  • wdrażanie standardów i procedur
  • przeciwdziałanie ryzyku

 

 

Główne przyczyny awarii systemów

Przyczyny awarii systemów

 

Co oznacza określony poziom niezawodności i dostępności systemu informatycznego


Poziom niezawodności

 

Schemat aplikacji internetowej wraz z elementami jej zabezpieczenia

Zabezpieczenie aplikacji

 

Typy najczęściej spotykanych zagrożeń w sieci komputerowej


 

  • fałszerstwo komputerowe,
  • włamanie do systemu, czyli tzw. hacking,
  • oszustwo, a w szczególności manipulacja danymi,
  • manipulacja programami,
  • oszustwa, jakim są manipulacje wynikami,
  • sabotaż komputerowy,
  • piractwo,
  • podsłuch,
  • niszczenie danych oraz programów komputerowych

 

 

Klasyfikacja ataków na systemy komputerowe:


 

  • atak fizyczny,
  • atak przez uniemożliwienie działania,
  • atak przez wykorzystanie „tylnego wejścia”,
  • atak poprzez błędnie skonfigurowaną usługę,
  • atak przez aktywne rozsynchronizowanie tcp

 

 

Wpływ poszczególnych czynników na bezpieczeństwo systemów komputerowych:

czynniki bezpieczeństwa

 

Na tworzenie warunków bezpieczeństwa systemów komputerowych w firmie składają się działania techniczne i działania organizacyjne.

 

Łatwiejsze do zdefiniowania i do wyegzekwowania są z reguły działania techniczne.

 

Najważniejsze z działań technicznych polegają na szyfrowaniu przesyłanych i przechowywanych informacji oraz korzystanie z techniki podpisów elektronicznych.

Bezpieczne algorytmy realizacji transakcji w sieciach komputerowych oparte są na kryptografii.

 

Najczęściej stosowanymi algorytmami kryptograficznymi z kluczem jawnym, mającymi na celu ochronę danych podczas transmisji internetowych wykorzystywanych w handlu elektronicznym, są algorytmy RSA i ElGamala.

 

W zakresie działań organizacyjnych trzeba zapewnić bezpieczeństwo informacji poprzez odpowiednią strukturę służb informacyjnych. Struktura ta może być uproszczona dla małej firmy, jednak nie może być zredukowana do zera.

 

Uproszczona struktura służb informacyjnych

Struktura uproszczona