Progettazione galileana
Soprattutto all'interno del paradigma ad oggetti, la fase di design (molto discussa su cui è difficile trovare unanimità sul suo reale significato - può destare meraviglia ma è così), dicevo durante questa fase l'architetto è chiamato ad effettuare scelte e ad applicare regole che molto hanno a che fare con il metodo scientifico preconizzato da Galileo (e Bacone e da tanti altri e sui cui in un prossimo post proverò a dire qualcosa). Vediamo dunque le similitudini di metodo:
Astrazione. Senza andarne a cogliere il significato profondo, per un fisico questo significa far risultare dall'osservazione il passaggio dalla realtà ai simboli attraverso i quali la dominante osservata è quantificata (l'astrazione scorpora l'osservazione dai dettagli ritenuti non essenziali). Analogamente per l'architetto software quei simboli saranno i costrutti UML che nel loro insieme veicolano il significato del sistema (anche l'architetto effettua una scelta determinante nel quantificare gli aspetti essenziali da quelli secondari).
Modello. Dall'astrazione segue per il fisico un modello che semplifica il fenomeno osservato incapsulandolo in un "oggetto" molto più maneggevole e riproducibile su cui fare inferenza. Dall'altra sponda, l'architetto crea modelli software (che semplificando possiamo considerare artefatti molto tangibili) per aiutare a capire e su cui ragionare. Una immediata conseguenza è che si riduce l'ampiezza di indagine e si gestisce la complessità intrinseca in maniera diretta.
Il fisico poi procede alla ricerca di una legge che descriva il fenomeno, per poi passare agli esperimenti per giungere finalmente ad una teoria. Molto meno impegnativamente un architetto è chiamato a generalizzare i risultati - esperienza e sudore - per poter riusare l'esperienza. Questa è un specola di osservazione interessante da cui vedere la nascita dei pattern di design.
Giova sottolineare che sia i contenuti (scontato) sia gli strumenti (scontatissimo) delle due discipline sono assai differenti e a favore degli architetti (non essendo un fisico :)) vedo l'utilizzo facile di UML inteso però come strumento che fa leva sulle umane capacità di "visualizzione" dei concetti.
Certo loro hanno tutta la matematica che li sorregge...
