We are revisiting our presentation tier architecture as a blueprint for future new, and re-written business systems (Just the presentation tier), using Microsoft technology stacks.
We have around 30 .NET systems (2, 3 and 3.5), about 60% of which are web based (CWAB + Web Forms) and 40% Smart Client (using CAB / SCSF, WinForms) All systems integrate into a back end SOA stack via ASMX or WCF (i.e. the 'back end' systems architecture is common)
The objectives are
- if possible, to try to keep the codebase as 'common' as possible between Web, Windows and Mobile (currently no reuse of MVP / MVC between Web and WinForms)
- Will increasingly need to support Mobile devices
- Most of our systems are grunt line of business systems - functionality is more important than aesthetic requirements
- Definitely a lean toward moving across to WPF
- Even if there is no presentation tier reuse, to keep a consistent architecture (MVC / MVP / MVVM etc) between the clients
- Stay mainstream!
Some thoughts have swung between
- ASP.NET MVC 2 + jQuery etc for web + ?Prism / WPF for Smart Client vs
- Prism for all (Smart Client and Silverlight) vs
- Sharepoint Web Parts (Portal Architecture) vs
- Leaving Web / Winforms and waiting for the dust to settle some more ;)
How does the future HTML5 effect your thinking?
Apologies for such an open ended question, but would really value the SO community's advice and experience on this!
Thanks in advance!