Nous sommes sur le point d'entreprendre un effort d'intégration assez important pour détruire un grand nombre de bases de données Access et Sql Server et tout mettre en place dans un seul système d'entreprise cohérent. Il existe également un certain nombre d'autres systèmes (comptabilité, CRM, paie, MS Exchange) qui contiennent des données critiques que nous devons intégrer (utiliser pour la validation des données dans d'autres systèmes), créer des rapports et les exposer autrement. Il est probable que certains de ces systèmes vont changer au cours des prochaines années, nous devons donc isoler nos systèmes pour être prêts à changer.Intégration d'entreprise de systèmes disparates
Idéalement, nous serions en mesure d'exposer nos formes de manière cohérente sur le plus grand nombre possible de nos systèmes sans avoir à les développer de nouveau pour chaque système. Nous ciblons actuellement SharePoint (2007 et bientôt 2010), Office (2007 et bientôt 2010 - Word, Excel, PowerPoint et Outlook), Reporting Services, les applications console .Net, les applications Windows .Net, les extensions shell, et avec la possibilité d'exposer certaines fonctionnalités sur les appareils mobiles (BlackBerries actuellement, peut-être iPhones plus tard) et via notre site Web. Nous déplaçons le développement vers Visual Studio 2010 (à partir de 2005) avant la migration vers SharePoint 2010 et Office 2010. Étant donné que la majeure partie de notre développement est actuellement orientée vers le framework .Net (principalement en C#), il semble logique de s'en tenir à cela à moins qu'il y ait une raison impérieuse de changer de framework/plateforme pour certains aspects. Nous pensons à votre couche standard Database-> Data Integration Couche-> Business Objects Layer-> Web Services (ou REST) Couche-> Application client et à notre propre application client avec WPF (ou quelque chose d'autre?) cela peut également être exposé dans les systèmes MS (SharePoint, Office, Windows). Donc, nous ne voulons pas beaucoup, juste tout :) Fondamentalement, nous devons nous isoler de la base de données et les changements de systèmes, créer une API qui peut être utilisée dans nos systèmes, puis rendre cette fonctionnalité disponible dans nos applications client.
Je suis très désireux d'obtenir des conseils de tous ceux qui ont des conseils sur la façon de réussir. Devrions-nous regarder la bibliothèque d'entreprise comme un endroit pour commencer ou rouler la nôtre? Est-ce que REST avec ASP.Net MVC2 est une meilleure solution que les services Web pour un système comme celui-ci? WPF fournira-t-il des formulaires de réutilisation ou y a-t-il quelque chose de mieux?