Microsoft Silverlight offers several several capabilities for enterprise software development, however, there are caveats to its application in enterprise systems. For example, Silverlight applications require end users to install plug-in based on the .NET framework, which may be prohibited by corporate security or IT policies. Silverlight applications are not supported on certain browsers and mobile devices. Similar to their alternatives, Silverlight applications provide dynamic behavior suitable to business intelligence dashboards with drill-down capabilities, animation, vector graphics, and audio-video playback-features that characterize Rich Internet Applications.
Ayoka has developed Silverlight applications for a number of industries to apply its capabilities, such as industrial companies where shop floor employees enter production data or view performance dashboards. Rather than only applying the media and entertainment offerings in Silverlight, Ayoka has focused on Silverlight for business purposes, particularly where Silverlight can improve usability for employees who are not computer savvy.
A key business application for Silverlight development are its data visualization capabilities. Graphical data views are may be animated or interactive. These Silverlight design features provide a more intuitive and engaging experience to that of a traditional browser-based application. Developers can organize charts and information to maximize the amount of data displayed on the screen (see example above).
Users can drag and reorder the information to refresh the charts. The charts also support drill downs to generate additional views or detailed analysis. The visual elements consume data from WCF REST, ATOM and POX services and exchange notifications upon data binding.
Silverlight applications can be structured to enhance user experience design, particularly important for business applications where employees and other users have limited computer skills. Applications may also engage users with rich presentation of content and interactive capabilities. In addition, features such as touch can reduce the learning curve. Silverlight applications ease the transition from a rich-client application that must be installed on a user’s computer to a browser-based application.
For programmers, Silverlight development requires a foundation of Microsoft .NET skills (C#, ASP.NET), as Silverlight adds a layer of complexity to application development. In addition, the interactive capabilities are best developed in close collaboration with the business users, which is not practical for remote software developers. Silverlight developers must also perform regular release testing as Silverlight application users automatically receive the latest updates each time they start the application.
The Silverlight RIA framework provides several other features that may be useful for enterprise applications: