Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is Silverlight appropriate for a big LOB application

So I'm at the proof of concept stage for a fairly large LOB application. The application will be deployed to many desktops (200+) in many organisations. It will contain lots of CRUD type screens (around 100), along with some pretty complex processes like invoice generation and financial ledger integration. It will also contain lots of reports.

I've already done lots of homework and pretty much settled on a technology stack of:

  • PRISM
  • CSLA
  • NHibernate

All that's missing is the presentation layer and so my question is this:

is Silverlight 3 an appropriate technology to build such a large application?

Initially I was concerned about the lack of a reporting story for Silverlight but now there is a commerial reporting tool available that problem is solved. So now I'm wondering about the size of my application and what the performance will be like when they try to download it in their browser. With 100+ "screens" and a whole load of reports it isn't going to be lightweight by any means.

Is Silverlight 3 a sensible option or should I be looking at WPF instead? The primary reason for SL3 was the problem of deploying to lots of desktops in lots of organisations.

like image 602
Steve Avatar asked Oct 22 '09 11:10

Steve


2 Answers

I would suggest Silverlight 3.0 for a LOB application if your application requires the following.

  • A rich client interface
  • Off-line/occasionally –connected scenarios
  • The ability to mimic the web deployment model

As long as the frequency of your releases is reasonable, then I think that these benefits would outweigh the side-effects of a large initial download.

On the flip side, I’d reconsider using Silverlight 3.0 if any of the following are true.

  • You need to interface with USB devices, like scanners.
  • You need to interact with other applications on the client.

If you are guaranteed a standard client, you may want to explore a ‘Click-Once’ Windows application. It overcomes the above restrictions, is not bound by the ‘sandbox’, and you can still use the web-deployment model.

like image 145
Curt Avatar answered Nov 15 '22 12:11

Curt


We're doing an SL3 application for 5000+ users but with less screens (30+) and we beleive it's possible. We're also in production with 4 screens app for same amount of users. If you're concerned about download performance you can do two things:

  1. Recompress XAP with something nice, like 7zip - it gives much better results compared to native compressor.
  2. Split application in separate SL3 applications and load appropriate parts on demand.
like image 26
Nikolay R Avatar answered Nov 15 '22 12:11

Nikolay R