Decos adopted the Silverlight platform, offered by Microsoft, when it was just released in 2007. It recommends Silverlight to its customers as it is cross browser & cross platform plugin. Silverlight allows creating rich user interface with low bandwidth overhead. The client side software is completely written in C# which provides additional features of .NET on client side.
Decos is currently working on number of Silverlight projects. All these are LOB (line-of-business) solutions created in Silverlight 4. Some are now being migrated to Silverlight 5 as well. We are extensively using controls from Silverlight Toolkit & third party controls like Telerik, Mind Fusion (Diagram Lite) etc. The development is done by strictly following the MVVM Framework & best coding practices of Silverlight. The user interface is created by a dedicated Silverlight design team, which focuses on reusable theme based designs. Following are some of specific techniques used in our projects
To act as Service platform for Silverlight, Decos chooses Microsoft Windows Communication Foundation (WCF). It is faster & more flexible as compared to traditional web services. WCF supports scaling/load balancing & is interoperable to Java & Linux clients. More importantly, it can be invoked by any protocol (e.g. http, tcp etc.) and any transport type.
In Decos, all important aspect of WCF are being mastered & used. The development is done using Service Oriented Architecture (SOA). Some of the major features used are as below
In some of the Decos projects, where queued messaging is needed NServicebus is used along with WCF. It is chosen for its plug-ability & easy collaboration between business-oriented services.
For Object/Relational Mapping (ORM) to SQL Server database, Decos uses NHibernate. It provides data query and retrieval facilities. It also significantly reduce development time otherwise spent with manual data handling in SQL and ADO.NET
Domain ExpertiseWith the Microsoft's vision of moving towards HTML5, Decos has started recreating parts of Silverlight products into HTML5 for its customers. This is to allow these applications to be used in more devices like android smartphones (iPhones, Android etc) &Tablets (iPads).