Principio K.I.S.S. verifica se lo applichi davvero






Guardando i numeri, diresti che il tuo team pratica realmente il principio K.I.S.S. o diresti che segue la legge di Parkinson ?



  •  .NET Framework 2.0 il nucleo é composto in tutto da soli 12 Assembly per piú di 12.000 classi (una media di 800 per progetto) e 2.800.000 istruzioni IL (190.000 per progetto)
    Fonte: Analyzing the .NET Framework 2.0 with NDepend
  •  Google ha un singolo source code repository che é completamente accessibile a tutti i 10.000 sviluppatori. Sebbene tutti i sistemi vengono rilasciati indipendentemente l'uno dall'altro (con cicli di rilascio che variano da una settimana a un mese), tutto viene  compilato dalla HEAD senza l'uso di binari precompilati, il repository accetta diverse migliaia di modifiche al giorno con picchi di 20+ modifiche per minuto.
    Fonte:  Mark Striebeck engineering manager a Google, al suo speech al  XPDay London 2009 (guarda anche il report da questo post)

  • Flickr riceve 40.000 nuove foto per secondo e ha ne archivia piú di 3 miliardi di foto al giorno, vengono eseguiti piú di 10 nuovi rilasci al giorno.  Due fattori abilitanti per queste prestazioni tra i molti citati: un unico version control condiviso e no branching.
    Fonte:
    Dev and Ops Cooperation at Flickr

 


E ora chiediti:
- In quanti Project/Assembly  é scomposta la code-base?
- Da quanti code repository distinti (server o trunk) devi fare il get dei sorgenti per compilare la code-base?
- Quante Solution distinte devi compilare per compilare la code-base?
- Oltre al trunk su quanti altri branch sviluppa il team?


La legge di Parkinson applicata alla complessitá della code-base dice che la complessitá della code-base tende ad espandersi sino alla massima capacitá del team e della azienda di gestire la complessitá, invece di limitarsi alla complessitá minima richiesta dai problemi affrontati.





Print | posted @ giovedì 18 marzo 2010 23:02

Comments have been closed on this topic.