We help IT Professionals succeed at work.
Get Started

Application Architecture Planning

Last Modified: 2020-01-22
Happy Holidays All!

I'm looking for some advice on best practices for modern application architecture.

We have a custom ERP software that was written (and still being used) in about twenty Access 2003 databases.  Each module covers some functionality of the business with minor linking in between.  

The good news is we're finally ready to start building new applications, and, going to be replacing these legacy modules as time allows.  In addition the database schema is somewhat of a mess that I also intend on cleaning up eventually.

Current setup:
These VMs are running on VMware with HA configured (2 physical hosts, properly provisioned)
  SQL server VM
  a RDP / File Server / Application server VM
  2 AD servers (one per host, non-HA)

My partner has recommended going with a 3 tier architecture to allow for flexibility and uniformity, with specifically a WCF middle-tier to allow for binary communication in-house and an http endpoint for any extranet needs.  That would go on the application server.  

Desktop apps would then be deployed to each user computer as necessary.  (We have a current update batch file which users are used to running to pull down new code bases, all applications run locally).  The applications would then pull from the WCF middle tier and access the data that way.  

Is 3 tier still the best approach?  Also in terms of the desktop apps would you recommend UWP or Windows Forms?  Is EF still the preferred ORM?

Users have Windows 10 desktops.  We don't have any real need for the extranet yet but it's on the list wish for the executive board (EG: They want an app that our reps can use on their mobile devices).

Any thoughts or advice on the high level layouts would be greatly appreciated.  Looking for lessons learned and what kind of traps I should be looking out for.

Thanks in advanced.
Watch Question
Architect - Coder - Mentor
This problem has been solved!
Unlock 1 Answer and 17 Comments.
See Answer
Why Experts Exchange?

Experts Exchange always has the answer, or at the least points me in the correct direction! It is like having another employee that is extremely experienced.

Jim Murphy
Programmer at Smart IT Solutions

When asked, what has been your best career decision?

Deciding to stick with EE.

Mohamed Asif
Technical Department Head

Being involved with EE helped me to grow personally and professionally.

Carl Webster
CTP, Sr Infrastructure Consultant

An Experts Exchange subscription includes unlimited access to online courses.

Get Started
Ask ANY Question

Connect with Certified Experts to gain insight and support on specific technology challenges including:

  • Troubleshooting
  • Research
  • Professional Opinions
Did You Know?

We've partnered with two important charities to provide clean water and computer science education to those who need it most. READ MORE