views:

195

answers:

1

Hi Everyone,

I work at a company with a large SAP investment, and we also have dozens of large .Net systems (mostly internally for engineering systems), and Java platforms (mostly for external web applications). As such, we have large development shops on ABAP, C#, and JEE.

We have over 20 major facilities distributed over very large distances, 2 data centres, and 600 or so small facilities in urban, rural, and remote areas (think close to the North pole)

We have decent standards for which platform to use in each functional domain, but we don't have a lot of clarity around when to local processing and when to use distributed (central) processing. (i.e., Thick client vs. Thin client)

I'd like to build a decision tree based on best practices to help with this question. Some of the criteria I've seen in the past include:

  • Is a reliable network available everywhere the application will be installed? (If no, local processing may be a better option)
  • Does the application require real-time data? (If yes, centralized processing may be a better option)
  • Does the application require intensive CPU effort or high disk IO? (If yes, centralized processing or a thick local processing may be options)
  • Does the application need offline capabilities? (If yes, local processing may be a better option)
  • Are there security concerns for having the data consolidated in remote environments? (If yes, centralized processing with distributed thin clients may be a better option)
  • Is there existing hardware at the sites that can be leveraged to run the application? (If yes, centralized processing may be a good option: A thin client will cost less to deploy and maintain, they are more secure, and less valuable to thieves)
  • Are there existing applications that the same user group is working with, and how are these applications deployed? (There may be economies of scale by consolidating applications into one design pattern)

Thanks!

KA

+1  A: 

All sorts of things can be considered here such as what sort of file system are you going to use ? (AFS / NFS)

From previous experience we've managed to distribute trading systems which require intensive CPU over citrix clusters for remote servers. None of these users had any complaints.

Real time data we would usually use a BUS approach where by clients or middleware would deliver the results.

steve