There are many different ways to build a system. One common way is to use technology as a take-off and build the system around the technical dataflows; another is to make abstractions of the enterprise. Both have their relative advantages when comparing ease-of-development and other qualities.
In this presentation we compare different ways to structure the system in a J2EE environment. We study what functionality goes where, e.g. where enterprise constraints can be enforced. According to the mind-set used, the functionality is separated differently in presentation (JSPs or Swing), EJBs, integration (SQL and stored procedures) and DTOs.
Our interest is to make it easy to perform common changes to the system such as to scale capacity, to get transactional integrity on an enterprise level, to add a non-trivial access control mechanism, or to integrate with other systems. Of course these needs will vary depending on the business environment the system resides in.
The result of the discussion is a set of guidelines for what kind of structure is suitable for different kinds of enterprise environments.
In this era of integration, Web services has risen as one of the fastest evolving and most discussed technologies. However, Web services is not the silver bullet for all integration problems. As do all technologies, it has its advantages and drawbacks.
In this presentation we study Web services and its characteristics in a J2EE technology environment. We focus on integration situations, both between systems within an enterprise and B2B applications for integration of enterprises. At one end of the spectrum we have soft integration, such as simple publishing of information. At the other end, we have hard integration, with use of enterprise-critical system calls.
We cover the integration spectra and study the system qualities such as performance, capacity, extensibility, and reliability. Throughout we compare and contrast with other technologies available in the J2EE space.
Out of this discussion we derive guidelines as to which situations should be solved by Web services and which should be solved in another fashion.
Dan Johnsson is programmer, architect and security consultant at Omegapoint AB, one of the leading IT-security companies of Sweden. At Omegapoint he leads the process of applying the company's security competence in the Java/J2EE space.
From his background in programming Dan has taken a broader interest in architecture in general and system integration in particular. Through consulting and teaching he has played a pioneering part in the introduction of Java and J2EE in Sweden.
Dan’s current focuses are how to keep system structures sound and secure, and fruitful ways to integrate public key infrastructures and access management systems into J2EE architectures. He is also active as a mentor helping projects to introduce new technologies or to improve their development process and programming habits.
In his spare-time Dan is a dedicated dancer and member of the swing dance show troupe Sanslös Swing.