ENTERPRISE PORTAL CONTENT MANAGEMENT
From Model to Application
Sergey V. Zykov
ITERA Oil and Gas Company L.L.C.
Keywords: Enterprise information system, enterprise portal, data model, abstract machine, content management.
Abstract: The paper considers content management in web portals, which are built on heterogeneous enterprise
information systems (IS). Quite a heavy data burden has been accumulated by the enterprises, and it tends to
increase further. Global distribution of the heterogeneous data and its weak-structuredness make difficult its
uniform management. A problem-oriented approach for enterprise content management is presented, which
includes a formal model and a software development toolkit. Implementation results demonstrate significant
terms and cost reduction.
1 INTRODUCTION
State-of-the-art enterprise IS currently handle
terabytes data (and metadata) of heterogeneous
sources, which tend to change to petabyte-sized ones
shortly. Such huge data volumes demand new
models, methods and tools to manage them
uniformly. A positive approach to solve the problem
is portal-based enterprise content management
(ECM). However, major software producers
(Microsoft, Oracle, BEA etc.) lack adequate formal
models in their ECM schemes, which makes the
process vendor-dependent and non-uniform. Thus,
the approaches known as yet either have model-level
methodological “gaps” or do not result in enterprise-
level solutions with practically applicable
implementation features (scalability, expandability,
availability, fault tolerance etc.).
The proposed ECM model, methodology and
toolkit are parts of the integrated IS lifecycle support
for heterogeneous portal-based environment (Zykov,
2005).
ECM modeling methods suggested are based on
a creative synthesis of finite sequences (Barendregt,
1984), categories (Curry, 1958; Cousineau, 1987),
computations (Scott, 1982) and semantic networks
(Roussopulos, 1976).
2 THE DATA MODEL
An object-based data model is suggested with data
the following data representation:
Data = <class, object, value>,
where under a class a collection of objects of the
integrated enterprise database is implied. An object
means an element of ECM IS portal page template.
A value means a template data object instantiation
and represents the problem domain dynamics.
Compared to results known as yet, benefits of the
model suggested are more adequate mapping of
heterogeneous weak-structured problem domain
dynamics and statics as well as event-driven
(meta)data control in the global computational
environment.
The data model is based on two-level
conceptualization (Wolfengagen, 1999), i.e., the
process of establishing relations between problem
domain concepts. Objects, according to assigned
types, are assembled into assignment-dependent
collections, thus forming variable domains, which
model problem domain dynamics and statics.
The data model compression principle allows
model application to classes, objects and values
separately and to the data elements on the whole.
The integrated object model for data, metadata
and states is characterized by structural hierarchical
organization, scalability, metadata encapsulation and
readability. Extendibility, adequacy, neutrality and
semantic soundness of the formalism provide
465
V. Zykov S. (2006).
ENTERPRISE PORTAL CONTENT MANAGEMENT - From Model to Application.
In Proceedings of WEBIST 2006 - Second International Conference on Web Information Systems and Technologies - Internet Technology / Web
Interface and Applications, pages 465-468
DOI: 10.5220/0001245004650468
Copyright
c
SciTePress
problem-oriented IS development with (meta)data
object adequacy maintenance throughout the entire
lifecycle.
On the basis of multi-parameter functional
F = F ((v), (e), …) (s) (p),
where respective values in brackets represent
client interface parameters, data access device
parameters, user personal preferences and user
registration status, a problem-oriented object portal
personalization model has been built, based on
functional ⎢⎢F ⎢⎢ evaluation.
Abstract machine for content management
(AMCM) (Zykov, 2005) is suggested as an ECM IS
model, improving categorical abstract machine
(Cousineau, 1987). At any given moment AMCM is
determined by its state; dynamics of its work cycle
can be formalized by explicit enumeration of
possible state changes.
From the formal model viewpoint, when portal
page templates are mapped into the pages, variable
binding evaluates the variables that represent
template elements and their values, i.e. portal page
elements.
AMCM semantics can be described in terms of
semantic domain theory (Scott, 1982):
1) Standard (most commonly used within the
model framework) domains are defined;
2) Finite (containing explicitly enumerable
elements) domains are defined;
3) Domain constructors (operations building
new domains out of the existing ones) are defined;
Complex domains are built out of the standard
ones using constructors, which include functional
space [D
1
D
2
], Cartesian product [D
1
×
D
2
×
×
D
n
],
disjunctive sum [D
1
+ D
2
+… +D
n
] and sequence D
*
.
Let us collect all possible language identifiers
into Ide domain, commands – into Com domain, and
expressions – into Exp domain. AMCM language
contain environment model is constructed as
follows:
St = Mem
×
In
×
Out;
Mem = Ide
[Val + {unbound}];
In = Val*;
Out = Val*;
Value = T
1
+ T
2
+ ….
AMCM state is defined by “memory” state
including input values (i.e. content) and output
values (i.e. web pages) of the abstract machine.
Therewith, under memory a mapping from identifier
domain into value domain is implied, which is
similar to lambda calculus variable binding. For
correct exception handling, unbound element should
be added to the domains. Value domain is formed by
disjunctive sum of domains, which contain content
types of AMCM language.
Semantic statements describe denotates (i.e.
correct constructions) of AMCM (meta)data object
manipulation language.
Semantic statements for basic AMCM language
commands and expressions are presented in (Zykov,
2005).
Constant denotates are their respective values in
a form of ordered pair of <variable, value>, while
program state remains unchanged.
Identifier denotates are identifiers bound with
their values (if binding is possible) in a form of
ordered tuples of <variable_in_memory, identifier,
state>, while the state remains unchanged (an error
message is generated if the binding is impossible).
Thus, ECM IS template binding with the content
may result in AMCM state change and in a number
of limited, predefined cases (particularly, under
template and content type incompatibility) – in error
generation.
Semantic statement for an AMCM command,
which assigns content to template element, results in
state change with substitution of content value by
the identifier in memory.
3 CUSTOMIZING THE ECM
Let us apply the computational models introduced to
the target ECM IS and the portal.
The problem domain model is based on two-
level compression (Wolfengagen, 1999), which is
interpreted here as establishing relationships
between data object classes C of the integrated
problem domain D:
C = Iw:[D]
v:D (w(v)
) = {v:D |
},
where C and D are in a relation of partial order
with each other (C ISA D), and
is a condition of
data object w belonging to class C (according to a
problem domain expert).
Complex, “multi-dimensional” data objects are
modeled as n-arity data object relationship:
R
n
= Iw: [V
1
,..,V
n
]
v
1
:V
1
v
n
:V
n
(w [v
1
,…,v
n
]
Γ
) = {[ v
1
:V
1
,…,v
n
:V
n
] |
Γ
}.
Frame representation is given in (Zykov,2005).
Thus, any class of data objects is a collection of
ordered pairs (v
i
:V
i
), where v
i
is i-th attribute of the
class, and V
i
is type of the class.
However, class attributes contain not only data,
but also metadata (e.g., object dimensions, integrity
constraints, and a bit mask), defining class object
access rights in ECM IS templates.
WEBIST 2006 - WEB INTERFACES AND APPLICATIONS
466
Under assignment a
1
, class C is instantiated with
k
template of ECM IS web page. Therewith,
evaluation of template collection M assigns the value
“true” to its only element m
i
, the index of which
equals to the template number (k):
M= (m
1
,…, m
k
,…, m
N
),
i=1,…,N m
i
{0,1};
[M|
k
] = (m
1
*,…, m
k
*,…, m
N
*),
where m
i
* = 1, i = k and m
i
* = 0, i
k.
Besides, the metadata attributes v
1
,…,v
n
are
instantiated with metadata objects, according to
constraint conditions t
i
of template
Γ
:
[(v
1
:V
1
,…,v
n
:V
n
)]t
i
= ([v
1
]|
Γ
(t
1
),…, [v
n
]|
Γ
(t
n
)) =
= (v
1
’:V
1
’,…,v
n
’:V
n
’), where V
i
’ISA V
i
,
i=1,…,n .
Figure 1: The CMS object model with a portal page
generation example.
The second assignment a
2
results in (v
1
’,…,v
n
’)
instantiation of the ECM IS web page template with
content values of (c
1
,…, c
n
):
[(v
1
’:V
1
’,…,v
n
’:V
n
’)]c = (v
1
’/c
1
,…, v
n
’/c
n
), where
c
1
:С
1
,…, c
n
:С
n
; C
1
ISA V
1
’,…, C
n
ISA V
n
.
Abstraction level of the model elements
decreases from classes to objects, and to their
values. Data object expandability provides
extendable software development.
Object classes u are defined by means of
description Iu
(u) with the values of [Iu
(u)],
where
is a slection criterion. Assignments a
1
A
and a
2
A transform the classes first into objects о =
[Iu
(u)] a
1
and then to their values: с = o a
2
.
Two-way assignment character (from classes to
values and backwards) provides an adequate model
of reengineering; description mechanism simplifies
bi-directional modeling.
Variable domains
O
T
(A) = {o | o : A
T}
are constructed as collections of objects o with types
T, selected from problem domain D by selection
criteria predicates
, while the collection of possible
data objects o is contained in D, and the collection of
actual ones, O
T
(A) is contained in T.
Thus, the basic modeling principle can be
summarized as follows:
[ class of objects ] : assignment
object,
where the bracketed part refers to the language level
of class description, and the rest refers to the
problem domain level. The principle means that to
declare a class we use selection criteria, which
identify functions from assignments into objects, i.e.
class is treated like a process.
Data objects are identified as follows:
[ object class ] : assignment
object
h
h
object
h
assignment
value
h
value,
where “
h
” means abstraction level decrease.
Thus, the diagram (see fig.1) illustrates the
compression principle
о = [Iu
u]a
1
{о} = {о
D | [
(ō) ]}
and the essence of problem domain modeling
process, which transfers language-level classes to
problem-domain ones by the evaluation function [
].
An object class is modeled by its selection criteria
and its description I. Evaluation function maps
problem domain objects to data definition language
ones.
Fig.1 also gives an example of ECM modeling.
The example starts from a UML representation of a
data class (digital photo image) with the attributes:
ID: char;
Name: int;
ColorDepth: int;
Resolution: long;
Width: int;
Heght: int;
TemplMask: long double;
The latter attribute is ECM template bit mask.
a
1
Value
(portal)
Class
(
UML
)
-Name : char
-ColorDepth : int
-Resolution : int
-ID : long
-Width : int
-Height : int
-TemplMask : long double
Photo
Object
(CMS)
a
2
Object aggregation:
O
T
(
A
)
= {
o
|
o
:
A
T
}
Typing:
T
=
{ v : D
|
} ,
O
T
( A )
ISA
T
Object construction:
o
= [
I u
u ]
a
1
{ o } = {o
D |
[
ō ]
}
ENTERPRISE PORTAL CONTENT MANAGEMENT - From Model to Application
467
The first assignment a
1
fixes certain template
attributes in the resulting enterprise portal web page.
The second assignment a
2
instantiates the ECM
template web page by the content values.
IS development methodology has been
customized for enterprise portals, including
information and interface (i.e. data and metadata) of
Internet and Intranet sites (Zykov, 2005).
A formal procedure for heterogeneous
warehousing is suggested that allows user
interaction with the integrated distributed
(meta)database in a certain state, depending on
dynamical script-activated assignments. Scripts
depend on user-triggered events and provide
transparent intellectual front-end interaction.
Dynamic (meta)database access profiles provide
reliable and flexible personalization, high fault
tolerance and data security.
4 IMPLEMENTATION
FEATURES
The ECM development approach has been
practically approved by constructing Internet and
Intranet portals for ITERA International Group of
Companies (http://www.iteragroup.com).
In terms of system architecture, the ECM IS
provides assignments (depending on front-end
position in data access hierarchy) with effective
rights for (meta)data entry, modification, analysis
and report generation (from administrator level
down to reader one). Problem-oriented form
designer, report writer, online documentation and
administration tools make an interactive interface
construction toolkit. (Meta)database supports
integrated storage and online access to data and
metadata (e.g., object dimensions, integrity
constraints, representation formats, etc.).
Implementation process included fast
prototyping (with mySQL DBMS and Perl scripting)
and full-scale integrated Oracle-based
implementation. The fast prototype proved adequacy
of the (meta)data model and of the approach on the
whole.
Upon prototype testing, the ECM IS has been
developed, which manages Intranet and Internet
portals (http://www.iteragroup.com).
Implementation proved 40% terms and costs
reduction (on the average) as compared to
commercial software available. Functional features
have been essentially improved and include better
ERP and legacy IS integration, easier handling of
complicated objects and smarter report generation.
Advanced personalization and access control have
substantially reduced risks of (meta)data damage or
loss (Zykov, 2005).
An ECM construction methodology with
lifecycle support introduced is a part of the
integrated approach to enterprise IS development,
which provides adequate, consistent and integrate
(meta)data manipulation during its entire lifecycle.
A set of (meta)data object models have been
constructed. It includes state-based dynamic models
for problem domain and development tools. The
models provide integrated (meta)data object
manipulation in weak-structured heterogeneous
problem domains.
A fast event-driven prototype and the full-scale
ECM IS have been implemented. The IS manages
Internet and Intranet portals for a corporation with
around 10,000 employees of nearly 150 companies,
located in more than 20 countries.
REFERENCES
Barendregt H.P. The lambda calculus (rev. ed.), Studies in
Logic, 103, North Holland, Amsterdam, 1984.
Cousineau G., Curien P.-L., Mauny M. The categorical
abstract machine. In Science of Computer
Programming 8(2): 173-202, 1987.
Curry H.B., Feys R. Combinatory logic, Vol.I, North
Holland, Amsterdam, 1958.
Roussopulos N.D. A semantic network model of data
bases, Toronto Univ., 1976.
Scott D.S. Domains for denotational semantics. In ICALP
1982, 577-613.
Wolfengagen V.E. Event-driven objects. In CSIT’1999.
MEHhI, Moscow, Russia, 1999, Vol.1. p.p. 88-96.
Zykov S.V. Integrated Methodology for Internet-based
Enterprise Information Systems Development. In
WEBIST 2005, Setubal, INSTICC, 2005,pp.168-175.
WEBIST 2006 - WEB INTERFACES AND APPLICATIONS
468