A SOA-BASED SYSTEM INTERFACE CONTROL FOR
E-GOVERNMENT
Namho Yoo, Hyeong-Ah Choi
Department of Computer Science, The George Washington University,
801 22
nd
Street, N.W., Room 730, Washington, DC 20052, USA
Keywords: Service-Oriented Architecture (SOA), XML, System Engineering, Interface Control, XPath, E-Government.
Abstract: In this paper, a SOA-based system approach is presented for system interface control in sustained systems.
Once a system is completed developed, it goes into a sustained phase supported by many interfaces. As
new technologies develop, updating and maintaining such systems require non-trivial efforts. A clear pre-
requisite before the deployment of a new system is to clarify the influence of changes on other systems
connected through interfaces. However, as each sustained system manages its own information separately,
integrating relevant information among the interfaced systems is a major hurdle to build SOA in E-Gov.
Therefore, the XML technology is applied to support system interface control toward SOA using step-by-
step approach in E-Government. In particular, I focus on messaging interface issues in Health Level Seven
typically used in medical information system and propose SOA framework cube and a scheme to represent
message information that can be used for the decision support of interface impact between sustained
systems.
1 INTRODUCTION
For E-government, Service Oriented Architecture
(SOA) is a new paradigm and driving force for
developing and integrating multiple systems. SOA
is an approach for building distributed systems that
deliver application functionality as services to end-
user applications or are used for building other
services.(Duermeyer, 2005) As the components of
E-Government are diverse containing multiple
vendors systems deployed, system engineering
efforts toward SOA are necessary for not only
internal factor but also externally used. It is
expected that many E-Government system being
migrated into web-enabled services. Since system
environments change rapidly and engineering
change efforts for interface control are increasingly
significant, many documentation associated with E-
government is considered to carefully examine in
terms of non-functional view as well as functional
perspective.
Overall, for SOA, an architectural style between
components is loosely coupled. Since the key of E-
Government are document-oriented designed, the
exchange between each components based on E-
Government document should be standardized.
Interface Control Document (ICD), which is one
of the key documentation for configuration
management for interface change, contains the
description about exchanging requirement and
concept of operation between interfacing system and
Figure 1: SOA-
b
ased System Interface Control
Framework Cube.
Enterprise Decision Making
Application Migration
Policy and Governance
Document-Oriented Modeling
Collaboration(standard/industry)
S
e
c
ur
e
R
e
l
i
a
b
l
e
F
as
t
S
cal
ab
l
e
I
n
t
e
r
o
p
e
r
a
b
l
e
Compos able
Reusable
Loosely Coupled
E-Gov Issues
SOA Requirement
C
h
ar
act
er
i
s
t
i
c
242
Yoo N. and Choi H. (2006).
A SOA-BASED SYSTEM INTERFACE CONTROL FOR E-GOVERNMENT.
In Proceedings of the Eighth International Conference on Enterprise Information Systems - ISAS, pages 242-245
DOI: 10.5220/0002457302420245
Copyright
c
SciTePress
how they should be implemented and maintained
(MIL, 2004). The proposed approach, therefore, is
the SOA-based framework of for system interface
control using XML, which is one of standard for
exchanging information like Figure 1.
This paper suggests an effective process and
method to consider interface control requirement
while migrating multiple applications toward SOA-
based environment. For dealing with the interface
control, SOA-based metrics approach for interface
control analysis is discussed and prototyping
environment for testing is also suggested as a
lightweight tool. In order to figure interface control
requirement out, Engineering Change Proposal
(ECP), which is common vehicle of configuration in
E-Gov is addressed as an exchanging the change
(Yoo, 2004)
Furthermore, since there is system resource
information without specification, common vehicle
to exchange information effectively is required. In
this paper, Extensible Markup Language (XML)
technology is used for supporting engineering
change efforts for impact analysis. An XML is
widely used as a standard for information exchange
on the World Wide Web.(W3C, 2000)
2 BACKGROUND
In the past, it is shown that E-government
capabilities for communication are email,
conference call and discussion board (such as
bulletin board system). But these tendencies are
being moved to web services and effectively
collaborative way to interacting with customers.
Under considering an world-wide deployed US
health system involving 8 sub-systems A through H
with more than 50 to 200 sites, a impact analysis for
interface control is essential for decision-
making.(Yoo, 2005).
In case that current E-Gov systems are connected
each other, the change of specific system for
migrating the SOA affects other systems connected
(Duermeyer, 2005). Therefore, enterprise-level
planning for the application migration is necessary
to reduce conflicts and negative side effect and to
increase efficiency and effectiveness. It is essential
for enterprise-level planning to analyze current
status based on system documentation as an input.
E-Gov systems has contains Government off the
shelf (GOTS) with sustained phase. These systems
had developed diverse level of documentation
baseline while maintaining system. Because of
limited budget, to invest the workload for
standardized documentation baseline is difficult.
Furthermore, as each system change toward the
SOA purpose has different requirement and timeline,
the process with considering system interoperability
under SOA should be considered (Duermeyer,
2005).
Moreover, consider the interface between
systems A and B. The Health Level Seven (HL7)
protocol messaging supported by the interface
engine between A and B is given in Figure 2 as an
example.
In table 1, the several cases of system for
checking status with priority toward the SOA are
presented. In priority (1-5), there is various factors
to represent system status to migrate SOA. But the
analysis result is dependent to Subject Matter Export
(SME)’s knowledge and experience. And there are
many cases existed not for sure.
Table 1: Change Case Table for the system.
Enterprise
Decision
Making
Application
Migration
Policy and
Governance
Document-
Oriented
Modeling
Collaborate
(standard/
industry)
Issues
Systems
A B C D E F G H
e4 e3 e5 e1 e3 e4 e2 e3
a1 a5 a2 a4 a3 a4 a1 a5
p2 p3 p5 p3 p4 p3 p3 p4
d5 d3 d4 d3 d2 d2 d3 d4
c4 c5 c4 c5 c3 c4 c2 c3
(1:lower priority~ 5:higher priority)
Figure 2: Sustained System Interface Architecture.
F
B
G
H
E
D
AC
Reposit
ory
Database
(future)
*
* A has a large number of external system interfaces that have not been shown.
F
B
G
H
E
D
AC
Reposit
ory
Database
(future)
*
* A has a large number of external system interfaces that have not been shown.
A SOA-BASED SYSTEM INTERFACE CONTROL FOR E-GOVERNMENT
243
If more issues regarding E-Gov are considered, the
situation for system analysis for interface control
toward SOA is getting harder than previous case.
3 SOA-BASED ARCHITECTURE
FOR INTERFACE CONTROL
In this paper, the way to conduct system interface
control toward SOA is discussed for System
Engineer more effectively and accurately in time
manner. As there are increasing requirements for
information exchange and service sharing in a
unified manner, the situation of change request
based on health system using HL7 protocol is
considered. And the effective representation is
addressed using XML.
<?xml version="1.0" encoding="EUC-KR"?>
<HL7import>
<Segment1>MSH
<Element1>
<Field1>^</Field1>
<Field2>~</Field2>
<Field3>\</Field3>
<Field4>amp</Field4>
</Element1>
<Element2>ADT1</Element2>
<Element3>MCM</Element3>
<Element4>LABADT</Element4>
<Element5>198808181126</Element5>
<Element6>Security</Element6>
<Element7>
<Field1>ADT</Field1>
<Field2/>
<Field3>A01</Field3>
</Element7>
<Element8>MSG00001</Element8>
<Element9>P</Element9>
<Element10>2.3.1</Element10>
</Segment1>
<Segment2>EVN
<Element1>A01</Element1>
<Element2>198808181123</Element2>
</Segment2>
<Segment3>PID
<Element1>1</Element1>
<Element2>
<Field1>PATID12345</Field1>
<Field2>M11</Field2>
<Field3>ADT</Field3>
</Element2>
<Element3>MR</Element3>
<Element4>
<Field1>MCM</Field1>
<Field2/>
<Field3>123456789</Field3>
<Field4/>
<Field5/>
<Field6>USSSA</Field6>
<Field7>SS</Field7>
</Element4>
<Element5>
<Field1>JOHNES</Field1>
<Field2>WILLIAM</Field2>
<Field3>A</Field3>
<Field4>III</Field4>
</Element5>
<Element6>M-</Element6>
<Element7>C</Element7>
<Element8>
<Field1>1200</Field1>
<Field2>N</Field2>
<Field3>ELM</Field3>
<Field4>STREET</Field4>
<Field5/>
<Field6>GREENSBORO</Field6>
<Field7>NC</Field7>
<Field8>27401-1020</Field8>
</Element8>
<Element9>GL</Element9>
<Element10>(919)379-1212</Element10>
<Element11>(919)271-3434</Element11>
<Element12>S</Element12>
<Element13/>
<Field1>PATID12345001</Field1>
<Field2>2</Field2>
<Field3>M10</Field3>
<Field4>ADT1</Field4>
<Field5>AN</Field5>
<Field6>A</Field6>
<Element14>123456789</Element14>
<Element15/>
<Field1>987654</Field1>
<Field2>NC</Field2>
</Segment3>
<Segment4>NK1
<Element1>1</Element1>
<Element2>
<Field1>JOHNES</Field1>
<Field2>BARBARA</Field2>
<Field3>K</Field3>
</Element2>
<Element3>
<Field1>WI</Field1>
<Field2>WIFE</Field2>
</Element3>
<Element4>
<Field1>NK</Field1>
<Field2>NEXT OF KIN</Field2>
</Element4>
</Segment4>
<Segment5>PV1
<Element1>1</Element1>
<Element2>I</Element2>
<Element3>
<Field1>2000</Field1>
<Field2>2012</Field2>
<Field3>01</Field3>
</Element3>
<Element4>
<Field1>004777</Field1>
<Field2>LEBAUER</Field2>
<Field3>SIDNEY</Field3>
<Field4>J.</Field4>
</Element4>
<Element5>SUR</Element5>
</Segment5>
</HL7import>
<?xml version="1.0" encoding="EUC-KR"?>
<HL7import>
<Segment1>MSH
<Element1>
<Field1>^</Field1>
<Field2>~</Field2>
<Field3>\</Field3>
<Field4>amp</Field4>
</Element1>
<Element2>ADT1</Element2>
<Element3>MCM</Element3>
<Element4>LABADT</Element4>
<Element5>198808181126</Element5>
<Element6>Security</Element6>
<Element7>
<Field1>ADT</Field1>
<Field2/>
<Field3>A01</Field3>
</Element7>
<Element8>MSG00001</Element8>
<Element9>P</Element9>
<Element10>2.3.1</Element10>
</Segment1>
<Segment2>EVN
<Element1>A01</Element1>
<Element2>198808181123</Element2>
</Segment2>
<Segment3>PID
<Element1>1</Element1>
<Element2>
<Field1>PATID12345</Field1>
<Field2>M11</Field2>
<Field3>ADT</Field3>
</Element2>
<Element3>MR</Element3>
<Element4>
<Field1>MCM</Field1>
<Field2/>
<Field3>123456789</Field3>
<Field4/>
<Field5/>
<Field6>USSSA</Field6>
<Field7>SS</Field7>
</Element4>
<Element5>
<Field1>JOHNES</Field1>
<Field2>WILLIAM</Field2>
<Field3>A</Field3>
<Field4>III</Field4>
</Element5>
<Element6>M-</Element6>
<Element7>C</Element7>
<Element8>
<Field1>1200</Field1>
<Field2>N</Field2>
<Field3>ELM</Field3>
<Field4>STREET</Field4>
<Field5/>
<Field6>GREENSBORO</Field6>
<Field7>NC</Field7>
<Field8>27401-1020</Field8>
</Element8>
<Element9>GL</Element9>
<Element10>(919)379-1212</Element10>
<Element11>(919)271-3434</Element11>
<Element12>S</Element12>
<Element13/>
<Field1>PATID12345001</Field1>
<Field2>2</Field2>
<Field3>M10</Field3>
<Field4>ADT1</Field4>
<Field5>AN</Field5>
<Field6>A</Field6>
<Element14>123456789</Element14>
<Element15/>
<Field1>987654</Field1>
<Field2>NC</Field2>
</Segment3>
<Segment4>NK1
<Element1>1</Element1>
<Element2>
<Field1>JOHNES</Field1>
<Field2>BARBARA</Field2>
<Field3>K</Field3>
</Element2>
<Element3>
<Field1>WI</Field1>
<Field2>WIFE</Field2>
</Element3>
<Element4>
<Field1>NK</Field1>
<Field2>NEXT OF KIN</Field2>
</Element4>
</Segment4>
<Segment5>PV1
<Element1>1</Element1>
<Element2>I</Element2>
<Element3>
<Field1>2000</Field1>
<Field2>2012</Field2>
<Field3>01</Field3>
</Element3>
<Element4>
<Field1>004777</Field1>
<Field2>LEBAUER</Field2>
<Field3>SIDNEY</Field3>
<Field4>J.</Field4>
</Element4>
<Element5>SUR</Element5>
</Segment5>
</HL7import>
Figure 3: Converted XML from HL7 Sample Message.
Figure 3 is the corresponding representation of
HL7 example.
XML representation is more
understandable for System Engineer and scalable to
different format for future needs. Whenever
appropriate, it can be possibly triggered and
converted by the development.
A common
environment as shown in Figure 4 can be built for
further testing and the simulation of the impact
analysis on the interface. As an input, interface
related documentation information such as ICD, and
more for specific systems, Online log file and parsed
data at the developmental engineering lab for testing
are considered. Most components are smoothly
linked through XML and triggered by XPath.
Parsed Data
HL7 Log
Do cu me nt
Do c_ 2 _T xt
DOM Checker
Path_ Fi nder
Compare_DOMtree
Analysis_Maintainer
Ac t iv e _
Do cu me n t
Report _Generat or
IIA&T_
Mi dd l e w a r e
Case(for IA)
_Generator
Vi r tu a l
_User
_Generator
SOA-based Executable Architecture (Local Server)
Simulator (User Client)
XML_2_ Tr ee
Txt _2_ XML
Cs v _ 2 _ T xt
HL7 Test Maintainer
Ex
Tr act
or
html_2_Txt
Input : Document/Parsed Data/HL7 Log, Output : Active Document
Program for conversion: *_2_*, IIA & T : Interface Impact Analyzer and Tester
Figure 4: Proposed XML-based Architecture.
The simulation system is designed to equip the
scalability for the future demands. In other words,
the experiment with another non-functional
requirement system on security as well as
performance tool and an extension of the rule
domain upon the future demands are combined.
In Figure 4, in order to compare DOM tree-based
information, to maintain the HL7 message segment
table and the previous test case history data set is
needed as a database. At this point, the performing
interface issue using the local server at the
operational environment for simulation is out of
scope in this paper, as the primary purpose of the
simulation is on showing an efficiency improvement
of the suggested impact analysis for the decision-
making during developmental testing phase on
whether or not a system change can be applied to the
systems without causing any negative interface
impact.
It is ensured that there are many more problems
to which this technique can be applied. Using XML-
based information, system and testing engineers save
their time and support customers with more value-
added service by getting more realistic information
using testing requirement for impact analysis. More
information with non-functional requirement for
impact analysis in general is discussed later. Based
on the testing for the research with XML-based
ICEIS 2006 - INFORMATION SYSTEMS ANALYSIS AND SPECIFICATION
244
representation, an HL7 message transferred from
system A to system B used is found only about 30%
of the time in terms of message-level and only 50%
of the messages are being used if I consider element-
level. In other words, by using XML-based message
modeling the meaningful portion of messages is
identified for decision-making and is managed the
part required to enhance interface impact analysis as
well as updating impact analysis for each system.
4 STEP BY STEP MIGRATION
APPROACH IN E-GOV
XML is primarily used as a communication medium
between heterogeneous enterprise architectures.
Using XML notation, the time for efforts and
potential error is mitigated. This paper suggests step
by step migration approach by representing
combined scheme with HL7 testing and XML
technology. Figure 5 is an example of extracting
ICD documentation and ECP tracking for system
interface control toward SOA environment.
(a) Extracting the change of ICD.
(b) Extracting the change of ECP using DOM.
Figure 5: Executable SOA-based IC Implementation.
As shown in Figure 5, we develop step by step
approach for E-Government using converting
diverse specification through XML technology and
merge together even though engineering areas in
government are different. A two-way mapping
between generic XML workflow data and
application specific document structure is provided.
The mappings are based on XML techniques that
allow translation and manipulation of an XML
document into different representations in an
efficient way. For traversing the information under
the XML DOM tree structure, given algorithm using
XPath and XSLT is used. XPath takes a navigational
approach for specifying the nodes to be selected,
hence a large number of navigational axes have been
defined in XPath.
5 CONCLUSIONS AND FUTURE
WORK
The engineering issues in E-government toward
SOA are discussed to meet changing system
interface requirement in systems maintenance phase.
In particular, the SOA-based interface control is
focused on in the presence of interface requirement
and policy requirement for SOA in large scaled
sustained system. A baseline using XML-based
representation to handle changing system interface
requirements is considered with the process for
SOA. The XML-based step-by-step migration
approach enables supporting System Engineers’
collaboration effectively to meet the limited time
requirement. Through a health system example,
SOA-based IC framework cube are addressed as a
case.
REFERENCES
Duermeyer, K, 2005, IBM Executive SOA Summit-
Bridging Business Value to SOA
MIL-STD-498, 1997, Software Development and
Documentation, Department of Defense, December.
W3C, 2000, Extensible Markup Language (XML) 1.0 ,
W3C Recommendation, October
Yoo, N., 2004a, Impact Analysis using Performance
Requirement with Application Response Measurement
in Sustained System, In Proceedings of the
ISOneWorld Conference.
Yoo, N., 2004b, An XML-based Engineering Change
Impact Analysis with Non-Functional Requirements,
In Proceeding of SERP.
Yoo, N., 2005, XML-Based Impact Analysis Using
Change-Detection Approach For System Interface
Control , In Proceedings of International Conference
on Enterprise Information System(ICEIS).
A SOA-BASED SYSTEM INTERFACE CONTROL FOR E-GOVERNMENT
245