Component-oriented development has many architectural advantages. In spite of
this, many developers tend to solve problems the monolithic way on the first
go. This article demonstrates how a monolithic design can be modified to
achieve component-based design. During this conversion process, the necessity
of Component Models and Frameworks are highlighted. The article demonstrates
the componentization of an example monolithic application using a simple
homegrown component model and framework developed by the authors.
Introducing E-Store - A Business Application
Let us assume that we need to implement a simple E-store business
application. The application needs to cater to the following simple business
use cases for a single actor - the consumer.
Browse the catalog of products - Consumer can browse through the items in the
store. E-store app displays the different produ... (more)
A component is a reusable software entity. A component is a deployable piece
of software that can be independently developed and maintained. In the
previous article -Componentizing a Monolithic Application in Java, we
discussed the need for componentizing applications to get the benefits of
reusability and modularity. We also looked at how an E-Store application can
be componentized using a simple component model developed by the authors
using a factory whiteboard pattern and a simple repository.
In Part 1 of this article we will try to understand various component models
in Jav... (more)
OSGi is the latest component model to join the bandwagon of component models,
which provides a platform for component oriented development and assembly.
OSGi framework is a standards based platform whose specifications are
provided by the OSGi Alliance (www.osgi.org, formerly OSGi was referred as
Open Services Gateway Initiative). OSGi Alliance is an industry backed
nonprofit organization which was founded in March 1999. The OSGi
specification has gone through many releases and the current major version in
use is 4 and version 5 has been introduced recently.
The OSGi defines a d... (more)
Service Component Architecture (shortly referred as SCA) is a technology for
creating services from components. SCA is a set of OASIS standards and part
of it is developed with the collaboration of vendors from open source
community, referred as "OSOA" Open SOA. SCA helps to build systems as a
collection of interconnected components. The components created in SCA
communicate through the services. The advantage of SCA is its neutral
component model. It allows services to be built by any language component
The Java Platform Enterprise Edition 7 specification early draft is available
for download. All these years the focus was to introduce several APIs and
technologies as part of the platform to make it more powerful, simple and
complete. This is the first time the focus has shifted in a completely
different direction - to bring in something new to the platform, apart from
the enhancements to the existing technologies. In this article, we'll look at
how Java EE evolved, became a major platform specification and understand the
direction in which it is moving forward.
Java EE - Past