O wymaganiach Kilka słów o wymaganiach w projektach informatycznych

8gru/090

7 mitów na temat metod formalnych

Jakiś czas temu pisałem o tym, jakie metody powinniśmy stosować do różnych projektów, jedną z takich metod są podejścia formalne do zapisywania wymagań. Z badań wynika, że metody takie są mało popularne, jednym z powodów takiego stanu rzeczy są mity i przekonania, które wokół nich powstały. Artykuł "Seven Myths of Formal Methods" rozprawia się z siedmioma takimi mitami. Oto one:

Mit #1

Metody formalne zagwarantują, że oprogramowanie będzie idealne.

Niestety prawda jest taka, że nie ma żadnych metod, które mogą nam zagwarantować pewny sukces. Zwolennicy metod formalnych często przedstawiają je jako sposób na wszystkie bolączki projektów i zapewniają stuprocentowe powodzenie, a jako jedyny powód porażek przedstawiają niedoskonałość ludzi, którzy takie metody wykorzystują. Praktyka jednak pokazuje, że żadne mniej lub bardziej wyszukane nie są w stanie zagwarantować nam sukcesu.

Mit #2

Metody formalne sprawdzają się, bo umożliwiają udowodnienie, że oprogramowanie jest poprawne.

Weryfikacja poprawności jest tylko jednym z elementów metod formalnych i to tą najbardziej kosztowną, dlatego też bardzo często, jeśli system nie jest krytyczny, to ten element pomija się podczas pracy nad projektem.

Mit #3

Tylko bardzo krytyczne systemy mogą skorzystać z zalet notacji formalnych.

Oczywiście w przypadku systemów krytycznych zastosowanie notacji formalnych jest często koniecznością, nie oznacza to jednak, że pozostałe rodzaje systemów nie mogą skorzystać z zalet jakie niosą ze sobą podejścia formalne.

Mit #4

Metody formalne wymagają znajomości skomplikowanej  matematyki.

Jak wiadomo większość metod formalnych wywodzi się z matematyki, a ta często postrzegana jest jako coś wielce skomplikowanego i trudnego do opanowania. Okazuje się jednak, że w praktyce metody formalne są stosunkowo proste i łatwe do przyswojenia.

Mit#5

Metody formalne zwiększają koszty wytwarzania oprogramowania.

Nawet jeśli tworzenie specyfikacji w notacji formalnej, lub też późniejsza implementacja kosztują więcej (a niekoniecznie musi tak być!), to na pewno faza utrzymania oprogramowanie jest później dużo niższa.

Mit #6

Formalne notacje są niezrozumiałe dla klientów.

Pomimo swojej matematycznej natury notacje formalne niosą ze sobą różne inne sposoby prezentowania informacji, które mogą być bardziej zrozumiałe dla klientów.

Mit #7

Nikt nie wykorzystuje metod formalnych w rzeczywistych projektach.

Często metody formalne wiąże się ze środowiskiem naukowym, jakoby tylko one mają odpowiednie zdolności do operowania formalizmami. Badania pokazują jednak, że metody formalne mogą być (i są!) z powodzeniem wykorzystywane w rzeczywistych projektach przemysłowych,

Po szczegóły rozprawienia się z powyższymi mitami zapraszam do lektury artykułu. Zamiast mitów autor artykułu proponuje następujące fakty:

  • Notacje formalne pozwalają znaleźć błędy we wstępnym etapie tworzenia oprogramowania oraz pozwalają wyeliminować pewne klasy błędów.
  • Formalizmy zmuszają do intensywnego przemyślenia koncepcji tworzonego systemu.
  • Praktycznie dotworzenia  każdego rodzaju oprogramowania można wykorzystać metody formalne.
  • Notacje formalne bazują na specyfikacji matematycznej, która jest dużo prostsza do zrozumienia niż kod programu.
  • Metody formalne mogą zmniejszyć koszty wytwarzania oprogramowania.
  • Klienci mogą lepiej zrozumieć budowany system tworzony z wykorzystaniem notacji formalnych.
  • Wiele rzeczywistych projektów przemysłowych wykosztuje formalizmy.
Podziel się:
  • Google Bookmarks
  • Twitter
  • del.icio.us
  • Wykop
  • Digg
  • Facebook
  • LinkedIn
  • StumbleUpon
  • FriendFeed
Komentarze (0) Trackbacks (0)

Brak komentarzy.


Dodaj komentarz


Brak trackbacków.

Get Adobe Flash playerPlugin by wpburn.com wordpress themes