An Experience of using SoaML for Modeling a Service-Oriented
Architecture for Health Information Systems
Fernanda G. Silva
1
, Jislane S. S. de Menezes
1
, Josimar de S. Lima
1
, Joyce M. S. Franc¸a
2
,
Rog´erio P. C. do Nascimento
1
and Michel S. Soares
1
1
Department of Computing, Federal University of Sergipe, S˜ao Crist´ov˜ao, Brazil
2
Faculty of Computing, Federal University of Uberlˆandia, Brazil
Keywords:
Service Oriented Architecture, SoaML, Health Information Systems.
Abstract:
Service-oriented applications have been modeled with different modeling languages and diagrams, which
suggests a lack of standardization. Although UML concepts for modeling SOA can be regarded as a good
starting point, it is not an entirely feasible approach, as UML has not been proposed with the purpose of
modeling services and SOA applications. Besides, the proper concept of service is absent in UML. SoaML
is a UML profile for the specification and design of services within a service-oriented architecture. One of
the advantages of using SoaML to model interoperability between systems in health care is that it is possible
to model the consumers and service providers. This would be quite difficult to achieve using UML only.
Therefore, the main contribution of this work is to manipulate a relatively new modeling language to real
operational problems related to the integration of health systems.
1 INTRODUCTION
Service-Oriented Architecture (SOA) is a paradigm
to implement loosely-coupled, platform-independent
distributed software systems using communicat-
ing services. SOA has been applied success-
fully in many domains, including financial systems
(King et al., 2010), healthcare information systems
(Khoshkbarforoushha et al., 2010), (Monsieur et al.,
2012), research-oriented applications in engineering
(Vescoukis and Dulamis, 2011), academic software
applications (Baghdadi and Al-Bulushi, 2013), and
for varied activities such as refactoring legacy sys-
tems (Khadka et al., 2011), integration of systems and
for developing new software systems (Alonso et al.,
2010). Therefore, it is safe to assume that SOA has
been widely applied in projects both in academia and
industry.
SOA applications have been modeled with differ-
ent modeling languages and diagrams, which sug-
gests a lack of standardization in this area. For
instance, dataflows are applied in (Monsieur et al.,
2012) and Flowcharts are applied in (Wu et al.,
2009). Regarding UML, Activity diagrams are used
in (Granell et al., 2010), Sequence diagrams in
(EL Yamany et al., ) and (Kannan et al., 2011). The
work presented in (Perepletchikov and Ryan, 2011)
uses Class, Collaboration and Sequence diagrams all
together.
Existing models for describing system architec-
tures are insufficient to describe SOA in a precise and
standardized way. Although UML concepts for mod-
eling SOA can be regarded as a good starting point, it
is not an entirely feasible approach (Stojanovic et al.,
2004). UML has not been proposed with the purpose
of modeling services and SOA applications, and is
considered too general for the purpose of describing
SOA (Todoran et al., 2011). Besides, the proper con-
cept of service is absent in UML.
SoaML (OMG, 2012) is a UML profile for the
specification and design of services within a service-
oriented architecture. SoaML extends UML with six
main areas: participants, service interfaces, service
contracts, services architectures, service data and ca-
pabilities. Although SoaML has already been applied
to some cases (Gebhart et al., 2010) (Elvesæter et al.,
2010) (Hu et al., 2014), the language has hardly been
mentioned in the literature (this is a result of a sys-
tematic literature review performed by the authors).
Reasons for this are not yet clear, but one possibility
can be the novelty of the language, officially released
on March 2012. Another one is because UML is
well-known in academia and software industry, which
makes it a suitable choice for most authors.
322
G. Silva F., S. S. de Menezes J., de S. Lima J., M. S. França J., P. C. do Nascimento R. and S. Soares M..
An Experience of using SoaML for Modeling a Service-Oriented Architecture for Health Information Systems.
DOI: 10.5220/0005464403220327
In Proceedings of the 17th International Conference on Enterprise Information Systems (ICEIS-2015), pages 322-327
ISBN: 978-989-758-098-7
Copyright
c
2015 SCITEPRESS (Science and Technology Publications, Lda.)
This paper describes an attempt to use SoaML in
a specific domain, health information systems, with
the purpose of modeling a real problem of system in-
teroperability. SoaML was applied in a real case, in
which services of some information systems are mod-
eled. After a brief introduction to SoaML in Section
2, we present the description of the Health Informa-
tion Systems to be modeled (Section 3), the descrip-
tion of the provided services in Section 4, the case
study and the conclusions in the last two sections.
2 INTRODUCTION TO SOAML
UML (OMG-UML, 2011) alone does not perfectly
match the needs of service-oriented projects (Todoran
et al., 2011). For this reason, in 2009, OMG pro-
posed SoaML (Service Oriented Architecture Model-
ing Language), a UML profile specifically targeted to
SOA systems. SoaML specification provides a meta-
model and a UML profile for the specification and
design of services within a Service-Oriented Archi-
tecture (Object Management Group (OMG), 2012).
Therefore, SoaML represents SOA artifacts using
UML as a core-modeling standard (Casanave, 2009).
SoaML addresses the following topics: identi-
fication of services and their dependencies; speci-
fication of services, protocols and information ex-
changed; definition of communication between ser-
vice consumers and providers, definition of policy for
consumers and providers. Thus, it is possible to per-
form an entire analysis of service-oriented architec-
ture, showing how the services and service partici-
pants work together to provide business value.
Support of SoaML for SOA design is important
for two reasons (Mohammadi and Mukhtar, 2013):
service modeling as a first step is essential for devel-
oping successful SOA systems regardless of imple-
mentation details, and SOA modeling helps to better
understand and communicate between business users
and IT experts. SoaML introduces five types of di-
agrams: Service Interface Diagram, Service Partic-
ipant Diagram, Service Contract Diagram, Services
Architecture Diagram and Service Categorization Di-
agram. A brief description of each of these diagrams
is presented as follows (Object Management Group
(OMG), 2012).
Service Interface Diagram: Such as a UML in-
terface, a Service Interface Diagram defines or spec-
ifies the service and can be the type of a service
port. This diagram has the additional feature of be-
ing able to specify a bi-directional service with a pro-
tocol. Therefore, both providers and consumers have
responsibilities to invoke and respond to operations,
send and receive messages or events.
Service Participant Diagram: this diagram con-
tains the participants to collaborations based on ser-
vices. They are characterized by services and ports,
which are similar to interfaces from UML Compo-
nents.
Service Contract Diagram: this diagram repre-
sents an extension of the UML Collaboration dia-
gram which shows the relationship between partici-
pant roles. Consumers or providers of services are
materialized through service channels.
Services Architecture Diagram: diagram to model
global collaboration, based on the use of service con-
tracts, and connects all suppliers and consumers.
Service Categorization Diagram: SoaML intro-
duces a generic mechanism for UML elements with
categories and values to describe information about
these elements. Categories can be organized into a
hierarchy of named catalogs. The same element can
be classified for many categories, and the same cate-
gory can be applied to various elements. This diagram
is intended to be a very flexible and dynamic mech-
anism to arrange the various elements in orthogonal
hierarchies.
3 DESCRIPTION OF THE
HEALTH INFORMATION
SYSTEMS
Information Systems in the Health Ministry in Brazil
have been actively re-engineered, as it is well-
understood that high qualification of information
management is of fundamental importance to provide
quality services for citizens. An Electronic Health In-
formation System (e-HIS) for basic services (e-HIS
BS) is an strategy to re-structure basic health services
nationwide. This e-HIS BS has as purpose to of-
fer computer-based tools to improve management for
basic health units and allow interoperability between
health information systems.
e-HIS BS has as purpose to follow actions and
results from activities performed by teams from the
Family Health Program (FHP). By using e-HIS BS,
anyone can have access to families information, in-
dividual health situation, general house and sanita-
tion conditions, and about each health professional
team. All generated data from e-HIS BS will feed
another system, the Information System for Basic
Health (ISBH), which main characteristic is to struc-
ture individual information with the purpose to im-
prove the possibilities of care actions by the health
teams, as well as creating traces of health actions in
AnExperienceofusingSoaMLforModelingaService-OrientedArchitectureforHealthInformationSystems
323
Figure 1: e-HIS Architecture.
Figure 2: e-HIS Basic Health Attention Architecture.
all national territory.
e-HIS BS has as assumptions: detailed individual
information for each citizen, allowing to register each
health occurrence and each treatment by a health pro-
fessional; integration of information systems dealing
with basic health services; production of dynamic re-
ports; reduction of inefficient tasks and activities, in-
cluding registering data in a computer tool; and fi-
nally, using information for better management and
health care.
e-HIS BS presents two main modules: Simplified
Data Collection (SDC) and Electronic Health Record
(EHR). Module SDC allows integrated and simplified
registering by using a variety of files, including, for
instance, house situation, general information about
the citizen, odontological situation, historical health
procedures, and information about home visiting by
a health professional. All these collected information
will be stored into the ISBH. SDC module uses seven
files for data registration, divided into two blocks, as
depicted in Fig. 1.
Module Basic Attention Register (BAR) is an ex-
tension of National Health Register (HNR). This BAR
module helps health teams to register health, social
and economic characteristics for a given population.
NHR is a national information system which allows
identification of users in all activities and services by
means of a unique number for each citizen. In ad-
dition, NHR allows one to identify each professional
and health organization responsible for a given treat-
ment.
e-HIS EHR was proposed to help health teams lo-
cated in small health organizations which fully use or
even partially use computer tools. Among other func-
tions, e-HIS EHR provides management of patients,
organizes professionals’ agenda, and register health
activities.
One important functionality implemented in the
management module of e-HIS EHR is to import
data from National Record of Health Organizations
(NRHO), an official database with information from
all health organizations in the country, both private
and public. NRHO has as main functionalities to
record health organizations and existing infrastruc-
ture, individual professionals and teams, and many
kinds of reports.
Data is inserted into the NRHO system through
SNRHO software applications. NRHO is also used
as a basis to centralize information from many other
health information systems, including Outpatient In-
formation System (OIS), Hospital Information Sys-
tem (HIS), Basic Attention Health Information Sys-
tem (BAHIS), and Local Information System (LIS).
All these systems have some participation in the na-
tional health process, as depicted in Fig. 2.
As can be observed in Fig. 2, there are still pa-
per files being used by Basic Health Units (BHU). Pa-
per forms, containing the same information presented
in e-HIS SDC, are printed and manually filled, every
day, and delivered to a computer operator, who will
insert data into e-HIS SDC. By the end of the day,
before he/she finishes all inserted data, the computer
operator has to verify if there is any alteration in data
present in NRHO. If the operator finds any change in
data, he/she has to download the new file from the
NRHO and update databases of e-HIS EHR and e-
HIS SDC systems. This is a manual operation. Af-
ter the update, e-HIS SDC becomes available again
to insert all paper files generated in that day. This
operation is performed by a computer operator, who
saves all data into a memory stick device, and deliv-
ers it to the municipality health secretary. Then, all
information is collected to be transmitted to the na-
tional database, at the federal ministry health depart-
ment. This process is described in Fig. 3, in which
one can observe the need to automate communication
between NHRO and e-HIS SDC, in order to avoid er-
rors and late delivers everyday.
4 DESCRIPTION OF THE
PROVIDED SERVICES
As paper files contain data to be inserted, and as this
procedure is error-prone and needs to be often up-
ICEIS2015-17thInternationalConferenceonEnterpriseInformationSystems
324
Figure 3: Defined process.
Figure 4: e-HIS Basic Health Attention with Services.
dated, it is clear that these data can be treated as re-
sponses to request services. Data to be treated as ser-
vices are described as follows.
Professional ID. Number of the national ID Card of
the professional who inserted the citizen/family in
NRHO. Mandatory field.
NRHO Unit Code. Code to identify the health unit
in NRHO. Mandatory field.
NRHO Team Code. Code to identify the health
team in NRHO. Mandatory field.
Citizen ID. Number of the national ID Card of the
responsible for the family.
Some services were identified, as depicted in Fig.
4, considering systems NRHO and NHR as service
providers. In order to insert data from the paper files
into e-HIS BAR, services are requested from NRHO
and NHR. For the file transmission, all generated files
from each BHU need to be received. In the end, all
files are validated, processed and transmitted to the
ISBH, in the Health Ministry.
5 CASE STUDY
Proposed case study is the creation of a service-
oriented architecture using SoaML profile as model-
Figure 5: Service Participant Diagram.
ing language, considering the domain and the prob-
lems presented in previous sections.
Identifying all participants is the first task to
be performed. Five participants are candidates to
be modeled in this case study: e-HIS SDC, e-HIS
EHR, NHR, NRHO and ISBH. Initially, all inter-
dependencies between these systems were identified.
Then, existing functionalities in involved systems that
could be transformed into services were also identi-
fied.
One of the man advantages of using SoaML is that
it is possible to represent the models both for the con-
sumers and the providers of services. Fig. 5 depicts
the service participant diagram in which all identified
participants are modeled, as well as their services, be-
ing it as a consumer or as a provider. Stereotype Ser-
vice” identifies which participants will provide a ser-
vice, and Stereotype “Request” means that the par-
ticipant has consumed the service provided by other
participant in the domain. Participants e-HIS SDC
and e-HIS EHR both consume and provide services.
On the other hand, participants NRHO and NHR only
provide services. ISBH only consumes created ser-
vices by other participants. SoaML has also the Ser-
vice Contract diagram, which presents, in a different
view, how each provider is related to a service con-
sumer. Fig. 7 depicts an example of the Service Con-
tract diagram. SoaML specifies one service contract
diagram for each defined service. In Fig. 7, one ex-
AnExperienceofusingSoaMLforModelingaService-OrientedArchitectureforHealthInformationSystems
325
Figure 6: Service Architecture Diagram.
Figure 7: Service Contract diagram.
ample of Service Contract diagram for each relation
between provider/consumer,a service contract, is cre-
ated.
Another characteristic of SoaML is its capacity
to represent a context of interaction between services
and participants, representing a set of interaction be-
tween these contexts. Fig. 6 presents the Service Ar-
chitecture diagram of the proposed domain. This dia-
gram presents interaction between all participants and
the contract services modeled in the variety of SoaML
diagrams.
6 CONCLUSIONS
This study aimed to present the use of SoaML for
modeling a service-oriented architecture (SOA) for
health information systems. By supporting SOA,
SoaML is an efficient modeling language to address
interoperability between the various discussed sys-
tems. One of the advantages is realized by using
SoaML to model a domain in health care is that it
was possible to model the consumers and service
providers. This would be quite difficult to achieve us-
ing UML only. Therefore, the main contribution of
this work is to manipulate a relatively new modeling
language to real operational problems related to the
integration of health systems.
As for future work, the development of a simula-
tor that implements the integration between systems
through the use of web services is suggested. For this
purpose, one can use the Java programming language
and Apache Thrift framework.
ACKNOWLEDGEMENTS
We would like to thank the Brazilian research
agencies CNPq (grant 445500/2014-0) and CAPES/
FAPITEC (grant AUXPE 0517/2014) for supporting
this work.
REFERENCES
Alonso, G., Casati, F., Kuno, H., and Machiraju, V. (2010).
Web Services: Concepts, Architectures and Applica-
tions. Springer Publishing Company, Incorporated,
1st edition.
ICEIS2015-17thInternationalConferenceonEnterpriseInformationSystems
326
Baghdadi, Y. and Al-Bulushi, W. (2013). A Guidance Pro-
cess to Modernize Legacy Applications for SOA. (1).
Casanave, C. (2009). Enterprise Service Oriented Archi-
tecture Using the OMG SoaML Standard. Technical
report.
EL Yamany, H. F., Capretz, M. A. M., and Allison, D. S. In-
telligent Security and Access Control Framework for
Service-oriented Architecture. Information and Soft-
ware Technology, 52(2):220–236.
Elvesæter, B., Panfilenko, D., Jacobi, S., and Hahn, C.
(2010). Aligning Business and IT Models in Service-
oriented Architectures Using BPMN and SoaML. In
Proceedings of the First International Workshop on
Model-Driven Interoperability, MDI ’10, pages 61–
68.
Gebhart, M., Baumgartner, M., Oehlert, S., Blersch, M.,
and Abeck, S. (2010). Evaluation of Service Designs
Based on SoaML. In Fifth International Conference
on Software Engineering Advances (ICSEA), pages 7–
13.
Granell, C., ıaz, L., and Gould, M. (2010). Service-
Oriented Applications for Environmental Models:
Reusable Geospatial Services. Environmental Mod-
elling and Software, 25(2):182–198.
Hu, J., Huang, L., Cao, B., and Chang, X. (2014). Exe-
cutable Modeling Approach to Service Oriented Ar-
chitecture Using SoaML in Conjunction with Ex-
tended DEVSML. In IEEE International Conference
on Services Computing, pages 243–250.
Kannan, K., Bhamidipaty, A., and Narendra, N. C. (2011).
Design Time Validation of Service Orientation Prin-
ciples Using Design Diagrams. In Annual (Services
Research and Innovation Institure) SRII Global Con-
ference, pages 795–804.
Khadka, R., Reijnders, G., Saeidi, A., Jansen, S., and Hage,
J. (2011). A Method Engineering based Legacy to
SOA Migration Method. In Proc. of the 27th IEEE
International Conference on Software Maintenance,
ICSM ’11, pages 163–172.
Khoshkbarforoushha, A., Jamshidi, P., and Shams, F.
(2010). A Metric for Composite Service Reusabil-
ity Analysis. In Proc. of the 2010 ICSE Workshop on
Emerging Trends in Software Metrics, WETSoM ’10,
pages 67–74.
King, G.-H., Cai, Z.-Y., Lu, Y.-Y., Wu, J.-J., Shih, H.-P., and
Chang, C.-R. (2010). A High-Performance Multi-user
Service System for Financial Analytics Based on Web
Service and GPU Computation. In International Sym-
posium on Parallel and Distributed Processing with
Applications (ISPA), pages 327–333.
Mohammadi, M. and Mukhtar, M. (2013). A Review
of SOA Modeling Approaches for Enterprise Infor-
mation Systems. Procedia Technology, 11:794–800.
4th International Conference on Electrical Engineer-
ing and Informatics.
Monsieur, G., Snoeck, M., and Lemahieu, W. (2012). Man-
aging Data Dependencies in Service Compositions.
Journal of Systems and Software, 85(11):2604–2628.
Object Management Group (OMG) (2012). Service
oriented architecture Modeling Language (SoaML)
Specification. Technical report.
OMG (2012). Service Oriented Architecture Modeling Lan-
guage (SoaML) Specification. Technical report.
OMG-UML (2011). Unified Modeling Language (UML):
Superstructure - version 2.4.
Perepletchikov, M. and Ryan, C. (2011). A Controlled Ex-
periment for Evaluating the Impact of Coupling on the
Maintainability of Service-Oriented Software. IEEE
Transactions on Software Engineering, 37(4):449–
465.
Stojanovic, Z., Dahanayake, A., and Sol, H. (2004). Mod-
eling and Design of Service-Oriented Architecture. In
IEEE International Conference on Systems, Man and
Cybernetics, volume 5, pages 4147–4152.
Todoran, I., Hussain, Z., and Gromov, N. (2011). SOA In-
tegration Modeling: An Evaluation of How SoaML
Completes UML Modeling. In EDOCW, pages 57–
66. IEEE Computer Society.
Vescoukis, V. and Dulamis, N. D. (2011). Disaster Manage-
ment Evaluation and Recommendation. In Conference
in Games and Virtual Worlds for Serious Applications
(VS-GAMES), pages 244–249.
Wu, B., Chi, C.-H., Chen, Z., Gu, M., and Sun, J.
(2009). Workflow-Based Resource Allocation to Opti-
mize Overall Performance of Composite Services. Fu-
ture Generation Computer Systems, 25(3):199–212.
AnExperienceofusingSoaMLforModelingaService-OrientedArchitectureforHealthInformationSystems
327