In May 2007 (yes a long time ago already ) I started working for the customer I’m still working for. One of my collegues, Dennis Doomen, started here 2 months earlier with setting up a full SOA architecture for .Net as a POC. I joined him for supporting the internal employees by learning .Net (all previous Oracle developers) and also as a developer. When the project was in the acceptance phase, I became the Team leader when Dennis started working on a new project (for the same customer) and now I’m currently holding the position of architect for the systems build in .Net and the newly created front-end applications based upon the architecture.
In the past, the development for this company was fully based upon Oracle & Oracle Forms. They made a (small) shift by introducing a .Net web application for the external customers, which we have build. The new system was still largely Oracle (as database, but also Oracle Forms for the application for the internal users and unfortunately a lot of business logic). During the this period, TFS was introduced, which is now also being used for bug registration / tracking. Next to those initial application, more web applications have been created using .Net.
We created a Service Oriented Architecture based upon the following technologies: Web Service Software Factory (using WCF) for our backend logic, Web Client Software Factory for our front-end application(s), Enterprise Library Logging Application Block, Unity and the Enterprise Library Policy Injection as some of the base components. Next to that we also used open source components, like RhinoMocks and Nhibernate.
In the last 2 years we have run into issues, especially just after Go Live, and also during the development period. Looking back now, we made some good choices, but also some that are not so good. I’m going to try to post about some of the good choices (in my opinion) and about the bad choices and how we have fixed them or how we are planning to fix them. Hope I can help other people not to make the same less good choices and help them make better choices.