making unit is expected to make a sensible decision
upon every request, and to learn from its past
decisions via the received feedback.
The main obstacle in developing intelligent
decision-making mechanisms is to understand how
we perceive an “intelligent” entity (Ong and
Khaddaj, 2009). A general concept on how an
intelligent decision-making ability is achieved using
combined functionalities is shown in figure 1. This
is used as a general guideline in constructing the
proposed intelligent control unit where the learning
and logical reasoning processes use historical data
for its analysis and diagnosis as well as sets of rules,
both pre-defined and self-defined, to offer a solution
to a particular problem.
Figure 1: A decision-making ability.
3 SOFTWARE ARCHITETURES
The traditional software architectures have a
tendency toward developing computer applications
as standalone visible software (commodity), where it
can be sold as an off-the-shelf product. Typically, it
is designed for a specific business function (e.g. an
in-house payroll system) or a specialised general-
purpose application such as word processing,
desktop publishing, operating system, etc.
However, continuous growth in the integration
and globalisation of the current computer
infrastructures has offered a new opportunity for a
“next step” in software evolution. A service-oriented
architecture (SOA) has emerged as a popular
architectural platform, where it has moved
significantly from the traditional design (Choset,
2000). This has created a great opportunity for the
full integration of existing applications into one
universal service provider with each software
component capable of acting autonomously as a
service provider. This service provider can range
from a small task (e.g. statistical calculation, sorting
functions, etc.) to a larger enterprise solution, where
it can consist of an integration of various small tasks
to form a complex service such as online banking, e-
store, etc. Furthermore, any improvement or
deployment of this component to other solutions can
be accomplished without any noticeable effect to the
overall infrastructure (Pfister, 2002), (Gyurjyan,
2003), (Soundararajan, 2008), (Bar-Kana, 1989),
(Frankovic, 2009).
An n-tier concept is commonly used in designing
an SOA solution, where it is generally adopted and
implemented as a software development scheme
particularly for web services (e.g. the core design
concept of Microsoft .Net (Microsoft, 2007)).
3.1 N-tier Architecture
The n-tier architecture’s aim is to provide an
approach that unifies business, technical and data
access logics into one single flexible software
infrastructure. Business logic provides aims and
purposes of the software (e.g. content management
for different types of user, on-line payment and
billing solutions, etc.). Technical logic gives a
technical integration of the business logic into a
viable technical solution (e.g. interpretation and
transformation of screen display according to level
of information or privileges set by the business
logic). Lastly, data access logic provides a data
management solution for the software such as data
access solution, data storage solution, data
translation solution, etc.
The n-tier architecture utilises a component-
based approach in its design practices. This
approach permits the architecture to be more flexible
and acceptable to any changes with a minimal
impact to its structural integrity. The flexibility
offered by this approach enables the architecture to
reuse existing components, which has led to a large
reduction in the redundancy of functions (codes).
In general, n-tier architecture can be divided into
three main components – “User Interface”,
“Application Structure” and “Data Storage” (figure
2). The “user interface” component provides a
physical medium for a software solution to engage
with an end-user. The “application structure”
component incorporates business, technical and data
access logics into three integrated tiers to provide a
software solution. The “data storage” component
gives a data storage and management facility to an
“application structure” component.
Figure 2: General concept of n-tier architecture.
ICEIS 2010 - 12th International Conference on Enterprise Information Systems
356