The previous sections outlined activities that you could use not only to develop a holistic perspective of the current technologies that have been employed to develop applications in your organization, but also to look over the horizon to what types of technologies, applications, and integration mechanisms could be in line for the future. This information is core to establishing an application infrastructure solution because it allows you to identify
Taking into consideration everything that has been discussed so far in this chapter, the best approach to implementing any application infrastructure solution is to take the software platform approach, where your business applications and their supporting technologies are seen to be part of a related , interlocking software architecture rather than marriages between independent initiatives. As illustrated in Figure 8.5, a software platform approach involves the following layers : Figure 8.5. The software platform approach to resolving an application infrastructure solution.
Note Infrastructure patterns also include a physical infrastructure solution, as illustrated in Figure 8.3. A software platform approach in most cases is hardware, operating system, and network independent. The software platform approach implies only those application infrastructure solutions that meet the current and future business requirements will be part of the Platform layer. All others will be considered part of an integration initiative. Even though your application infrastructure foundation may be reduced to solutions from a few vendors , perhaps one for each technical domain, there are advantages to taking this approach:
By adopting a software platform approach, organizations can develop enterprise business applications through a common set of infrastructure services that are connected, aggregated, and presented by a common presentation framework. Each technical domain of the platform must be based on the open standards that exist for that domain, which not only preserves an organization's investment in that technology, but also enables the technical domains to be interoperable so that composite applications can leverage all the functionality provided by the platform. Also, because the software platform serves as the foundation for multiple mission-critical as well as non “mission-critical operations, all the application infrastructure solutions that constitute the software platform must collectively provide the following Quality of Service (QoS) attributes:
Note Scalability, high availability, security, application management, and Web services are examples of non-J2EE features. |