|
PocoCapsule -- facilitating start small and think big Copyright© 2006 by Pocomatic Software. All Rights Reserved. Sept. 21, 2006
Business systems are ever increasingly complex. Therefore, it is more and more costly and risky to build a full blown business application system in a decisive big bang undertaking. This trend forces IT managers to take the starting small and thinking big as an alternative strategy. Unfortunately, traditional frameworks, which were intended to accommodate business applications, mostly favor aggressive big bangs over this poco a poco incremental approach. These frameworks were more or less influenced by the dot-com era engineering philosophy and were designed to be excessively "advanced" (read complex and expensive) with high entry barriers meant for experienced system logic developers and high budget applications. For instance, the EJB (pre-3.0) and the CCM (CORBA Component Model) are notoriously heavy, complex, and deficient white elephants. They are also intrusive and stiff, therefore, technology lock-in/lock-out. IoC containers are a promising new breed of frameworks. They have very low entry barriers and are much light, simple and effective comparing to their overly architected predecessors. Their non-intrusive nature allows applications to evolve and grow flexibly without being technologically locked-in or locked-out. Nevertheless, expressiveness of IoC deployment schema is too primitive to describe sophisticated application structures and too directive to conceal low level system complexities. Application deployments in conventional IoC containers essentially become verbose âprogramming in XMLâ and merely shift low level complexities from Java/C++ code into XML descriptions that still need to be dealt with by application developers explicitly and repeatedly. For large systems, this deficiency could become a maintenance nightmare referred to as âXML hellâ. Also, if IoC were applied to wire up underlying system logic units, it would force business logic developers to be knowledgeable about APIs of system logic components. PocoCapsule from Pocomatic Software solves the dilemma of being comprehensive and expressive while retaining light and simple. PocoCapsule is a container that works on top of an ordinary IoC container. Therefore, a PocoCapsule container is as light, simple, and non-intrusive as other conventional IoC containers. What differs PocoCapsule from other IoC containers is that its deployment schema is easily and transparently customizable. Instead of living with a primitive low level IoC wiring model or dictating a heavy and complex high level deployment model, PocoCapsule allows users to define their desirable deployment abstraction level and customize the container's deployment schema to be more expressive in describing domain specific application structures and more objective in encapsulating low level system logic details. PocoCapsule is also a framework of frameworks. It allows users or third parties to quickly and cost-effectively transforms the underlying primitive IoC container into their preferred deployment frameworks. For instance, it is possible to transform the PocoCapsule into a SCA (Service Component Architecture) container, or customize it into a full fledged CORBA application container (see PocoCapsule/CORBA). PocoCapsule supports Java and C++ applications by separate Java and C++ engines. Its java engine works on top of a conventional POJO IoC container, such as Spring Framework core container, the JBoss Microcontainer, or other ones chosen by developers. Its C++ engine, to be released later, is a true non-intrusive IoC POCO (Plain Old C++ Object) container that is built from scratch based on two patent-pending technologies. More detailed descriptions of PocoCapsule can be found in the PocoCapsule Developer Guide. The evaluation version of PocoCapsule can be downloaded from Pocomatic Software. |