2.4. J2EE Roles

One of the benefits of the Java 2 Platform, Enterprise Edition, is that it breaks the application development and support tasks into well-defined roles. The general goals of this division of labor is to move many of the more complex programming issues to the J2EE platform, reduce the amount of work required by application developers to support new application requirements, and allow a clear separation of tasks based on specific skill sets and qualifications. This separation also helps to commoditize expertise—fully functional J2EE applications can potentially be assembled from off-the-shelf components that conform to well-defined interfaces, with a minimum of programming or other customization.

  • J2EE product providers, many of whom have contributed chapters to this book, have implemented J2EE-compatible platform products. For example, a database system vendor may extend its database management system to support EJBs and the other J2EE functionality. An application-server or Web-server vendor may extend and modify its product to provide J2EE compliance. The J2EE product provider runs the J2EE Compatibility Test Suite (CTS) to ensure compliance.

  • J2EE tool providers sell tools for developing and packaging J2EE applications. Generally, J2EE product providers are also the tool providers, supplying tools that work with their J2EE platform product. However, a number of independent tool providers are already working on tools that can be used with multiple J2EE product provider platforms. In addition, tools can be customized for specific tasks and roles. For example, one tool vendor may focus on cool tools for laying out JSP-based Web pages, while another may focus on coding and development tools that support Unified Modeling Language design patterns for J2EE object modelling.

  • J2EE application component providers implement EJB, JSP, and other components that are the building blocks of J2EE applications. J2EE allows an application component provider to build components that are independent of the J2EE product provider they deploy on. When custom functionality is required, application component providers will most likely be in-house developers or consultants directly employed by a company. When more-generic or vertical-market behaviors are needed, component providers may be independent software vendors or systems integrators. Given the popularity of J2EE and its component models, it's possible to predict a lively marketplace for off-the-shelf J2EE components, and even application frameworks including JSPs, EJBs, and servlets.

  • J2EE application assemblers assemble the application component providers' components into a complete J2EE application, using tools from the tool provider. The application assembler need not have the source code for the components. Instead, he or she focuses on assembling the various components (both custom and off the shelf) into complete, working J2EE applications.

  • J2EE deployers are responsible for the installation of an application at a site, again using graphical user interface tools from the tool provider. The deployer resolves external references created by the application assembler and component providers in order to deploy the application into its operational environment and to make it available to users.

  • J2EE system administrators use the product provider's runtime monitoring and management tools to oversee J2EE applications.

As you will see, all these roles come into play in the specific application case studies in this book.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset