Vous êtes sur la page 1sur 12

Revista de Sistemas de Informação da FSMA

n. 15 (2015) pp. 11-22


http://www.fsma.edu.br/si/sistemas.html

Abordagens e Tecnologias para Integração de


Sistemas: Um Estudo de Caso na Universidade
Federal de Lavras
C. M. Garcia, R. Abilio – Diretoria de Gestão de Tecnologia da Informação (DGTI)
N. Malheiros – Departamento de Ciência da Computação (DCC)
Universidade Federal de Lavras (UFLA)
{cristiano.garcia,ramon.abilio}@dgti.ufla.br, neumar@dcc.ufla.br

Resumo—O objetivo desse trabalho foi analisar abordagens e a vertical (entre sistemas de diferentes níveis) e a horizontal
tecnologias para integração entre diversos sistemas de informação (entre sistemas de mesmo nível).
e serviços de rede em um ambiente acadêmico. Foi realizado um Existem diversas classificações para integração de
estudo de caso sobre o histórico da integração de sistemas na
sistemas, como por exemplo, as centradas no nível de
Universidade Federal de Lavras. Os dados foram coletados via
questionários e análise de documentação. Nessa análise, implementação e as com foco na organização e seus processos.
identificaram-se 4 fases distintas, quanto às tecnologias e A “Informação Centralizada” [17] é um exemplo de
abordagens utilizadas. Além disso, foram discutidos os benefícios abordagem centrada no nível de implementação e a Business-
e as desvantagens encontradas em cada fase. A principal to-Business (B2B) [13] é um exemplo de abordagem com foco
contribuição deste trabalho é a análise de diferentes abordagens na organização e seus processos.
para integração entre sistemas de informação e outros serviços.
Não importando a abordagem escolhida, uma das formas
Palavras-Chave — Arquitetura Orientada a Serviços,
de implementação de integração entre sistemas é utilizar a
Integração de Sistemas, Web Services Arquitetura Orientada a Serviço (Service Oriented
Architecture – SOA) [19]. A utilização da SOA com o
Abstract——This case study aims to analyze the integration's propósito específico da integração de sistemas é chamada de
approaches and technologies among information systems and Service-Oriented Integration (SOI) [12] e um meio para a
services in an academic environment. It has been done a study on implementação da SOI é utilizando Web Services, que
the integration history in the Federal University of Lavras. The representam uma visão sobre a programação distribuída e a
data had been gathered via questionnaires and documentation disponibilização de recursos, fortemente ligada à Internet [22].
analysis. In this analysis, 4 distinct phases were specified. Besides, Diversas tecnologias e padrões, como Simple Object Access
the advantages and disadvantages of each phase were discussed.
Protocol (SOAP), arquitetura Representational State Transfer
The main contribution of this work is the analysis of different
integration approaches among information systems and other (REST) e Java API for Web Services (JAX-WS1), fornecem
services. suporte para a implementação de Web Services [3].
A utilização de Web Services para a integração entre
Index Terms— —Information Systems Integration, Service- sistemas pode se estender, também, às instituições acadêmicas.
Oriented Architecture, Web Services. Na Universidade de Açores (Portugal), um conjunto de Web
Services foi desenvolvido para a otimização de tarefas críticas,
que envolvem informações financeiras e estratégicas [4]. Na
I. INTRODUÇÃO Universidade Federal de Pelotas (UFPel - Brasil), foi também
desenvolvido um conjunto de Web Services para a consistência

I nstituições públicas e privadas, das mais diversas áreas e


tamanhos, possuem sistemas de informação para auxiliar
na gerência dos processos. Em ambientes corporativos, é
de informações entre seus sistemas e serviços, como o
restaurante universitário, o Ambiente Virtual de Aprendizado e
a rede sem fio institucional [1].
comum encontrar um cenário com tipos diferentes de sistemas, A Universidade Federal de Lavras (UFLA), objeto deste
tanto nos níveis operacional e gerencial, quanto no nível estudo, vem tendo um crescimento acentuado em sua
estratégico [23]. Com isso, os dados são compartilhados comunidade. Até junho de 2013, em torno de 16000 alunos
mesmo entre sistemas que não estão no mesmo nível
administrativo, caracterizando, assim, dois tipos de integração: 1
http://docs.oracle.com/javase/7/docs/technotes/guides/xml/jax-ws/
11
Garcia, C. M.; Abilio, R.; Malheiros, N. / Revista de Sistemas de Informação da FSMA n. 15 (2015) pp. 11-22

estavam matriculados na Universidade, e por volta de 1600 capaz de obter vantagem competitiva [15].
servidores ocupavam cargos na Instituição [25]. Esse número Existem razões que podem levar empresas a contratar ou
tende a crescer com a criação de novos cursos [24]. desenvolver soluções de integração de sistemas. Tais razões
Segundo o Plano Diretor de Tecnologia da Informação podem ser [7]:
2011/2012 [8], até 2011, a UFLA possuía 24 sistemas de
 Estender a tecnologia já existente para flexibilizar e
informação mantidos pela Diretoria de Gestão de Tecnologia reduzir custos na implementação de novos serviços;
da Informação (DGTI). Cada um destes sistemas possui
singularidades quanto ao seu objetivo (acadêmico,  Permitir integração com stakeholders, expandindo
administrativo e de apoio), ao tipo de sistema gerenciador de assim o alcance de serviços;
bancos de dados, plataformas e tecnologias utilizadas no  Integrar informações comuns em diferentes bases de
desenvolvimento, além de terem sido desenvolvidos por dados, resultantes de fusões, aquisições ou sistemas
diferentes empresas. legados.
Em 2013, uma “família” de sistemas de informação
institucionais integrados começou a ser implantada na A integração de sistemas corporativos é uma tarefa
Universidade. Esses sistemas são desenvolvidos com complicada e que envolve riscos, pois cada organização possui
tecnologias diferentes das até então presentes na Instituição e suas características e necessidades de integração [17]. Uma
isso adiciona ainda mais complexidade no contexto da organização pode realizar a integração de sistemas
integração. considerando diferentes focos, como na implementação ou na
Além dos sistemas de softwares mencionados, a organização e seus processos.
Universidade ainda oferece serviços de rede como email e
A. Classificações da Integração de Sistemas
acesso wireless para toda a comunidade acadêmica, existindo a
necessidade de integração entre serviços e sistemas do A integração de sistemas de informação pode ser
ambiente universitário. classificada, por exemplo, considerando-se o nível de
Essa heterogeneidade torna a integração de sistemas um implementação [17] ou a organização e seus os processos [13].
grande desafio. O principal objetivo deste trabalho foi realizar Quanto ao nível de implementação, a integração de sistemas
um estudo de caso para analisar as soluções de integração pode ser classificada como [17]:
entre sistemas de informação na UFLA, destacando os • Aplicações Compostas: aplicações integradas com o
benefícios e as desvantagens de cada solução utilizada de uso de API2. Nesta integração, a API funciona com
forma a fazer com que este desafio seja transposto da melhor um conector entre sistemas;
forma. Uma das contribuições deste trabalho é a análise de • Informação Centralizada: ocorre quando diferentes
diferentes abordagens para integração entre sistemas que sistemas tem acesso à mesma base de dados,
poderá auxiliar profissionais a escolher a abordagem mais compartilhando também os metadados;
adequada para seu cenário.
O presente trabalho está a organizado da seguinte forma:
• Sistemas Integrados de Gestão: sistemas fechados e
compostos por módulos internos independentes. Esta
na Seção 2, é apresentada uma breve introdução sobre
integração é realizada, comumente, a nível de código-
integração entre sistemas de informação; após, na Seção 3, a
fonte.
metodologia é apresentada; na Seção 4 e na Seção 5, são
apresentados os resultados e as conclusões, respectivamente. Com foco na organização e seus processos, a integração
pode classificada como [13]:
II. INTEGRAÇÃO ENTRE SISTEMAS DE INFORMAÇÃO
O uso de Sistemas de Informação (SI) vem crescendo
• Data Replication (Replicação de Dados): a
integração acontece no nível de informação. As bases
expressivamente e tende a crescer ainda mais nos próximos são distribuídas e mantidas atualizadas e
anos [2]. O poder de processamento agregado nas grandes sincronizadas;
organizações também vem aumentando na medida em que os
computadores diminuem de tamanho e preço [14]. Com isso, • Business-to-Business (B2B) Integration (Integração
instituições públicas e privadas nas mais diversas áreas, das Negócio-Negócio): extrapola os limites empresariais.
Representa a disponibilização de funções entre
maiores até as mais simples já possuem computadores, com
diferentes organizações. Embora os demais conceitos
sistemas de informação para auxiliar na gerência do negócio e
também possam ser aplicados à integração B2B, o
automação de tarefas rotineiras [18].
uso de redes externas pode levantar novas questões a
A utilização de computadores e sistemas de informação é serem analisadas [13];
mais do que a automatização de tarefas de nível operacional. A
Tecnologia da Informação (TI) passou a ser uma ferramenta
estratégica, pois a empresa que utiliza os recursos de TI de
2
modo eficaz, integrando as estratégias de TI às do negócio, é Application Programming Interface, ou Interface de Programação de
Aplicação
12
Garcia, C. M.; Abilio, R.; Malheiros, N. / Revista de Sistemas de Informação da FSMA n. 15 (2015) pp. 11-22

• Service-Oriented Architecture (Arquitetura Orientada formas de implementação de Web Services mais comumente
a Serviço): os sistemas disponibilizam funções como encontradas são Simple Object Access Protocol (SOAP) e
serviços, que no contexto de computação, significa Representional State Transfer (REST), citadas também como
“função bem definida e universalmente disponível”. solução para integração de processos entre organizações [29].
SOAP é um protocolo que utiliza a linguagem Web
Apesar dos diferentes focos, as taxonomias encontradas Services Description Language (WSDL), baseada em XML,
possuem semelhanças entre si [13][17]. Por exemplo, as para descrever funcionalidades oferecidas por um Web Service
abordagens “Business-to-Business (B2B) Integration” e [29]. O SOAP provê um padrão básico de comunicação, no
“Aplicações Compostas” podem utilizar de API para qual cada operação é representada por seu terminal, descrito
compartilhamento de informações e, assim, efetivar uma no documento XML enviado na requisição, ao invés de um
possível integração entre sistemas. método HyperText Transfer Protocol (HTTP), como utilizado
no REST [29].
B. Arquitetura Orientada a Serviço REST é uma abstração dos princípios que fazem a World
A arquitetura de um software representa a estrutura que Wide Web (WWW) escalável [29]. Permite fornecer serviços
abrange os componentes do software, suas propriedades identificados por um Uniform Resource Identifier (URI), com
externamente visíveis e as relações entre ambos [20]. a utilização de métodos HTTP 1.0: GET, POST, DELETE e
Arquitetura Orientada a Serviço (Service-Oriented PUT. O uso destes métodos define a operação a ser feita: GET
Architecture (SOA)) vem sendo considerada um dos principais lista registros, POST insere novo registro, DELETE remove
paradigmas no projeto de sistemas distribuídos, inclusive um registro, e PUT atualiza um registro [10]. Um URI é uma
dando origem à uma ramificação da Engenharia de Software forma uniforme de identificação de recursos em rede. O tipo
chamada Engenharia de Software de Serviço [27]. mais conhecido de URI é o Uniform Resource Location (URL)
A SOA é um paradigma que visa a organização e [29].
utilização de recursos que podem estar sob controle de Como REST não se trata de um protocolo, como o
diferentes proprietários, pela disponibilização de um meio SOAP, mas, sim, de uma arquitetura [10], o retorno das
uniforme de oferta, descoberta, interação e uso de chamadas pode ser formatado conforme os requisitos da
funcionalidades para produção de efeitos desejados e aplicação, por exemplo, utilizando Javascript Object Notation
consistentes [19]. Este paradigma é capaz de oferecer uma (JSON) ao invés de XML.
série de benefícios, como o controle do crescimento de O estudo sobre as formas de classificação da integração
sistemas, o provimento e utilização de serviços em escala de sistemas permitiu a identificação das abordagens utilizadas
global e redução de custos em cooperações organização- para a integração dos sistemas de informação e serviços de
organização [26]. redes de computadores da Instituição. Além disso, os
Utilizando SOA com o propósito de integração, há a conceitos relacionados à Arquitetura Orientada a Serviço
Service-Oriented Integration (SOI), cujo objetivo principal é permitiram entender a arquitetura utilizada na quarta fase do
criar uma integração entre múltiplos sistemas, modificando histórico de integração de sistemas da UFLA.
pouco ou nada suas implementações [12]. Essa técnica expõe
dados, funcionalidades e processos para serem consumidos III. METODOLOGIA
pelos sistemas participantes da integração. Existem diversas Para manter a infraestrutura de redes de computadores,
abordagens para a SOI com foco na integração entre sistemas hardware e software, a UFLA possui uma Diretoria de Gestão
já existentes [12], entre as quais pode-se destacar: de Tecnologia da Informação (DGTI). A DGTI está
 Service (Serviços): utiliza uma camada de serviços subdividida em cinco coordenadorias. Uma delas é a
entre os sistemas existentes e os consumidores dos Coordenadoria de Sistemas de Informação – CSI, responsável
serviços; pela “definição, análise, programação, implantação,
 Process Integration (Integração de Processos): integra manutenção e documentação de sistemas de informação dos
processos em um ambiente empresarial, sugerindo a órgãos administrativos da Instituição”. Dentre os objetivos
utilização na integração de pequenos processos dentro de estratégicos da DGTI, alinhados à responsabilidade da CSI,
grandes processos, com interação humana ou não; estão [8]: i) Melhorar o gerenciamento de projetos na DGTI;
ii) Integrar os sistemas de informação utilizados na Instituição;
 Data Integration (Integração de Dados): se refere à e iii) Melhorar a qualidade de desenvolvimento e aquisição de
uma abordagem que gerencie a complexidade de modelos software.
de dados em diferentes aplicações.
Este trabalho foi realizado na CSI, entre Agosto e Outubro
de 2014, junto aos responsáveis diretos pela integração de
Web Services representam um meio de implementar a
sistemas e serviços no ambiente universitário. O trabalho foi
SOI, fornecendo uma interface de serviço que permite que
desenvolvido em três etapas:
consumidores interajam com provedores de serviço [5]. As

13
Garcia, C. M.; Abilio, R.; Malheiros, N. / Revista de Sistemas de Informação da FSMA n. 15 (2015) pp. 11-22

Etapa 1: Identificação dos sistemas de software da da integração entre eles, abordando vantagens, desvantagens,
Universidade, destacando-se as tecnologias empregadas, os características e tecnologias empregadas.
objetivos dos sistemas de software e a dependência entre eles;
A. Sistemas de Software e Serviços na Universidade
Etapa 2: Realização de estudo de caso por meio de A Universidade possuía, até 2011, 24 sistemas aplicados à
questionário e pesquisa documental. O objetivo desse estudo gestão de recursos e serviços. No entanto, nem todos os
foi identificar as abordagens de integração, a motivação para o sistemas estavam integrados. A razão para isso era,
uso de tais abordagens, as expectativas com o uso das mesmas principalmente, que a utilização de alguns sistemas era interna
e discutir vantagens e desvantagens de cada uma das a alguns departamentos. Portanto, deu-se ênfase nos sistemas
abordagens. O questionário utilizado possuiu onze perguntas: que foram ou estão em integração até 2014. Esses sistemas
foram agrupados de acordo com seu objetivo:
1. Quais foram as primeiras necessidades de integração entre 1. Acadêmico: sistemas de software cujo objetivo
os sistemas na Universidade? principal é gerenciar dados de cursos, disciplinas,
2. Quais sistemas foram os primeiros sistemas e serviços a docentes, discentes, pesquisa, assistência estudantil e
serem integrados? Quais informações eram necessárias atividades de extensão e cultura;
serem integradas? 2. Administrativo: sistemas cujo objetivo principal é
3. Quais foram as abordagens utilizadas? Quais as razões de auxiliar na gestão de pessoas e/ou no planejamento e
terem escolhido tais abordagens? na gestão da Universidade; e
4. Quais foram as expectativas com a integração entre os 3. Apoio: sistemas utilizados para gerenciar usuários e
sistemas? controles de acesso.
5. Quais as vantagens e desvantagens encontradas nessas
abordagens? Os sistemas acadêmicos são:

6. As expectativas foram alcançadas?  CPPD: Sistema de cálculo de progressão de docentes


utilizado até 2011;
7. Houve alteração (adição / mudança) em relação aos sistemas
que estavam integrados?  SIG: Sistema institucional de controle acadêmico. Ele
é utilizado por diversas unidades, por exemplo, para
8. Quais são os sistemas e serviços integrados atualmente
controle de: processo de chamadas a candidatos;
(2014)?
alunos; presença; matrizes curriculares; cursos;
9. Por que a mudança na estratégia de integração? Qual a períodos letivos; processo de renovação de matrícula;
motivação para isso? lançamento de notas; e emissão de documentos, como
10. Quais as expectativas com a nova abordagem? histórico escolar e atestados;

11. Quais as vantagens e desvantagens encontradas nas  Pergamum: Sistema integrado de bibliotecas utilizado
abordagens atuais? no gerenciamento do acervo, empréstimos de obras,
entre outras atividades da Biblioteca da Universidade;
O questionário foi enviado por e-mail para a equipe  SIGAA: Sistema que auxilia no controle de pesquisas
responsável pela integração entre sistemas na Universidade, na e produção intelectual. A partir de 2015, será
época formada por dois funcionários. Durante a análise das
utilizado também no controle de cursos e estudantes
respostas, eles foram questionados pessoalmente para fornecer
de Pós Graduação.
mais explicações. As respostas foram agrupadas, para que
fosse possível estabelecer a ordem cronológica dos
acontecimentos e para que as informações obtidas pudessem Os sistemas administrativos são:
ser confrontadas. • SIGRH: Sistema utilizado para atividades
relacionadas a Recursos Humanos, como marcação e
Etapa 3: Análise das informações coletadas e da evolução da alteração de férias, cálculos de aposentadoria,
integração dos sistemas na Universidade. Foi realizada uma controle de frequência, concursos, capacitações,
discussão sobre as informações obtidas e foram feitas avaliações funcionais;
sugestões para possíveis melhorias.
• SIPAC: Sistema que integra atividades como
IV. RESULTADOS E DISCUSSÃO requisição de materiais, manutenção, gerência de
compras, licitações, patrimônio, contratos e
Nesta Seção, são apresentados os sistemas de software e
convênios.
serviços que estão integrados e uma análise das características
Os sistemas de apoio são:
14
Garcia, C. M.; Abilio, R.; Malheiros, N. / Revista de Sistemas de Informação da FSMA n. 15 (2015) pp. 11-22

• CIN_Cadastro: Sistema de apoio e controle de fotos


TABELA I
SISTEMAS DE SOFTWARE E RESPECTIVAS TECNOLOGIAS
de cartões de identificação pessoal, emails de Sistema Linguagem Banco de Dados Plataforma
unidades, de pesquisadores, liberação de acesso do CPPD PHP MySQL Web
fecho eletrônico, entre outras atividades; SIG PHP MySQL Web
• SCIN: Sistema utilizado para abertura e
Pergamum
SIGAA
Delphi/Java
Java
SQL Server
PostgreSQL
Desktop/Web
Web
gerenciamento de requisições à equipe de suporte em SIGRH Java PostgreSQL Web
TI; SIPAC Java PostgreSQL Web
CIN_Cadastro PHP MySQL Web
• RV3Acesso: Sistema para controle de catracas de SCIN PHP MySQL Web
controle de acesso presentes no Restaurante RV3Acesso - MySQL Desktop
HCS - MySQL Desktop
Universitário, Biblioteca e Moradia Estudantil; Veículos PHP MySQL Web
• HCS: Sistema de ponto eletrônico, auxilia em
atividades como gerência de digitais e registro de Além dos sistemas de software, a Universidade oferece os
ponto; serviços de rede, como e-mail (Zimbra3 - Sistema de
• Veículos: Sistema de cadastro de veículos para
mensagens e suíte de colaboração) e redes de acesso sem fio à
Internet a toda a comunidade acadêmica. Existe ainda um
controle de acesso ao campus utilizado até 2010.
serviço de diretório LDAP4 institucional para autenticação de
usuários.
O grafo com a necessidade de dados entre os sistemas
Os sistemas de informação e serviços de rede estão
integrados na Instituição pode ser visto na Fig. 1. Por exemplo,
instalados em diversos servidores com diferentes sistemas
o sistema HCS compartilha dados de Servidores Técnicos
operacionais (SO). Por exemplo,o servidor do Zimbra utiliza o
obtidos do sistema SIGRH.
SO Red Hat Linux e o LDAP está instalado em um servidor
com SO Fedora Linux. Essa heterogeneidade impõe mais
dificuldades, visto que cada SO possui características e
configurações que podem ser diferentes entre si.
Durante o estudo, foi possível identificar sistemas presentes
em 7 servidores. Destes 7 servidores, um (servidor1) utiliza o
SO Red Hat, quatro (servidor3, servidor4, servidor5 e
servidor7) utilizam o SO Fedora Linux, e dois (servidor2 e
servidor6) contam com o sistema operacional Windows Server
2003. Esses servidores são identificados na Fig. 3 e na Fig. 4
juntamente com os sistemas de informação e com os serviços
de rede que estão instalados nos mesmos.
Os sistemas e serviços na Universidade compartilham dados
como nomes de usuário e endereços de e-mail. Todos os
sistemas e serviços dependem, em diferente escala, dos dados
gerenciados pelo CIN_Cadastro, SIG e SIGRH.
B. Análise histórica das abordagens de integração
Após a análise das respostas dos questionários, pôde-se
agrupar os fatos em ordem cronológica e identificar quatro
fases, como ilustrado na Fig. 2: 1) Pré-Integração: cenário
Fig. 1. Fluxo de Dados entre os Sistemas Integrados anterior à primeira integração em 2006; 2) Fase 1: período
entre meados de 2006 e meados de 2009; 3) Fase 2: período de
A Tabela I apresenta os sistemas de software juntamente meados de 2009 até Junho de 2014; e 4) Fase 3: período entre
com a linguagem de programação utilizada, o sistema Junho e Outubro de 2014. Cada fase agrupa abordagens de
gerenciador de banco de dados (SGBD) e a plataforma. Por integração diferentes e representa uma evolução na segurança,
exemplo, o sistema SIG foi desenvolvido com PHP, utiliza um escalabilidade e flexibilidade na integração dos sistemas e
banco de dados MySQL e sua plataforma é Web. Basicamente, serviços.
a CSI desenvolveu todos os sistemas que utilizam a linguagem
PHP e houve a aquisição de licenças para utilização do 3
https://www.zimbra.com/
Pergamum, do HCS e do RV3Acesso. 4
LDAP: Protocolo de aplicação aberto, que permite organizar os
recursos de rede de forma hierárquica
(http://www.hardware.com.br/termos/ldap)
15
Garcia, C. M.; Abilio, R.; Malheiros, N. / Revista de Sistemas de Informação da FSMA n. 15 (2015) pp. 11-22

Para o RV3Acesso, foi utilizado o engine Federated5, que


compartilha os dados por meio da criação de uma tabela
virtual, que recebe os dados da tabela original.
Para os demais sistemas que participavam da integração, a
abordagem era através do uso de User-Defined Functions6
(UDF). UDF são funções desenvolvidas em C e compiladas
dentro do SGBD, utilizadas como funções nativas do MySQL.
Utilizando-se esse recurso, foi possível automatizar as
atualizações das bases de dados. No momento em que as
tabelas eram atualizadas, as triggers relacionadas à elas eram
disparadas automaticamente. Estas triggers, então, invocavam
as UDF, que por sua vez, invocavam scripts PHP, que
realizavam a integração com os outros sistemas. Na Fig. 3, é
apresentado um diagrama dessa integração inicial.

Fig. 2. Fases da Integração entre Sistemas de 2006 a 2014

1) Pré-integração
Até meados de 2006, nenhum sistema era integrado de
forma automatizada, isto é, a transferência de dados entre os
sistemas era feita manualmente. Mesmo as contas de e-mail
eram criadas manualmente, no servidor Zimbra da época, sem
informações como endereço, departamento, cargo ou mesmo o
nome do usuário. Com isso, foi observada a necessidade da
criação de uma base de dados única para o compartilhamento
dessas informações.
Então, utilizando o SGBD MySQL, o banco de dados BD-
UF foi criado e passou a centralizar dados, como: login, e-
mail, nome, endereço, telefones, cursos e unidades de lotação
dos servidores. Após a criação desta base de dados, sistemas
de informação não institucionais (utilizados apenas em
determinadas unidades) passaram a consultar dados
atualizados na base central.

2) Fase 1
A primeira integração na Universidade teve o Fig. 3. Integração inicial entre os sistemas
compartilhamento de informações entre os sistemas
CIN_Cadastro, SCIN, Veículos, RV3Acesso, LDAP e Zimbra. A utilização do PHP foi decidida devido à habilidade dos
As informações compartilhadas eram: nome, endereço, cargo e profissionais que desenvolveram a integração inicial com esta
unidades de lotação dos servidores. O CIN_Cadastro permite o linguagem. De acordo com as informações obtidas por meio
gerenciamento de usuários. Os dados desses usuários são do questionário, este foi o único critério para a decisão pela
replicados no LDAP e utilizados na criação do e-mail adoção do PHP para este fim.
institucional no Zimbra. Os dados de servidores e discentes De acordo com as abordagens centradas na organização e
são replicados no RV3Acesso para controle de acesso ao seus processos [13], esta abordagem se classificaria como
Restaurante Universitário e Biblioteca. O SCIN e o Veículos Data Replication, pois os dados são replicados em diferentes
utilizam os dados replicados em suas bases de dados para bases (bancos de dados, LDAP e Zimbra) em um processo
autenticação e relacionamento dos usuários com chamados de automático executado pelos scripts PHP.
suporte e registro de veículos, respectivamente. A integração com o Zimbra era bastante complicada. Até
A abordagem para integração baseava-se no banco de sua versão 5.0, este sistema não possuía API de comunicação
dados. Se as bases compartilhassem MySQL como tecnologia, ou execução de comandos remotos, o que trouxe dificuldades
a integração era feita utilizando as próprias ferramentas do à integração. Conforme ilustrado pela Fig. 3, o script PHP,
SGBD, como triggers, functions, procedures, views e events.

5
http://dev.mysql.com/doc/refman/5.5/en/federated-storage-engine.html
6
http://dev.mysql.com/doc/refman/5.1/en/adding-udf.html
16
Garcia, C. M.; Abilio, R.; Malheiros, N. / Revista de Sistemas de Informação da FSMA n. 15 (2015) pp. 11-22

invocado pelas UDFs, precisava estabelecer uma conexão SSH minutos após a atualização inicial ser registrada.
com o servidor onde o Zimbra estava instalado, para executar Esta abordagem utilizando o Cron foi implementada
comandos da ferramenta Zmprov. Esta ferramenta oferecia a parcialmente. Sistemas críticos como LDAP e Zimbra não
possibilidade de execução de comandos direto no Zimbra. utilizavam essa abordagem. Com o foco no SIG, o
Com este encadeamento de operações, a detecção de erros e funcionamento da integração nessa Fase acontecia da seguinte
tratamento de exceções se tornava bastante complexa. Outros forma (como ilustrado na Fig. 4):
sistemas, como o Pergamum, eram atualizados manualmente.
O uso de UDF trouxe a sensação de “instantaneidade" na 1. Alteração no SIG dispara modificação nos dados do
integração, pois as atualizações eram executadas assim que BD-SIG;
uma trigger era disparada. Embora esta abordagem tenha
2. BD-SIG original tem os dados replicados para uma
atingido seus objetivos, as UDFs eram de difícil manutenção,
cópia do banco de dados em um outro servidor;
pois eram programadas na linguagem C e compiladas dentro
do SGBD. Sua utilização também dificultava a detecção de 3. Triggers na réplica do BD-SIG adicionam as
erros, quando estes aconteciam. alterações em um buffer de atualizações do BD-UF,
tabela que armazena as atualizações a serem
3) Fase 2 efetivadas, contendo dados como sistema e registro a
Após a primeira integração, ocorreram mudanças. Um novo serem buscados os dados que serão propagados para
sistema de gestão, o SIG, começou a ser desenvolvido e, os outros sistemas da integração;
progressivamente, agregando funcionalidades de antigos 4. Um evento do MySQL, disparado a cada 10 minutos
sistemas, posteriormente excluídos da integração. Este sistema, no BD-UF, gera registros específicos para atualização
bem como o sistema Pergamum, passou a fazer parte da dos sistemas, definindo qual sistema deve ser
integração. Até Junho de 2014, os sistemas participantes da atualizado, e em qual registro no BD-UF esta
integração na UFLA eram: SIG, CIN_Cadastro, Pergamum, atualização deve se basear;
RV3Acesso, Zimbra e LDAP. 5. O Cron executa scripts PHP, cada um relativo a um
Com a entrada do SIG e seu rápido crescimento, surgiu uma sistema que deve ser atualizado. Os scripts buscam os
série de novos problemas. A crescente utilização deste sistema dados na tabela de buffer no BD-UF e os propagam
fazia com que as tabelas fossem atualizadas mais para o BD-Pergamum e BD-RV3Acesso;
frequentemente, aumentando o disparo de triggers, que por sua
6. Scripts PHP são executados também a partir de UDF
vez invocavam as UDF. Esta crescente demanda da utilização
do BD-UF, para propagar atualizações para LDAP e
das UDF sobrecarregava o sistema. À época, uma atualização
Zimbra.
demorava de 3 a 5 segundos para ser propagada para Zimbra e
LDAP. Estes sistemas eram integrados utilizando uma cadeia
Embora as UDF tenham passado a ser menos utilizadas, a
de chamadas, trazendo a possibilidade de problemas de difícil
abordagem da Fase 2 ainda usava esta tecnologia para integrar
detecção em cada etapa, além de serem sensíveis às
serviços críticos, como LDAP e Zimbra. Assim como a da
sobrecargas na rede.
Fase 1, a abordagem da Fase 2 atingiu seu objetivo, que era a
A solução dada para esta situação foi colocar o banco de
integração dos sistemas na Universidade. Porém, a adição de
dados do SIG (BD-SIG) em um servidor dedicado. Feito isso,
novos sistemas à integração tal qual ela era nesta fase ainda
uma réplica assíncrona desta base foi configurada no mesmo
trazia complexidades. Por exemplo, a necessidade do
servidor no qual se encontrava o BD-UF, e consultas e
desenvolvimento de sua própria UDF, além de sua
relatórios que requeriam mais processamento foram
manutenção.
direcionados à ela. Com isso, o servidor de produção do BD-
Mesmo com a substituição parcial das UDF pelo Cron, a
SIG ficou menos requisitado, amenizando os problemas com
integração não era escalável nem passível de monitoramento.
as UDF, que ficavam lentas com a sobrecarga do BD-SIG.
Não havia uma política clara nem um padrão ou guia de como
Mesmo com os problemas com as UDF amenizados,
a adição de novos sistemas à integração deveria ser feita. O
buscou-se uma alternativa a elas. Neste momento, o Cron -
monitoramento da integração era realizado através de
ferramenta que permite agendar a execução de tarefas em
mecanismos programados no BD-UF, que enviavam e-mail
sistemas operacionais derivados do Unix - se mostrou uma
quando alguma falha, como travamento na procedure de
alternativa interessante. A opção pela utilização do Cron
geração de registros, fosse detectada.
trouxe vantagens como facilidade na configuração, utilização e
manutenção. As chamadas a scripts PHP passaram a ser
diretas, sem a utilização de UDF. A desvantagem desta
abordagem era a falta de instantaneidade da atualização dos
dados nos outros sistemas, embora não fosse considerado um
problema, pois os sistemas eram atualizados em até 10

17
Garcia, C. M.; Abilio, R.; Malheiros, N. / Revista de Sistemas de Informação da FSMA n. 15 (2015) pp. 11-22

O crescimento da Universidade trazia demandas cada vez dessa características do SOAP, foi pensada uma
maiores e a adição de novos sistemas ao ambiente universitário implementação que limitasse a utilização de serviços
era iminente, tornando a integração uma tarefa a tokens autorizados, acessando a partir de endereços
progressivamente mais complexa. IP específicos;
 Linguagem de Programação: foi decidido que a
arquitetura de integração seria desenvolvida em PHP,
devido à familiaridade da maioria da equipe com a
linguagem, além da existência de módulos nativos e
não nativos que facilitariam a utilização do SOAP. A
performance da linguagem não foi um critério para a
escolha da mesma, visto que não ofereceria
sobrecarga na base de dados como as UDF;
 Relação Provedor vs. Serviço: foi discutida tal
relação no aspecto numérico, na qual foi feita a
seguinte pergunta: “Seria mais interessante uma
abordagem utilizando um único provedor e vários
serviços ou vários provedores com poucos serviços?”
A opção foi pela arquitetura com vários provedores e
poucos serviços, que facilitaria a escalabilidade,
isolando a integração por sistemas específicos. Essa
opção também seria útil para a manutenibilidade da
integração, pois quando um provedor precisasse ser
Fig. 4. Integração entre sistemas na Universidade na Fase 2
parado para manutenção, os demais não seriam
afetados;
4) Fase 3
Na Fase 3, as UDF continuavam em funcionamento, mesmo  Protocolo: juntamente com o SOAP, foi definido que
com suas limitações quanto à performance e manutenibilidade. o retorno das chamadas aos serviços sempre seriam
A atualização do SO no servidor em que se encontrava o BD- um objeto Javascript Object Notation (JSON)
UF bem como a atualização da versão do SGBD MySQL de 4 composto por quatro atributos: 1) ID: que carregaria
para 5 trouxeram instabilidade às UDFs, como a o ID da mensagem e do sistema relacionado à
incompatibilidade entre tipos de dados devido à modificação integração; 2) uma mensagem; 3) um tipo, como por
dos nomes. Com esta instabilidade, vieram também os já exemplo: “SUCESSO”, “ERRO BD”; e 4) um
conhecidos problemas de tratamento de exceções e detecção atributo system, que traria o nome do provedor
de erros. Então, a arquitetura de integração foi repensada. requisitado;
Outras tecnologias de integração foram estudadas para a
 Abordagem: com uma visão centrada na
proposta de uma nova abordagem que suprisse as necessidades
implementação, optou-se pela abordagem de
de alta escalabilidade e manutenibilidade. A SOA foi então
“Aplicações Compostas” [17], pois as aplicações
uma alternativa promissora, trazendo a possibilidade de se
seriam integradas através do SOAP, que é uma API.
efetivar uma integração com qualidade e com mecanismos que
Quanto às estratégias, com o foco na organização e
pudessem ser monitorados.
seus processos, se trata da “Arquitetura Orientada a
Esta estratégia visou garantir uma vantagem significativa
Serviço” [13], pois os consumidores (sistemas) da
sobre a abordagem anterior. Foram tomadas decisões sobre:
integração foram pensados para consumir
segurança, linguagem de programação, relação
funcionalidades por meio de serviços, configurando
provedor/serviço, protocolo e abordagem.
então uma Integração Orientada a Serviço.

 Segurança: item primordial, visto que a integração Com base nestas decisões, chegou-se à arquitetura
manipularia dados pessoais, como nome, CPF, apresentada na Fig. 5.
senhas, e-mails e endereços de milhares de pessoas.
Então, seria necessária uma forma de segurança que
restringisse o acesso apenas à pessoas ou sistemas
autorizados. Neste quesito, o protocolo SOAP foi
escolhido, pois o cliente precisa conhecer as
operações que podem ser utilizadas por ele. Além

18
Garcia, C. M.; Abilio, R.; Malheiros, N. / Revista de Sistemas de Informação da FSMA n. 15 (2015) pp. 11-22

segurança, pois: os Provedores Privados são utilizados


somente pelos sistemas da integração; e os Provedores
Públicos disponibilizam serviços para sistemas externos à
integração, isolando os Provedores Privados. Este isolamento
é interessante, pois os consumidores dos serviços públicos não
têm conhecimento dos serviços privados existentes, e para a
ocultação de complexidade das operações aos consumidores.
Na Fig. 6, pode-se perceber que o Provedor Privado é
encapsulado pelo Provedor Público: as chamadas do
consumidor público passam primeiro pelo Provedor Público,
que por sua vez fazem chamadas ao Provedor Privado.

Fig. 5. Integração entre sistemas na Universidade na Fase 3

O funcionamento desta integração é similar às outras


abordagens, pois o “disparo” inicial é dado por atualização no
SIG ou em sistemas conectados ao BD-UF. A partir disso, o
Cron executa os consumidores de serviço, que identificam
atualizações para seus respectivos sistemas diretamente na Fig. 6. Fluxo de chamadas entre Consumidor e Provedor
Público
tabela de buffer do BD-UF. Estes consumidores invocam os
serviços de atualização, que atualizam seus sistemas.
As chamadas entre os Consumidores e os Serviços Privados
Todas as atividades executadas pelos provedores de serviço
são realizadas em três passos (como apresentado na Fig. 6):
bem como pelos consumidores são salvas em uma tabela de
Log. Isto se faz necessário principalmente pela existência de
uma rede de comunicação passível de falhas entre provedores 1. Consumidor chama o serviço de autenticação enviando
e consumidores. seu token;
Na Fase 3, alguns aspectos da integração foram facilitados. 2. Serviço verifica se o token recebido existe e se o IP de
Como exemplo, têm-se a atualização de versão do Zimbra, que origem está na lista dos IP’s liberados para acesso para o
passou a fornecer acesso às suas funções via Web Services. No respectivo token.
entanto, alguns complicadores também foram inseridos, como 3. Consumidor recebe uma mensagem formatada em
a adição do BD-SIPAC, utilizando o SGBD PostgreSQL, JSON. O atributo tipo definirá a mensagem. Caso seja
diferente dos outros SGBDs da integração até este momento. “SUCESSO”, o atributo message será uma string, que
Com o desenvolvimento dos serviços e consumidores deverá ser o primeiro parâmetro nas chamadas
relacionados, chegou-se a um “esqueleto” básico, a partir do subsequentes ao serviço em questão. Essa string é uma
qual qualquer novo serviço ou consumidor pode ser ID de Sessão (SID). Do contrário, o atributo message
desenvolvido. Este fato traz consigo uma alta escalabilidade, será uma mensagem explicativa relacionada ao problema
uma das características essenciais e desejadas para a de autenticação.
integração na Universidade.
Além disso, a interoperabilidade que o uso do SOAP provê Na Fig. 7, é apresentado um fluxo de chamadas e retornos
também auxiliou na integração com sistemas externos, ou seja, utilizando o Provedor do LDAP, exemplificando o uso dos
sistemas que utilizam os Web Services da Universidade para serviços auth e changePassword para autenticação e troca de
acesso à funcionalidades. Essa interoperabilidade é senha.
importante, pois permite a interconexão de sistemas de
software desenvolvidos em diferentes linguagens, como por
exemplo, um consumidor construído em Java pode se conectar
aos serviços desenvolvidos em PHP.
Para organizar os provedores, foram criadas duas
categorias: Provedores Públicos e Provedores Privados. Essa
categorização permite um maior controle em relação à
19
Garcia, C. M.; Abilio, R.; Malheiros, N. / Revista de Sistemas de Informação da FSMA n. 15 (2015) pp. 11-22

Esses dois sistemas utilizam informações de servidores e


discentes da Universidade. Portanto, sempre que algum dado é
inserido ou alterado nos sistemas concentradores de dados
SIG-UFLA e Cin-Cadastro, ele deve ser propagado para os
demais sistemas. Essa propagação é realizada por meio de
requisições do Consumidor privado ao seu Provedor
resultando nessa quantidade elevada de chamadas.
A Fig. 10 apresenta um gráfico que permite comparar a
proporção de Falhas e Sucesso nas operações utilizando os
Web Services de cada sistema. Por exemplo, o Provedor HCS
teve 97.04% de sucesso e 2.86% de falhas na execução de seus
serviços. O sistema HCS gerencia os dados de servidores que
registram ponto eletrônico e esse percentual de falhas indica
que o provedor encontrou inconsistência nos dados enviados
pelo consumidor.
Fig. 7. Fluxo de chamadas aos Provedores Para ilustrar a importância do dashboard, durante o
desenvolvimento deste trabalho, a equipe que cuida da
As chamadas aos Serviços Públicos são feitas diretamente integração observou nos gráficos uma quantidade não esperada
às funcionalidades, como as chamada aos Serviços Privados, de chamadas a serviços, e então pôde investigar as causas
porém enviando o token no lugar do SID. Como parte deste desse comportamento e as corrigir de forma eficiente e eficaz.
trabalho, foi desenvolvido um sistema de gerência para que os
mecanismos de integração pudessem ser monitorados. Este
sistema de monitoramento inclui cadastro de Provedores,
Serviços, tokens, vinculação de tokens a IP’s e serviços, e um
dashboard com informações sobre as execuções dos serviços
nas últimas horas, comparação entre utilização de serviços nas
últimas duas semanas e dados das últimas execuções de cada
serviço.
Três dos tipos de gráficos presentes no dashboard são
ilustrados na Fig. 8, na Fig. 9 e na Fig. 10. A Fig. 8 apresenta o
gráfico do Sistema de Gerenciamento que exibe a quantidade
de chamadas aos serviços de cada sistema nas últimas 24
horas. Por exemplo, entre 18 e 19 horas do dia anterior à
visualização deste gráfico, o Provedor Pergamum teve por
volta de 1300 chamadas a seus serviços realizadas pelo seu Fig. 9. Comparação global entre os Provedores da Integração
consumidor privado.

Fig. 8. Número de requisições atendidas por cada serviço por


hora.

A Fig. 9 apresenta um gráfico ("tipo pizza") que permite


comparar a quantidade de chamadas aos serviços de cada Fig. 10. Gráfico de comparação global entre os Provedores da
sistema. Por exemplo, o total de chamadas ao Provedor Integração
Pergamum representa 55.2% do total de chamadas, enquanto o
total de acessos ao Provedor RV3Acesso representa 43.4%.
20
Garcia, C. M.; Abilio, R.; Malheiros, N. / Revista de Sistemas de Informação da FSMA n. 15 (2015) pp. 11-22

C. Resumo comparativo possível identificar 4 Fases de integração, desde o momento


Na Tabela II, têm-se um resumo comparativo das que não havia integração, em meados de 2006, até o
abordagens utilizadas nas Fases estudadas, mostrando desenvolvimento de uma arquitetura de integração e sua
vantagens e desvantagens para cada uma delas. Por exemplo, a implantação no ambiente, em Outubro de 2014.
abordagem “Replicação de Dados (Triggers, Functions e Na Fase 3, foi projetada uma arquitetura orientada a serviço
Procedures)” tem como vantagem a sensação de para a integração entre os sistemas na Universidade.
instantaneidade, mas tem como desvantagem a dependência da Juntamente com esta arquitetura, foi desenvolvida uma
tecnologia do Sistema Gerenciador de Banco de Dados interface de monitoramento e gerenciamento de serviços e
(SGBD). permissões da integração.
Todas as abordagens estudadas possuem vantagens e O estudo histórico da integração na Universidade trouxe um
desvantagens e elas devem ser consideradas a partir do entendimento maior sobre sua evolução, suas necessidades
contexto da Universidade. Isso significa que dependendo das iniciais, vantagens e desvantagens de cada uma das soluções
tecnologias, da quantidade de sistemas e serviços envolvidos, adotadas. Este entendimento pode evitar a utilização de
uma abordagem pode ser mais adequada que outra. No abordagens que se provaram ineficientes no contexto da
contexto da UFLA, a abordagem utilizando SOAP e Web integração de sistemas de informação e serviços de rede na
Services é a mais adequada, pois permite uma maior Universidade.
escalabilidade e flexibilidade, visto a expansão de sistemas de A integração de sistemas e serviços, especialmente em
software e serviços de rede integrados. ambientes acadêmicos, é muito interessante, pois lida com
sistemas administrativos (gestão de pessoas, compras,
licitações, almoxarifado), sistemas acadêmicos (gestão de
TABELA II
cursos e alunos, matrícula, geração de atestados, históricos,
QUADRO-RESUMO DE ABORDAGENS
projetos de pesquisa) e serviços de rede (e-mail, autenticação
Abordagem Vantagens Desvantagens
centralizada, wireless) presentes no cotidiano universitário,
Replicação de Dados Dependência da tecnologia além da integração com sistemas não institucionais.
Sensação de
(Triggers, Functions e do Sistema Gerenciador
Procedures)
instantaneidade
Banco de Dados Como trabalhos futuros, sugere-se:
Sensação de
instantaneidade e Dependência da tecnologia  Estudo mais aprofundado sobre os aspectos de
UDF integração com do SGBD; Recuperação de
tecnologias externas falhas; Velocidade
segurança em Web Services;
ao SGBD  Identificação de pontos que podem ser comuns à
Dependência da tecnologia instituições de ensino, de forma a fornecer um padrão
Sensação de do SGBD e Rede, podendo para integração neste tipo de ambiente;
Master/Slave
instantaneidade gerar registros inconsistentes
de um servidor para outro  Proposta de adequação aos padrões de
CRON + Scripts PHP Manutenibilidade
Atualizações não são interoperabilidade e-Ping7 do Governo Federal;
instantâneas
 Proposta de integração com sistemas estruturantes do
Escalabilidade; Dependência de rede
Web Services Isolamento de externa; dependência da Governo Federal, como: SIAPE, SIGEPE,
funções tecnologia Comprasnet.
Requisições e retornos com
Serviços bem REFERÊNCIAS
SOAP formato padronizado,
definidos
contendo muita informação [1] Andersson, V. O.; dos Santos, R. T.; Tillmann, A. L. C. & Noguez, J. H.
S. COBALTO Webservice: Solução para consistência de informações.
Resumo Publicado na VIII Workshop de Tecnologia da Informação e
Comunicação das IFES (2014).
V. CONCLUSÃO [2] Barros, F. Mercado de software nacional vai crescer 400% em 10 anos.
O ambiente de TI das organizações de médio e grande porte Disponível em:
<http://convergenciadigital.uol.com.br/cgi/cgilua.exe/sys/start.htm?infoi
é complexo, devido à heterogeneidade e escala das d=32006>. Acessado em 10/09/2014, (2012).
plataformas e sistemas de informação. Para a consistência dos [3] Cerami, E. Web services essentials: distributed applications with XML-
dados manipulados por estes sistemas, é ideal que eles estejam RPC, SOAP, UDDI & WSDL. O'Reilly Media, Inc., (2002)
[4] Costa, C., Melo, A. C., Fernandes, A., Gomes, L. M. & Guerra, H.
integrados, funcionando como um único sistema. Integração de Sistemas de Informação Universitários via Web Services.
Em ambientes universitários, o cenário não é diferente: Actas da 5ª Conferencia Ibérica de Sistemas y Tecnologias de
diversos sistemas são utilizados, com diferentes objetivos. Información, p. 290-295 (2010).
Neste trabalho, foi apresentado um estudo de caso sobre a
integração de sistemas e serviços no ambiente universitário,
7
envolvendo 11 sistemas e 2 serviços. Nesse estudo, foi http://www.governoeletronico.gov.br/acoes-e-projetos/e-ping-padroes-
de-interoperabilidade
21
Garcia, C. M.; Abilio, R.; Malheiros, N. / Revista de Sistemas de Informação da FSMA n. 15 (2015) pp. 11-22

[5] Coulouris, G., Dollimore, J., Kindberg, T. & Blair, G. Sistemas [28] Vidor, A. C.; Fisher, P. D. & Bordin, R. Utilização dos sistemas de
Distribuidos-: Conceitos e Projeto. Bookman Editora. (2013) informação em saúde em municipios gaúchos de pequeno porte.
[6] De Mello Jorge, M. H. P., Laurenti, R. & Gotlieb, S. L. D. Avaliação Revista Saúde Pública, SciELO Public Health, 45, 24-30 (2011).
dos sistemas de informação em saúde no Brasil. Cad. Saude Colet 18, [29] Zur Muehlen, M.; Nickerson, J. V. & Swenson, K. D. Developing web
07-18 (2010). services choreography standards — the case of REST vs. SOAP.
[7] Degan, J. O. C. Integração de dados corporativos: uma proposta de Decision Support Systems, Elsevier, 40, 9-29 (2005)
arquitetura baseada em serviços de dados Unicamp - Universidade
Estadual de Campinas, (2005)
[8] DGTI. Plano Diretor de Tecnologia da Informação 2011/2012
Universidade Federal de Lavras (2011).
[9] Do Carmo, B. & Almeida, D. Uso de Sistemas de Informação geográfica
na avaliação da Microbacia do Ribeirão das Alagoas, Conceição das
Alagoas, Minas Gerais Publicatio UEPG-Ciências Exatas e da Terra,
Agrárias e Engenharias, 19, 9. (2013).
[10] Fielding, R. T. Architectural styles and the design of network-based
software architectures. University of California, Irvine (2000).
[11] Gerhardt, T. E.; Pinto, J. M.; Riquinho, D. L.; Roese, A.; Santos, D. L.
d. & Lima, M. C. R. d. Utilização de serviços de saúde de atenção
básica em municipios da metade sul do Rio Grande do Sul: análise
baseada em sistemas de informação. Ciência & Saúde Coletiva,
SciELO Brasil, 16, 1221-1232 (2011).
[12] Hensle, B.; Booth, C.; Chappelle, D.; McDaniels, J.; Wilkins, M. &
Bennett, S. Oracle Reference Architecture - Service-Oriented
Integration, Release 3.0.Oracle, (2010)
[13] Hohpe, G. & Woolf, B. Enterprise integration patterns: Designing,
building, and deploying messaging solutions. Addison-Wesley
Professional, (2003).
[14] Intel. Computadores ficaram 61% mais baratos nos últimos 10 anos.
<Disponível em: http://newsroom.intel.com/docs/DOC-3946>.
Acessado em 26/08/2014, (2013)
[15] Laurindo, F. J. B.; Shimizu, T.; Carvalho, M. M. d. & Rabechini Jr, R.
O papel da tecnologia da informação (TI) na estratégia das
organizações. Gestão & Produção, SciELO Brasil, 8, 160-179. (2001)
[16] Marin, H. d. F. Sistemas de informação em saúde: considerações gerais.
Journal of Health Informatics, 2, (2010)
[17] Martins, V. M. M. Integração de Sistemas de Informação:
Perspectivas, normas e abordagens. Universidade do Minho -
Guimarães - Portugal, (2005)
[18] Nascimento, A. M.; Luft, M. C. M. S.; Araujo, G. F. d. & Dacorso, A.
L. R. Implantação de Sistemas de Informação em uma secretaria
estadual
Revista Pensamento Contemporâneo em Administração, 5, 66-82 (2011)
[19] OASIS, Organization for the advancement of structured information
standards. Service-Oriented Architecture. Disponível em: /docs.oasis-
open.org/soa-rm/v1.0/soa-rm.pdf>. Acessado em 15/09/2014, (2006).
[20] Pressman, R. S. Software engineering: a practitioner’s approach.
McGraw-Hill, McGraw-Hill, (2001)
[21] Ramos, Célia. M. Q. Sistemas de informação para a gestão turistica.
Revista Encontros Cientificos-Tourism & Management Studies, Escola
Superior de Gestão, Hotelaria e Turismo, 107-116 (2010).
[22] Technologies, IOWA. Web Services Definition. <Disponível em
/www.w3.org/2001/03/WSWS-popa/paper13>. Acessado em
21/10/2014., (2001)
[23] Turban, E., Leidner, D., McLean, E. & Wetherbe, J. Tecnologia da
Informação para Gestão: Transformando os Negócios na Economia
Digital 6ed. Bookman, (2004)
[24] UFLA. Novos cursos de Engenharia da UFLA terão Área Básica de
Ingresso. Disponível em /www.ufla.br/ascom/2014/05/30/novos-cursos-
de-engenharia-da-ufla-terao-area-basica-de-ingresso/>.Acessado em
24/08/2014 (2013)
[25] UFLA, ASCOM. Números. Disponível em:
/www.ufla.br/portal/institucional/sobre/numeros/>. Acessado em
24/08/2014 (2014)
[26] Valipour, M. H.; Amirzafari, B.; Maleki, K. N. & Daneshpour, N. A
Brief Survey of Software Architecture Concepts and Service. Oriented
Architecture. JASIS, (2009)
[27] Van den Heuvel, W.-J.; Zimmermann, O.; Leymann, F.; Lago, P.;
Schieferdecker, I.; Zdun, U. & Avgeriou, P. Software service
engineering: Tenets and challenges. Proceedings of the 2009 ICSE
Workshop on Principles of Engineering Service Oriented Systems, 26-
33 (2009)
22