Specialità

Metodologie di Sviluppo Software

L'industria del software differsce da altre in quanto la sua materia prima, e principale fattore di successo, è rappresentata da persone. L'efficienza dei singoli su di un progetto può variare incredibilmente da un contesto all'altro. Tentare di gestire persone in maniera meccanicistica è una strada sicura per privarsi dei talenti ed abbassare l'efficacia del gruppo. Incrementi significativi nella produttività non possono essere raggiunti ignorando le caratteritiche dei singoli, le motivazioni del gruppo e le dinamiche di comunicazione.

Processo di Sviluppo

Processi di sviluppo dichiaratewmente aggressivi, come ad esempio SCRUM, si pongono come obiettivo un fattore x10 di incremento della produttività nello sviluppo sel software. Che questo rappresenti un obiettivo raggiungibile o semplicemente un proclama di marketing, in molti casi il processo di sviluppo è bloccato, a malapena dichiarato, o semplicemente non esiste affatto. Anche dove i progetti vengono rilasciati senza trasformarsi in un bagno di sangue sono possibili significativi miglioramenti. In ogni caso, situazioni differenti richiedono soluzioni differenti: il processo di sviluppo non ha una ricetta valida per tutte le stagioni, è quindi necessario osservare e discernere con attenzione per migliorare continuamente l'efficienza complessiva, scegliendo , fra le molte possibili, quella che meglio si adatta allo specifico contesto.

Software Configuration Management

Unified Modeling Language

UML è uno strumento potente con uno scopo be definito: la capictà di esprimere il modello di un sistema (esistente, oppure da sviluppare) in un linguaggio condiviso con il minimo livello di ambiguità. Può (e probabilmente deve) essere il linguaggio comune tra menbri del tem di sviluppo, ed è la scelta più ovvia (anche se non l'unica possibile) al momento di condividere specifiche di progetto tra team diversi, specialmente in un contesto di sviluppo offshore. E' tuttavia ben lontano dall'essere la scelta migliore per catturare l'informazione dagli esperti di dominio. In queste situazioni è preferibile trovare un terreno comune, per permettere agli esperti di dominio di confividere la loro preziosa conoscenza con la minima interferenza possibile da parte del linguaggio.

Software Project Management

Gestione di progetti

Advisor Indipendente

In molti casi, il gap tra chi richiede un determinato progetto software e chi lo realizza è troppo marcato per garantire risultati soddisfacenti. In situazioni come queste, ricorrere ad un attore indipendente, in grado di garantire la competenza necessaria a verificare il rispetto degli impegni, o a riconoscere e gestire le criticità di progetto prima che oltrepassino il punto di non ritorno può risultare un fattore chiave per il buon esito del progetto.

Architettura Software

Progettazione

Review Architetturali

Offshore Software Development

Web 2.0

Blogging

Pubblicare un blog è qualcosa di radicalmente diverso dal tenere un diario on-line. Le dinamiche del blogging sono legate agli argomenti trattati, agli obiettivi reali, ai flussi di propagazione della comunicazione, ai contenuti multimediali, all'effetto farfalla, alla teoria del caos, a fattori sociali e così via. Per qualcuno, i blog possono essere un modo per fare soldi, o un modo per non perderli per grande aziende, o …viceversa.

Social Software


del.icio.usdiggFacebook
View this page in English

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License