Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
PALAVRAS-CHAVE
Engenharia de software Sistemas de informao Sistemas legados Objetos distribudos
RESUMO
O objetivo deste artigo conceituar sistemas legados, ou sistemas herdados, e demonstrar
abordagens, mtodos e tecnologias atuais para manter estes sistemas crticos em produo,
estendendo o seu ciclo de vida, integrando-os a novos sistemas e tecnologias. A importncia
desses sistemas para as organizaes, tanto do ponto de vista estratgico quanto do econmico, justifica o interesse pelo assunto com o conseqente desenvolvimento de tcnicas e
tecnologias para a sua integrao aos novos sistemas. Um pequeno estudo de caso tambm
apresentado, demonstrando uma das abordagens para integrao.
1. INTRODUO
Sistemas legados, ou seja, sistemas crticos em uso h determinado perodo e
desenvolvidos com tecnologia supostamente ultrapassada, so peas importantes em uma organizao. Na contramo da tecnologia, em constante evoluo,
estes sistemas costumam entrar em produo j desatualizados tecnologicamente,
devido a atrasos no seu ciclo normal de desenvolvimento. Geralmente estes sistemas contm informaes vitais para a organizao. Como proceder para manter a funcionalidade dos mesmos, sem provocar um impacto negativo ou causar
prejuzos ao funcionamento da rea de Tecnologia da Informao TI, e conseqentemente causar prejuzos para toda a organizao?
A atualizao e incluso de novos sistemas e tecnologias em uma organizao constante, tornando imprescindvel que novos sistemas sejam integrados
aos antigos, interagindo e compartilhando dados, processos e funcionalidades,
no conceito de escalabilidade e modularizao. Essa caracterstica est se tornando vivel com a utilizao de conceitos de orientao a objetos e tcnicas
que empacotam os sistemas e extraem dos mesmos somente as informaes e
funcionalidades relevantes. Um exemplo oportuno do uso dessa tecnologia deve
ser citado: a Internet. Grandes organizaes pblicas e privadas possuem pon1
2
herbert.pinto@serpro.gov.br
zeluis@dpi.ufv.br
48
tos de presena na Internet, valendo-se de um contedo multimdia para informao, relacionamento, comrcio e integrao. No parece razovel que os sistemas em produo dessas empresas, provavelmente sistemas de gesto integrada crticos sejam profundamente alterados em sua estrutura bsica ou substitudos para atender a interface com a Web. O mais provvel, e menos custoso,
prover uma estrutura que permita interface Web integrar-se a esses sistemas,
extraindo deles informaes relevantes.
importante salientar que nem sempre a deciso de integrar um sistema legado ser simples ou se configurar na melhor opo. As opes possveis devem ser cuidadosamente analisadas, para evitar insucessos ou perdas financeiras significativas. Este artigo se prope a discutir a questo, trazendo ao leitor os
principais conceitos necessrios a uma tomada de deciso aceitvel sobre o tema.
2. SISTEMAS LEGADOS
As empresas gastam muito dinheiro em sistemas de software, e para que
elas obtenham um retorno deste investimento o software deve ser utilizado por
vrios anos. O tempo de durao de sistemas de software muito varivel, e
muitos sistemas de grande porte permanecem em uso por mais de dez anos.
Algumas organizaes ainda dependem de sistemas de software que tm mais
de vinte anos de existncia. Muitos desses antigos sistemas ainda so fundamentais para as empresas, isto , as empresas dependem dos servios fornecidos
pelo software, e qualquer falha desses servios teria um srio efeito em seu diaa-dia. A esses sistemas antigos foi dado o nome de Sistemas Legados [Somm03].
Sistemas legados so aplicaes de valor crtico para o negcio em produo nas empresas h cinco ou mais anos [Umar97], ou qualquer sistema de
informao que resiste significativamente modificao e evoluo [Brod95].
Alguns autores consideram ainda, como conceito para sistema legado: toda
aplicao em produo. Analisando esta caracterizao, verificamos que a partir da entrada de um determinado sistema em produo, dependendo da tecnologia
adotada e do prazo no ciclo de desenvolvimento, possivelmente o mesmo j
estar ultrapassado, tornando-se candidato a sistema legado
A viso de um sistema legado como um conjunto formado por software e
hardware adequada para uma anlise tcnica. No nvel scio-tcnico e
organizacional esta viso deve ser expandida: um sistema legado contm software,
hardware, profissionais, processos, regras de negcio e informaes geradas e
manipuladas por todo o sistema. Existem profissionais ligados diretamente ao
mesmo, como analistas, desenvolvedores e administradores de dados; e existem
profissionais que utilizam o sistema, como diretores, gerentes e usurios de um
modo geral.
necessrio tambm focar o lado humano de uma possvel mudana
tecnolgica com a modernizao ou mesmo substituio do sistema legado. Esse
acompanhamento estratgico se chama gesto de mudanas (change
management). Gesto de Mudanas so ferramentas e tcnicas utilizadas para
atenuar o impacto da mudana tecnolgica causado nos indivduos diretamente
ligados tecnologia [Somm03].
Algumas caractersticas podem auxiliar na identificao de sistemas legados:
sistemas em produo h mais de 5 anos; hardware e software obsoletos; siste-
49
2.1 Evoluo
A evoluo de um sistema um termo amplo que cobre todo o tempo entre
uma simples adio de um campo a um banco de dados at a completa
reimplementao de um sistema. Essas atividades de evoluo de um sistema
podem ser divididas em trs categorias, segundo [Weid97]: manuteno, modernizao e substituio. A Figura 1 ilustra como as atividades da evoluo so
aplicadas s diferentes fases do ciclo de vida de um sistema. A linha pontilhada
representa o crescimento das necessidades de um negcio, ao passo que a linha
slida representa a funcionalidade fornecida pelo sistema de informao.
A Manuteno um processo incremental e iterativo em que pequenas modificaes so efetuadas no sistema. Essas modificaes podem indicar correes
de erros ou pequenas melhorias no sistema, e nunca devem indicar grandes
mudanas estruturais.
A Substituio indicada para sistemas que no conseguem se adaptar s
necessidades do negcio e para os quais a modernizao no mais possvel ou
vivel.
A Modernizao envolve mudanas maiores que a manuteno, mas conserva uma poro significativa do sistema. Essas mudanas freqentemente incluem a reestruturao do sistema, melhorias funcionais importantes, ou novos atri-
50
butos de software. A modernizao utilizada quando um sistema legado requer mudanas mais significativas que as possveis com manuteno. O tipo
de modernizao de um sistema legado pode ser definido pelo nvel de entendimento do sistema requerido para suportar os esforos de modernizao [Weid97].
Conhecimento interno da lgica do sistema chamada modernizao whitebox, e a que requer somente o conhecimento das interfaces externas do sistema
chamada modernizao black-box.
2.1.1 Modernizao white-box
A modernizao white-box requer um processo inicial de engenharia reversa
para se entender a operao interna do sistema legado. Componentes do sistema
e seus relacionamentos so identificados e uma representao do sistema em
alto nvel de abstrao produzida [Chik90]. Um entendimento do programa
a principal forma de engenharia reversa usada na modernizao white-box.
Entender o sistema envolve modelar o domnio, extrair informao do cdigo
utilizando mecanismos de extrao apropriados e criar abstraes que ajudam a
entender a estrutura do sistema.
Analisar e entender cdigo antigo so uma tarefa difcil, porque com o tempo
todo sistema torna-se ininteligvel devido ao provvel grande nmero de manutenes efetuadas. Aps o cdigo ser analisado e entendido, a modernizao do
tipo white-box geralmente inclui alguma reestruturao de cdigo ou de sistema. A reestruturao de um software pode ser definida como a transformao
de uma forma de representao para outra, com o mesmo nvel relativo de abstrao, enquanto se preserva o comportamento externo do objetivo do sistema
(funcionalidade e semntica). Essa transformao tipicamente empregada para
se conseguir algum atributo de qualidade para o sistema como manutenibilidade
ou aumento de performance [Chik90].
2.1.2 Modernizao black-box
A modernizao black-box envolve o exame das entradas e sadas de um
sistema legado dentro de um contexto operacional para se entender as interfaces
desse sistema. Adquirir o conhecimento de uma interface de determinado sistema no uma tarefa fcil, mas isso no representa o grau de dificuldade associado tcnica de modernizao black-box. A modernizao black-box
freqentemente baseada em empacotamento. O empacotamento consiste em
envolver o sistema legado com uma camada de software que esconde a complexidade no requerida do sistema antigo e recria uma interface moderna. O
empacotamento utilizado para remover as diferenas entre a interface criada
por um artefato de software e as interfaces requeridas pelas prticas atuais de
integrao. Tradicionalmente, empacotamento uma tarefa de reengenharia, na
qual somente a interface do sistema legado analisada e os cdigos internos do
sistema legado so ignorados. Infelizmente, essa soluo no sempre a ideal, e
freqentemente se lana mo do entendimento interno do cdigo de um sistema
legado, utilizando para isso tcnicas white-box [Plak99].
As tcnicas de modernizao black-box permitem um aproveitamento e
integrao dos sistemas legados com menos esforo e recursos computacionais,
preservando custos e recursos.
51
2.2 Arquitetura
52
53
54
Para ilustrar essa avaliao, vamos supor que uma organizao possua dez
sistemas legados. A qualidade e o valor de negcios de cada um desses sistemas
so avaliados e comparados com outros sistemas, mediante um grfico, que
mostra o valor de negcios relativo e a qualidade do sistema, Figura 4. Podemos
verificar, pelo grfico, que existem quatro grupos de sistemas:
Baixa qualidade, baixo valor de negcios. Manter esses sistemas em
operao ser dispendioso e a taxa de retorno de investimento para
os negcios ser bastante pequena. Esses sistemas so candidatos a
serem descartados.
Baixa qualidade, alto valor de negcios. Esses sistemas esto prestando uma importante contribuio empresa e, assim, no podem
ser descartados. Contudo, sua baixa qualidade significa que os custos operacionais so altos, de modo que so candidatos transformao ou substituio do sistema, se um sistema adequado estiver
disponvel.
Alta qualidade, baixo valor de negcios. So sistemas que no contribuem muito para os negcios, mas cuja manuteno pode no ser
muito dispendiosa. No vale o risco substituir esses sistemas, de modo
que a manuteno normal pode ser continuada ou eles podem ser
descartados.
Alta qualidade, alto valor de negcios. Esses sistemas devem ser
mantidos em operao, mas sua alta qualidade significa que no
necessrio investir na sua transformao ou substituio. Deve-se
continuar com a manuteno normal do sistema.
55
os sistemas utilizados pela empresa com maior influncia sero utilizados naturalmente pela empresa resultante e os outros sistemas podero ser descartados.
Se a gerncia snior em uma organizao tomar a deciso de migrar para uma
nova plataforma de hardware, ento isso poder exigir que aplicaes sejam
substitudas. Se no houver nenhum oramento disponvel para a transformao
do sistema em um determinado ano, ento a manuteno do sistema poder
continuar, embora isso venha a resultar em custos de longo prazo mais elevados.
imprescindvel para uma organizao efetuar uma correta avaliao de seus
sistemas legados. Caso essa avaliao seja efetuada sem critrio, as decises
tomadas podero representar perdas significativas de dinheiro e recursos.
56
57
Object System
via wrapping
Legacy Application
Legacy API
58
empresas que desenvolvem os ORBs necessitam para que os seus objetos possam interagir uns com os outros de maneira consistente. Para um entendimento
da estrutura da arquitetura CORBA necessrio conhecer e entender os seguintes componentes:
Object Request Broker, que permite aos objetos uma transparncia
no envio e recebimento de solicitaes e respostas em um ambiente
distribudo. Ele fundamental para a construo de aplicaes de
objetos distribudos e para interoperabilidades entre aplicaes em
um ambiente hetero e homogneo.
Servios de Objeto, uma coleo de servios (interfaces e objetos)
que fornece funes bsicas para uso e implementao de objetos.
Os servios so necessrios para a construo de qualquer aplicao
distribuda e so sempre independentes dos domnios das aplicaes. Como exemplo, o servio de ciclo de vida define convenes
para criar, apagar, copiar e mover objetos. Ele no dita como os objetos so implementados em uma aplicao.
Servios Comuns, um conjunto de servios que as aplicaes podero compartilhar, mas os quais no so fundamentais como os servios de objetos. Por exemplo, um gerenciamento do sistema ou um
servio de e-mail podem ser classificados como servios comuns.
Objetos de Aplicao, que so os produtos que rodam em cima da
arquitetura CORBA. Objetos de aplicao correspondem noo
tradicional de aplicaes, e eles no so padronizados pelo OMG.
No nosso contexto um objeto de aplicao o sistema legado.
59
legado utilizando EJB separar a interface do sistema legado em mdulos consistindo em unidades lgicas. O grau de dificuldade em dividir o sistema legado
em funes discretas ir variar dependendo do grau em que essas separaes
foram definidas nas interfaces do sistema legado e quais interfaces novas devem
ser construdas. Embora uma abordagem black-box seja mais indicada, uma
documentao e interface pobre podem tornar necessria uma verificao mais
detalhada do sistema legado para uma melhor compreenso do mesmo. O prximo passo construir um nico ponto de contato para o sistema legado. uma
boa idia centralizar toda a comunicao em um nico software. O mtodo de
comunicao usado por este software depende de cada situao. Opes para a
comunicao entre o ponto de contato e o sistema legado incluem RMI Remote
Method Invocation (protocolo exclusivo para comunicao entre objetos Java)
sobre IIOP Internet Inter-Orb Protocol (protocolo que permite a execuo do
padro CORBA sobre o protocolo Web), sockets (software para conexo ao protocolo de rede), ou mesmo um middleware (um programa capaz de permitir a
comunicao entre dois sistemas heterogneos) orientado a mensagem (MOM
Message Oriented Middleware), que possui a vantagem de separar o servidor
EJB do sistema legado e permitir comunicao assncrona. Este ponto nico de
contato pode ser implementado como um bean (componente), chamado
adaptador, ou um service broker, um componente de software externo ao servidor EJB. Colocar o ponto de contato dentro ou fora do servidor depende principalmente do mtodo de comunicao escolhido e de algumas restries de segurana. Por exemplo, se for necessrio criar uma nova thread, que so blocos
de cdigos do mesmo programa executados independe e concorrentemente, ou
verificar um socket, o ponto de contato deve estar fora do servidor de aplicao
porque a especificao EJB no permite o multithread de JavaBeans (execuo
simultnea de pedaos de cdigo JavaBeans) ou a escuta de sockets [Come00].
A etapa final no empacotamento do sistema legado implementar um componente empacotador para cada mdulo do sistema legado. Na Figura 9 esse
empacotador mostrado como Bean 2. Esses componentes fazem requisies
ao sistema legado utilizando um ponto de contato nico, de um modo similar ao
empacotamento de objetos. Existem vrias vantagens na abordagem de
empacotamento de sistemas legados utilizando-se componentes. Primeiro, com
um esforo relativamente limitado, as vantagens dos sistemas baseados em componentes so fornecidas. Por exemplo, pode-se construir novos JavaBeans que
usem os empacotadores de modos no-previstos, aumentando a flexibilidade do
sistema. Segundo, os empacotadores so Enterprise JavaBeans e podem ser totalmente integrados com todos os servios e facilidades gerenciais includos no
servidor de aplicao. Finalmente, o empacotamento das lgicas de negcio
legadas permitem a criao de um roteiro para a substituio do sistema legado
incrementalmente. Aps empacotar a funcionalidade do sistema legado, podese reimplementar os empacotadores um por vez (Bean 1 na Figura 9) , sem
necessitar uma substituio total do sistema. Isso possvel devido ao sistema e
os clientes no experimentarem nenhuma interrupo, enquanto os
empacotadores reimplementados mantm as mesmas interfaces fornecidas pelo
empacotador anterior. Desse modo, possvel a substituio completa do sistema antigo [Come00].
60
61
5. UM EXEMPLO PRTICO
Para exemplificar, vamos criar uma interface Web simples para um determinado processo de um sistema legado operacional em uma empresa atacadista. A
empresa, aps anlises e estudos, optou por manter seu sistema legado, desenvolvido na linguagem Clipper, executado sob o ambiente Windows. Devido a
novas demandas, surgiu a necessidade de modernizar determinado processo de
consulta a uma de suas informaes estratgicas: as vendas anuais de cada vendedor, Tabela 1. Para disponibilizar essa informao a todos os vendedores, e de
forma menos custosa possvel, a Internet foi escolhida como meio.
Tabela 1 A base legada.
62
Como o ambiente Windows, a tecnologia ODBC (drives de acesso a dados), proprietria da empresa Microsoft Corporation, ser a utilizada para o acesso
aos dados legados. A Figura 11 ilustra a criao e configurao de um driver
ODBC para acesso ao arquivo DBF que contm os dados que sero utilizados
pela interface Web.
Passo 2: Criar a classe JavaBean responsvel pela conexo base legada
Um JavaBean ser criado para prover o acesso propriamente dito aos dados
da base legada. O cdigo do mesmo listado nas Figuras 12 e 13. No cdigo
mostrado, identificam-se alguns atributos e mtodos notveis:
Atributo dbUrl: Este o endereo do banco de dados. Sua estrutura
(jdbc:odbc:Sistema_Legado) indica:
JDBC: a tecnologia Java (uma API) para acesso a base de dados.
ODBC: o subprotocolo usado. Como o ambiente Windows, e
ODBC tambm um conjunto de drivers para acesso aos dados, o
que se usa neste caso uma ponte (bridge) JDBC<->ODBC.
63
64
65
66
6. CONCLUSO
Os sistemas legados existem e sempre existiro, medida que as tecnologias
vigentes tornam-se obsoletas ao longo de um tempo cada vez mais curto. O
simples descarte destes sistemas incorre em prejuzos financeiros e estruturais
para as organizaes: o desenvolvimento de um sistema complexo envolve um
grande nmero de recursos, e estes recursos geram gastos que precisam ser
justificados e transformados em benefcios para a organizao. No obstante, a
substituio do sistema legado por um novo sistema, tecnologicamente atualizado, promove tambm certos transtornos que devem ser avaliados, como o prazo
previsto para a entrada em produo e a sua total operacionalidade, ou a garantia de que o mesmo possuir a mesma funcionalidade fornecida pelo sistema
legado antigo, no nvel das regras de negcio, regras estas que nem sempre
esto implcitas em manuais ou documentao.
O objetivo deste artigo foi demonstrar mtodos e tecnologias existentes no
presente momento para o aproveitamento dos referidos sistemas. Inicialmente, a
pretenso foi fornecer informaes sobre a evoluo dos sistemas e uma apresentao e definio detalhada de sistemas legados, e posteriormente, a preocupao foi descrever mecanismos de avaliao de um sistema legado, para que a
definio sobre a modernizao ou no de um determinado sistema seja feita
com grande critrio. A partir da deciso de modernizar o sistema legado, foram apresentadas, introdutoriamente, abordagens e tecnologias para a integrao
do mesmo, com tecnologia ultrapassada, aos novos sistemas, com tecnologia
atualizada. No foi objetivo deste artigo apontar determinada tecnologia ou abordagem como tima, e sim fornecer subsdios, a partir da explanao das
tecnologias, para uma posterior anlise da melhor abordagem e tecnologia
indicada para cada caso. No existem regras literais definidas para a escolha da
abordagem ou tecnologia a ser utilizada em determinado empacotamento de
um sistema legado. Ao longo de experincias na utilizao de tcnicas e
metodologias dever ser criada uma postura crtica que poder inferir na escolha do uso das tcnicas e mtodos aqui apresentados.
Notoriamente, as abordagens explanadas utilizam-se de objetos distribudos.
Em conjunto com os protocolos da Internet, objetos distribudos so a grande
aposta para a integrao dos sistemas, incluindo os sistemas legados. A grande
ironia que, com o advento da Internet, e a necessidade de utilizao dos sistemas via esse meio, criou-se tambm a necessidade de integrar os sistemas
corporativos antigos aos novos conceitos da Internet. Interfaces novas, sistemas antigos, conceitos legados, como processamento centralizado e terminais.
Portanto, podemos concluir que no existe uma forma ou mtodo geral que
defina qual abordagem ou tecnologia utilizar. Cada caso deve ser estudado, e
deve-se aproveitar o melhor de cada tecnologia disponvel para se efetuar a
integrao. Cada sistema, complexo em sua grande maioria, ir fornecer pistas
para a sua integrao e o uso de vrias tecnologias e abordagens tornar-se-
comum durante um projeto de integrao de sistemas legados.
Vrias organizaes como OMG (Object Management Group), W3C (World
Wide Web Consortium) e WS-I (The Web Services Interoperability Organization)
esto trabalhando para criar uma padronizao para a integrao de sistemas
67
distribudos e heterogneos, o que ir tornar mais fcil a integrao dos mesmos. A tendncia verificada o aumento crescente da facilidade de integrao,
com a disponibilidade cada vez maior de padres e ferramentas para auxiliar
esta tarefa. Com o passar do tempo e a maturidade das tcnicas, ferramentas e
padres, os sistemas legados tendem a desaparecer, transformando-se em objetos funcionais distribudos pelas redes das suas respectivas organizaes.
7. GLOSSRIO
API sigla para Application Programming Interface, ou Interface de Programao de Aplicativos. um conjunto de rotinas e funes pr-compiladas e
prontas (normalmente na forma de dll s) que realizam uma tarefa comum. Estas
interfaces foram concebidas para padronizar recursos do sistema operacional
utilizados pelos aplicativos. Entre as API s mais utilizadas, temos a API do
Windows, de correio eletrnico (MAPI) e de vinculao de objetos (OLE).
Bean (Java Bean) um componente reutilizvel de software que pode ser
manipulado visualmente por qualquer ferramenta de desenvolvimento de aplicaes. Possui mtodos, propriedades e eventos.
Broadcast Traduo de radio difuso. Em uma rede de computadores,
broadcast significa um aviso enviado simultaneamente para todos os micros da rede.
Clipper Linguagem de programao criada na dcada de 80, muito popular no brasil nos fins da dcada de 80 e meados da dcada de 90. Sua principal
caracterstica a facilidade de programao para o desenvolvimento de aplicaes com banco de dados em um dialeto xbase e no formato DBF.
CODASYL Conference on Data Systems Languages Uma organizao
fundada em 1957 pelo Departamento de Defesa dos Estados Unidos. Sua misso foi desenvolver linguagens de programao para computadores.
DBF Data base file: Extenso de arquivos de dados criados por ferramentas
xbase, como o FoxPro DOS e dbase III Plus.
HTTP Hyper Text Transfer Protocol: Protocolo de Transferncia de Hiper
Texto. Protocolo desenvolvido originalmente para transferir pginas HTML. As
pginas Web so acessadas usando-se este protocolo.
IIOP Internet Inter-ORB Protocol: Um protocolo desenvolvido pelo OMG
- Object Management Group (OMG) para permitir solues CORBA sobre a
World Wide Web. IIOP permite que browsers e servidores web utilizem estruturas e objetos mais complexos, ao contrrio do protocolo HTTP, que suporta
somente texto
Middleware Um programa que permite que dois sistemas diferentes possam se comunicar. Por exemplo, permitir que um determinado programa, capaz
de acessar um determinado banco de dados, possa acessar bancos de dados em
outros formatos. Outro exemplo a possibilidade de permitir que servidores de
diferentes plataformas trabalhem em conjunto.
Multithread Capacidade de gerncia e execuo de vrias threads (ver
thread). Define uma caracterstica de um sistema operacional.
ODBC Open DataBase Connectivity: Um mtodo de acesso a banco de
dados desenvolvido pela empresa MicroSoft.
68
KEYWORDS
Software Engineering Information Systems Legacy Systems Distributed
Objects
ABSTRACT
This papers aims at introducing the concept of legacy systems and the available
techniques and methods for integrating them into new systems developed under
new technologies, thus increasing their lifetime and usefulness. Legacy systems
play a very important role in the information infrastructure of organizations,
both from a strategic and economic points of view, thus making them worth of
attention and development of new techniques for their seamless integration to
new applications. A simple case study was developed and is presented in the
paper, to demonstrate one of those integration techniques.
8. REFERNCIAS BIBLIOGRFICAS
[Ambl98] Ambler, Scott W.. Anlise e Projeto Orientados a Objeto, 88-371, IBPI Press, 1998
[Asma00] Asman, Paul. Legacy Wrapping, Federal Reserve Bank of New York, November
2000
[Brod95] Brodie, M; Stonebraker, M .. Migrating Legacy Systems: Gateways, Interfaces and
the Incremental Approach, Morgan Kaufmann Publishers, Inc. USA, 1995.
[Chik90] Chikofsky, Elliot J. & Cross II, J.H. Reverse Engineer and Design Recovery: A
69
SOBRE OS AUTORES
HERBERT LAROCA MENDES PINTO
Analista Desenvolvimento de Sistemas
Servio Federal de Processamento de Dados - SERPRO.
JOS LUS BRAGA
Professor Titular do Departamento de Informtica da Universidade Federal
de Viosa
Doutor em Informtica pela PUC-Rio
Ps-Doutor em Tecnologias da Informao pela University of Florida
reas de Interesse: ontologias, sistemas de informao cooperativos, engenharia de
software, inteligncia computacional