A Service Oriented Information System to Manage Bromelia ... · EFITA/WCCA 2005 25-28 July 2005,...

8
EFITA/WCCA 2005 25-28 July 2005, Vila Real, Portugal 2005 EFITA/WCCA JOINT CONGRESS ON IT IN AGRICULTURE A Service Oriented Information System to Manage Bromelia Distributed Database P.L.P. Corrêa a , T.T. Nagamine b , V. H. Suzuki c , R. G. Guimarães d and M. Carvalhaes e a Escola Politécnica da Universidade de São Paulo (EPUSP), 05508-900 São Paulo, Brasil, [email protected] b EPUSP, 05508-900 São Paulo, Brasil, [email protected] c EPUSP, 05508-900 São Paulo, Brasil, [email protected] d EPUSP, 05508-900 São Paulo, Brasil, [email protected] e Escola Superior de Agricultura “Luiz de Queiroz” – Universidade de São Paulo, Piracicaba, Brasil, [email protected] Abstract The aim of this study is to propose a Service Oriented Architecture to a Biodiversity Information System, using a study case of system that manage distributed database of Bromelia. This architecture considers security requirements in the access of different databases of Bromelia, which are owned by different Institutions. The architecture considers too international standards of Distributed System and Biodiversity System, such as: Web Services [1] that provide the infrastructure of service; the DiGIR (Distributed Generic Retrieval) [2] that is a tool to share biodiversity databases; and the ABCD [3] that provide a standard of information used to catalogue the Biodiversity Data. Key words: Biodiversity Information System, Web Services. 1 Introduction Predatory extractives and deforestation put the Mata Atlântica (Brazilian forest) in the fifths of the Hot Spots, an area which contains biodiversity that needs priority action, with only 7,3 % of remaining area [4]. This panorama can be reverted, but it is necessary an efficient politic of preservation and of use of the resources; an efficient system of supervision and a diffusion of technical-scientific knowledge. So, it is urge to exchange technical-scientific information and researches that analyse the real situation of the question and then, politics related to this area can be more efficient and reliable formulated. It is expected that the development of an information system contributes to exchange and discussion information about bromelia, which is a forest product with a rare beauty, that is at the same time, an agent and a pointer of biodiversity that composes Mata Atlântica. [5]. However, Brazil being a country that has a lot of information of different species of bromelia, but can not provide all of data freely, because some of them could allow the bio-piracy, needing a security system that puts some limits in the use of the information. So, It is necessary that each source of bromelia Information could share your database, combined with a security system that allows the author to put some rules and limits in the access of the restrict information. This research has the objective of study and the validation of a web system architecture in order to manage the information of bromelia, with the follow characteristics: 504

Transcript of A Service Oriented Information System to Manage Bromelia ... · EFITA/WCCA 2005 25-28 July 2005,...

EFITA/WCCA 2005 25-28 July 2005, Vila Real, Portugal

2005 EFITA/WCCA JOINT CONGRESS ON IT IN AGRICULTURE

A Service Oriented Information System to Manage Bromelia Distributed Database

P.L.P. Corrêa a, T.T. Nagamine

b, V. H. Suzuki

c, R. G. Guimarães

d

and M. Carvalhaes e

a Escola Politécnica da Universidade de São Paulo (EPUSP), 05508-900 São Paulo, Brasil, [email protected]

b EPUSP, 05508-900 São Paulo, Brasil, [email protected]

c EPUSP, 05508-900 São Paulo, Brasil, [email protected]

d EPUSP, 05508-900 São Paulo, Brasil, [email protected]

e Escola Superior de Agricultura “Luiz de Queiroz” – Universidade de São Paulo, Piracicaba, Brasil, [email protected]

Abstract

The aim of this study is to propose a Service Oriented Architecture to a Biodiversity Information System,

using a study case of system that manage distributed database of Bromelia. This architecture considers

security requirements in the access of different databases of Bromelia, which are owned by different

Institutions. The architecture considers too international standards of Distributed System and Biodiversity

System, such as: Web Services [1] that provide the infrastructure of service; the DiGIR (Distributed

Generic Retrieval) [2] that is a tool to share biodiversity databases; and the ABCD [3] that provide a

standard of information used to catalogue the Biodiversity Data.

Key words: Biodiversity Information System, Web Services.

1 Introduction

Predatory extractives and deforestation put the Mata Atlântica (Brazilian forest) in the fifths of the Hot

Spots, an area which contains biodiversity that needs priority action, with only 7,3 % of remaining area

[4].

This panorama can be reverted, but it is necessary an efficient politic of preservation and of use of the

resources; an efficient system of supervision and a diffusion of technical-scientific knowledge.

So, it is urge to exchange technical-scientific information and researches that analyse the real situation of

the question and then, politics related to this area can be more efficient and reliable formulated.

It is expected that the development of an information system contributes to exchange and discussion

information about bromelia, which is a forest product with a rare beauty, that is at the same time, an agent

and a pointer of biodiversity that composes Mata Atlântica. [5].

However, Brazil being a country that has a lot of information of different species of bromelia, but can not

provide all of data freely, because some of them could allow the bio-piracy, needing a security system

that puts some limits in the use of the information.

So, It is necessary that each source of bromelia Information could share your database, combined with a

security system that allows the author to put some rules and limits in the access of the restrict information.

This research has the objective of study and the validation of a web system architecture in order to

manage the information of bromelia, with the follow characteristics:

504

EFITA/WCCA 2005 25-28 July 2005, Vila Real, Portugal

2005 EFITA/WCCA JOINT CONGRESS ON IT IN AGRICULTURE

- Adoption of the international standard to catalogue and integrate biodiversity information;

- The authentication and authorization to access services and available information based on web services

architecture.

The sections of this paper attempts to characterize the problem and requirements of access biodiversity

distributed systems, then present an architecture that incorporates the aforementioned requirements, and

after presents a case study of an implementation of this architecture. At the end, the results obtained with

the implementation, and the conclusions about this work are presented.

2 Related works

2.1 Biodiversity distributed database access

Nowadays, aiming the biodiversity data sharing, DiGIR (Distributed Generic Information Retrieval) [2] is

the most important tool used to share biodiversity data, defining a set of standard information and services

to be shared among different databases. But DiGIR lack of security mechanisms to access database

information makes it unsafe and restricted.

Taking these points into account, a study of distributed security architectures based on Web Services [1]

will be developed, in order to integrate the biodiversity system to DiGIR and implement a prototype

based on the models previously studied.

The motivation directly associated with the development of DiGIR project is the avoidance of multiple

system creation, which could have inconsistent connections. What is highly recommended, aiming the

combination of different study fronts in a common project, is the conception of a specialized community

that could solve the vast majority of problems related to the distributed database integration.

To illustrate this point, the system main targets can be established:

- Definition of a consulting protocol to access different databases using the Internet;

- System implementation considering a Provider and a Portal Engine, which could use the protocol,

previously developed.

DiGIR architecture has 4 important elements to be defined: User’s Interface, Protocol, Portal Engine and

Provider.

In a general view, the Provider services are kept in the Registry, which stores the localization of other

Providers. The Portal Engine is responsible for accessing the Registry and discovering the available

Providers. The users, with their final interface, can make any kind of consultation using the Portal Engine,

which verifies the consultation required by the user in a specific Provider. The Provider itself sends the

requested information to the Portal Engine, which redirects it to the Interface.

The specific protocol used between Provider – Portal and Portal – Interfaces defines patterns for

requested and sent messages: Metadata, Search and Inventory. Although such messages are not affected

by the data structure transferred, the Providers must be configured according to the “federation schema”.

2.2 International data patterns for species inventory (ABCD & DarwinCore)

The international pattern ABCD (Access to Biological Collection data) [3] is developed by TDWG

(International Working Group on Taxonomic Databases) taxonomists. This global organization aims the

international integration of patterned taxonomic biodiversity database.

The ABCD, thanks to its world-wide range, consists of a general set of information for inventorying

distinct biodiversity species in a patterned way.

505

EFITA/WCCA 2005 25-28 July 2005, Vila Real, Portugal

2005 EFITA/WCCA JOINT CONGRESS ON IT IN AGRICULTURE

The representation adopted by the ABCD is a XML (Extended Markup Language) language schema,

which allows a greater integration among distinct systems. Considering the fact that XML is accepted by

different computer platforms, the ABCD becomes a representation portable and easily understandable.

DarwinCore [14] is a set of information commonly found among the vast majority of biodiversity

collections. Such pattern assumes that just the essential information of each specie should be stored.

Consequently, DarwinCore presents and specify these pieces of information creating a minimum set of

records, which are sporadically consulted by the main system. All DarwinCore pattern fields have an

equivalent one at the ABCD, due to the large number of characteristics considered by this last one.

This research adopted the ABCD pattern to represent the bromelia data, because this schema can

represent all the information collected by biologist researchers. So database was projected based on the

ABCD pattern, mapping the information described in XML. Moreover, new entities were added,

considering the fact that some crucial information wasn’t present at the original ABCD schema.

The entities added during this research and their respective functions are:

- Use: describes the utilization of bromelia in the areas of medicine, ornamental and popular;

- EcolgicDescription: describes the bromelia ecologic information;

- MorphologicDescription: describes the bromelia morphologic information, for instance the size and

shape of flowers and leaves.

- FlorestaDeCaixeta: has specific information of bromelia collected at Caixeta Forest, adapting such

information to the ABCD pattern, making possible the research of data like exact place of collection.

3 System architecture of the Bromelia System

The architecture design was based in the SOA (Service Oriented Architecture) [15]. The SOA is useful

since each part of the architecture (the portal and providers), in reality represents independent systems

that exposes services and is owned by different organizations, specially the providers. So the

authentication and authorization processes have a main role to exchange data between these bromelia

research organizations to compound isolated information into a more complex and interrelated

knowledge, in other words, meaningful information.

The architecture (see Figure 1) represents the services that exist in the bromelia system. It basically

consists of a bromelia portal where the user access the interfaces; the Map and Images Provider where the

repository of maps and images is located; the Bromelia Provider which is responsible of users

authentication and authorization; and the Bromelia Information that allows access to a specific bromelia

service requested by the user. Note that it can also make requests to others providers to receive related

information.

506

EFITA/WCCA 2005 25-28 July 2005, Vila Real, Portugal

2005 EFITA/WCCA JOINT CONGRESS ON IT IN AGRICULTURE

Fig.1 Services defined to the bromelia system

The Table 1 shows the layers and the functionality described in SOA architecture, and the parts in the

figure above that represent it.

Tab.1 SOA layers and functionality applied to bromelia system

Service Layer Functionality Represented in the Architecture by

Composite

Services

Coordination, Conformance and

Monitoring.

Service handling

Basic Services Capability, Interface, Behavior,

QoS, Publication, Discovery,

Selection and Binding.

Authentication, Authorization, Bromelia

Information, Map and Images Information, A1

information, Bromelia portal.

According to the Figure 1, the process starts with the Bromelia Portal making a request to the Bromelia

Provider (step 1). Before the provider retrieves the information requested by the portal through a service,

it must verify the authentication (step 2) and the authorization (step 3). Only after this the Bromelia

Provider allows the access to the bromelia information database.

However, if the service requested is about maps and images, the Bromelia Provider requests these

information to the Map and Images Provider (step M.1). As an independent module, owned by a different

research organization like the Bromelia Provider, it makes its own authentication and authorization (steps

M.2 and M.3) in order to send the information requested by the Bromelia Portal (step M.4).

An analogous process occurs if the Bromelia Provider needs information held by others providers

(represented by the providers A1 … An, steps A1.1 and An.1) to compound an information that the portal

requested to it (steps A1.2, A1.3, A1.4).

In the same way the Bromelia Provider requests information to other providers, which are authenticated

and authorized to access the bromelia information can have access to the Map and images provider, for

example, by accessing the service held by the bromelia provider, and the process to request the data to the

Map and Images Provider is transparent to the requestor provider.

507

EFITA/WCCA 2005 25-28 July 2005, Vila Real, Portugal

2005 EFITA/WCCA JOINT CONGRESS ON IT IN AGRICULTURE

Once the services are defined and

explained in the SOA architecture, the

next step is to model the Component

View of the architecture. This means to

aggregate services into components. The

Figure 2, in the left, represents it.

The service that handles the

communication among other providers

and the portal are now part of the

Coordinator Component.

The services of authentication and

authorization are grouped in a component

called Security.

The services related to the information are

grouped together like the Map and Images

component in the Map and Images

Provider. The same occurs with A0 data

and A1 data components that manage

specific bromelia service application.

Finally, the component Portal that is

responsible for all user interface

management.

Fig.2 Components view of the bromelia system.

By this way, the component view helps the implementation of the SOA architecture by defining services

related in a single component.

4 Implementation of the architecture: study case

A Bromelia Information System prototype was implemented to verify the functionality of the architecture

proposed (see Figure 3). This implementation uses the concepts of Object Oriented Programming (POO)

in JAVA programming language (SDK Java 2 Standard Edition, version 1.4.2). The portal interfaces were

implemented using Java Servlet Pages or JSP (see Figure 4), because they have a direct integration with

Java language, facilitating the construction of dynamic pages. All interfaces are connected with an initial

page, easing off the navigation process.

The database manager system PostgreSQL was used to implement the database. The finalized prototype

showed the correct relation between Portal and Provider, in order to validate the architecture based on the

Service Oriented Computation. The services implemented are:

- Portal;

- Security Operation: Coordinator and Operators for authorization and authentication;

- Service Operations: Service operator.

Between the Portal and the Services, there is a Coordinator (see Figure 5). Its role consists of intermediate

all operations occurring between the portal and the service operator, acting like a security manager. When

a user access the Portal, the coordinator, firstly, authenticates him, identifying which profile matches the

current user. Afterwards, when the user requests a specific application service, the coordinator verifies if

its profile has permission to access such process. In case of not being authorized, the coordinator sends a

reply message to the user denying its access. In case of having the permission it is sent a response with

the requested service.

508

EFITA/WCCA 2005 25-28 July 2005, Vila Real, Portugal

2005 EFITA/WCCA JOINT CONGRESS ON IT IN AGRICULTURE

Bromelia

PortalInterface

http web services

Map and Images Provider

web service

sweb

ser

vices

web services

Bromelia ProviderOf Institution A1

Bromelia ProviderOf Institution An

Bromelia ProviderOf Institution A0

web services ...

Fig.3 Distributed implementation

Fig.4 User Interfaces of the system

The user’s authentication information, such as login, password and place, are stored in directory

structures, using LDAP (Ldap, 2004) protocol to consult these datasets. Considering these set of

information, it is possible to recover the user’s profile in order to allow his service authorization later.

JNDI (Jndi, 2005) is used to communicate directly with the protocol LDAP.

When a service request is made, the coordinator uses the user’s profile to allow his authorization,

consulting an authorization table, which describes the services available for each specific profile. Such

table is part of a relational database.

509

EFITA/WCCA 2005 25-28 July 2005, Vila Real, Portugal

2005 EFITA/WCCA JOINT CONGRESS ON IT IN AGRICULTURE

Fig.5 Technologies used in the implementation

5 Conclusion

The use of a Bromelia Information System can not only contribute to species cataloguing, but also to

allow a major exchange of information among people involved in it, by eliminating redundant or

unnecessary information and by making a quicker research.

Based on the ABCD standard, a new line research can be proposed, so it can be used in future cataloguing

systems of another specie, contributing the exchange of information of Biodiversity.

An upgrade of the prototype mentioned can complement the system, like integrating this security system

with DiGIR systems, using a gateway between them.

This project is a step forward to a system which will allow collectors, producers, researchers and

politicians related to Biodiversity conservation to plan future projects that will reduce the environment

degradation, plus centralizing this information and making it available accordingly to the requirements of

each user group and researchers of the system (based on their profiles), and controlling the access to this

information so crucial.

6 Acknowledgments

Research for this paper was supported by FAPESP, Scholarship Number 04/01110-5 and 04/01111-1, at

Department of Computing Engineering and Digital System of Escola Politécnica da Universidade de São

Paulo.

Special tanks to Professor Antônio Mauro Saraiva and Master Student Marcelo S. de Jesus Ferreira.

7 References

[1] Stal, M., Web Services: Beyond Component-Based Computing. Communications of ACM, v. 45 n.10, p.71-76, october, 2002.

[2] Digir. (2005, May). DiGIR - Open source Project [Online]. Available at <http://digir.sourceforge.net>.

[3] ABCD. (2005, May). Access to Biological Collection Data: ABCD information [Online]. Available at

<http://www.bgbm.org/TDWG/CODATA/Schema/>.

[4] SOS Mata Atlântica. (2005, May) Parabólicas On-line. Online Magazine about social-environment issues [Online]. Available at

<http://www.socioambiental.org/website/parabolicas/edicoes/edicao40/reportag/pg10.htm>

510

EFITA/WCCA 2005 25-28 July 2005, Vila Real, Portugal

2005 EFITA/WCCA JOINT CONGRESS ON IT IN AGRICULTURE

[5] COFAN-NUNES, J.V. 2002. Bromelias. IN: Simões, L.L & Lino, C.F.(org.). Sustentável Mata Atlântica - A exploração de seus

recursos florestais. 213p. Editora SENAC São Paulo.

[6] GBIF Zorzetto R. Rede da vida. Pesquisa FAPESP. n.82, p.24-27, dezembro, 2002.

[7] JDK JAVA. (2005, May) Java Technology [Online]. Available at <http://java.sun.com/>

[8] JSP. (2004, May) Java Server Pages Technology [Online]. Available at <http://java.sun.com/products/jsp/>

[9] Tomcat. (2005, May) Apache Jakarta Tomcat Project [Online]. Available at <http://jakarta.apache.org/tomcat/>

[10] POSTGRESQL. (2005, May) PostgreSQL Project [Online]. Available at <http://www.postgresql.org/>

[11] LDAP. (2005, May) OpenLDAP - LDAP Implementation Project [Online]. Available at <http://www.openldap.org/>

[12] Axis.(2005, May) Apache Jakarta Tomcat Axis [Online]. Available at <http://ws.apache.org/axis>

[13]Jndi (2005, May) Java Naming Directory Interface [Online]. Available at

<http://java.sun.com/developer/technicalArticles/Programming/jndi/index.html>

[14] DARWINCORE (2005, May). Species Analyst – Darwin Core V2. Available at:

<http://tsadev.speciesanalyst.net/documentation/ow.asp?DarwinCoreV2>.

[15] Papazoglou, M.P. Georgakopoulos, D. - Communication of the ACM, v. 46, n. 10, p35-43, October 2003.

511