Rory
Rory

Reputation: 41847

Relative effort/productivity to develop business application in Silverlight/WPF or ASP.NET?

I'd like some vague guidelines about the relative effort to build using ASP.NET versus Silverlight/WPF. I know, it all depends, but any input greatly appreciated.

I'm rebuilding a winforms app and planning on moving it to either:

It's a typical business-style app with some tens of forms, various datagrids, standard windows controls, etc. Some chart graphics but no multimedia. It's not very data-heavy, i.e. there are quite a few datagrids but they'd seldom have more than 10 cols & 100 rows and usually less. The logic is currently tightly coupled with the winforms code so either way it'll need to be split out from the UI. We also use Crystal Reports for reporting.

The 2-3 developers who will be working on this have some WPF & ASP.NET experience but not much.

I'm tempted to use Telerik controls or similar as they look like they make some things we want to do easier.

The app is installed for a customer and only used internally within their firewall. The main advantage to ASP.NET would be deployment, but I figure that silverlight or wpf with clickonce wouldn't be much worse for deployment and may be faster to build.

If there's any other general information I can provide which will make it easier to estimate relative effort, let me know!

thanks.

UPDATE:

Let's assume the only basis for my decision is the speed/productivity of development (i.e. ignore deployment, UI impact, etc). Which should I choose?

Upvotes: 2

Views: 378

Answers (2)

Dave White
Dave White

Reputation: 3461

What you use and how cost effective the project will be totally depends on requirements and your team's skill sets. Learning ASP.NET (MVC or WebForms) is typically a long, hard road if you come from a WinForms background (and arguably, if you are doing WebForms, you may as well so Silverlight). If you have a lot of experience with HTML/CSS/JavaScript(jQuery)/MVC patterns, then ASP.NET MVC will probably suit your project better. If you have requirements such as cross-browser compatability, SEO or other weby things, you'll probably go ASP.NET MVC.

On a recent project, where we had an assessment of the requirements and available technology options, we were forced down the ASP.NET MVC by the client but we had determined that given the team and requirements, Silverlight would have been an easier (read: less expensive) technology to implement the application in and it would have reduced the project cost by 50%. (educated, thumb in air guess)

Upvotes: 2

Dylan Beattie
Dylan Beattie

Reputation: 54160

In my experience, the biggest delays are caused by "black holes" - things that you'd assumed were going to be easy when you put together your estimates, which turn out to be hard/complicated/time-consuming due to leaky abstractions, framework bugs, and so on.

I'd therefore favour an approach which uses proven technology and protocols and minimal abstraction, and for me, that would be ASP.NET MVC. But make sure your developers understand HTTP, HTML, the model-view-controller pattern and the fundamentals of stateless architecture.

Upvotes: 2

Related Questions