in

DotNetMarche

.NET Framework User Group delle Marche

This Blog

Syndication

ExternalBlogs

June 2012 - Posts

  • DOMAIN EVENTS ed handler- sync o async?

    Mi ricollego ad un post di Alessandro per una personalissima considerazione sul concetto di DOMAIN EVENTS ed HANDLER. Attualmente sto aggiungendo un po di questi concetti ad un sistema legacy, molto anemico, perchè la complessità richiede di iniziare a spostarsi verso una architettura il più possibile CQRS almeno in alcune parti (DOMAIN CONTEXT).

    Si inizia dal piccolo, cominciando a generare DOMAIN EVENTS, che all’inizio non sono stati altro che log applicativi per capire “cosa è successo?”, ed ora si iniziano ad usare in congiunzione con gli Handler per risolvere alcuni problemi.

    A mio avviso vedo due distinte tipologie di handler, la prima è la categoria dei denormalizzatori, componenti che creano le viste per cqrs, e che in molti casi possono essere asincroni. In generale un handler asincrono è l’asso di briscola per tutte quelle operazioni che l’utente non si aspetta in real time, ma che possono essere eseguite dopo “un po’”. Anche se Udi Dahan sostiene che tutto può essere compensativo, se il sistema nasce con quei concetti nel suo DNA “si può fare” ma su un sistema legacy, iniziare a introdurre logiche di business asincrone, può creare, almeno all’inizio qualche problema.

    A questo punto io vedo una seconda categoria di handler, quelli che girano in maniera sincrona, e nei quali un fallimento genererà il rollback di tutta la transazione del comando. Questo va molto contro il concetto di sistema CQRS e compensativo, sono daccordo che la vita reale non è transazionale, però purtroppo ci sono delle logiche per cui ho X operazioni da fare, se una di esse trova un problema debbo annullare tutto. Per tali operazioni l’esecuzione in sincrono è doverosa perchè il sistema legacy è cosi, ed improvvisamente dire “nulla può essere più sincrono” è un pochino pericoloso.

    A questo punto la soluzione migliore è far decidere all’handler se deve essere eseguito in sync oppure in async, e quindi è sua responsabilità decidere se un suo fallimento porterà al rollback di tutte le operazioni e eventi legati a quel comando oppure no. Se questo vi fa sentire sporchi (un pochino ci si può sentire) in un sistema legacy questa possibilità viene molto comoda e permette di ridurre la frizione.

    Alk.

  • SharePoint 2010, Real World Solutions - Milano, 27 giugno 2012

    Mercoledì 27 giugno 2012, si terrà un nuovo evento organizzato da SharePointCommunity.it ed incentrato su dei casi reali in cui è stato utilizzato SharePoint come piattaforma applicativa. La location sarà la nuova sede di Microsoft Italia a Peschiera...
  • Sql Server Data Tools power tools

    Sebbene gli SSDT al momento della loro uscita contenessero in alcune aree meno funzionalità dei suoi predecessori (leggi la mancanza al supporto agli unit test sui database project), anche per loro l’evoluzione viene fatta con Power Tools, rendendo di fatto gli updati non limitati alle major version.

    In questo post potete vedere un nuovo power tools che aggiunge alcune necessarie funzionalità, tra cui la possibilità di scriptare un oggetto ed altre novità, per cui non vi resta che installarli. Speriamo che tra non molto riportino il supporto agli unit test nel progetto di Database, per ora basta non convertirli e tenerli in Visual Studio 2010.

    Alk.

  • Diagramma di flusso sul cambio stato dei work item

    Nell ultimo rilascio di TFS Service (TFS hostato su Azure) effettuato il 4 giugno sono state introdotte alcune interessanti modifiche e se siete interessati potete leggere tutto nel blog di Brian Harry. Una delle aggiunte più interessanti è stato il ripristino del diagramma di flusso del cambio stato dei work item, che in aggiunta al tab “Discussion Only” permette di visualizzare molto bene il ciclo di vita di un Work Item.

    Supponiamo di andare ad aprire un bug chiuso e cercare di capire quale è stata la sua storia.

    image

    Questa visualizzazione è sicuramente di impatto e molto leggibile. Ogni volta che si aggiungono note al tab History e si salva il Work Item, le informazioni vengono memorizzate nel tab “discussion only” con il quale si può fare una vera e propria discussione, oppure semplicemente commentare la storia del file. Il diagramma di flusso in alto invece mi mostra in maniera molto chiara la vita del work item.

    Naturalmente non si perde la possibilità di visualizzare tutti i cambiamenti del Work Item in grande dettaglio, semplicemente scegliendo il tab “ALL CHANGES” invece della “DISCUSSION ONLY”

    image

    Come potete vedere ogni cambiamento è mostrato su una riga singola per identificare meglio l’autore ed I campi effettivamente cambiati. In organizzazioni complesse la possibilità di avere automaticamente tracciata ogni modifica di un Work Item, ma di poter comunque visualizzare in maniera veloce l’andamento dei commenti e dello stato è una funzionalità veramente interessante.

    Gian Maria.

  • Un sito tutto dedicato alle storyboard shapes

    Ho già bloggato tempo fa sul Power Point Storyboarding introdotto con Visual Studio 2012 ed ora con la RC è anche stato creato un sito totalmente dedicato a questo tool, che contiene una serie di template e di storyboarding che potranno essere utilizzati con questo tool.

    Trovate tutto qui, per cui non vi resta che installare VS2012 RC, avere installato o installare PowerPoint ed iniziare subito a realizzare rapidi prototipi di interfacce che potranno poi essere memorizzati in sharepoint e collegati ai requisiti TFS.

    Ecco uno shapshot del sito

    image

    Buon divertimento.

    Gian Maria.

  • Visual studio 2012 RC rilasciato

    Ieri sono stati rilasciati i bit di Visual Studio 2012 (questo oramai è il nome ufficiale) e debbo dire che uno degli aspetti migliori è una sensibile miglioria delle prestazioni rispetto alla versione Beta. Trovate tutto a questi indirizzi

    Visual Studio 2012 RC: http://www.microsoft.com/visualstudio/11/en-us

    Team Foundation Server 2012 RC: http://www.microsoft.com/en-us/download/details.aspx?id=29918&WT.mc_id=rss_alldownloads_devresources

    A cui chiaramente si aggiungono le versioni di Windows 8 (http://windows.microsoft.com/en-us/windows-8/release-preview) e la nuova versione di sistema operativo server chiamata Windows Server 2012 (http://technet.microsoft.com/en-us/evalcenter/hh225126.aspx) entrambe sempre in RC.

    Per tutti gli sviluppatori è anche disponibile un nuovo blog che fa da aggregatore a molti sottoblog dedicati allo sviluppo, il cui indirizzo è http://blogs.msdn.com/b/developer-tools/.

    Scaricate ed installate Smile

    Buona giornata a tutti.

Powered by Community Server (Commercial Edition), by Telligent Systems