Fatti:
A. A.a Martedì 24 settembre 2002, dopo aver scaricato del materiale isolante, G.D._ e H._ si sono introdotti nel cantiere della loro futura abitazione in via X._ a Bellinzona per verificare l'avanzamento dei lavori. Poiché erano appena state montate le pareti al primo piano, all'insaputa dell'architetto e dopo aver salutato J._, l'ultimo operaio ancora in loco, verso le 17.30 G.D._ e H._ hanno raggiunto il primo piano dell'edificio in costruzione. Intorno alle 17.50 G.D._ è caduto nella tromba delle scale da un'altezza di circa cinque metri. A causa delle gravi ferite riportate, G.D._ è deceduto il 27 settembre successivo.
A.b G.D._ e H._ stavano facendo costruire una casa modulare in legno, loro futura abitazione. La direzione lavori era stata affidata all'architetto C._. Per risparmiare sui costi, i due proprietari avevano ottenuto dalla direzione lavori l'autorizzazione a effettuare loro stessi alcuni interventi sull'edificio in costruzione sotto la sorveglianza dell'architetto.
A.c La K._SA era stata incaricata di eseguire le opere da capomastro. Questa ditta è stata la prima a iniziare i lavori. Il giorno dell'infortunio l'unico dipendente della K._SA attivo sul cantiere era J._. Questi si è occupato della realizzazione della scala in calcestruzzo armato che porta al primo piano dell'edificio da dove è caduto G.D._. Secondo gli accordi contrattuali, alla K._SA incombeva l'obbligo di osservare la legislazione relativa alla prevenzione degli infortuni nei lavori di costruzione, di realizzare le transenne e di posare la segnaletica necessaria per rendere sicuro il cantiere.
A.d I lavori di carpenteria sono stati appaltati alla L._SA presso cui lavoravano A._ (coordinatore e persona preposta alla sicurezza sul lavoro), B._ (responsabile cantiere) e M._ (operaio designato caposquadra per il cantiere in via X._).
La L._SA agiva in modo indipendente dalla K._SA. Solo dopo che quest'ultima ha edificato la struttura al piano terreno e la tromba delle scale, la L._SA ha iniziato i propri lavori. Il 24 settembre 2002, gli operai della L._SA hanno ultimato la posa della soletta e posato alcune pareti del primo piano.
A.e Quando G.D._ e H._ sono saliti al primo piano, un telone verde (non rigido) ricopriva parte della soletta e tutto il vuoto della tromba delle scale la cui ampiezza era di 1 x 3,5 m e la cui profondità superava i 5 m. Il resto della superficie del piano era coperta da una plastica trasparente.
B. A seguito dell'infortunio con esito letale di G.D._, il 14 dicembre 2005 il Procuratore pubblico ha emesso dei decreti di accusa nei confronti di A._, C._, B._ e M._ ritenendoli autori colpevoli di omicidio colposo e violazione delle regole dell'arte edilizia. In applicazione della pena, ha proposto la loro condanna a pene detentive, di una durata compresa tra i 90 e i 30 giorni, sospese condizionalmente per un periodo di prova di due anni.
In sostanza, il Procuratore pubblico rimproverava loro di aver omesso di impartire e di predisporre quanto di loro competenza per garantire la sicurezza nonché di controllare l'esecuzione di misure volte a evitare le cadute nel vuoto.
C. Statuendo sulle opposizioni al decreto d'accusa inoltrate da A._, C._ e B._, con sentenza del 15 marzo 2007 il Giudice della Pretura penale ha confermato i capi d'imputazione e li ha condannati a pene pecuniarie di 30 aliquote giornaliere di fr. 110.--, 80.-- rispettivamente 100.-- ciascuna, sospese condizionalmente per un periodo di prova di due anni. Il Giudice della Pretura penale ha inoltre inflitto una multa di fr. 2'000.-- a A._ e una multa di fr. 1'500.-- sia a C._ che a B._, fissando a 20 giorni rispettivamente a 15 giorni la pena detentiva sostitutiva in caso di mancato pagamento.
D. Adita dai tre condannati con altrettanti ricorsi per cassazione, il 5 maggio 2008, la Corte di cassazione e di revisione penale del Tribunale d'appello del Cantone Ticino (CCRP) respingeva, nella misura della loro ammissibilità, le tre impugnative.
E. Avverso la decisione dell'ultima istanza cantonale, A._, C._ e B._ insorgono al Tribunale federale con tre diversi ricorsi in materia penale.
A._ e C._ postulano, in via principale, l'annullamento della sentenza impugnata e il loro proscioglimento dalle imputazioni di omicidio colposo e di violazione delle regole dell'arte edilizia. In via subordinata, chiedono l'annullamento del giudizio cantonale e il rinvio della causa alla CCRP per nuova decisione. B._ conclude chiedendo l'annullamento dell'avversata sentenza.
Non sono state chieste osservazioni sui gravami.
Diritto:
1. I gravami sono diretti contro la stessa decisione, si riferiscono al medesimo complesso di fatti e si fondano su motivazioni analoghe. Per ragioni di economia di procedura, si giustifica pertanto di congiungerli e di evaderli con un unico giudizio (v. art. 71 LTF e 24 PC; v. anche DTF 128 V 194 consid. 1; 126 II 377 consid. 1; 123 II 16 consid. 1).
2. Per evitare inutili ripetizioni è opportuno illustrare preliminarmente le norme ed i principi applicabili in ambito di omicidio colposo per omissione.
2.1 Chiunque per negligenza cagiona la morte di alcuno si rende colpevole di omicidio colposo ai sensi dell'art. 117 CP. Perché la fattispecie sia adempiuta devono essere dunque riunite tre condizioni: il decesso di una persona, una negligenza ed un nesso di causalità tra la negligenza ed il decesso (DTF 122 IV 145 consid. 3 e rinvii).
Commette per negligenza un crimine o un delitto colui che, per un'imprevidenza colpevole, non ha scorto le conseguenze del suo comportamento o non ne ha tenuto conto. L'imprevidenza è colpevole se l'autore non ha usato le precauzioni alle quali era tenuto secondo le circostanze e le sue condizioni personali (art. 12 cpv. 3 CP). La negligenza presuppone così l'adempimento di due condizioni. Da un lato, l'autore deve aver violato le regole della prudenza, ossia il dovere generale di diligenza istituito dalla legge penale, che vieta qualsiasi comportamento che espone a pericolo beni altrui protetti penalmente da lesioni involontarie. Un comportamento che oltrepassa i limiti del rischio ammissibile viola il dovere di prudenza quando, considerate la sua formazione e le sue capacità, l'autore avrebbe dovuto rendersi conto dell'esposizione a pericolo altrui. Per determinare il contenuto del dovere di prudenza, occorre domandarsi se una persona ragionevole, nella medesima situazione e con le stesse attitudini dell'autore, avrebbe potuto prevedere in grandi linee il corso degli eventi - questione esaminata alla luce della teoria della causalità adeguata se l'autore non è un esperto dal quale ci si poteva aspettare di più - e, se del caso, quali misure poteva adottare per evitare la realizzazione dell'evento dannoso. La violazione del dovere generale di prudenza è presunta nel caso di violazione di prescrizioni legali o amministrative aventi per scopo di garantire la sicurezza e prevenire gli infortuni oppure di regole analoghe - se generalmente riconosciute - emanate da associazioni private o semipubbliche. Inoltre, perché vi sia negligenza, la violazione del dovere di prudenza dev'essere colpevole, in altre parole si deve poter rimproverare all'autore, considerate le sue condizioni personali, un'inattenzione o una riprensibile mancanza di sforzi (DTF 134 IV 255 consid. 4.2.1).
2.2 Un reato di evento (come l'omicidio colposo) implica di regola un'azione. Una commissione per omissione è prospettabile laddove con la sua passività l'autore disattende un obbligo di agire (v. art. 11 CP). Quest'obbligo deve derivare da una posizione di garante ("status giuridico" riprendendo i termini dell'art. 11 cpv. 2 CP): l'autore deve trovarsi in una situazione che gli impone di salvaguardare e difendere dei beni giuridici determinati contro pericoli sconosciuti che possono minacciare tali beni (obbligo di protezione), o di impedire la realizzazione di rischi conosciuti ai quali sono esposti dei beni indeterminati (obbligo di controllo; DTF 134 IV 255 consid. 4.2.1). Gli obblighi giuridici in questione possono derivare dalla legge, da un contratto, da una comunità di rischi liberamente accettata o dalla creazione di un rischio (art. 11 cpv. 2 CP).
2.3 Tra il comportamento colpevole contrario a un dovere di prudenza e il decesso della vittima deve altresì sussistere un rapporto di causalità naturale e adeguata (DTF 122 IV 17 consid. 2c). Nei casi di omissione la questione della causalità si pone in termini particolari (DTF 134 IV 255 consid. 4.4.1).
2.3.1 Esiste un rapporto di causalità naturale tra un evento e un'omissione, se il compimento dell'atto omesso avrebbe impedito il verificarsi dell'evento con una verosimiglianza vicina alla certezza o perlomeno con alta verosimiglianza (DTF 116 IV 306 consid. 2a; 115 IV 189 consid. 2). L'accertamento della causalità naturale è una questione che concerne i fatti.
2.3.2 La causalità deve essere anche adeguata. Nei casi di omissione vi è una relazione di causalità adeguata tra omissione ed evento se il compimento dell'atto omesso avrebbe potuto evitare, secondo l'andamento ordinario delle cose e l'esperienza generale della vita, la realizzazione dell'evento stesso (DTF 117 IV 130 consid. 2a pag. 133).
Tuttavia, la causalità adeguata viene meno, il concatenamento dei fatti perdendo in tal modo la sua rilevanza giuridica, allorché circostanze eccezionali, quali ad esempio la colpa di un terzo o della vittima stessa, sopravvengano senza che potessero essere previste. Il loro carattere imprevedibile non è di per sé sufficiente per interrompere il nesso di causalità adeguata: la causa concomitante deve avere un peso tale da risultare la scaturigine più probabile e immediata dell'evento considerato, e relegare così in secondo piano tutti gli altri fattori, in particolare il comportamento dell'agente (DTF 131 IV 145 consid. 5.2; 130 IV 7 consid. 3.2; 121 IV 207 consid. 2a pag. 213).
La causalità adeguata è una questione di diritto.
3. Ricorso di A._
3.1 Il ricorrente pretende che il verbale del dibattimento del giudice di prima istanza sia stato redatto in modo arbitrario, lacunoso e incompleto. In urto con quanto sancito dall'art. 255 cpv. 3 del Codice di procedura penale del 19 dicembre 1994 (CPP/TI; RL 3.3.3.1), il verbale riporterebbe in modo incompleto e parziale le deposizioni dei testimoni sentiti in aula e non conterrebbe le risposte da loro fornite alle domande formulate dalla difesa del ricorrente e degli altri imputati.
3.1.1 La CCRP ha riconosciuto che il primo giudice non ha riportato nella loro interezza le dichiarazioni nel verbale del dibattimento. Richiamandosi all'art. 288 lett. b CPP/TI, ha però dichiarato la censura inammissibile in quanto il ricorrente non ha eccepito l'irregolarità "non appena possibile". Essa ha inoltre rilevato che l'insorgente non indicava peraltro quali sarebbero state le affermazioni non verbalizzate che lo avrebbero pregiudicato e cosa avrebbero potuto provare né pretendeva che il verbale contenesse inesattezze o citazioni non conformi alla realtà.
3.1.2 Secondo la giurisprudenza, ove l'ultima autorità cantonale dichiara un ricorso inammissibile per ragioni formali e non procede all'esame di merito, il ricorrente deve addurre perché essa avrebbe accertato in modo arbitrario l'assenza dei presupposti formali e si sarebbe quindi a torto rifiutata di procedere all'esame di merito (DTF 118 Ib 26 consid. 2b, 134 consid. 2; sentenza 6B_489/2007 del 26 novembre 2007 consid. 2.2). Se il ricorrente non lo dimostra, ma ripropone le argomentazioni di merito addotte davanti all'ultima istanza cantonale, la censura è inammissibile.
In concreto, l'insorgente non si confronta minimamente con la sentenza impugnata. Ripropone la sua censura senza previamente contestare l'inammissibilità della stessa pronunciata dalla CCRP. Non sono quindi dati i presupposi in questa sede per esaminare nel merito il ricorso su questo punto. A titolo abbondanziale, si rinvia al considerando 4.1 che segue.
3.2 A mente del ricorrente il giudice di prime cure avrebbe commesso un diniego di giustizia formale perché ha rifiutato l'escussione dell'ing. N._. Questi avrebbe potuto spiegare la situazione e le particolari caratteristiche della messa in sicurezza di un cantiere come quello della fattispecie.
Il rifiuto di sentire l'ing. N._ quale teste al dibattimento potrebbe configurarsi come una violazione del diritto di essere sentito del ricorrente, diritto sancito all'art. 29 cpv. 2 Cost. Difatti, il diritto di essere sentito comprende, tra l'altro, il diritto per l'interessato di offrire mezzi di prova su punti rilevanti e di esigerne l'assunzione (DTF 131 I 153 consid. 3). Tale diritto non impedisce tuttavia all'autorità di procedere a un apprezzamento anticipato delle prove richieste, se è convinta che non potrebbero condurla a modificare la sua opinione (DTF 124 I 208 consid. 4a). In tale ambito, il giudice gode di un ampio potere d'apprezzamento e la censura di violazione del diritto di essere sentito coincide con la critica di apprezzamento arbitrario delle prove (DTF 131 I 153 consid. 3).
Nella fattispecie, in urto al suo dovere di motivazione (art. 42 cpv. 2 e 106 cpv. 2 LTF) l'insorgente non spiega perché, rifiutando l'escussione dell'ing. N._, il giudice sarebbe caduto nell'arbitrio. Ne segue l'inammissibilità della critica.
3.3 Il ricorrente si duole poi della violazione del diritto federale. Atteso che tra lui e la vittima non vi era alcun contratto di lavoro comportante un rapporto di subordinazione - richiamandosi alla sentenza 6P.121/2006 del 7 dicembre 2006 - non sarebbe possibile attribuirgli una posizione di garante fondandosi sulla vOLCostr, come invece ha fatto la CCRP.
Contrariamente a quanto sostenuto nel gravame, la CCRP non ha affatto riconosciuto il ruolo di garante del ricorrente sulla base della vOLCostr. Essa ha ritenuto invece che questo ruolo discendesse da una situazione di rischio creato in precedenza (sentenza impugnata pag. 16). A questo proposito l'insorgente sostiene di non aver creato lui il pericolo, pericolo rappresentato dal buco del vano scale coperto da un telone senza un'adeguata protezione resistente sotto lo stesso. La soletta del primo piano con l'apertura per il vano scale è stata realizzata dalla L._SA. Questa ditta era quindi all'origine del pericolo. In quanto persona preposta alla sicurezza sul lavoro della L._SA, il ricorrente era quindi tenuto a ordinare l'adozione di adeguate misure di sicurezza volte a evitare le cadute non solo di eventuali terze persone, ma pure dei propri dipendenti. È pertanto corretto ritenere che il ruolo di garante dell'insorgente nei confronti della vittima derivi dalla creazione di un rischio ai sensi dell'art. 11 cpv. 2 lett. b CP.
3.4 L'insorgente è membro della direzione generale della L._SA con funzione di coordinatore della sicurezza per tutta la ditta. All'epoca dei fatti in discussione, si occupava di circa 200 cantieri e svolgeva compiti prevalentemente amministrativi, tra cui l'istruzione del personale in merito alla sicurezza. Quale responsabile del cantiere in via X._, egli aveva designato B._ a cui incombeva sia il controllo dell'andamento del cantiere che il controllo delle norme di sicurezza. B._ aveva a sua volta designato M._ quale capo squadra responsabile del cantiere. Il ricorrente sostiene che non gli possa essere formulato alcun tipo di rimprovero. Egli ha infatti scelto, istruito e sorvegliato con cura le persone a cui ha delegato la responsabilità della sicurezza del cantiere in via X._. Sottolinea di aver avuto, per quanto concerne la sicurezza, unicamente dei compiti generali di istruzione del personale e non anche di vigilanza del singolo cantiere in quanto questo compito era stato affidato a B._ e M._. In virtù del principio dell'affidamento, il ricorrente poteva quindi contare sul fatto che i suoi subalterni adempissero i compiti loro affidati.
3.4.1 Il primo giudice ha imputato al ricorrente una negligenza multipla. Egli ha infatti scelto un delegato (B._) occupato con molti cantieri e quindi non oggettivamente in grado di mantenere uno standard di sicurezza costante. Inoltre l'insorgente non ha verificato che a sua volta B._ non aveva opportunamente delegato il compito di garantire la sicurezza a M._. Infine, il giorno dell'incidente il ricorrente non è concretamente intervenuto a tutela dei suoi operai e di terzi.
La CCRP ha riconosciuto che, a causa dell'impossibilità di coordinare e predisporre personalmente la sicurezza sul gran numero di cantieri aperti, A._ poteva legittimamente affidare tale compito a un subalterno competente. Sennonché, continua la CCRP, il ricorrente sapeva dell'irregolarità e non ha fatto nulla per rimediarvi immediatamente, se ne è disinteressato perché non era più suo compito intervenire, avendo affidato tale compito ad altri. Benché avesse constatato con i propri occhi che le norme di sicurezza non erano conformi a quello che lui stesso insegnava e che il compito affidato ai subalterni non era stato eseguito correttamente, non è intervenuto. Per la CCRP quindi A._ ha avuto un comportamento inaccettabile in quanto, quale persona cognita della materia, non è intervenuto per assicurare immediatamente il campo di lavoro e correggere coloro che dovevano occuparsene.
3.4.2 Al fine di delimitare le responsabilità dei lavoratori in caso di divisione del lavoro, la dottrina penale ricorre al principio dell'affidamento - foggiato nell'ambito della circolazione stradale - per cui ogni utente della strada che si comporta in maniera corretta può a sua volta confidare nel corretto comportamento degli altri utenti, nella misura in cui non vi siano indizi per ritenere il contrario (DTF 124 IV 81 consid. 2b con rinvii). Allo stesso modo, in caso di divisione orizzontale del lavoro, ogni lavoratore deve poter legittimamente confidare, in mancanza di elementi che indichino il contrario, che il suo collega rispetti i propri doveri. In caso di divisione verticale del lavoro, la dottrina subordina il principio dell'affidamento al rispetto della cura in eligendo, in istruendo e in custodiendo: il superiore deve designare una persona ausiliaria qualificata, fornirle le necessarie istruzioni e sorvegliarla correttamente (Roth, Le droit pénal face au risque et à l'accident individuels, 1987, pag. 88 segg.; SEELMANN, Commentario basilese, Strafrecht I, 2a ed. 2007, n. 38 ad art. 11 CP; v. anche sentenza 6B_675/2007 del 20 giugno 2008 consid. 2.2.2.1).
3.4.3 È stato accertato - e qui non contestato - che il giorno dell'infortunio verso le ore 16.00 A._ era stato sul cantiere in via X._ e aveva notato che i suoi operai stavano lavorando intorno alla rampa delle scale senza che fosse posata una protezione. Dinanzi a questa constatazione, non ha intrapreso nulla per ovviare alle irregolarità. Si è giustificato adducendo che, per le questioni relative alla sicurezza, aveva delegato B._. Questi però il giorno dell'incidente non era presente sul cantiere perché anch'egli aveva molti cantieri a cui badare, ragion per cui aveva delegato a sua volta il compito di garantire la sicurezza a M._. Al dibattimento, M._ ha affermato però che nessuno gli aveva detto che era il responsabile del cantiere in questione.
Dai fatti appena esposti appare chiaro che il ricorrente non può prevalersi del principio dell'affidamento. Come nella circolazione stradale, anche in caso di divisione del lavoro, infatti, tale principio presuppone l'assenza di elementi che facciano dubitare del corretto comportamento dei colleghi o dei subordinati. In casu, l'insorgente aveva constatato con i propri occhi che non erano state adottate le necessarie misure di sicurezza. Era quindi conscio del non corretto comportamento dei propri subordinati. Sebbene svolgesse principalmente compiti di carattere amministrativo (quali l'istruzione sulle misure di sicurezza), tenuto conto delle sue conoscenze in ambito di sicurezza sul cantiere, doveva comunque intervenire attivamente e personalmente per porre rimedio alle irregolarità constatate, non potendosi eclissare dietro la delega di competenze. Infondata, la censura va dunque respinta.
Dai fatti appena esposti appare chiaro che il ricorrente non può prevalersi del principio dell'affidamento. Come nella circolazione stradale, anche in caso di divisione del lavoro, infatti, tale principio presuppone l'assenza di elementi che facciano dubitare del corretto comportamento dei colleghi o dei subordinati. In casu, l'insorgente aveva constatato con i propri occhi che non erano state adottate le necessarie misure di sicurezza. Era quindi conscio del non corretto comportamento dei propri subordinati. Sebbene svolgesse principalmente compiti di carattere amministrativo (quali l'istruzione sulle misure di sicurezza), tenuto conto delle sue conoscenze in ambito di sicurezza sul cantiere, doveva comunque intervenire attivamente e personalmente per porre rimedio alle irregolarità constatate, non potendosi eclissare dietro la delega di competenze. Infondata, la censura va dunque respinta.
3.5 3.5.1 A mente del ricorrente, la CCRP avrebbe commesso arbitrio. In modo del tutto insostenibile, essa avrebbe imputato al ricorrente una negligenza multipla perché ha scelto un delegato (B._) occupato con molti cantieri e quindi non oggettivamente in grado di mantenere uno standard di sicurezza costante, perché non ha appurato che a sua volta B._ non aveva opportunamente delegato l'incombenza della sicurezza e, infine, perché non è concretamente intervenuto il giorno dell'incidente a tutela dei suoi operai e dei terzi.
Quanto alla scelta di B._, l'insorgente sostiene che non sia stato provato che B._ non fosse una persona capace di mantenere uno standard di sicurezza costante. Egli precisa che, secondo l'organigramma della ditta L._SA agli atti, B._ non doveva necessariamente essere sempre presente sul cantiere. In ordine gerarchico, il responsabile diretto della sicurezza sul cantiere era il capo squadra M._, fatto questo riconosciuto dalla stessa CCRP. Sarebbe inoltre arbitrario e in contrasto con le dichiarazioni rilasciate due giorni dopo l'incidente ritenere che M._ non avrebbe ricevuto l'incarico di occuparsi della sicurezza del campo di lavoro.
3.5.2 Poiché lo stesso ricorrente riconosce che B._ non aveva l'obbligo di essere sempre presente sul cantiere, non si scorge quale arbitrio abbia commesso la CCRP nel ritenere che questi non fosse in grado di mantenere uno standard di sicurezza costante. Anzi, appare evidente che la presenza non continua sul cantiere della persona designata quale responsabile della sicurezza, indipendentemente dalle sue qualifiche, non possa garantire un controllo effettivo e costante della sicurezza nei lavori di costruzione.
È vero che la CCRP ha riconosciuto in M._ il responsabile del cantiere in via X._. Essa ha tuttavia ritenuto che questi non avesse ricevuto precisa delega nell'ambito della sicurezza. Questo accertamento non contrasta affatto con quanto dichiarato dallo stesso M._ nel corso dell'istruttoria. Egli si è certo definito come responsabile del cantiere, ma non ha mai affermato che tra i suoi compiti figurasse anche quello di adottare le misure di sicurezza. Al contrario, ha precisato di non aver ricevuto incarichi per la sicurezza. Del resto, B._ ha ammesso di non aver delegato a nessuno la questione della sicurezza nel periodo in cui era in vacanza. La censura di arbitrio si palesa così infondata.
È vero che la CCRP ha riconosciuto in M._ il responsabile del cantiere in via X._. Essa ha tuttavia ritenuto che questi non avesse ricevuto precisa delega nell'ambito della sicurezza. Questo accertamento non contrasta affatto con quanto dichiarato dallo stesso M._ nel corso dell'istruttoria. Egli si è certo definito come responsabile del cantiere, ma non ha mai affermato che tra i suoi compiti figurasse anche quello di adottare le misure di sicurezza. Al contrario, ha precisato di non aver ricevuto incarichi per la sicurezza. Del resto, B._ ha ammesso di non aver delegato a nessuno la questione della sicurezza nel periodo in cui era in vacanza. La censura di arbitrio si palesa così infondata.
3.6 3.6.1 In relazione all'infrazione di violazione delle regole dell'arte edilizia, il ricorrente evidenza come non sia sufficiente accertare l'esistenza di una regola dell'arte edilizia e la sua violazione, ma come occorra inoltre determinare chi avesse l'onere di rispettarla. A mente dell'insorgente, un'eventuale misura di protezione dalle cadute nel vano scale doveva essere adottata solo dall'impresa K._SA sia perché concerneva la propria zona lavorativa sia perché l'unica zona stabile della costruzione in quel momento erano le pareti in muratura della scala. La CCRP avrebbe quindi arbitrariamente violato il diritto nell'imputare gli obblighi derivanti dall'art. 18 vOLCostr alla ditta L._SA invece che a quella della K._SA. Secondo quanto contrattualmente stabilito, la responsabilità della sicurezza e della chiusura del cantiere competeva alla ditta K._SA. Sarebbe inoltre arbitrario ritenere che l'unico inconveniente della posa di un pannello di legno sul vano scale sarebbe stato l'oscuramento dello stesso. Tali conclusioni della CCRP, continua il ricorrente, sarebbero inaccettabili in quanto non tengono conto della dinamica dei lavori. Infatti, la collocazione di un pannello avrebbe intralciato la posa delle pareti attorno al vano scale. Inoltre, avrebbe impedito l'agibilità del vano ed eliminato la possibilità di manovrare liberamente in tale zona. Ma v'è di più. L'operaio J._ stava lavorando in una posizione a cavallo della soletta del primo piano. In simili circostanze, sarebbe assurdo e operativamente insostenibile sostenere che il "buco" doveva essere chiuso durante il giorno con un pannello fisso. Del resto, nel suo rapporto l'ing. N._ ha affermato che nel presente caso, per quel che concerne la sicurezza, le regole dell'arte per la costruzione di una casa modulare in legno sono state rispettate. La CCRP ha arbitrariamente ignorato le conclusioni dell'ing. N._.
3.6.2 Secondo la CCRP, non è concepibile né tollerabile che esistano delle fasi nella costruzione di una casa in cui non si possa garantire la sicurezza. Le norme in materia di sicurezza e protezione della salute dei lavoratori nei lavori di costruzione sono chiare: nessun buco all'interno dell'edificio in costruzione può rimanere "aperto". Sebbene nella fattispecie non era possibile disporre attorno al vano scale delle protezioni laterali ai sensi dell'art. 15 vOLCostr, poteva quanto meno essere posto un pannello resistente e ciò malgrado quanto affermato dall'ing. N._. La CCRP ha quindi confermato l'imputazione di violazione delle regole dell'arte edilizia dato che la sicurezza sul cantiere non era conforme a quanto si poteva pretendere, né di giorno né tanto meno di sera.
3.6.3
3.6.3.1 Giusta l'art. 18 cpv. 1 della vecchia ordinanza sulla sicurezza e la protezione della salute dei lavoratori nei lavori di costruzione del 29 marzo 2000 (vOLCostr; RU 2000 1403), in vigore al momento dei fatti, quando tecnicamente non è possibile o risulta troppo pericoloso installare una protezione laterale conformemente all'art. 14 vOLCostr o un ponteggio conformemente all'art. 17 vOLCostr devono essere utilizzati ponteggi di ritenuta, reti di sicurezza, funi di sicurezza o altre misure di protezione equivalenti. Il ricorrente sostiene che non spettasse alla ditta L._SA adottare simili misure di sicurezza. A torto. Infatti, le persone esposte al rischio di caduta erano gli operai che lavoravano sulla soletta del primo piano, ossia gli operai della ditta L._SA. Spettava pertanto proprio alla L._SA prendere le necessarie misure di sicurezza per evitare cadute nel vano scale (v. art. 328 cpv. 2 CO e art. 82 cpv. 1 LAINF; DTF 109 IV 15 consid. 2a). E come già evidenziato dal primo giudice, essendo fondato sul diritto pubblico, l'obbligo di disporre le misure di sicurezza necessarie non poteva essere escluso contrattualmente (v. DTF 104 IV 96 consid. 5).
3.6.3.2 Laddove poi il ricorrente contesta che l'unico inconveniente derivante dalla posa di un pannello sarebbe stato l'oscuramento del vano scale, egli argomenta liberamente adducendo fatti non accertati in sede cantonale.
Giova allora rammentare che il Tribunale federale fonda la sua sentenza sui fatti accertati dall'autorità inferiore (art. 105 cpv. 1 LTF) potendoli rettificare o completare solo ove siano stati accertati in modo manifestamente inesatto, ossia in maniera arbitraria, o in violazione del diritto ai sensi dell'art. 95 (art. 105 cpv. 2 LTF), purché l'eliminazione del vizio possa essere determinante per l'esito del procedimento (art. 97 cpv. 1 LTF). La parte ricorrente che intende scostarsi dagli accertamenti dell'autorità inferiore deve spiegare in maniera circostanziata in che modo e misura le condizioni di una delle eccezioni dell'art. 105 cpv. 2 LTF sarebbero realizzate. Se non lo fa, non è possibile tener conto di un accertamento dei fatti che diverge da quello contenuto nella sentenza impugnata (sentenza 4A_214/2008 del 9 luglio 2008 consid. 1.2, non pubblicato in DTF 134 III 570). Possono essere addotti nuovi fatti e nuovi mezzi di prova soltanto se ne dà motivo la decisione dell'autorità inferiore (art. 99 cpv. 1 LTF).
Nella fattispecie il ricorrente adduce fatti non constatati nella decisione impugnata senza dimostrare minimamente l'adempimento delle condizioni dell'art. 105 cpv. 2 LTF. Egli avrebbe in particolare dovuto spiegare perché sarebbe arbitrario aver accertato un fatto o non aver ritenuto un fatto regolarmente allegato in sede cantonale e in che misura tale fatto avrebbe un influsso sull'esito del procedimento. Cosa che però l'insorgente si esime dal fare. La sua critica risulta pertanto inammissibile.
3.6.3.3 È vero che, come afferma il ricorrente, il giudice può ordinare una perizia per identificare i precetti di prudenza che si imponevano in una data situazione (DTF 106 IV 264 consid. 1). Nel caso in esame tuttavia nessuna perizia è stata ordinata, ciò che il ricorrente definisce censurabile senza però formulare un'argomentazione conforme agli art. 42 cpv. 2 e 106 cpv. 2 LTF. Non risulta peraltro che egli si sia doluto in sede cantonale della mancata nomina di un perito giudiziario. Agli atti figura comunque il rapporto dell'ing. N._ che, a mente del ricorrente, sarebbe stato arbitrariamente ignorato. Atteso che l'ing. N._ non era un perito giudiziario incaricato secondo le norme della procedura cantonale, bensì un perito di parte, il suo rapporto non costituisce che una semplice allegazione di parte (DTF 127 I 73 consid. 3f/bb pag. 82; 97 I 320 consid. 3 pag. 325). Contrariamente a quanto asserito nel gravame, la CCRP ha valutato quanto affermato dall'ing. N._, ma ha ritenuto le sue conclusioni sommarie e se ne è pertanto scostata. Nel contrastare questa affermazione ancora una volta l'insorgente si avvale di argomentazioni appellatorie e dunque inammissibili in questa sede.
3.7 Il ricorrente contesta che tra le sue negligenze e la morte di G.D._ sussista un nesso causale. Innanzi tutto egli non poteva prevedere l'infortunio occorso alla vittima. Nel corso della visita non programmata al cantiere in via X._ non ha constatato nessun telone verde in zona scale, dal momento che al suo arrivo tale telone non era stato ancora posato. L'insorgente non poteva immaginare che M._ avrebbe coperto con un telone verde il vano scale senza rispettare le prescrizioni a lui note, non poteva neppure prevedere che J._ disattendesse i suoi compiti di chiusura, di vigilanza e di messa in sicurezza del cantiere al termine della sua giornata lavorativa, né poteva infine intuire che la vittima si sarebbe arrampicata di nascosto sui ponteggi per accedere al primo piano ancora instabile. A mente dell'insorgente, il nesso causale sarebbe stato interrotto da questi tre imprevedibili eventi.
3.7.1 Per la CCRP, verso le ore 16.00 del 24 settembre 2002, quando il ricorrente è giunto in via X._, il cantiere non era sicuro e non lo era neanche il vano scale. A._ sarebbe dovuto intervenire per garantire la sicurezza durante il giorno, assicurandola automaticamente anche per la sera. Difatti, se egli avesse imposto la posa di pannelli rigidi già durante il giorno, la sera M._ non avrebbe sbagliato posando sul vano scale un semplice telone. Lo stesso vale anche per quel che concerne il presunto errore di J._ che avrebbe negletto di assicurare il vano scale e non avrebbe corretto lo sbaglio di M._. Se il ricorrente fosse intervenuto ordinando la posa di assi rigide anche durante il giorno, il presunto errore di J._ non sarebbe comunque sussistito.
3.7.2 Anche su questo punto la decisione cantonale va confermata. Il ricorrente erra quando sostiene che il comportamento di M._ e quello di J._ avrebbero interrotto il nesso causale. Il giorno dell'infortunio letale, egli si è infatti reso conto che il vano scale era privo di qualsiasi protezione contro le cadute e non ha intrapreso nulla. Come giustamente rilevato dalla CCRP, se il ricorrente avesse ordinato di adottare le necessarie misure di sicurezza già durante il giorno, il vano scale non avrebbe più costituito un pericolo né di giorno né di sera. Il fatto che M._ o J._ non hanno supplito alle mancanze del ricorrente - che si ricorda essere persona preposta alla sicurezza sul lavoro della L._SA e quindi cognita delle misure da adottare - non può essere considerato un fattore interruttivo del nesso causale. Il loro comportamento non relega affatto quello dell'insorgente in secondo piano né appare essere la scaturigine più probabile e immediata della morte di G.D._. Infondata la censura va quindi respinta.
3.8 Sempre in relazione con il nesso causale, il ricorrente si focalizza poi sul comportamento della vittima. A mente dell'insorgente, G.D._ e H._ hanno consapevolmente assunto un rischio accresciuto arrampicandosi sui ponteggi dopo l'orario normale di lavoro senza domandare a nessuno l'autorizzazione. Tale assunzione di rischio sarebbe oltremodo riprovevole posto come conoscessero il cantiere e i suoi pericoli, sapessero che avrebbero dovuto chiedere il permesso di salire a J._ o alla direzione lavori e fossero stati avvisati dell'impossibilità di eseguire qualsivoglia lavoro prima che la ditta L._SA avesse terminato i lavori di messa in sicurezza della casa. Nonostante tutto ciò decidono comunque di salire al primo piano. Qui inoltre chiunque, scorgendo il telone verde, poteva intuire che sotto lo stesso vi era una situazione di diversità tale da imporre ancora più prudenza. La diversità con il resto del pavimento era talmente palese da rendere superflua ogni ulteriore segnalazione. La vittima si assume tuttavia il rischio di camminarci sopra. Il ricorrente non poteva in nessun caso prevedere che la vittima avrebbe violato non solo gli avvisi ricevuti, ma addirittura il comune buon senso, salendo su una soletta instabile e con delle pareti laterali pericolanti assumendosi per di più il rischio di camminare sopra un telone di cantiere.
3.8.1 La CCRP ha riconosciuto che il comportamento di G.D._ non è stato dei più responsabili, senza tuttavia intravvedere in questo comportamento un fatto così straordinario e imprevedibile da relegare in secondo piano la colpa del ricorrente. Difatti, se questi avesse corretto le lacune nella sicurezza già nel pomeriggio, molto verosimilmente la sera non sarebbe accaduto l'infortunio in parola. Che poi la vittima abbia sollevato il telone e abbia perso l'equilibrio cadendo nel vano scale o che - secondo la tesi più verosimile agli occhi del primo giudice - vi abbia camminato sopra lacerandolo e cadendo, non ha nessuna importanza. In entrambi i casi, si tratta di comportamenti che non rivestono quel carattere così straordinario da relegare in secondo piano la colpa di A._. Risulta pertanto irrilevante sapere se la vittima abbia potuto girarsi nella sua caduta.
3.8.2 È vero che la vittima ha assunto un comportamento imprudente, ma non al punto da interrompere il rapporto di causalità adeguata. In effetti, come già rilevato dal giudice di prima istanza, il fatto che un proprietario visiti il cantiere della propria casa in costruzione non ha nulla di straordinario, soprattutto considerato che nella fattispecie l'architetto lo aveva autorizzato a effettuare personalmente alcuni interventi motivandolo così a seguire maggiormente i lavori e considerato pure che non era comunque la prima volta che qualcuno della famiglia si avvicendava al primo piano. Inoltre il telone verde che copriva il vano scale e una parte della soletta non costituiva un elemento che avrebbe dovuto indurre i proprietari a maggiore prudenza. Tale telone infatti non metteva per nulla in risalto la situazione di pericolo sottostante, ma al contrario la celava rendendola così più insidiosa. Ed è per questo che il ricorrente non può essere seguito laddove afferma che la vittima ha consapevolmente accettato il rischio. Il pericolo di caduta nel vano scale non era affatto evidente, G.D._ non poteva quindi percepire il rischio e di riflesso non poteva accettarlo consapevolmente. Che poi la vittima abbia camminato sul telone o, come si suppone nel gravame, lo abbia sollevato per guardare cosa coprisse non è in definitiva rilevante per l'esito del giudizio. Il nesso causale non sarebbe interrotto né nel primo né nel secondo caso perché l'imprudenza della vittima non relegherebbe in secondo piano la colpa del ricorrente consistente nel non aver ordinato le opportune misure contro le cadute. Lo avesse fatto, l'imprudenza di G.D._ non avrebbe avuto le conseguenze che nei fatti ha avuto. Risultano pertanto inammissibili le critiche di arbitrio riguardo alla dinamica della caduta (v. art. 97 cpv. 1 in fine LTF), mentre la censura volta a contestare la sussistenza del nesso causale dev'essere respinta perché infondata.
3.9 In sintesi, riconoscendo A._ autore colpevole di omicidio colposo e di violazione delle regole dell'arte edilizia, la CCRP non ha violato il diritto federale. Il ricorso va quindi respinto per quanto ammissibile.
4. Ricorso di B._
4.1 Il ricorrente si duole innanzi tutto delle gravi carenze del verbale del dibattimento e ritiene che la CCRP sia caduta nell'arbitrio respingendo le relative censure sollevate davanti ad essa. L'ultima autorità cantonale gli ha rimproverato di non aver eccepito l'irregolarità "non appena possibile", di non aver indicato quali verbalizzazioni sarebbero state omesse dal primo giudice nonché di aver omesso di indicare perché il contenuto della telefonata - non verbalizzata - avvenuta il giorno della disgrazia con A._ sarebbe rilevante. A ciò il ricorrente obietta che, in virtù del principio dell'affidamento e della fairness, la difesa poteva ritenere che gli accertamenti e le deposizioni cardine sarebbero stati compiutamente e correttamente riportati nel verbale in ossequio all'art. 255 cpv. 2 e 3 CPP/TI. Sostiene inoltre di aver indicato nel proprio memoriale di ricorso cantonale l'importanza di verbalizzare correttamente le dichiarazioni di M._ nonché la rilevanza della telefonata avvenuta il 24 settembre 2002 tra il ricorrente ed A._.
4.1.1 Secondo l'art. 255 del Codice di procedura penale del 19 dicembre 1994 del Cantone Ticino (CPP/TI; RL 3.3.3.1), il verbale del dibattimento deve indicare, tra l'altro, sommariamente lo svolgimento del dibattimento, nonché l'osservanza di tutte le formalità essenziali: deve pure menzionare tutti gli atti scritti dei quali è stata data lettura, le istanze e conclusioni, le decisioni pronunciate e il dispositivo della sentenza; a richiesta di una parte, la verbalizzazione di quanto precede può avvenire dettagliatamente (cpv. 2). Nel verbale sono riportate inoltre le risposte dell'accusato, le deposizioni dei periti e dei testimoni, se queste persone sono interrogate per la prima volta al dibattimento, o modificano al dibattimento quanto hanno dichiarato in istruttoria (cpv. 3 lett. b), o d'ufficio o su richiesta delle parti (cpv. 3 lett. c). Per i dibattimenti celebrati davanti alla Pretura penale l'art. 275 CPP/TI prevede per la redazione del verbale formalità minori. Questa regolamentazione non impedisce ovviamente una verbalizzazione che si riferisca alla norma valida per i processi davanti ad una Corte del Tribunale penale cantonale, ritenuto che il verbale del dibattimento deve comunque assolvere i requisiti imposti dal rispetto del diritto di essere sentiti (art. 29 cpv. 2 Cost.) e dall'art. 6 n. 1 CEDU (cfr. DTF 124 V 389; sentenza 6B_84/2008 del 27 giugno 2008, consid. 1).
4.1.2 Gli assunti del ricorrente, patrocinato da un avvocato, non dimostrano l'arbitrarietà della contrastata decisione. Nulla impediva l'insorgente di esigere la verbalizzazione delle dichiarazioni ch'egli riteneva atte a sostenere la tesi difensiva. Egli, fondandosi anche sul diritto di essere sentito, aveva il diritto di pretendere che le dichiarazioni di testimoni, importanti per l'esito del processo e rilasciate nel corso del dibattimento, figurassero in un verbale: eventuali carenze dovevano tuttavia essere contestate già durante il dibattimento, visto che, in caso contrario, si può ammettere una rinuncia al predetto diritto (DTF 126 I 15 consid. 2a/aa; sentenza 1P.584/1993 del 20 aprile 1994 consid. 5). A ragione quindi la CCRP ha respinto la censura del ricorrente sulla base dell'art. 288 lett. c CPP/TI perché non ha "eccepito l'irregolarità non appena possibile". Non avendo reagito al dibattimento, il ricorrente non può ora rimediare alla sua passività dolendosi dell'operato del giudice di primo grado in tale ambito. La critica si rivela infondata già per questa ragione, non v'è quindi luogo di esaminare l'ulteriore motivazione addotta dalla CCRP per respingere la censura.
4.2 A mente dell'insorgente, la CCRP avrebbe commesso arbitrio nel ritenere che il capocantiere M._ non avrebbe ricevuto dal ricorrente una precisa delega nell'ambito della sicurezza. Tale accertamento misconosce che in un cantiere vi è sempre una gerarchia ben definita. Ciò era il caso anche per il cantiere in via X._. Quale capo squadra è stato designato M._, operaio esperto, che si è occupato sin dall'inizio della sicurezza verificando tra l'altro la posa corretta dei ponteggi. Durante l'istruttoria predibattimentale lo stesso M._ ha dichiarato di essersi occupato del cantiere come responsabile. Queste dichiarazioni, rilasciate subito dopo i fatti, sono più attendibili di quelle raccolte al dibattimento - a distanza di cinque anni dai fatti - su cui l'autorità cantonale si è fondata per negare l'esistenza di una delega. Secondo il ricorrente, l'esperienza professionale, la preparazione e la formazione adeguate nel campo della sicurezza e l'effettivo comportamento sul cantiere attestano che vi è stata una chiara delega anche se non esplicita.
La censura si rivela infondata per i motivi già esposti al considerando 3.5.2 che precede, a cui si rinvia. Basti qui rilevare che il fatto che M._ fosse un operaio esperto formato nel campo della sicurezza ancora non vuol dire che avesse ricevuto un'implicita delega per le questioni afferenti la sicurezza sul lavoro. Su questo punto il ricorrente si limita a contrapporre semplicemente la propria tesi a quella ritenuta in sede cantonale, senza tuttavia sostanziare arbitrio. Per quanto concerne invece l'accertamento per cui l'insorgente avrebbe negletto di delegare la responsabilità della sicurezza sul cantiere quando è partito in vacanza, questo risulta dalle dichiarazioni rilasciate dallo stesso ricorrente nel corso del dibattimento (v. verbale del dibattimento pag. 6). L'insorgente non pretende che il verbale del dibattimento contenga citazioni non conformi alla realtà. Peraltro, la critica è lungi dal sostanziare arbitrio.
4.3 L'insorgente critica in seguito l'ultima autorità cantonale per non aver ritenuto le conclusioni del rapporto dell'ing. N._. Da tale rapporto si evince in modo chiaro che nella particolare fase di costruzione in cui si trovava la casa erano state adottate tutte le norme di sicurezza. Ne segue che l'adozione di misure di protezione doveva avvenire dal basso, ossia dalla tromba delle scale che costituiva l'unica zona stabile della costruzione, zona di competenza della ditta K._SA. È dunque arbitrario ritenere che la L._SA fosse direttamente all'origine del pericolo. Pertanto alla stessa non può essere rimproverata la violazione di obblighi di protezione ex art. 229 CP.
La censura non ha pregio. L'ing. N._ ha affermato che la costruzione di una casa modulare in legno non consente di erigere barriere protettive, tuttavia ciò non vuol dire - come rettamente rilevato sia dal giudice di prime cure che dalla CCRP - che non fosse possibile adottare altre misure di sicurezza meno incisive. L'ultima autorità cantonale ha così ritenuto che il vano potesse essere protetto con la posa di un pannello resistente. È vero che nel suo rapporto l'ing. N._ ha sostenuto che non fosse possibile fissare dei pannelli orizzontali sulle costruende solette perché non avrebbero permesso la posa delle pareti attorno al vano scale. Dalla sentenza di primo grado risulta che il giorno dell'infortunio la L._SA aveva terminato di posare la soletta del primo piano e aveva pure posato alcune pareti del primo piano (sentenza del 15 marzo 2007 pag. 7). Dalle fotografie della polizia scientifica si evince che le pareti attorno al vano scale non erano ancora state posate il giorno dell'infortunio (incarto cantonale, atto n. 1, foto 4-7). Non si scorge perché allora non potesse venir posato un pannello resistente che impedisse le cadute perlomeno fino al momento di posare le pareti attorno al vano scale. Il rapporto citato nell'impugnativa, che si rammenta non costituire una perizia (v. supra consid. 3.6.3.3), non fornisce alcuna precisazione in merito. Pertanto, occorre concludere che, nel ritenere che il vano scale potesse essere protetto con la posa di un pannello resistente, la CCRP non ha commesso alcun arbitrio.
4.4 Arbitrari sarebbero inoltre gli accertamenti in merito alla dinamica della caduta di G.D._.
Su questo punto il ricorso risulta inammissibile. Infatti, come già ritenuto dalla CCRP, nel caso concreto sapere se la vittima abbia sollevato il telone, abbia perso l'equilibrio e sia caduta o se - secondo quanto ritenuto dal primo giudice - vi abbia camminato sopra lacerandolo e cadendo non è determinante per l'esito del giudizio (v. art. 97 cpv. 1 in fine LTF). In entrambi i casi, il comportamento della vittima non costituirebbe un fattore interruttivo del nesso causale (v. supra consid. 3.8.2 e infra consid. 4.6.2).
4.5 A mente del ricorrente, la CCRP non avrebbe sanzionato il diniego di giustizia formale commesso dal giudice di primo grado. Né quest'ultimo né la Corte cantonale avrebbero infatti considerato che il giorno dell'infortunio A._, mentre si trovava sul cantiere, ha telefonato all'insorgente.
Non si scorge, e il ricorrente non spiega, quale rilevanza avrebbe questo episodio sull'esito del procedimento. Peraltro anche la CCRP aveva osservato che egli non indicava le ragioni per cui riteneva importante il colloquio telefonico con A._ e cosa mirava a provare (sentenza impugnata pag. 20). Non v'è dunque motivo di soffermarsi oltre sulla critica in quanto inammissibile (v. art. 97 cpv. 1 LTF).
4.6 Sotto il profilo del diritto materiale, il ricorrente lamenta la violazione degli art. 11 e 117 CP. Contesta che possa essergli attribuito un ruolo di garante. Questo ruolo non può essere dedotto dalla vOLCostr, ma tutt'al più da un obbligo di adottare misure di protezione richieste da uno stato di pericolo creato in precedenza. Sennonché tale pericolo è da ricondurre all'impresario incaricato della tromba delle scale e non alla L._SA. Per quanto riguarda poi il nesso causale, questo sarebbe stato interrotto dall'imprudente comportamento della vittima nonché dalle imprevedibili mancanze di M._. G.D._ conosceva i piani, le particolarità del tipo di costruzione, la pericolosità del primo piano e sapeva della presenza della tromba delle scale, ciò nonostante ha camminato su una superficie che sapeva essere un campo minato. La causalità adeguata sarebbe stata interrotta anche perché la vittima è caduta con la faccia in giù e dunque mentre verificava cosa vi fosse sotto il telone. Quanto a M._, malgrado fosse a conoscenza della necessità di chiudere i buchi nella soletta, la sera dell'infortunio non vi ha provveduto.
4.6.1 Già si è visto (v. supra consid. 3.3) che l'autorità cantonale non ha affatto dedotto il ruolo di garante dalla vOLCostr, ma ha ritenuto che tale ruolo discendesse dalla situazione di rischio pregresso a cui è stata esposta la vittima (sentenza impugnata pag. 16). Contrariamente a quanto preteso nel gravame, all'origine del rischio non vi è la K._SA, bensì la L._SA. In effetti, secondo quanto accertato dal giudice di primo grado, fino a qualche giorno prima dell'infortunio il vano scale non era raggiungibile. È stata la L._SA a realizzare il primo piano in cui era presente il buco, piano percorso dalla vittima e buco in cui è caduta. Risulta pertanto corretto sostenere che la L._SA fosse all'origine del pericolo.
4.6.2 A torto inoltre il ricorrente si avvale di un'interruzione del nesso causale. Il comportamento della vittima è certo stato imprudente, ma non costituisce una circostanza così eccezionale da non poter essere prevista. Che il proprietario visiti il cantiere della sua futura abitazione infatti non ha nulla di straordinario soprattutto considerata l'autorizzazione che nel caso concreto aveva ricevuto per effettuare personalmente alcuni lavori. Pur ammettendo che, come sostenuto nel ricorso, la vittima conoscesse i piani della costruzione e sapesse della pericolosità del cantiere in quella fase ove le pareti in legno erano ancora instabili, la causalità non sarebbe interrotta. G.D._ non è deceduto a causa dell'instabilità delle pareti, ma a seguito della caduta in un buco non protetto contro le cadute appunto. Il fatto poi che i proprietari sapessero dell'esistenza della tromba delle scale nulla muta. Le dichiarazioni di H._ riportate nell'impugnativa non avvalorano la tesi del ricorrente, anzi. Risulta infatti che dopo una prima esitazione alla vista del telone, H._ ha controllato con il piede la solidità della soletta ed è in seguito passato. Il telone - che copriva tutto il buco e parte della soletta - non solo nascondeva il pericolo ma lo rendeva più insidioso, inducendo in errore H._ e la vittima. Se fossero state prese le misure di protezione contro le cadute appare evidente che, pur penetrando nel cantiere, salendo al primo piano e camminando sul telone, G.D._ non sarebbe rovinato nel vano scale. In merito all'ipotesi che G.D._ abbia alzato il telone per vedere cosa vi fosse sotto, si rinvia a quanto già esposto per il ricorso di A._ (v. supra consid. 3.8.2), è sufficiente qui ribadire che tale comportamento non è un fattore interruttivo del nesso causale.
Neppure il comportamento di M._ è un fattore interruttivo della causalità. Secondo gli accertamenti cantonali esenti da arbitrio (v. supra consid. 4.2), l'operaio M._ non ha ricevuto una precisa delega per adottare le misure di protezione. Non costituisce dunque una circostanza straordinaria il fatto che egli non abbia provveduto a chiudere i buchi nella soletta. Il nesso causale tra le omissioni del ricorrente e la morte di G.D._ non è quindi stato interrotto. La censura, infondata, va respinta.
4.7 Il ricorrente si sorprende infine della motivazione con cui la CCRP ha respinto le sue censure relative alla pena. Nel fissare la pena il primo giudice si è limitato ad affermare che i comportamenti dell'insorgente e di A._ dovevano essere posti sul medesimo livello di gravità e che si è ispirato al metodo "Sollberger" per commisurare le aliquote giornaliere. Il ricorrente rimprovera la Corte cantonale per aver sostituito tale motivazione con una altrettanto scarna, invece di accogliere il suo ricorso per violazione del diritto di essere sentito e di rinviare la causa al primo giudice per completare gli accertamenti.
4.7.1 Con il titolo marginale "Obbligo di motivazione", l'art. 50 CP impone al giudice di esporre nella sentenza le circostanze rilevanti per la commisurazione della pena e la loro ponderazione. Il giudice deve quindi indicare gli elementi da lui considerati decisivi relativi al reato o all'autore, in modo tale che sia possibile controllare se e in quale maniera tutti i fattori rilevanti, sia a favore che a sfavore del condannato, sono stati effettivamente ponderati. In altre parole, la motivazione deve giustificare la pena pronunciata e permettere in particolare di seguire il ragionamento che ne è alla base. Al giudice non incombe tuttavia di esprimere in cifre o percentuali l'importanza attribuita agli elementi determinanti per la commisurazione della pena (v. sentenza 6B_472/2007 del 27 ottobre 2007 consid. 8.1 e rinvii).
4.7.2 Effettivamente la motivazione della pena è molto contenuta o parca per riprendere l'espressione usata dalla CCRP. Il ricorrente - che non contesta l'entità della pena - si duole della mancata precisazione delle ragioni che hanno indotto il giudice a fissare il numero e l'ammontare delle aliquote giornaliere. Orbene, il numero delle aliquote giornaliere è fissato in funzione della colpevolezza dell'autore (art. 34 cpv. 1 CP), mentre il suo importo è stabilito secondo la situazione personale ed economica dell'autore al momento della pronuncia della sentenza (art. 34 cpv. 2 CP). Nella sua motivazione il giudice ha descritto la colpa del ricorrente e ha inoltre precisato di aver tenuto conto della situazione economica dell'accusato. L'insorgente non sostiene che il giudice avrebbe valutato erroneamente la sua colpa né che la pena inflittagli sia senza alcun rapporto con la sua situazione personale ed economica. Pertanto, occorre concludere che, seppur succinta, la motivazione della pena è sufficiente. La critica va quindi respinta.
4.8 Da tutto quanto esposto discende che, per quanto ammissibile, il ricorso di B._ va respinto.
5. Ricorso di C._
5.1 L'insorgente si duole anzitutto del verbale del dibattimento che ritiene essere lacunoso e arbitrario. Il verbale non avrebbe quindi alcuna fedefacenza e gli accertamenti dedotti da tale verbale sarebbero di conseguenza arbitrari. Il ricorrente ammette che, in sede cantonale, la censura era stata sollevata espressamente dai correi A._ e B._, mentre egli si era limitato a dei rimproveri sparsi, comparabili nondimeno a delle censure formali.
La critica sfugge a un esame di merito. Nelle pagine della sentenza che evadono il ricorso per cassazione presentato da C._, la CCRP non si china sulla questione del verbale del dibattimento. Se ne deve dedurre che o il ricorrente non ha impugnato formalmente davanti alla CCRP il verbale del dibattimento e allora la censura sarebbe inammissibile per il mancato esaurimento delle istanze cantonali (v. art. 80 cpv. 1 LTF), o l'ha fatto e la CCRP non ha vagliato la doglianza incorrendo in tal caso in un diniego di giustizia formale. In quest'ultimo caso, davanti a questa Corte il ricorrente avrebbe allora dovuto imputare alla CCRP un diniego di giustizia formale e non, come in casu, limitarsi a definire arbitrarie le motivazioni con cui l'autorità cantonale respinge le censure sollevate dai correi. Impropriamente motivata, la critica non può non essere dichiarata inammissibile. A titolo abbondanziale, si rinvia comunque a quanto già esposto al considerando 4.1 che precede.
5.2 A mente del ricorrente, la CCRP sarebbe incorsa nell'arbitrio oltrepassando il proprio potere di cognizione. Malgrado il primo giudice non accerti la necessità di posare un pannello resistente o delle barriere protettive, nella sua sentenza la Corte cantonale si scosta da questo accertamento e ritiene che nel caso concreto fosse possibile posare un pannello di protezione contro le cadute nel vano scale.
Il potere cognitivo della CCRP è disciplinato dalla procedura cantonale. Nell'impugnativa tuttavia manca qualsiasi riferimento alle disposizioni topiche del codice di procedura cantonale che sarebbero state disattese, interpretate e applicate in modo arbitrario. Su questo punto dunque il ricorso si palesa inammissibile perché impropriamente motivato (v. art. 106 cpv. 2 LTF).
5.3 Il ricorrente lamenta arbitrio nell'accertamento dei fatti e nella valutazione delle prove in merito alla possibilità, ritenuta dalla CCRP, di coprire il buco del vano scale con un pannello resistente. Poiché tutti coloro che sono stati sentiti nel corso dell'istruttoria hanno contestato che fosse possibile adottare misure di sicurezza quanto meno durante i lavori diurni, le autorità avrebbero dovuto istruire maggiormente la questione oppure, in assenza di riscontri probatori, prosciogliere l'imputato in virtù del principio in dubio pro reo. Le tavole processuali non permetterebbero di ritenere che il buco del vano scale potesse essere coperto con un pannello resistente. Tale misura non poteva essere adottata anche perché J._ "avanzava su" dal vano scale. La conclusione della CCRP risulta quindi in palese contrasto con gli atti di causa.
5.3.1 L'insorgente sostiene che, nel corso del dibattimento, A._ avrebbe riferito che J._ "avanzava su" dal vano scale. Questa dichiarazione tuttavia, come ammesso nel gravame, non figura nel verbale del dibattimento, ma sarebbe stata annotata dall'avvocato della difesa. Erra il ricorrente laddove afferma che tali appunti avrebbero la stessa valenza di un verbale dibattimentale né letto né approvato. Gli appunti dell'avvocato non fanno parte dell'incarto cantonale e non possono essere equiparati al verbale di cui, peraltro, la procedura cantonale non prevede né lettura né approvazione. Non è pertanto possibile tener conto di quanto addotto nel ricorso in relazione a J._ in quanto privo di qualsiasi riscontro.
5.3.2 Secondo le dichiarazioni rilasciate durante l'istruttoria - indicate nel gravame - non sarebbe stato possibile posare un pannello sul vano scale perché il muratore stava eseguendo dei lavori. Sennonché, interrogato durante il dibattimento, il muratore in questione ha affermato che, se il vano scale fosse stato chiuso, egli avrebbe comunque potuto lavorare con l'ausilio di una luce (verbale del dibattimento pag. 9). Per quanto riguarda la valutazione del rapporto dell'ing. N._, per evitare inutili ripetizioni, si rinvia a quanto già esposto al considerando 4.3 che precede. È sufficiente qui ribadire che la CCRP non ha commesso arbitrio nel ritenere che il vano scale potesse essere protetto con la posa di un pannello resistente.
5.4 Nell'impugnativa viene sollevata inoltre la censura di arbitrio in relazione alla mancata indicazione da parte del Giudice della Pretura penale delle misure di protezione in concreto attuabili. Egli si è infatti limitato ad accertare che per la sicurezza non era stato messo in atto nulla e a ipotizzare possibili misure da adottare, dimostrando in tal modo di non essere in grado di indicare quale misura andava effettivamente presa nel caso concreto. Il ricorrente sostiene che occorreva stabilire invece in modo preciso l'atto che doveva essere compiuto conformemente a quanto imposto dalla DTF 114 IV 130.
Nel respingere la critica, la CCRP ha rilevato come il primo giudice avesse constatato che quanto fatto per la sicurezza era insufficiente e avesse quindi formulato delle ipotesi d'intervento tratte dalla vOLCostr e confermate dal funzionario SUVA interpellato in merito. La stessa CCRP, tuttavia, ha comunque stabilito nella sua sentenza che il vano scale poteva essere coperto con un pannello. La Corte cantonale ha quindi indicato in modo chiaro e preciso quale misura di sicurezza avrebbe dovuto essere adottata. Le censure in merito sono state tutte respinte, sicché il ricorso si palesa infondato su questo punto.
Quanto poi al rapporto SUVA su cui si è fondata l'autorità cantonale, non precisa in quale momento, se di giorno o di sera, le misure segnalate come adeguate dovessero essere adottate. Il funzionario SUVA infatti indica quale causa dell'infortunio la copertura dell'apertura nella soletta con un telone di plastica, invece di una copertura resistente alla rottura e solidamente fissata. Non è dunque arbitrario ritenere che il pannello potesse essere posato anche durante il giorno.
5.5 Il ricorrente si duole inoltre della violazione del principio accusatorio. Nel suo decreto di accusa, il Procuratore pubblico ha accusato l'insorgente di aver violato le regole dell'arte edilizia per aver tollerato che il vano scale venisse coperto con un semplice telone e omesso di predisporre le necessarie misure di sicurezza. Benché non ne abbia fatto menzione, il Procuratore pubblico imputava all'insorgente la violazione dell'art. 16 vOLCostr di cui riproduceva il contenuto. Il magistrato non ha però indicato quale misura fosse da adottare nel caso concreto. Il Giudice della Pretura penale non ha rimproverato al ricorrente di aver tollerato la posa del telone, bensì di non essersi accertato che il suo ordine fosse stato eseguito. Non avendo confermato le imputazioni contenute nel decreto d'accusa, il giudice avrebbe dovuto prosciogliere il ricorrente e non formulare una nuova imputazione disattendendo quanto disposto all'art. 250 CPP/TI. Mentre il decreto d'accusa contemplava la violazione dell'art. 16 vOLCostr, il Giudice della pretura penale ha condannato il ricorrente per violazione dell'art. 18 vOLCostr. L'insorgente ha potuto impugnare questa nuova imputazione solo con il ricorso in cassazione, rimedio che non permette di rivedere liberamente i fatti. Egli è quindi stato privato del diritto a un grado di giurisdizione con pari cognizione. Ne segue una violazione del principio accusatorio e dei diritti della difesa.
5.5.1 Per la CCRP, il giudice di primo grado non si è fondato su una fattispecie diversa da quella contenuta del decreto di accusa. I fatti sono stati ben circostanziati dal magistrato d'accusa, fatti ripresi e discussi dal Giudice della pretura penale. Non ha nulla a che fare con il principio accusatorio, continua la CCRP, il fatto che il giudice abbia scorto gli articoli precisi della vOLCostr applicabili alla fattispecie.
5.5.2 Il ricorrente non sostiene, o comunque non in modo sufficientemente motivato (v. art. 106 cpv. 2 LTF), che il diritto cantonale di procedura gli accordi una protezione più vasta di quella che egli può dedurre dalla Costituzione federale e dalla CEDU delle cui disposizioni si prevale. È pertanto sufficiente esaminare le sue critiche alla luce delle norme federali e convenzionali invocate.
5.5.3 In quanto espressione del diritto di essere sentito, contemplato dall'art. 29 cpv. 2 Cost., il principio accusatorio può essere anche dedotto dagli art. 32 cpv. 2 Cost. e 6 n. 3 CEDU, i quali non esplicano tuttavia portata distinta. Questo principio implica che il prevenuto sappia esattamente quali fatti gli sono rimproverati e a quali pene e misure rischia di essere condannato, dimodoché possa adeguatamente far valere le sue ragioni e preparare efficacemente la sua difesa (DTF 126 I 19 consid. 2a pag. 21).
Il principio accusatorio non impedisce all'autorità giudiziaria di scostarsi dai fatti o dalla qualificazione giuridica ritenuti nell'atto d'accusa, a condizione tuttavia che vengano rispettati i diritti della difesa (DTF 126 I 19 consid. 2a e 2c). Il principio è leso quando il giudice si fonda su una fattispecie diversa da quella indicata nell'atto di accusa, senza che l'imputato abbia avuto la possibilità di esprimersi sull'atto di accusa adeguatamente e tempestivamente completato o modificato (DTF 126 I 19 consid. 2c). Se l'accusato è condannato per un'infrazione diversa da quella indicata nell'atto d'accusa, occorre esaminare se egli poteva, tenuto conto delle circostanze del caso concreto, prevedere questa nuova qualificazione giuridica dei fatti, in caso affermativo non sussiste alcuna violazione dei diritti della difesa (DTF 126 I 19 consid. 2d/bb pag. 24).
5.5.4 La qualificazione giuridica dell'infrazione rimproverata al ricorrente figurava dall'inizio nel decreto d'accusa. Vi si formulava il rimprovero d'aver "omesso di impartire e predisporre quanto di sua competenza per garantire la sicurezza e di controllare l'esecuzione di tali misure, in particolare evitare le cadute nel vuoto, per cui, per negligenza, provocò la morte di G.D._" nonché d'aver "omesso di predisporre le necessarie misure di sicurezza, in particolare far sì che le aperture nei suoli attraverso le quali è possibile cadere devono essere provviste di protezione laterale o di copertura resistente alla rottura e solidamente fissata, per cui per negligenza, trascurò le regole riconosciute dell'arte e pose in pericolo la vita e l'integrità delle persone ivi operanti". Risultava quindi già chiaramente dal decreto di accusa che al ricorrente veniva rimproverato un omicidio colposo in relazione alla violazione delle regole dell'arte edilizia. Ora è vero che con l'accusa di violazione delle regole dell'arte edilizia il Procuratore si limitava a rimproverare al ricorrente di aver omesso di predisporre le necessarie misure di sicurezza, tuttavia con l'accusa di omicidio colposo il magistrato formulava l'ulteriore rimprovero di aver omesso di controllare l'esecuzione delle misure volte a garantire la sicurezza. Appariva quindi evidente, già a una prima lettura globale del decreto di accusa, che il ricorrente veniva biasimato per aver omesso sia di predisporre le necessarie misure di sicurezza sia di verificare che queste venissero eseguite. Contrariamente a quanto sostenuto nel gravame, il giudice non ha quindi aggiunto alcuna nuova imputazione rispetto a quanto contenuto nel decreto di accusa. La censura di violazione del principio accusatorio e dei diritti della difesa risulta su questo punto infondata e va pertanto respinta.
5.5.5 L'insorgente non può essere seguito poi laddove afferma che la violazione dell'art. 16 vOLCostr e quella dell'art. 18 vOLCostr sono "due reati differenti". Le suddette disposizioni non descrivono affatto due diversi doveri di diligenza: in entrambi i casi si tratta di misure di sicurezza volte a evitare o comunque limitare i rischi di caduta nel corso di lavori di costruzione. Le due norme sono strettamente connesse tra loro. L'art. 16 vOLCostr stabilisce quali misure debbano di regola essere adottate in presenza di aperture nei suoli. L'art. 18 vOLCostr si configura come un prolungamento della prima in quanto precisa che, nel caso le misure elencate all'art. 16 vOLCostr non siano tecnicamente attuabili o la loro installazione risulti troppo pericolosa, devono essere adottate altre misure di protezione. Ne consegue che il ricorrente poteva prevedere un rimprovero da parte del giudice di violazione dell'art. 18 vOLCostr. Anche sotto questo aspetto la censura va quindi disattesa.
5.6 A mente del ricorrente, trattando la sua censura di violazione dell'art. 229 CP, la CCRP avrebbe commesso arbitrio. Nell'esporre la critica formulata, la sentenza riporta che l'insorgente adduce che si apprestava a verificare "al mattino" l'ordine impartito. Sennonché nel suo ricorso per cassazione egli non ha mai affermato nulla del genere.
In che misura tale preteso arbitrio possa avere un'incidenza sull'esito del procedimento non è dato di sapere. Lo stesso ricorrente peraltro si domanda se tale accertamento sia arbitrario anche nel risultato. Non v'è ragione quindi di dilungarsi oltre.
5.7 Il ricorrente si duole della violazione degli art. 117 e 229 CP. L'autorità cantonale non ha infatti esaminato le regole dell'arte applicabili né determinato a chi spettasse il loro rispetto. Le norme afferenti la sicurezza nei lavori di costruzione devono essere rispettate dai lavoratori, dai datori di lavoro e dagli impresari. La legge federale del 13 marzo 1964 sul lavoro (LL; RS 822.11) e la LAINF (RS 832.20) prevedono infatti che, per tutelare la salute e prevenire gli infortuni, sia il datore di lavoro a dover prendere, avvalendosi della collaborazione dei dipendenti, tutte le misure adatte alle circostanze (art. 6 LL e 82 LAINF). Anche secondo il diritto privato (art. 328 CO) e il diritto cantonale (art. 6 cpv. 1 lett. b della legge del Cantone Ticino del 1° dicembre 1997 sull'esercizio della professione di impresario costruttore [LEPIC; RL 7.1.5.3]) è dovere del datore di lavoro, rispettivamente dell'impresa, adottare le necessarie misure di sicurezza a tutela della salute e dell'integrità personale dei lavoratori. Questi ultimi sono tenuti a osservare le istruzioni del datore di lavoro in materia di sicurezza e a tener conto delle norme di sicurezza generalmente riconosciute (art. 11 dell'ordinanza del 19 dicembre 1983 sulla prevenzione degli infortuni, OPI; RS 832.30). L'adozione di misure di sicurezza non essendo compito della direzione lavori, al ricorrente non può quindi venir rimproverata la violazione delle regole dell'arte edilizia e di riflesso neppure l'omicidio colposo.
A seguito delle trattative relative alla sicurezza intercorse tra la direzione lavori, A._ e B._, il ricorrente aveva assunto quale unico compito quello di provvedere ai ponteggi che sono risultati essere a regola d'arte. La sicurezza all'interno dell'edificio in costruzione spettava invece alle diverse ditte che vi operavano (K._SA e L._SA). All'insorgente non può pertanto venir ascritta alcuna violazione dell'art. 16 o dell'art. 18 vOLCostr.
5.7.1 Il ragionamento sviluppato nel gravame è corretto. Il diritto pubblico in materia di prevenzione contro gli infortuni pone in effetti degli obblighi essenzialmente in capo ai datori di lavoro e agli stessi lavoratori. Tuttavia questo non significa che la direzione lavori non sia tenuta a rispettare o a far rispettare tali obblighi. Contrariamente a quanto addotto nell'impugnativa, la sentenza 6P.121/2006 del 7 dicembre 2006 non implica l'impossibilità di ascrivere una violazione delle norme della vOLCostr alla direzione lavori. Il Tribunale federale si è infatti limitato ad affermare che non sia possibile, sulla base della LAINF o delle numerose ordinanze che vi si rapportano, attribuire una posizione di garante alla direzione lavori. Nella fattispecie però il ricorrente non contesta il suo ruolo di garante (ricorso pag. 28). Inoltre il caso in esame si contraddistingue da quello della precitata sentenza in quanto nella fattispecie, come ammesso dallo stesso insorgente, è applicabile la norma SIA 118.
5.7.2 In virtù dell'art. 104 della norma SIA 118, nell'adempimento dei loro compiti, l'imprenditore e la direzione lavori sono tenuti a garantire la sicurezza della manodopera impiegata sul cantiere. Misure di sicurezza sono da prendere in considerazione già durante la fase di progettazione, in seguito durante la programmazione dei lavori, in particolare della loro successione, infine durante l'esecuzione. L'imprenditore adotta le misure di sicurezza necessarie a prevenire incidenti e garantire l'incolumità. La direzione lavori è tenuta a sostenerlo.
Al fine di determinare la responsabilità penale del ricorrente, è necessario circoscrivere le reali competenze legate alla sua funzione di direttore lavori. La norma SIA 118 conferisce alla direzione lavori la facoltà di sorvegliare tutte le opere contrattuali dell'imprenditore e, se necessario, di impartire istruzioni vincolanti (art. 34 e seg.). A seconda delle circostanze, i suoi rappresentanti non sono solo autorizzati, ma anche obbligati sotto il profilo penale a intervenire e a dare degli ordini in presenza, per esempio, di una violazione di elementari disposizioni di sicurezza. Tale dovere d'intervento vale innanzi tutto quando il direttore lavori è cosciente delle insufficienze e carenze dell'attività di un appaltatore che possono condurre a pericoli e lesioni dell'integrità o della vita di terzi (sentenza 6S.181/2002 del 30 gennaio 2003 consid. 3.2.1; sentenza Str. 230/67 del 27 settembre 1967 consid. 1b pubblicata in ZR 67 (1968) pag. 227; Riklin, Zur strafrechtlichen Verantwortlichkeit des Architekten, in Das Architektenrecht, 3a ed., 1986, n. 1812 e segg.). In altre parole, la direzione lavori deve vegliare sull'effettiva e corretta applicazione delle prescrizioni di sicurezza sul cantiere (DTF 104 IV 96 consid. 4; v. anche consid. 1a della sopracitata sentenza del 27 settembre 1967 del Tribunale federale; Bendel, Die strafrechtliche Verantwortlichkeit bei der Verletzung der Regeln der Baukunde, tesi 1960, pag. 44; Idem, Die fahrlässige Tötung und Körperverletzung beim Bauen, in RPS 79/1963 pag. 32).
5.7.3 Se è vero che, in base al diritto pubblico, la responsabilità primaria per l'adozione delle misure di sicurezza incombe al datore di lavoro con il supporto dei lavoratori, la norma SIA 118 attribuisce una sorta di responsabilità secondaria in capo alla direzione lavori per la sicurezza del cantiere. La CCRP poteva quindi rimproverare al ricorrente, nella sua veste di direttore lavori, la violazione delle disposizioni della vOLCostr per non aver verificato la messa in sicurezza del vano scale. La censura si rivela così infondata.
5.8 Richiamandosi alla DTF 104 IV 96, il Giudice della Pretura penale ha ritenuto che dalla direzione lavori si esige una duplice cautela: da un lato deve predisporre il cantiere in maniera tale da renderlo accessibile nella misura più sicura possibile, dall'altro deve costantemente verificare che quanto da lei predisposto venga concretamente effettuato non potendo confidare ciecamente sul fatto che gli addetti ai lavori adottino le misure prescritte o previste dalla normativa vigente o dal contratto. Il ricorrente - per cui questa giurisprudenza non è più d'attualità - fa valere che, contrariamente al caso di cui alla DTF 104 IV 96, egli ha impartito un ordine a operai specializzati e poteva quindi confidare sulla sua esecuzione. Peraltro, dopo aver segnalato il pericolo ordinando di porvi rimedio, l'insorgente stava recandosi in cantiere per verificare se ciò fosse stato fatto. Egli poteva nondimeno attendersi che i carpentieri avessero eseguito quanto loro detto al mattino in virtù del principio dell'affidamento.
5.8.1 Per la CCRP, l'esigenza di vigilanza da parte della direzione lavori s'imponeva con più forza nella fattispecie, posto come l'architetto aveva autorizzato i proprietari a effettuare determinati interventi. Ciò poteva indurlo a ritenere che i proprietari si interessassero maggiormente all'evoluzione dei lavori della loro casa e quindi potessero, ancorché non autorizzati, penetrare sul cantiere. Un primo segnale in tal senso lo ha avuto il giorno precedente l'infortunio quando il suocero di H._ aveva tentato di raggiungere il primo piano del cantiere. Come affermato dallo stesso architetto, lasciare aperto quel buco "era una cosa da irresponsabili". Egli tuttavia non ha agito di conseguenza imponendo immediatamente di porvi rimedio. Per liberarsi dalle proprie responsabilità non è infatti sufficiente segnalare agli operai il difetto senza successivamente verificarne il rimedio. Il giorno dell'infortunio, il ricorrente si è recato sul cantiere alle ore 08.00, vi è tornato anche alle ore 15.00 e il buco era ancora "aperto".
5.8.2 Il principio dell'affidamento invocato dall'insorgente non può trovare applicazione nel caso concreto. Se è vero che egli si è rivolto a degli operai specializzati e poteva quindi contare che l'ordine dato il mattino sarebbe stato eseguito, tornando sul cantiere il pomeriggio ha però potuto constatare che così non è stato. Posto come la CCRP ha accertato senza arbitrio che fosse possibile adottare delle misure contro le cadute già durante il giorno, quando è tornato sul cantiere il pomeriggio, il ricorrente doveva esigere l'immediata messa in sicurezza del vano scale. Infondato, il gravame dev'essere respinto anche su questo punto.
5.9 A mente del ricorrente, tra l'omissione rimproveratagli e la morte di G.D._ non sussisterebbe alcun nesso causale. L'unica causa dell'infortunio sarebbe da imputare ai due carpentieri che, stendendo il telone, hanno originato un grave pericolo. La loro colpa sarebbe talmente grave al punto da chiedersi se non abbiano agito con dolo eventuale. Nel caso in cui si dovesse comunque riconoscere un nesso causale con l'omissione del ricorrente, questo sarebbe stato interrotto dal comportamento di A._ che, recatosi sul cantiere alle ore 16.00, non ha impartito alcun ordine ai suoi subordinati. In quest'ambito il ricorrente lamenta inoltre un diniego di giustizia formale perché le censure relative al nesso causale, seppur formulate nel ricorso per cassazione cantonale, non sono state esaminate dalla CCRP.
5.9.1 Per quanto attiene al preteso diniego di giustizia, il gravame è volto all'insuccesso. Seppur in modo non dettagliato, la CCRP si è infatti chinata sul comportamento dei carpentieri M._ e O._ (sentenza impugnata pag. 28-29) evadendo in tal modo la censura formulata nell'impugnativa sulla quale si tornerà qui appresso (v. infra consid. 5.9.2). Contrariamente a quanto preteso dal ricorrente, non risulta che egli abbia sostenuto davanti alla CCRP che il comportamento di A._ fosse un fattore interruttivo del nesso causale. Nel suo ricorso per cassazione agli atti infatti, nel capitolo "Interruzione del nesso di causalità", l'insorgente focalizza la sua censura sul comportamento dei carpentieri senza minimamente accennare a quello di A._. In questa sede il ricorrente non può pertanto rimproverare la Corte cantonale di non aver esaminato una censura che non le era stata presentata.
5.9.2 Il ricorrente sostiene che i carpentieri hanno agito passivamente omettendo di prendere i provvedimenti di sicurezza, ma pure per commissione, violando le più elementari norme di prudenza nel momento in cui hanno coperto il buco stendendo un telone sul vano e su gran parte della soletta. Il loro intervento intenzionale avrebbe così interrotto il nesso causale.
Questa tesi non può essere condivisa in quanto non sufficientemente sostenuta dagli atti dell'incarto. Erra il ricorrente laddove intravede nel comportamento dei carpentieri una commissione. È vero che essi hanno posato un telone a copertura del vano scale. Sennonché, secondo gli accertamenti cantonali, il telo era stato posto con il solo e unico scopo di proteggere le (delicate) parti in legno al piano terra dalle imminenti piogge e non certo per proteggere dal rischio di caduta. Sotto il profilo della sicurezza quindi il comportamento dei carpentieri costituisce un'omissione. A torto inoltre l'insorgente ravvede in questo comportamento un fattore interruttivo del nesso causale. La CCRP ha rilevato che il ricorrente sembrava si fosse limitato ad affermare a O._ che il buco "sembra un po' una trappola per topi" senza aggiungere altro o esortarlo a porvi rimedio, nessuno gli avrebbe detto di chiudere il buco né di riferirlo anche a M._. A questo proposito il ricorrente lamenta arbitrio non comprendendo dove la Corte cantonale abbia letto ciò. Sennonché nella stessa sentenza la CCRP ha indicato l'atto dell'incarto su cui si è fondata per dubitare dell'ordine impartito dall'insorgente (sentenza impugnata pag. 29 in alto). Sia come sia, se il ricorrente avesse esatto l'immediata messa in sicurezza del vano scale almeno il pomeriggio - dopo aver constatato che il buco era ancora aperto - questo non avrebbe più costituito un pericolo né il pomeriggio né la sera quando la vittima si è recata al primo piano.
5.9.3 Neppure il comportamento di A._ ha interrotto il nesso causale. Dagli accertamenti cantonali non risulta che il ricorrente sapesse che A._ sarebbe passato in cantiere. Certo, l'omissione di quest'ultimo, diretto superiore dei carpentieri e persona cognita di sicurezza sul cantiere, è da biasimare, la sua colpa è grave e costituisce senza dubbio una concausa del decesso della vittima. Tuttavia il peso del comportamento di A._ non è tale da relegare in secondo piano l'omissione dell'insorgente. Le loro omissioni nei fatti si equivalgono: il ricorrente, conscio del pericolo, non ha preteso l'adozione immediata di misure di sicurezza; A._, cognito di sicurezza nei lavori di costruzione, giunto posteriormente sul cantiere ("casualmente") non si è premurato di ordinare misure volte a evitare il rischio di caduta nel vano scale. Infondata, la censura va quindi respinta.
5.10 Il ricorrente si prevale infine di un errore sull'illiceità. La motivazione a sostegno della sua censura è alquanto laconica. Ora l'art. 42 cpv. 2 LTF dispone che nei motivi dell'atto ricorsuale è necessario spiegare in modo conciso perché l'atto impugnato viola il diritto. Nella fattispecie l'insorgente rileva che la censura era stata sollevata al dibattimento e davanti alla CCRP. Nella sentenza di primo grado non vi è traccia e in quella su ricorso la Corte cantonale si è limitata a dichiararsi allibita. Egli ritiene che la censura andava affrontata, respingendola se del caso, ma motivandola in quanto si trattava di sapere se il fatto di segnalare il pericolo e di ordinare di "rimediare la sera" poteva costituire per il ricorrente un motivo sufficiente. Non si capisce cosa in realtà sia contestato nel gravame se un diniego di giustizia, una motivazione insufficiente, arbitrio o la violazione dell'art. 21 CP, norma quest'ultima nemmeno citata. Le eventuali censure di natura costituzionale disattendono le accresciute esigenze di motivazione poste dalla legge e dalla giurisprudenza (v. art. 106 cpv. 2 LTF nonché DTF 135 III 232 consid. 1.2 con rinvii), ci si limiterà quindi a vagliare la critica sotto il profilo dell'art. 21 CP.
Il ricorrente sapeva che il buco della soletta costituiva una fonte di pericolo e sapeva che occorreva porvi rimedio. Vincolato dalla norma SIA 118, doveva inoltre sapere che in quanto direttore lavori poteva impartire istruzioni vincolanti. Ora, non si scorge in quale errore sull'illiceità poteva trovarsi, non potendo pretendere che la segnalazione del pericolo e l'ordine di "rimediare la sera" fossero delle misure adeguate alla fattispecie. Il vano scale non protetto infatti costituiva un pericolo non solo in caso di eventuali visite sul cantiere dei proprietari, ma anche per gli stessi lavoratori attivi sul primo piano, ciò che il ricorrente non poteva ignorare. Per quanto ammissibile, la censura va pertanto respinta.
5.11 Da quanto precede risulta che il ricorso di C._ dev'essere respinto nella misura della sua ammissibilità.
6. Spese e ripetibili
Giusta l'art. 66 cpv. 1 LTF, le spese giudiziarie sono addossate alla parte soccombente. Poiché i ricorsi in materia penale presentati da A._, B._ e C._ si sono rivelati infondati e sono stati respinti in quanto ammissibili, le spese giudiziarie sono poste a carico degli insorgenti in parti uguali, ma senza vincolo di solidarietà.
Non v'è ragione per contro di assegnare un'indennità per ripetibili agli opponenti, che non sono stati invitati a formulare osservazioni sui gravami e non sono dunque incorsi in spese necessarie (art. 68 cpv. 2 LTF) per la sede federale.
Per questi motivi, il Tribunale federale pronuncia:
1. Le cause 6B_437/2008, 6B_438/2008 e 6B_439/2008 sono congiunte.
2. Nella misura in cui è ammissibile, il ricorso di A._ è respinto.
3. Nella misura in cui è ammissibile, il ricorso di B._ è respinto.
4. Nella misura in cui è ammissibile, il ricorso di C._ è respinto.
5. Le spese giudiziarie per complessivi fr. 12'000.-- sono poste a carico dei ricorrenti in parti eguali, senza vincolo di solidarietà.
6. Non si accordano ripetibili.
7. Comunicazione ai patrocinatori delle parti, al Ministero pubblico e alla Corte di cassazione e di revisione penale del Tribunale d'appello del Cantone Ticino.