Simplifying the Development of Autonomic Enterprise Java Bean Applications via Model Driven Development

Jules White, Douglas C. Schmidt, Aniruddha S. Gokhale · 2005

Autonomic computer systems aim to reduce the configuration, operational, and maintenance costs of distributed enterprise applications. In theory, autonomic systems can minimize the impact of human error in system development and management. In practice, however, it is hard to develop the monitoring, analysis, planning, and execution aspects required for highly complex autonomic software systems reliably within short timeframes. This paper provides two contributions to the development of autonomic computing systems using Enterprise Java Beans (EJBs). First, we describe the structure and functionality of a model-driven development (MDD) tool that can formally capture the design of EJB systems, their quality of service (QoS) requirements, and the autonomic properties that will be applied to the EJBs to support the rapid development of autonomic EJB applications via code generation, automatic checking of model correctness, and visualization of complex QoS and autonomic properties. Second, the paper describes how MDD tools can generate code to plug EJBs into a Java component framework that provides an autonomic structure to monitor, configure, and execute EJBs and their adaptation strategies at run-time. We present a case study that shows how these tools and frameworks help manage autonomic distributed applications at the EJB level, thereby allowing developers to incorporate adaptive properties at a finer granularity than simply restarting or cloning entire EJB applications.

Read the paper · More papers on PaperTik