Ostatnio natknąłem się na prace Kartezjusza* “Rozprawa  metodzie”. Czytając to dzieło w rozdziale w części drugiej przeczytałem opis metody, którą niemalże bez zmian stosuje się dziś w procesie analizy  i projektowaniu systemów.

… Jak  mnogość  praw  dostarcza  często  usprawiedliwienia występkom, tak iż w państwie o wiele większy jest ład wówczas, gdy przy niewielkiej ilości praw są one bardzo  ściśle  przestrzegane,  podobnie,  zamiast  wielkiej  liczby  prawideł,  z  których  składa  się  logika,  sądziłem,  iż wystarczą  mi  następujące  cztery,  bylebym  postanowił  raz  na  zawsze  i  niezłomnie  nie  zaniedbać  ani  razu  ich  przestrzegania.
Pierwszym  było  nie  przyjmować  nigdy  żadnej  rzeczy  za  prawdziwą,  zanim  jej  nie  poznam  z  całą  oczywistością  jako  takiej:  to  znaczy  unikać  starannie  pośpiechu  i  uprzedzeń  i  nie  obejmować  swoim  sądem  niczego  poza  tym,  co  się  przedstawi  memu  umysłowi  tak  jasno  i  wyraźnie,  iż  nie  miałbym  żadnego  powodu  podania tego w wątpliwość.

Drugim – podzielić każde z rozpatrywanych zagadnień na tyle cząstek, na ile się da i ile będzie tego wymagać lepsze rozwiązanie. 

Trzecim  –  prowadzić  myśli  po  porządku,  zaczynając  od  przedmiotów  najprostszych  i  najłatwiejszych  do  poznania, aby następnie wznosić się pomału, jak gdyby po stopniach, aż do poznania bardziej złożonych; należy  się przy tym domniemywać prawidłowych związków nawet między tymi, które nie tworzą naturalnego szeregu.

Ostatnim – czynić wszędzie wyszczególnienia tak dokładne i przeglądy tak ogólne, abym był pewny, iż nic nie opuściłem. …

Otóż ten XVII filozof opisał to co dziś realizuję w praktyce w swojej pracy.

Po pierwsze analizując wymagania sprawdzam źródła, porównuję i upewniam się czy to co nam klient opisuje jest prawą. Po drugie dokonuję dekompozycji by podzielić to co trudne na mniejsze klocki, moduły, procesy itd.., Po trzecie wizję systemu przedstawiam w różnych perspektywach na różnych poziomach abstrakcji. Zaczynam od ogółu i idę do szczegółu.  I po czwarte. elementy łączę, mapuję, buduję zależności by móc nie tylko odnotowywać zależności ale także by móc dobrze dokumentować system nie pominąwszy ważnych dla systemy szczegółów.

Czyżby Kartezjusz by praojcem inżynierii oprogramowania? Raczej nie Uśmiech, ale zasady jakie opracował w XVII wieku mogą być pryncypialnymi zasadami metodycznego podejścia do fazy analizy i projektowania systemów informatycznych.

*Kartezjusz – francuski filozof, matematyk i fizyk, jeden z najwybitniejszych uczonych XVII wieku, uważany za prekursora nowożytnej kultury umysłowej (podaję za Wikipiedią)

Zostaw odpowiedź

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Możesz użyć tych HTML tagów i atrybutów: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Close