Applications and data in various forms are important to all companies nowadays. Obviously this has been true for a long time, but with the globalization of enterprises of today it has become even more important. Information has been a key part of society ever since humans started living in communities. Early on it was vital to keep track of the seasons so people could anticipate when best to hunt, sow seed, and so on. As human society has grown more and more complex, so has our need for information.
In this chapter, we are going to spend some time discussing how enterprises have ended up with their information spread over so many places that it is often hard to retrieve. We are also going to have a look at something called enterprise application integration (EAI), a concept developed to bring order to chaos.
Even though integration may involve some techniques and tools unnecessary in an ordinary multitier application, the basic design does not change much. So developers can still use the knowledge they have.
One thing we would like to point out is that designing for scalability is as important to integration projects as it is to all other projects. You will always have to consider this in enterprise applications. Unnecessary delays and bad performance cost time and money, and if you do not plan solutions to this during design, your application will most certainly be considered a failure after it has been deployed. In this book, our goal is to show you some tips and tricks to build more successful solutions that scale well.