Vous êtes sur la page 1sur 79

FERNANDO HADAD ZAIDAN

SISTEMAS DE INFORMAÇÕES EMPRESARIAIS:

Integração de sistemas interorganizacionais utilizando troca de documentos

eletrônicos via XML

BELO HORIZONTE

2006

FERNANDO HADAD ZAIDAN

SISTEMAS DE INFORMAÇÕES EMPRESARIAIS:

Integração de sistemas interorganizacionais utilizando troca de documentos

eletrônicos via XML

Monografia de conclusão de curso apresentada à disciplina Trabalho de Conclusão de Curso da Universidade FUMEC como requisito parcial para obtenção do título de Bacharel em Ciência da Computação, sob orientação dos Professores Doutores Roberlei Panasiewicz e George Leal Jamil.

BELO HORIZONTE

2006

FERNANDO HADAD ZAIDAN

SISTEMAS DE INFORMAÇÕES EMPRESARIAIS:

Integração de sistemas interorganizacionais utilizando troca de documentos

eletrônicos via XML

Monografia de conclusão de curso submetida à Universidade FUMEC como requisito parcial para obtenção do título de Bacharel em Ciência da Computação e aprovada pela seguinte banca examinadora:

Professor Doutor Roberlei Panasiewicz (Professor TCC)

Universidade Fumec

Professor Doutor George Leal Jamil (Orientador)

Universidade Fumec

Belo Horizonte, 04 de Dezembro de 2006

À minha esposa Barruba e aos meus filhos Tiago e Daniel, pela paciência nos momentos difíceis, pelo companheirismo, pela vibração e pelo amor. À minha mãe, Penha, por sempre confiar e me apoiar. Ao meu pai, José Zaidan, pelo grande exemplo de vida que foi.

Amo vocês.

AGRADECIMENTOS

Agradeço a Deus, por sempre me guiar e iluminar, pelo refúgio e pela fortaleza, responsável por tudo da minha vida.

Ao Prof. Jamil, mais que orientador, me mostrando os caminhos, me dirigindo para a realização dos sonhos.

Ao Prof. Roberlei, pela paciência e sugestões.

Ao Prof. Marden, pelo desprendimento e pelo novo rumo para o meu futuro.

Ao Prof. Baroni, que no momento da definição da escolha de um novo curso, sua presteza foi imprescindível para minha vinda para a FUMEC.

Ao Prof. Marcos Antônio Nunes, pelas valiosas críticas.

Aos demais professores, que sempre tiveram disposição para sanar as minhas dúvidas.

Aos meus irmãos, em troca do convívio para os meus estudos.

Aos colegas, na luta da caminhada, em busca de um objetivo comum.

A todos, que direta ou indiretamente contribuíram para a realização deste trabalho.

Educar-se é fazer uma imagem ideal de si e pôr-se a esculpi-la em si mesmo na dura labuta da vida, a fim de unir-se o sonhado e o realizado.

João Batista Libânio

A auto-satisfação é inimiga do estudo. Se queremos realmente aprender alguma coisa devemos começar por libertar-nos dela. Com relação a nós mesmos, devemos ser “insaciáveis na vontade de aprender” e com relação aos outros “insaciáveis em ensinar”.

Mao Tsé-Tung

RESUMO

A carência de integração de sistemas de informação é crescente entre as empresas. Aumentam o número de plataformas e arquiteturas diferentes. Os ambientes estão cada vez mais heterogêneos e difíceis de integrar. A XML, e todas as tecnologias que a circunda, surgiu como facilitadores, promovendo um padrão de integração na troca de documentos eletrônicos interorganizacionais, de forma textual, simples, estruturada, extensível, flexível, semanticamente rica e com uma segurança adequada. O projeto da nota fiscal eletrônica, nascendo nos dias atuais, não poderia deixar de utilizar estas tecnologias. A XML é totalmente aderente a este cenário. O resultado será a redução de custos e a aceleração da diminuição do consumo de papel nas organizações.

PALAVRAS CHAVES: Sistemas de informação interoganizacionais; Integração de

sistemas; Troca de documentos eletrônicos; XML.

LISTA DE ABREVIATURAS

SAX - Simple API for XML B2B - Business to business (Negócios entre empresas) B2C - Business to consumers (Negócios entre empresas e consumidores) BI - Business intelligence BPM - Business process modeling (Modelagem de processos de negócio) BSD - Business System Domain (Domínio de sistema de negócios) COTS - Commercial off-the-shelf (Sistemas pacotes) CRM - Customer relationship management (Gerenciamento das relações com clientes) DOM - Document Object Model DTD - Document Type Definition (definição de tipo de documento) EAI - Enterprise application integration (Integração de aplicações corporativas) EDI - Electronic data interchange (troca de dados eletrônicos) EFT - Eletronic funds transfer (Transferência eletrônica de fundos) ERP - Enterprise resouce planning (Sistemas de planejamento de recursos empresariais) HTML - Hypertext markup language (Linguagem de marcação de hipertexto) HTTP - Hyper text markup language (Linguagem de marcação de hiper texto) IA - Inteligência artificial IOS - Interorganizational information system (Sistemas de informações interorganizacionais) ISO - International Organization for Standardization (Organização internacional para padronização) Nfe - Nota fiscal eletrônica RH - Recursos humanos SAD - Sistema de apoio à decisão SAE - Sistema de apoio ao executivo SGC - Sistema de gestão do conhecimento SGML - Standard Generalized Markup Language (Linguagem padrão de marcações genéricas)

SIA - Sistema de inteligência artificial SIG - Sistema de informações gerenciais SIM - Sistema de informação de marketing SOA - Service-oriented architecture (arquitetura orientada a serviços). SOAP - Simple object access protocol SPT - Sistema de processamento de transações SQL - Structure Query Languange TI - Tecnologia da informação TCP/IP - Transfer control protocol/Internet Protocol W3C - World wide web consortium (consórcio da www) WSDL- Web services description language (linguagem de definição de serviços web) XML - Extensible markup language (linguagem de marcação extendida) XSL - Extensible stylesheet language (linguagem de estilo extendida) XSLFO – Objetos de formatação XSL XSLT - XSL transformation (transformação XSL) UDDI - Universal description, discovery and integration - descrição, descoberta e integração universais URI - Uniform Resource Identifier

LISTA DE FIGURAS

Figura 01: Ciclo de vida dos sistemas de informação

21

Figura 02: Níveis organizacionais, áreas funcionais e quem os sistemas referem

23

Figura 03: Modelo de armazenamento de dados corporativos

39

Figura 04: Cenário da integração corporativa

43

Figura 05: Exemplo de um documento XML

50

Figura 06: Exemplo de uma DTD

51

Figura 07: Exemplo de um XML Schema

52

Figura 08: Exemplo de um documento XML utilizando XInclude

55

Figura 09: Exemplo de um documento DOM

57

Figura 10: Exemplo de WSDL

61

Figura 11: Tríade de tecnologias que compõe os web services

62

Figura 12: Esquema XML de validação do cabeçalho da mensagem de Web Service

 

67

Figura 13: Trecho de um documento XML com a NFe da Souza Cruz

68

LISTA DE TABELAS

Tabela 01: Resumo dos padrões técnicos para a NFe

69

Tabela 02: Arquivo texto txt versus documento XML

71

SUMÁRIO

INTRODUÇÃO

13

CAPÍTULO I - SISTEMAS DE INFORMAÇÕES EMPRESARIAS

16

1.1.

CONCEITOS INTRODUTÓRIOS

16

a.

Dado, Informação e Conhecimento 16

b.

Sistema

17

c.

Sistemas de Informação 17

d.

1.2.

Sistemas de Informação Empresariais

SISTEMAS DE INFORMAÇÃO PARA UMA META ESTRATÉGICA DA

18

EMPRESA 19

1.3.

CICLO DE VIDA DOS SISTEMAS DE INFORMAÇÕES 20

1.4.

NÍVEIS ORGANIZACIONAIS

21

a.

Sistemas do Nível Operacional

21

b.

Sistemas do Nível de Conhecimento 22

c.

Sistemas do Nível Gerencial

22

d.

Sistemas do Nível Estratégico 23

1.5.

TIPOS DE SISTEMAS DE INFORMAÇÕES

23

a.

SPT

24

b.

SGC 24

c.

SIG

25

d.

SAD

25

e.

Sistemas IA

26

1.6.

SISTEMAS FUNCIONAIS, SISTEMAS DE INFORMAÇÃO E SISTEMAS

INTEGRADOS

 

27

a.

Sistemas

Funcionais

27

b.

Sistemas de Informação 28

c.

Sistemas Integrados 29

1.7.

SISTEMAS DE INFORMAÇÕES INTERORGANIZACIONAIS 30

CAPITULO II - INTEGRAÇÃO DE SISTEMAS DE INFORMAÇÃO

2.1. SISTEMAS LEGADOS E COTS

2.2. EAI - INTEGRAÇÃO DE APLICAÇÕES CORPORATIVAS

INTEGRAÇÃO

2.4. DISCIPLINAS DO CONHECIMENTO PARA INTEGRAÇÃO

2.3. ESTRATÉGIA DE

2.5. MODELOS DE INTEGRAÇÃO

2.6. BSD – DOMÍNIO DE SISTEMA DE NEGÓCIO

2.7. UM CENÁRIO PARA INTEGRAÇÃO CORPORATIVA

2.8. INTERCÂMBIO DE DADOS

CAPITULO III – O MUNDO XML

3.1. HISTÓRIA DA XML

33

33

34

35

37

38

40

42

44

45

45

3.3.

ALGUNS CONCEITOS DA XML

48

3.4.

A VALIDAÇÃO DE DOCUMENTOS XML

50

a.

DTD 51

b.

XML Schema 51

3.5.

O QUE HÁ EM TORNO DA XML

53

a.

XPath 53

b.

XPointer 54

c.

XInclude

54

d.

XQuery

55

e.

XSL

56

f.

APIS XML 56

g.

SAX

56

h.

DOM 57

CAPÍTULO IV – TROCA DE DOCUMENTOS ELETRÔNICOS VIA XML

58

4.1.

CONCEITOS INICIAIS DAS ARQUITETURAS DE COMUNICAÇÃO 58

a.

Web Services

58

b.

SOAP

59

c.

WSDL

60

d.

UDDI 61

e.

SOA 61

f.

BPM

62

4.2.

CONTEXTO PARA TROCA DE DOCUMENTOS 63

4.3.

TROCA DE DOCUMENTOS ELETRÔNICOS COM XML 66

4.4.

O FIM DO PAPEL UTILIZADO NA TROCA DE DOCUMENTOS 69

4.5.

OUTRAS TECNOLOGIAS PARA TROCA DE DOCUMENTOS

ELETRÔNICOS

70

a.

Arquivos Texto TXT (flat file)

70

b.

EDI

72

c.

ebXML

72

4.6.

TÉCNICAS DE SEGURANÇA NA TROCA DE DOCUMENTOS

ELETRÔNICOS VIA XML

73

a. XML Signature 73

b. XML Encryptron 74

CONCLUSÃO

75

BIBLIOGRAFIA

76

13

INTRODUÇÃO

De um modo geral, as empresas de todo o mundo necessitam de sistemas de

informações, usando ou não tecnologia da informação. Do menor negócio, até a

mais diversificada multinacional, os dados precisam ser alimentados, processados, armazenados e apresentados, tornando-se informações confiáveis, para atingir os objetivos estabelecidos. São visíveis os resultados positivos: produtos de alta qualidade, serviços entregues nos prazos, precisão no armazenamento das informações, redução de custos, pequena carga de trabalho manual, aumento da produtividade, tomadas de decisões mais direcionadas e acertadas.

As empresas não vivem isoladas, elas precisam trocar informações. A

integração dos sistemas interorganizacionais é o grande desafio. Os padrões são

diferentes, as tecnologias são criadas, utilizadas e às vezes, caem no desuso. Nem sempre os sistemas conseguem se comunicar. A integração envolve a transformação dos dados. Os sistemas legados, ainda em grande uso nas empresas, necessitam trocar informações com os novos sistemas, com arquitetura diferente. As aplicações COTS (commercial off-the-shelf – sistemas pacotes) também necessitam de integração. Todo este cenário de carência de integração, poderá ser contemplado com a troca de documentos eletrônicos. O intercâmbio de dados em um ambiente EAI (enterprise application integration - integração de aplicações empresariais), na mesma empresa ou interorganizacionais, tem hoje muitas facilidades, dentre elas o uso da XML (extensible markup language - linguagem de marcação extensível), que se tornou a sintaxe preferida para troca de mensagens corporativas.

O tema escolhido para este estudo é Sistemas de Informações

Empresariais: Integração de sistemas interorganizacionais utilizando troca de documentos eletrônicos via XML. Os sistemas de informação podem contribuir para a solução de vários problemas empresariais. Porém a manipulação de um grande volume de informações, a complexidade nos processamentos, a convivência com sistemas não integrados e a falta de padrões entre os clientes e fornecedores envolvidos, torna- se um complicador.

14

A XML atende a uma falha que os tradicionais arquivos textos (txt) têm: não

indicar o significado dos campos, tampouco mostrar se os dados fazem parte de

uma ou mais tabelas. Com isso, a XML é capaz de representar os dados de uma maneira muito mais rica e estruturada.

A XML é um padrão aberto. Foi recomendada em 1998 pelo W3C (world wide

web consortium - consórcio da www) . No início, achava-se que a XML iria substituir

o HTML (hyper text markup language - linguagem de formatação de hipertexto). Isto ficou claro, quando se percebeu que a XML não era para o desenvolvimento de páginas da internet. O grande impulso para aceitação da XML, foi a adoção por grandes do setor, como a IBM, Microsoft, Sun e SAP.

A proposta básica da XML é estruturar documentos de forma textual, com

uma simplicidade sintática e forte semântica contida na sua hierarquia. Sua aplicação à troca de dados, e a interface com os usuários está bem definida. Existe

a possibilidade de implementar tecnologias de segurança nas trocas de documentos. A população mundial cresce em ritmo acelerado, e junto com ela, a quantidade e diversidade nos negócios, em especial os negócios envolvendo tecnologia. A relevância deste estudo consiste em apresentar para as organizações a importância dos sistemas de informações, bem como os sistemas interorganizacionais. A troca de documentos deixou de ser um problema interno das organizações, mas uma demanda de todo o mercado. Observa-se um retardo na eliminação dos papéis como troca de informações entre organizações. Existe um grande número de re-trabalho, ocasionado pela redundância na digitação dos dados. No início da era da informática, dizia-se que haveria redução do consumo de papel. Aconteceu o contrário, o consumo aumentou nos últimos anos. Será demonstrado para a sociedade que, com o aumento da troca de documentos eletrônicos interorganizacionais, poderá ser reduzido o uso do papel. É uma realidade que grande número de empresas tem a gestão ambiental como parte dos objetivos estratégicos. Elas desejam dar sua contribuição para uma melhor qualidade de vida do nosso planeta. A diminuição do uso do papel trará uma iniciativa de prevenção do meio ambiente. Embora as empresas necessitem projetar sistemas diferentes para atender a diferentes níveis e funções empresariais, elas estão enxergando as vantagens da integração dentro delas, e entre elas. Esta integração, se utilizada inadequadamente, poderá ser bastante complexa e com altos gastos. Entretanto,

15

usando tecnologias já afirmadas, como XML, e com a internet, as vantagens poderão ser relevantes. Desta forma, o objetivo geral desta monografia é demonstrar como pode ser feita a troca de documentos eletrônicos, via XML, na integração de sistemas de informação interorganizacionais. A metodologia a ser utilizada será constituída da pesquisa teórica. Constitui- se de um levantamento bibliográfico em livros, revistas, dissertações, artigos e sites da Internet, sobre a temática escolhida. Bem como os pressupostos teóricos apresentados, que sustentarão os argumentos e conclusões. Será realizada uma escolha detalhada da bibliografia básica, para dar suporte teórico e conceitual ao estudo. Será levada em conta a diversidade das obras, para analisar diferentes visões do assunto. No primeiro capítulo serão mostrados os conceitos introdutórios e serão expostas as visões sobre os sistemas de informações nos níveis organizacionais, os tipos de sistemas de informações, e os sistemas interorganizacionais. No segundo capítulo serão expostos os conceitos de integração de sistemas de informação. Será mostrado como os diversos aplicativos podem interoperar, ou seja, trocar dados. Os diversos modelos de integração serão expostos e como os padrões são importantes no momento da integração. Será mostrado um cenário para integração corporativa. No terceiro capítulo entraremos no mundo XML. Veremos a história da XML e as principais utilizações desta tecnologia. Mostraremos que a XML necessita de outras tecnologias que a completa. Será exposto como a XML é semanticamente muito mais rica do que a maioria dos os tipos de documentos textuais. No quarto e último capítulo será mostrado uma introdução à arquitetura de comunicação. Será exposto como poderá ser feita a integração de sistemas utilizando a XML, e, num contexto atual para troca de documento interorganizacionais utilizando XML, a nota fiscal eletrônica, como são aplicados todos os conceitos que serão vistos neste estudo. A segurança tornou-se um assunto importante na computação, principalmente quando envolve a troca de dados e entre organizações, com isso, serão avaliadas as técnicas de segurança da XML.

16

CAPÍTULO I - SISTEMAS DE INFORMAÇÕES EMPRESARIAS

1.1. CONCEITOS INTRODUTÓRIOS

a. Dado, Informação e Conhecimento

Para conceituação inicial, entende-se por dado um padrão, a menor unidade possível. Uma letra, número ou dígitos, que isoladamente não tem nenhum significado claro. Não consegue nos informar nada. A análise de um dado não nos leva a nenhuma conclusão. De acordo com Davenport e Prusak (1998, p. 3):

Dados descrevem apenas parte daquilo que aconteceu; não fornecem julgamento nem interpretação e nem qualquer base sustentável para a tomada de ação. Embora a matéria-prima do processo decisório possa incluir dados, eles não podem dizer o que fazer. Dados nada dizem sobre a

própria importância ou irrelevância. Porém, os dados são importantes para

as organizações – em grande medida certamente, porque são matéria-prima

essencial para a criação da informação.

A informação é o dado trabalhado, tratado, inserido num contexto. É um conjunto de dados que tem algum significado. “Pense em informação como dados que fazem diferença”. (DAVENPORT; PRUZAK, 1998, p. 4). Esclarecendo melhor, Jamil (2001, p. 161):

A informação, portanto, é algo mais trabalhado e trabalhoso. Envolve

usualmente diversas medições e obtenção de dados associados – como o do ambiente a que se aplicam as medições feitas. A informação terá um caráter menos restrito que o dado, posto que podemos estabelecer critérios variados de coleta, conversão e armazenamento para a mesma, envolvendo como já dissemos, um conjunto de dados. Desta forma surgem trabalhos de conversão, comparação e padronização para o seu uso.

O conhecimento é a capacidade de interpretar. Pode fazer sentido para uns, e para outros não. Quando a informação é trabalhada por pessoas e pelos recursos computacionais, pode gerar cenários, simulações e oportunidades. (REZENDE; ABREU, 2003). Segundo Davenport e Prusak (1998, p. 3):

O conhecimento deriva da informação da mesma forma que a informação

deriva de dados. Para que a informação se transforme em conhecimento, os

17

seres humanos precisam fazer virtualmente todo o trabalho. Tal transformação ocorre através de palavras iniciadas com C tais como as seguintes: Comparação: de que forma as informações relativas a esta situação se comparam a outras situações conhecidas? Conseqüências: que implicações estas informações trazem para as decisões e tomadas de ação? Conexões: quais as relações deste novo conhecimento com o conhecimento já acumulado? Conversação: o que as outras pessoas pensam desta informação?

Tomemos um exemplo: a taxa de juros é de 0,5% (dado). Ainda não chegamos a nenhuma conclusão. Se dissermos que 0,5% é a taxa de juros do Brasil, no mês de agosto de 2006, estamos inserindo o dado num contexto, e já nos traz algum significado (informação). Porém, se complementarmos dizendo que esta taxa de juros é a mais baixa os últimos 10 anos, estamos fazendo uma interpretação (conhecimento).

b. Sistema

Atribui-se a sistema, um conjunto de partes que estão constantemente interagindo e integrando, sempre com o propósito de atingirem objetivos, e alcançar resultados. (REZENDE; ABREU, 2003). Nenhum sistema sozinho pode fornecer todas as informações que uma empresa necessita. Os sistemas formam um todo unificado. Eles recebem insumos, e como trabalham em um propósito comum, seus componentes inter-relacionados produzirão resultados através de um processo organizado de transformação. K. Laudon e J. Laudon (2004) nos explicam que estes sistemas podem contribuir para a solução de vários problemas empresarias, independente do seu tipo ou do seu uso. É bastante difícil termos sistemas que não gere algum tipo de informação.

c. Sistemas de Informação

De um modo geral, as empresas de todo o mundo necessitam de sistemas de informação, usando ou não a tecnologia da informação. Os sistemas de informação

18

são para facilitar a gestão das empresas. São relatórios, relato de processos, conjunto de procedimento e normas da empresa, que geram informação. Os sistemas de informação utilizando tecnologia da informação são um conjunto de telas e relatórios, que através de recursos de processamento de dados podem gerar informações para clientes, fornecedores e usuários, utilizando um hardware, um software, procedimentos e pessoas.

d. Sistemas de Informação Empresariais

Nos sistemas de informação empresariais, está implícito o uso de tecnologia da informação. Pode-se definir como o processo de entrada dos dados, a

transformação, o armazenamento e geração de informações. Darão o alicerce para a área administrativa, sempre objetivando resultados e a tomada de decisões. Eles podem ser subdividido em sub-sistemas. Os sistemas de informações empresariais têm o foco para o principal negócio da organização, por exemplo, numa indústria de automóveis, eles estarão direcionados ao processo de fabricação, gerando produtividade, qualidade e competitividade. Segundo Rezende e Abreu (2003), os atuais sistemas de informação têm alguns pontos em comum, independente do negócio da empresa:

o

lidar com grande volume de informação;

o

processamentos complexos;

o

clientes, usuários e fornecedores em grande número;

o

interligação de diversas tecnologias;

o

suporte a tomada de decisões empresariais;

o auxílio na qualidade, produtividade e competitividade organizacional. Como benefícios que as empresas procuram através dos sistemas de informação, podemos citar:

o

auxílio no suporte à tomada de decisão;

o

valor agregado nos produtos, bens e serviços;

o

vantagens competitivas;

o

produtos de melhor qualidade;

o

oportunidade nos negócios;

19

o

aumento da rentabilidade;

o

mais precisão nas informações, ocasionando menos erros;

o

sistemas mais eficientes e com maior eficácia;

o

carga de trabalho reduzida;

o

diminuição de desperdícios, gerando menos custos.

1.2. SISTEMAS DE INFORMAÇÃO PARA UMA META ESTRATÉGICA DA EMPRESA

A existência de um sistema de informação deve ser motivada por uma demanda de uma necessidade de uma organização. A partir da meta estratégica 1 é que poderemos iniciar o processo de desenvolvimento de um sistema. Precisamos saber claramente quais os benefícios estratégicos serão contemplados com a implantação de um sistema. Confirmando tal fato, citando Jamil (2006, p. 6):

Em Kearns e Lederer (2003) verifica-se a observação sobre o ‘alinhamento estratégico da tecnologia da informação’, a partir do fato que a computação proveria recursos fundamentais para a elaboração de estratégias empresariais, incluindo aí tanto o provimento de infra-estrutura de hardware e conectividade, quanto o projeto de sistemas de informações, no caso justificando uma linha de estudo interdisciplinar como a defendida neste texto. Concluindo, cita-se a contribuição de Tavares (2000) ao analisar a importância dos sistemas da informação na própria construção da ‘administração estratégica’, que compreende tanto o planejamento quanto a execução acompanhada e revisão sistêmica da estratégia empresarial. Tais idéias são discutidas também por Kroll, Parnell e Wright (2000), chamando adicional atenção para a relevância da formação do conhecimento nas decisões de cunho estratégico e a orientação na formulação dos planos táticos, que leva a apreciação a ser desenvolvida a seguir, para outras áreas de estudo interdisciplinares.

As metas estratégicas são baseadas em números, numa base dados bem definida. Tomemos um exemplo: num prazo de um ano, pretende-se aumentar a lucratividade de uma empresa em 15%, na região do sul de Minas Gerais, elevando o mark-up para 80%, nos produtos derivados do leite.

1 Meta estratégia são ações que as empresas devem buscar. É uma forma organizada que gerará o plano estratégico. São formas coordenadas de pensar no futuro da organização. (JAMIL, G. L. Engenharia Software II, Belo Horizonte: Ciência da Computação, FACE-FUMEC, 2006, notas de aula).

20

Uma motivação sem dados concretos e relevantes, sem uma estratégia, pode acarretar numa dificuldade para se adotar um sistema de informação. Dentre eles:

acreditar que o sistema melhorará algo que na empresa faz; que o sistema irá corrigir erros que a empresa está cometendo; que a implantação de um sistema fará que a empresa resolva todos os seus problemas.

1.3. CICLO DE VIDA DOS SISTEMAS DE INFORMAÇÕES

De acordo com Resende e Abreu (2003, p. 69), “normalmente, um sistema de informação que utiliza recursos de TI tem um ciclo de vida curto, de no máximo cinco anos, quando não sofre implementações”. Os sistemas precisam ser bem zelados, pois senão podem morrer. Eles morrem quando estão em desuso ou foram substituídos. Também os sistemas mal estruturados e mal construídos estão mais facilmente destinados à morte, bem como se as informações da sua base forma mal selecionados. Porém, os sistemas como parte de uma função empresarial, não morrem. É aceitável que ao longo da vida dos sistemas, existam manutenções para atender a legislação, melhorias ou implementações e eventuais correções de erros, para acompanhar o dinamismo empresarial. “O sistema de informação tem um ciclo de vida semelhante aos seres humanos, obedecendo aos princípios vitais de concepção e morte”. (DIAS; GAZZENO, 1975 e YOURDON, 1989 apud REZENDE; ABREU, 2003, p. 70). A figura 01 nos mostra as fases do ciclo de vida dos sistemas de informação. Segundo Resende e Abreu (2003), vale ressaltar a fase de implementação, onde agregamos melhorias opcionais ou necessárias, sempre no sentido de agregar valor, ainda assim esta implementação é questionada. A maturidade plena é quando o sistema está sedimentado, com todos os requisitos funcionais sendo atendidos, com a satisfação do cliente e usuários. No declínio vêem-se dificuldades de continuidade, impossibilidade de agregar funções necessárias e insatisfação do cliente ou usuários. Na manutenção, observam-se tentativas de sobrevivência do sistema, corrigindo erros por exigências legais. E a morte é a descontinuidade do sistema.

21

21 Figura 01: Ciclo de vida dos sistemas de informação. Fonte: REZENDE; ABREU, 2003, p. 71

Figura 01: Ciclo de vida dos sistemas de informação. Fonte: REZENDE; ABREU, 2003, p. 71

1.4. NÍVEIS ORGANIZACIONAIS

K. Laudon e J. Laudon (2004), enumeram os principais sistemas de informações que atendem aos diferentes níveis organizacionais:

o

sistemas do nível operacional

o

sistemas do nível de conhecimento

o

sistemas do nível gerencial

o sistemas do nível estratégico Os níveis organizacionais abrangem desde a alta gerência das organizações, até os trabalhadores operacionais.

a. Sistemas do Nível Operacional

Estes sistemas acompanham atividades e transações elementares da organização, como: venda, financeiro, folha de pagamento, fluxo de matéria prima dentro de uma fábrica. Irão dar suporte aos gerentes operacionais, oferecendo respostas a perguntas de rotina: como o cliente pagou? Como está o nosso estoque? Como foi a produção dos funcionários?

22

b. Sistemas do Nível de Conhecimento

O propósito de integrar novas tecnologias ao negócio, e o controle do fluxo de documentos, deve ser uma meta a ser alcançada nas organizações. Segundo K. Laudon e J. Laudon (2004, p. 40):

Sistemas do nível do conhecimento dão suporte aos trabalhadores do conhecimento e de dados da organização. O propósito desses sistemas do nível é auxiliar a empresa comercial a integrar novas tecnologias ao negócio e ajudar a organização a controlar o fluxo de documentos. Aplicações desses sistemas, especialmente sob a forma de estações de trabalho e sistemas de automação de escritório, estão entre as que mais crescem no ambiente empresarial de hoje.

Existem diversas categorias de softwares de gestão do conhecimento. Carvalho (2003) as enumera: Ferramentas baseadas na Internet; Gerenciamento Eletrônico de Documentos; Groupware; Workflow; Sistemas para Construção de Bases Inteligentes de Conhecimento; Business Intelligence; Mapas do Conhecimento; Ferramentas de Apoio a Inovação; Ferramentas de Inteligência Competitiva; Portais do Conhecimento.

c. Sistemas do Nível Gerencial

Segundo K. Laudon e J. Laudon (2004), a principal resposta principal destes sistemas é: as coisas então indo bem? Eles são endereçados aos gerentes médios. Atendem às atividades de monitoração, controle, tomada de decisões e procedimentos administrativos. Produzem relatórios periódicos sobre as operações e não de informação instantânea. Também respondem as perguntas do tipo: E se? Respostas a estas perguntas quase sempre exigem novos dados de fora da organização, bem como dados internos.

23

d. Sistemas do Nível Estratégico

Estes sistemas ajudam a gerência do mais alto escalão da empresa a atacar e enfrentar questões estratégicas e tendências de longo prazo, na empresa e fora dela. Faz a compatibilização das mudanças do ambiente externo com a capacidade da organização. As principais perguntas são: quais serão os níveis de emprego em cinco anos? Quais são as tendências de longo prazo do custo do setor e onde nossa empresa se encaixa? Que produtos deveremos estar fazendo dentro de cinco anos? (LAUDON, K.; LAUDON, J., 2004). Existem outras aplicações empresarias que os sistemas de informação atendem, são as áreas funcionais, como vendas e marketing, fabricação, contabilidade, recursos humanos e finanças.

fabricação, contabilidade, recursos humanos e finanças. Figura 02: Níveis organizacionais, áreas funcionais, e que

Figura 02: Níveis organizacionais, áreas funcionais, e que os sistemas atendem. Fonte: LAUDON, K.; LAUDON, J., 2004, p. 40. (Figura adaptada)

1.5. TIPOS DE SISTEMAS DE INFORMAÇÕES

Para cada um dos níveis organizacionais temos tipos de sistemas de informação correspondentes. Os sistemas de cada nível atendem as principais áreas funcionais. Os trabalhadores ou gerentes serão atendidos por estes sistemas. A figura 02 nos mostra esta divisão.

24

a. SPT

Os SPTs (sistemas de processamento de transações) são os maiores produtores de informações, e são requisitados pelos outros sistemas. Automatizam funções do nível operacional, na linha de frente do negócio da organização. Tem como característica processar um grande volume de dados, tanto de entrada, quanto de saída, bem como muita necessidade de armazenamento. Necessita de um processamento preciso. Pelo fato de muitos usuários acessarem, tem-se problemas com a segurança dos dados. São chamados também de sistemas de missão crítica. Como exemplo, temos: contas a pagar, contas a receber, controle de materiais, folha de pagamento e contabilidade.

b. SGC

Os SGCs (sistemas de gestão do conhecimento) atendem às necessidades no nível de conhecimento, aos trabalhadores do conhecimento. Estes sistemas auxiliam na captura e estruturação do conhecimento de indivíduos, possibilitando compartilhar toda a base de dados para todos da organização. Obter o conhecimento que se encontra disperso é o grande desafio. O conhecimento tem que existir, porém precisa estar acessível. A TI é um instrumento para facilitar esta captura, armazenamento e distribuição para outras pessoas usarem. Citando Davenport e Prusak (1998, p. 84):

A principal dificuldade encontrada no trabalho de codificação é a questão de como codificar o conhecimento sem perder suas propriedades distintivas e sem transformá-lo em informações ou dados menos vibrantes. Em outras palavras, o conhecimento precisa de alguma estruturação, mas não em excesso, para não matá-lo. As empresas que quiserem fazer uma codificação bem-sucedida de seu conhecimento devem, portanto, ter em mente os seguintes princípios: os gerentes devem decidir a que objetivos o conhecimento codificado irá servir (por exemplo, empresa cujo propósito estratégico envolva aproximar-se do cliente podem optar por codificar o conhecimento ligado a clientes); os gerentes devem ser capazes de identificar o conhecimento existente nas várias formas apropriadas para atingir tais objetivos; gerentes do conhecimento devem avaliar o conhecimento segundo sua utilidade e adequação à codificação; os codificadores devem identificar um meio apropriado para a codificação e a distribuição.

25

Destacam-se também os sistemas de automação de escritório. Segundo K.

Laudon e J. Laudon (2004), estes sistemas auxiliam os trabalhadores de dados,

embora sejam usados pelos trabalhadores do conhecimento. Os trabalhadores de

escritório tendem a processar e não criar informação, por isso, os sistemas de

automação de escritório manipulam e gerenciam documentos, por meio de

processadores de textos, editoração eletrônica e tratamento de imagem, 2

comunicação por meio de correio eletrônico e correio de voz, programação por meio

de agendas eletrônicas.

c. SIG

Os SIGs (sistemas de informações gerenciais) têm o foco no usuário de

gerência intermediária. Os exemplos dos SIGs são: sistemas financeiros, industrial,

marketing e de recursos humanos. De acordo com Stair (1998, p. 226):

O sistema de informações gerenciais é um conjunto organizado de pessoas, procedimentos, banco de dados e dispositivos que fornecem aos administradores e tomadores de decisões as informações para ajudá-los a atingir as metas da empresa. O SIG pode ajudar a organização a atingir suas metas, fornecendo aos administradores uma visão das operações normais da empresa, de modo que possam controlar, organizar e planejar

de forma mais eficiente 3 e eficaz.

A diferença principal entre os relatórios

gerados pelo SPT e os gerados pelo SIG é que os relatórios de SIG dão apoio às tomadas de decisões gerenciais nos níveis mais altos da administração.

4

Os SIGs propõem uma análise bastante complexa e sofisticada, utilizando muitos recursos gráficos.

d. SAD

Os SADs (sistemas de apoio à decisão) são também chamados de sistemas

de informações estratégicas e de SAEs (sistemas de apoio ao executivo). Segundo

2 Digitalização de imagem.

3 Eficiente é fazer correto aquilo que precisa ser feito, nem mais, nem menos. 4 Eficaz é atingir com sucesso o objetivo de uma tarefa, no momento certo, na hora apropriada.

26

Rezende e Abreu (2003), eles irão processar grupo de dados das operações operacionais e transações gerenciais, transformando-as em informações estratégicas. Trabalha com dados no nível macro, considerando o ambiente interno e externo, visando auxiliar o processo de tomada de decisão da alta administração, tal como presidentes, diretores, sócios e acionistas. Tem característica de processamento on-line, muitas informações gráficas com uma interface amigável.

e. Sistemas IA

Apesar de estarmos vendo a aplicação direta de muitos sistemas utilizando conceitos de IA (inteligência artificial), ainda estamos distantes de criar sistemas computacionais que substituirão os tomadores de decisões humanos. Segundo Stair (1998, p. 256):

Os sistemas de inteligência artificial incluem as pessoas, procedimentos, hardware, software, dados e conhecimento necessários para desenvolver sistemas computacionais e máquinas que demonstram características de

O objetivo no desenvolvimento contemporâneo de sistemas

IA não é substituir completamente a tomada de decisões humana, e sim reaplicá-la em certos tipos de problemas bem-definidos. Assim como em outros sistemas de informação, o propósito maior das aplicações da inteligência artificial nas empresas é auxiliar as organizações a alcançar suas metas.

inteligência. [

]

A IA é um campo amplo e contém diversos componentes, como:

o

Sistemas especialistas: Age ou comporta-se como um ser humano experiente em um campo ou área. Os sistemas especialistas computadorizados têm sido desenvolvidos para diagnosticar problemas, prever eventos futuros e auxiliar em novos sistemas.

o

Robótica: Envolve o desenvolvimento de dispositivos mecânicos ou baseados em computadores. Aplica-se sofisticados softwares de controle em robôs. 5

o

Sistemas de visão: Engloba sistemas (hardware e software) que possibilita computadores capturar, armazenar e manipular imagens visuais e figuras.

o

Processamento de linguagem natural: Possibilita que o computador reaja a instruções e comandos emitidos em linguagem natural, por exemplo, inglês.

5 Software de controle em robôs tem um importância bastante relevante em IA.

27

Converte a fala do microfone em arquivos para processadores de texto ou instruções.

o Redes neurais: São sistemas de computador que podem funcionar como o cérebro humano ou similar ao seu funcionamento. Podem processar muitos dados de uma vez e aprender a reconhecer padrões.

1.6. SISTEMAS FUNCIONAIS, SISTEMAS DE INFORMAÇÃO E SISTEMAS

INTEGRADOS

a. Sistemas Funcionais

Podemos classificar os sistemas de informação pela função organizacional específica. Na figura 01 temos na base da pirâmide os principais sistemas funcionais. Outros sistemas funcionais podem ter uma grande importância nas organizações modernas. Descreveremos os SIMs (sistemas de informação de marketing) e os sistemas de logísticas:

SIM: São sistemas da linha de frente do pensamento administrativo em todo o

mundo, decidindo sobre um acervo crescente e inovador. Destinam-se a possibilitar aos executivos e gerentes das áreas táticas das empresas a apreciar fenômenos diversos para tomada de decisão de marketing, envolvendo informações para um produto ou serviço. Podemos destacar como as decisões a serem tomadas:

o

lançamento de um produto ou serviço

o

concorrência, competitividade e comportamento do público alvo

o

benchmarketing 6 de ações dos concorrentes

o

receptividade e campanhas publicitárias

o

realização de promoções

o alteração na forma de ofertar produtos ou serviços Segundo Jamil (2001), os sistemas de marketing não se resumem numa simples coleção de dados e relacionamentos, mas de programas que permitam ao

6 Processo de comparação de produtos ou serviços com os oferecidos pela concorrência, ou em empresas consideradas excelentes em algo determinado. O benchmarking tem como objetivo conhecer o que os outros estão fazendo de melhor, e for se possível, incorporar.

28

usuário fazer seus questionamentos e a consulta à base de dados, com interfaces de acesso e distribuição das informações via internet. Sistemas de logística: Gerenciar a logística significa tratar com precisão as atividades de emissão de pedidos, de compras, de recebimento e expedição de mercadorias. Os centros de distribuição, cadeia de suprimentos e o sistema de transporte, possibilitam ao fabricante o acesso rápido aos insumos necessários, à montagem de estratégias de obtenção e o uso destes insumos, e da entrega do produto aos clientes.

Confirmando tal fato, Jamil (2001, p. 523):

Esta inserção da logística no agressivo ambiente dos dias atuais terminou por provocar um efeito de ‘retroalimentação’, fazendo com que a TI e das telecomunicações fosse cada vez mais usada para a efetivação desta cadeia. Atualmente, os operadores de logística estão atuando de forma integrada, tanto no lado B2C – de venda ao consumidor, quanto no B2B – de suprimento via interação negócio a negócio.

Com a crescente concorrência do comércio eletrônico, o cumprimento do prazo entrega (normalmente reduzido), passa a ser um diferencial das empresas envolvidas.

b. Sistemas de Informação

Os sistemas de informação são para coordenar atividades, e auxiliar na tomada de decisões por toda a empresa. Como exemplos destes sistemas temos o CRM (customer relationship management - gerenciamento das relações com clientes) e os sistemas de cadeia de suprimentos. CRM: Existe um esforço de toda a organização para conquistar e conservar clientes. O CRM reconhece que os clientes são a alma da organização, e o sucesso depende do bom gerenciamento das relações com estes clientes. (GREENBERG apud TURBAN et al, 2005). CRM destina-se a construir relações duradouras e sustentáveis, que agregam valor para o cliente e para a empresa. (ROMANO; FJERNESTAD apud TURBAN et al, 2005). Observa-se que, com a Internet, os

29

clientes estão a um click do concorrente, podendo romper rapidamente com o fornecedor atual, buscando outros que o atenda satisfatoriamente (CARVALHO,

2006).

Segundo Turban (et al, 2005), CRM é um campo interdisciplinar (marketing e gerenciamento). O CRM é muito mais amplo que o marketing de relacionamento. Tem o propósito de tratar diferentemente clientes diferentes. Exemplos de aplicações de CRM: call center; gerenciamento de campanha e comércio eletrônico; salas de chat 7 e grupos de discussão e e-CRM. 8 Cadeia de suprimentos: A cadeia de suprimentos integra os processos logísticos do fornecedor, do fabricante, do distribuidor e do cliente para reduzir tempo, esforços redundantes e custos de estoque. Segundo K. Laudon e J. Laudon (2004), cadeia de suprimentos é uma rede de organizações e processos de negócios para selecionar matérias-primas, transformá-las em produtos intermediários e acabados e distribuir os produtos acabados aos clientes. A cadeia interliga fornecedores, instalações industriais, centrais de distribuição, meios de transporte, lojas de varejo, pessoas e informações por meio de processos como seleção de matérias-primas, controles de estoque, distribuição e entrega com a finalidade de fornecer mercadorias e serviços desde a fonte até o ponto de consumo.

c. Sistemas Integrados

São destinados a integração dos setores da organização e automação dos

processos de negócio. Tem com característica a unificação de cadastros, reduzindo

a redundância de dados. Requerem um alto grau de parametrizações. A implantação

é um desafio, e demanda tempo e dedicação dos envolvidos (empresa e parceiros).

Como exemplo de sistemas integrados temos o ERP (enterprise resouce planning - sistemas de planejamento de recursos empresarias). ERP: Permite automatizar e integrar grande parte dos processos de negócios, finanças, controles, logística e RH (recursos humanos). As áreas de implantação do

7 Softwares que possibilitam bate papo pelo computador. 8 Uso de navegadores web , internet, e outros pontos eletrônicos para gerenciar o relacionamento com o cliente.

30

ERP são: contabilidade, contas a pagar/receber, tesouraria, orçamentos, custos, RH, suprimentos, administração de materiais, custos de produção, pedidos, vendas, faturamento. Os dados de uma área irão alimentar automaticamente os dados de outra área. Deve-se considerar que a implantação de um ERP precisa de um esforço de toda a organização, do diretor aos funcionários, com um grande comprometimento. (CARVALHO, 2006). Citando Jamil (2001, p. 517):

Estes sistemas surgiram em decorrência das carências informacionais promovidas pela desagregação de dados provocada pelos processos de descentralização de tecnologia da informação não planejada e motivada pela facilidade de acesso aos recursos de informática (redes, micros, software de aplicação, etc), agravada pela concentração em níveis operacionais, de sistemas distintos. Nestes casos, os ERPs ofereceram o recurso de integrarem sob sua coordenação os diversos ambientes de sistemas à base de transação para que formem base de dados, módulos de acesso e sistemas analíticos únicos, que suportem de modo mais direto os processos de decisão, às custas de reorganização dos processos de gestão e definição de responsabilidades e instâncias na sua execução.

Com a implantação do ERP, as organizações terão maior competitividade com a unificação dos processos, diferenciação junto aos concorrentes e preparação para um crescimento das operações.

1.7. SISTEMAS DE INFORMAÇÕES INTERORGANIZACIONAIS

Segundo Rezende a Abreu (2003), uma empresa classifica-se como um conjunto de pessoas, equipamentos, dados, recursos, políticas e procedimentos que existem para suprir seus produtos e serviços, com o objetivo de obter lucro. Classificamos as aplicações dos sistemas no nível organizacional em duas categorias: aplicações localizadas e sistemas interdepartamentais. A categoria de sistemas de informação de aplicações localizadas inclui sistemas pessoais e de grupo. Estes sistemas têm a característica que os usuários de um grupo de trabalho conhecem cada um dos membros pessoalmente. Envolvem

31

pouco mais de dúzias de usuários, gerenciando poucos dados, às vezes simples e poucos heterogêneos. Envolve apenas sub-funções da empresa. Já a proposta de sistemas interdepartamentais é integrar as atividades de diferentes departamentos em um só sistema de negócio, produzindo respostas apropriadas e coordenadas para o meio ambiente da empresa. Permitem a integração de atividades de departamentos separados de modo que os departamentos respondam de maneira consistente e coordenada. Envolvem bases de dados centralizadas e compartilhada pelos departamentos, permitindo que cada departamento registre resultados de seu trabalho. Aconselha-se uma padronização nestes sistemas, e um controle das mudanças, exigindo um gerenciamento dos sistemas organizacionais. Os usuários envolvidos destes sistemas, às vezes centenas ou milhares, podem estar à distância continentais, utilizando um grande volume de dados complicados e heterogêneos. Tanto os sistemas localizados quanto os interdepartamentais, envolvem muito pouco redesign 9 dos processos de negócios. Eles dão suporte às atividades da empresa do modo como elas já existiam anteriormente. Segundo Turban (et al, 2005), durante muitos anos, os sistemas de informação são usados dentro das organizações. A conexão de duas ou mais organizações é feita através dos sistemas de informação interorganizacionais, que suporta o fluxo de informações. Mesmo assim, eram restritos a empresas de viagens, bancos e grandes corporações. Os sistemas envolvendo duas ou mais organizações podem ser bastante complexos, porém as vantagens são significativas com a internet e a XML (extensible markup language - linguagem de marcação extendida). Como objetivo desses sistemas temos o processamento eficiente de transações, como a transmissão de pedidos, faturas e pagamentos. Um IOS (interorganizational information system - sistemas de informações interorganizacionais) pode ser local ou global, voltado a uma única atividade (transferência de fundos) ou a várias (facilitar as negociações, a comunicação e a colaboração).

9 Além de automatizar os processos existentes numa organização, o redesign (redesenho) de processos de negócio está surgindo como um passo para melhor explorar as potencialidades da TI, reprojetando estes processos, para tirar vantagens das oportunidades proporcionadas pela tecnologia. Referem-se a aplicações nas quais o processo a ser automatizado é redesenhado à medida que o sistema é desenvolvido.

32

Conectando organizações, duas pressões comerciais foram satisfeitas:

redução de custos e aumento da eficiência e oportunidade dos processos empresariais. Por conseqüência, com a melhora da qualidade, diminuiu-se o tempo de ciclo de realização das transações empresariais, eliminando o uso de papéis, suas ineficiências e custos associados, e acima de tudo, eliminando erros. Necessita-se de uma determinação prévia da relação entre cliente/fornecedor, com expectativa de continuidade, e um acordo entre as organizações acerca da natureza e do formato dos documentos a serem trocados. A rede de comunicação 10 também precisa ser conhecida por ambas as partes, onde um acordo prévio é estabelecido para a padronização. Tipos de sistemas interorganizacionais:

o

Sistemas de negociação B2B: Projetados para facilitar a negociação entre parceiros comerciais. Podem estar no mesmo país ou em países diferentes.

o

Sistemas globais: Conectam duas ou mais empresas, em dois ou mais países, por exemplo, empresas multinacionais de reservas de passagens aéreas. Também as empresas internacionais ou empresas virtuais globais.

o

EFT: (Eletronic funds transfer - transferência eletrônica de fundos). Transferência de dinheiro entre instituições financeiras.

o

Groupware: Tecnologia para facilitar a colaboração entre organizações.

o

Envio integrado de mensagens: Através de um único sistema de transmissão, ocorre a remessa de correio eletrônico e documentos de fax, entre organizações.

o

Banco de dados compartilhados: Banco de dados que podem ser compartilhados entre parceiros comerciais, permitindo a atividade colaborativa.

o

Sistemas que suportam corporações virtuais: Dois ou mais parceiros comerciais em diferentes locais, compartilhando custos e recursos para fornecer um produto ou serviço.

10 As redes podem ser de acesso público ou privado.

33

CAPITULO

II

-

INFORMAÇÃO

INTEGRAÇÃO

2.1. SISTEMAS LEGADOS E COTS

DE

SISTEMAS

DE

Sistemas legados: Ainda em grande uso nas organizações, são os sistemas criados com uma tecnologia antiga, que não evoluíram com o passar dos anos. Com as mudanças das tecnologias, eles se tornam desatualizados, de difícil operação e integração. Segundo Cummins (2002), é impossível compreender o impacto das novas tecnologias sem levar em conta os sistemas legados. A evolução tecnológica contribuiu para a fragmentação de sistemas. A arquitetura cliente/servidor 11 muitas vezes piorou esta fragmentação. Os sistemas utilizando tecnologia mais antiga não podem ser implantados utilizando as tecnologias de ponta dos sistemas modernos. Existirá um retrabalho ou redesenvolvimento que torna inviável a atualização. Os sistemas legados incluem quaisquer aplicações existentes e que precise estar vinculada a outros sistemas. As arquiteturas são as mais variadas e abrangem um grande número de tecnologias. Com relação à integração dos sistemas legados, os requisitos necessários são exclusivos. COTS: (commercial off-the-shelf - sistemas pacotes). São sistemas comerciais que são comprados nas prateleiras das lojas de venda de programas de computador. Num primeiro momento os COTS podem representar uma redução de custos de aquisição e manutenção. Cummins (2002, p. 121) explica que:

] Em

geral, as aplicações COTS estão projetadas para integração corporativa e

escalabilidade. No entanto, como as aplicações legadas, cada aplicação COTS traz uma solução predefinida e pode não atender às necessidades

se houver

atuais da empresa ou se adaptar a necessidade futura. [

requisitos especiais, então a aplicação COTS não é a melhor solução.

Atualmente, a maioria das aplicações COTS fornece acesso à Web. [

]

11 Cliente/servidor é uma arquitetura com uma unidade central de registro, serviços e conteúdo (servidor), de alta performace, e vários clientes de menor performace. Os clientes somente fazem requisições, solicitanto conteúdo, ou também a execução de serviços para o servidor, porém não compartilham nenhum dos seus recursos.

34

Não é recomendável que sejam feitas alterações nem extensões para personalizar os COTS, evitando trabalho adicional para cada nova versão, comprometendo a confiabilidade.

2.2. EAI - INTEGRAÇÃO DE APLICAÇÕES CORPORATIVAS

Segundo Cummins (2002), o surgimento de EAI (enterprise application

integration - integração de aplicações corporativas) foi guiado pela necessidade de integrar aplicações, dentre elas os COTS. E com o surgimento de várias aplicações específicas de negócio, como fabricação, pessoal, contabilidade, etc, a necessidade de integração aos sistemas legados e COTS era eminente. EAI é a prática de vinculação destes sistemas. A abordagem básica é a transferência de dados store-and-forward (armazenar e mandar) entre sistemas. Outras tecnologias são usadas, como fila de espera de mensagens. EAI pode incorporar estes recursos, fornecendo adaptadores para várias aplicações de negócio, que fazem a conexão com as filas de mensagens

e põem realizar algum tipo de transformação nos dados. Os produtos EAI também

podem fornecer ferramentas e componentes para facilitar a implementação de adaptadores a sistemas legados. Ainda que novos sistemas sejam adquiridos e desenvolvidos pelas organizações, sempre haverá sistemas legados a integrar. A implementação de EAI é um início de um processo em melhoria progressiva

e não uma transformação única. Os detalhes da arquitetura, durante o processo de implementação, poderão estar em mudança contínua. As vantagens serão

percebidas quando a sinergia de várias aplicações começarem a aparecer. A seguir temos alguns fatores de sucesso para uma implantação de sucesso da EAI:

o

visão da integração compartilhada todos da empresa, inclusive o alto escalão

o

comprometimento com os padrões

o

empresas orientadas a serviço a fim de concretizar suas responsabilidades corporativas

o

infra-estrutura compartilhada para dar suporte a todas as aplicações

35

o conhecimento de dados acessíveis podem ser acessados a qualquer momento e de qualquer parte que seja necessário, para dar suporte às necessidades comerciais do alto escalão de gerenciamento para operadores de produção. Os dados deverão ser comunicados entre sistemas em tempo hábil, sem a necessidade de interpretação ou intervenção humana.

2.3. ESTRATÉGIA DE INTEGRAÇÃO

A integração corporativa fará com que as empresas dependam mais de seus sistemas, pois seus processos estarão mais automatizados, as funções de negócio

estarão mais dinâmicas. Para tal, como estratégia de integração corporativa, devemos utilizar economias de escala. Não basta simplesmente interligar sistemas, precisamos, dentre outras coisas: tornar a empresa mais produtiva; ir em busca de novas soluções; minimizar as falhas; eliminar esforços repetitivos; reduzir a complexidade; aproveitar ao máximo os conhecimentos dos profissionais que serão treinados. Uma empresa bem integrada deverá ter um custo menor para operar e adaptar-se às necessidades comerciais em constante mudança. Segundo Cummins (2002), temos várias oportunidades importantes que devem ser observadas para obtenção de economia de escala:

o Padrões: os padrões são os fatores que mais contribuem para a economia de escala. Eles resultam do compartilhamento de recursos, que podem ser:

materiais, pessoas, equipamentos, sistemas ou instalações. Os padrões para integração corporativa devem se concentrar nos dados, nas interfaces e nas práticas. Se não forem definidos padrões para troca de dados - dados usados entre os sistemas e para ter informações para gerenciar a empresa – eles não estarão prontos para serem utilizados para finalidade ad hoc, 12 o que fará com que exista possibilidade de incompatibilidade, gerando resultados

12 É uma expressão latina que significa literalmente: para isto. Em um âmbito maior, podemos traduzir como específico ou especificamente. Pessoa ou coisa preparada para determinada missão ou circunstância.

36

incorretos, e gastando esforço desnecessário para manter programas de conversão. Os padrões de interface incorporam especificações de dados e incluem: modo de comunicação – assíncrono ou síncrono; protocolo de comunicação; seqüência e forma de troca de informação; formato e significado de entrada e saídas.

o

Reutilização de software: envolve o uso de um componente ou sistema de software para solucionar o mesmo problema em contexto distinto. Precisamos usar mais de uma vez para obtermos economia de escala.

o

Infra-estrutura comum: é o complexo de computadores, redes, softwares e serviços associados que dão suporte à operação e à interconexão de muitos sistemas, visando a reduzir a carga e promover a sinergia entre os sistemas. Uma infra-estrutura deste tipo pode gerar economias substanciais de escala.

o

Operações de sistemas consolidados: tradicionalmente, as aplicações corporativas eram executadas em centro de dados centralizados. Estes centros de dados permitiam o compartilhamento do computador, cujo custo era elevado, para obter grande utilização. Com a tecnologia dos microprocessadores, tem-se uma alternativa com um custo menor, possibilitando a implantação mais rápida e sistemas mais amistosos. O foco mudou de computação corporativa para sistemas cliente-servidor. Mas, a internet e o comércio eletrônico reverteram esta tendência de redução de custo. Sistemas que precisam operar 24 horas, 7 dias por semana, interconectados, com segurança, demandaram profissionais cada vez mais valorizados. Os micro-computadores passaram a desempenhar papeis específicos: servidores de banco de dados, servidores de diretórios, servidores de segurança, servidores web, dentre outros. Neste caso, a economia provém da consolidação de serviços, tanto operacionais quanto sistemas. Algumas economias de escalas serão obtidas em detrimento da flexibilidade.

37

2.4. DISCIPLINAS DO CONHECIMENTO PARA INTEGRAÇÃO

Segundo Parreiras (2006), as disciplinas do conhecimento necessárias para execução da integração de sistemas corporativos, são:

o

Gestão de projetos: Identificar os riscos pertinentes na integração de sistemas, fundamentado nas áreas de gerência de projetos.

o

Segurança de sistemas: Basear nos conceitos de segurança para a implementação de sistemas integrados.

o

Aplicações baseadas em componentes: Abordar conceitos de objetos distribuídos.

o

Desenvolvimento de documentos estruturados: Oferecer conhecimento aprofundado das principais tecnologias derivadas da XML.

o

Gestão de fluxo de trabalho: Aborda os aspectos gerenciais da gestão de fluxo de trabalho.

o

Sistemas avançados de gestão: Apresentar conceitos que envolvem os temas, processos para implantação, das opções disponíveis, como ERP, CRM, Data Warehouse e BI (business intelligence).

o

Serviços web: Apresentar o modelo de integração por serviços web e trabalhar nesta arquitetura.

o

Integração de bancos de dados: Trazer técnicas, métodos e ferramentas para a integração de bancos de dados heterogêneos.

o

Inteligência empresarial: Fornecer uma visão estratégica da organização e abordar a inteligência competitiva, gestão do conhecimento e capital intelectual.

o

Modelo e ferramentas de integração: Apresentar os diversos modelos de integração disponíveis, como: modelo de infra-estrutura de integração, modelo de rede, modelo de armazenamento de dados corporativos, serviços de mensagens e portais corporativos.

38

2.5. MODELOS DE INTEGRAÇÃO

Necessita-se definir a arquitetura de integração corporativa, baseando-se nas tecnologias atuais, e levando-se em conta o surgimento de tendências do setor. Apresentaremos alguns dos principais modelos:

Modelo da infra-estrutura de integração: Entende-se por infra-estrutura de integração como o conjunto de recursos compartilhados, que permitem o trabalho em conjunto de vários sistemas. Segundo Cummins (2002, p. 60):

A empresa incorporará muitos sistemas. Esses sistemas terão diversas formas e tamanhos. Algumas serão aplicações legadas, algumas serão aplicações COTS (commercial-off-the-shelf) adquiridas e outras serão aplicações personalizadas desenvolvidas para satisfazer as necessidades específicas. Ainda que esses sistemas possam ser desenvolvidos independentemente, existe a possibilidade de fornecer recursos comuns que dêem suporte à sua integração e obtenham economias de escala. Esses recursos comuns fornecerão flexibilidade na operação global do negócio, reduzirão o custo de desenvolvimento e implementação de novas aplicações e possibilitarão o uso de diversas tecnologias para a solução de problemas de negócio específicos.

É possível o suporte a integração de sistemas, mesmo em arquiteturas distintas. Modelo de rede: Os elementos corporativos devem ser vinculados através de redes. O modelo de rede é subdividido em três domínios: sistemas internos, aplicações Web públicas e a internet pública. Como exemplos de categorias, numa perspectiva de rede, encaixando nestes domínios, podemos citar: recursos de internet, serviços de troca de mensagens, serviço de segurança, troca de mensagens HTTP (hyper text markup language - linguagem de marcação de hiper texto), firewall, servidor de acesso remoto. Modelo de processo de fluxo de trabalho: Segundo Cummins (2002), os processos de negócios executam ações no nível da empresa, como preenchimento de um pedido de cliente, e alguns processos que automatizam processos triviais, como aprovação de uma passagem. Os sistemas de gerenciamento de fluxo de trabalho que automatizam tais processos de negócio. Os componentes desse modelo são: definição do processo, instância do processo, atividade, solicitador, lista de trabalho pessoal, gerente do processo e interoperabilidade do processo.

39

Modelo BSD: O modelo BSD está num nível central da hierarquia de sistemas de negócio. Ele está presente na integração corporativa e no comércio eletrônico e incorpora processos, aplicações e componentes de negócio. O BSD pode incluir aplicações legadas, COTS ou aplicações para novas funções de negócio. Modelo de armazenamento de dados corporativos: Segundo Cummins (2002), o modelo de armazenamento de dados corporativos é a base para observação do estado atual da empresa e também as atividades históricas. Dá suporte à monitoração, planejamento e tomada de decisão. A figura 03 nos mostra os componentes desse modelo.

A fi gura 03 nos mostra os componentes desse modelo. Figura 03: Modelo de armazenamento de

Figura 03: Modelo de armazenamento de dados corporativos Fonte: CUMMINS, 2002, p. 78

o

Aplicações de negócio: São SW que realizam o negócio, contêm as informações mais atuais do estado da empresa.

o

Gerenciamento de documentos: Controla arquivos que contêm documentos ou estruturas mais complexas como especificações de produtos ou modelos.

o

Armazenamento de dados operacionais: Oferece acesso a dados relativamente atualizados no que se refere ao estado das operações de negócios em lugar do acesso direto das aplicações. Pode reunir dados de diversas aplicações de modo a oferecer uma visão integrada da situação atual da empresa. Pode ser requerida a traduções e limpeza de dados, para garantir a consistência de dados.

o

Banco de dados corporativos principais: Dados relativamente estáveis podem ser compartilhados por vários setores da empresa ou replicados para outros

40

locais, a fim de evitar o overhead e evitar falha. Neste caso um banco de dados será definido como corporativo principal.

o

Arquivos e documentos principais: Esses documentos serão expressos em XML e deverão preservar o mesmo formato em que foram assinados.

o

Metadados: 13 Dentro deste contexto, há dois tipos de metadados: o técnico e o comercial. Os técnicos definem tipos e estruturas de dados armazenados, com o objetivo de gerenciamento de dados. Já os metadados comerciais fornecem informações sobre a origem, precisão e confiabilidade dos dados.

o

Data warehouses (armazém de dados): Armazena o acúmulo de dados históricos. Pode conter dados por muitos anos, com tamanho de armazenamento muito grande. Normalmente depois de completadas as transações comerciais na aplicação ou no armazenamento de dados operacionais, elas são transferidas para o warehouse.

o Data marts: A análise de dados históricos pode envolver o exame e reestruturação de dados de várias maneiras. A análise normalmente não é feita a partir do data warehouse. Os dados selecionados são extraídos periodicamente a partir de um warehouse para vários data marts. Modelo de acesso ao conhecimento: Conhecimento são as informações sobre a empresa e suas tecnologias. Podem ser armazenadas em bancos de dados. Muitas vezes não são armazenadas de forma estruturada, e são mantidas nas memórias dos trabalhadores. O grande desafio da gestão do conhecimento é a captura e preservação do conhecimento corporativo, de modo que ele fique acessível e não se perca quando houver apagamento de memória ou saída de pessoas da empresa.

2.6. BSD – DOMÍNIO DE SISTEMA DE NEGÓCIO

Cummins (2002, p. 111), nos explica os BSDs (domínios de sistemas de negócio):

13 Dados que definem dados.

41

Os BSDs são o local em que o verdadeiro trabalho de computação da empresa acorre. É neles que os dados são capturados, os cálculos são feitos, os registros são atualizados e os resultados são produzidos. Muitas aplicações atuais podem ser caracterizadas como BSDs. Em geral, essas aplicações corporativas desempenham funções de negócio primárias, como contabilidade, gerenciamento de recursos humanos, planejamento de produção, agendamento e controle. Normalmente, esses sistemas são altamente integrados entre si e parcialmente integrados com outras aplicações da empresa.

Classificam-se os BSDs como um nível central da hierarquia de sistemas de

negócio. Ele está presente na integração corporativa, que fornece um ambiente comum de integração e suporte aos BSDs. Os BSDs podem ser aplicações legadas, COTS ou aplicações para novas funções de negócio. Um BSD pode ser um sistema bem simples, mas espera-se que inclua processos de negócio e que coordenem os diversos segmentos da empresa. Para dar suporte à infra-estrutura coorporativa, de acordo com Cummins (2002), os seguintes componentes se relacionam com o BSD:

o

Intranet: Principal meio que os usuários, outros BSDs e serviços de infra- estrutura, dispõem para comunicar com outros BSDs.

o

Computadores pessoais: São uma plataforma para interfaces de usuários e BSDs.

o

Troca de mensagens: As mensagens são transformadas, conforme necessário, e são roteadas para os destinatários.

o

Gerenciamento de sistemas: O gerenciamento de sistemas da infra-estrutura deve coordenar a resolução de problemas e alterações que afetam os BSDs.

o

Segurança: O BSD usará certificados digitais.

o

Organização: O BSD se baseará no diretório organizacional da infra-estrutura para poder fazer uma representação atual da empresa e de seus funcionários.

o

Arquivamento: Um BSD não pode ter documentos eletrônicos para serem arquivados; do contrário, poderia arquivá-los localmente.

o

Repositório de metadados: Nem todos BSDs necessitarão de metadados. Se forem usados com muita freqüência, pode ser utilizados data warehouses.

o

Gestão do conhecimento: Um BSD deverá fornecer mecanismos para captura de conhecimento, como parte do processo de negócio, e torná-los disponíveis.

o

Portais: Os usuários externos (por exemplo, clientes, colaboradores e investidores), os BSDs deverão dar acesso em portais apropriados.

42

o

B2B: Deverão ser utilizados o serviço de troca de mensagens da infra- estrutura. Para fins de compatibilidade, aconselha-se que as mensagens deverão estar no formato XML.

2.7. UM CENÁRIO PARA INTEGRAÇÃO CORPORATIVA

Com o intuito de abandonar a abstração da integração corporativa, e vincular os conceitos com o mundo real, segundo Cummins (2002), conforme a figura 04 tem-se um cenário de negócios de uma empresa dedicada a vendas no varejo. Um

cliente acessa o portal de vendas da empresa, seleciona um produto para a compra.

O portal de vendas é uma aplicação acessível publicamente que possui informações

sobre produtos e preços. Aceita-se os pedidos dos clientes. O portal não é vinculado

a outras aplicações devido ao risco de intrusos comprometerem a segurança dos

sistemas corporativos. O pedido é preenchido e comunicado para o BSD de processamento de pedidos. Esse BSD é interno da empresa. O BSD de processamento de pedidos valida o pedido e envia uma solicitação para o BSD de warehouse. O pedido que o cliente recebe é um contrato de compra. O BSD de warehouse verifica o estoque e envia uma resposta que está disponível, e prepara para a remessa. O funcionário da remessa prepara o pacote para uma transportadora. O status do pedido poderá ser alterado. O BSD de processamento de pedidos, quando recebe o aviso da remessa, enviará ao serviço de cobrança externo à empresa para a fatura. Isto é feito através da internet púbica. A cobrança externa notifica o setor de contas a receber. O cliente poderá entrar em contato e indagar sobre o status do pedido. O pedido também poderá ser rastreado, para ver mais detalhes. Neste caso acima, o produto encontra-se em estoque, mas, se o produto estiver esgotado, este deverá ser solicitado ao fornecedor, onde o BSD de warehouse inicia uma solicitação de compra. Quando o processamento do pedido se completar, o BSD de processamento registrará a transação como completada, mantendo os históricos para análise futura.

43

43 Figura 04: Cenário da integração corporativa Fonte: CUMMINS, 2002, p. 84 Muitos requisitos de integração

Figura 04: Cenário da integração corporativa Fonte: CUMMINS, 2002, p. 84

Muitos requisitos de integração corporativas estão implícitos neste exemplo, assim como uma infra-estrutura de integração. Os mais importantes são:

o

Mensagens entre BSDs: os BSDs podem se comunicar entre si. Os links entre sistemas foram se desenvolvendo conforme a necessidade, variando os recursos e tecnologias.

o

Solicitações e eventos: a comunicação por solicitação é feita através do preenchimento e processamento do pedido e requerem uma resposta. Os eventos são enviados para fornecer informações sobre alterações de estado.

o

Comunicações confiáveis: as comunicações, na forma de solicitações ou eventos, deverão se confiáveis. Caso os eventos se perderem, o cliente não poderá ser cobrado, e as faturas dos fornecedores poderão não ser pagas.

o

Terceirização potencial: o serviço de cobrança representa uma terceirização em potencial, deixando de ser, tradicionalmente, interna das organizações.

o

Integração da cadeia de abastecimento: fica claro a necessidade de incluir fornecedores e transportadoras no design da integração corporativa. Uma boa integração com fornecedores, permitirá que a empresa trabalhe com estoques reduzidos, sem a necessidade de armazenar produtos.

44

o

Gerenciamento de relacionamento com clientes: a interface com o cliente é um elemento fundamental para a sua satisfação. O processo deverá ser agilizado, reconhecendo os clientes antigos, não pedindo novamente dados já cadastrados. O cliente poderá conferir status do pedido ou de sua conta. Um banco de dados de gerenciamento dos clientes torna-se imprescindível.

o

Informações de gerenciamento: inclui-se análise de desempenho, das tendências e dos relacionamentos. Essa integração de informações requer uma definição consistente dos dados.

o

Registros legais: a troca de registros com entidades externas representa os documentos legais. Por exemplo, o pedido do cliente e do fornecedor, representam os contratos. Estes documentos podem tornar-se assunto de litígio. São necessárias assinaturas eletrônicas para estabelecer a validade e os documentos devem ser preservados na forma original.

2.8. INTERCÂMBIO DE DADOS

A arquitetura de integração corporativa depende da adoção e da aplicação de padrões. Os melhores padrões são os definidos por um consórcio, que representa um grupo distinto de participantes, e não uma única empresa. Mostrando que a XML é o padrão mais aceitável para a troca de dados, citamos Cummins (2002, p. 448):

A XML (Extensible Markup Language) está rapidamente se tornando o formato dominante para o intercâmbio de dados entre sistemas, sejam trocas EAI e B2B. A utilização de documentos XML fornece uma melhor flexibilidade e um formato que pode ser trocado facilmente na Internet e através de firewalls usando o protocolo HTTP (HyperText Transfer Protocol). Além disso, existem funções comuns de software disponíveis para a manipulação e a transformação de documentos XML

Várias empresas de padronização estão definindo especificações com base na XML, para diversos tipos de troca de documentos eletrônicos. Se as organizações não explorarem estes padrões, a longo prazo podem-se ter custos adicionais e flexibilidade reduzida.

45

CAPITULO III – O MUNDO XML

3.1. HISTÓRIA DA XML

A história da XML foi iniciada nos anos 70, quando a IBM inventou a linguagem GML (General Markup Language – linguagem de marcação genérica). Surgiu com a necessidade da empresa em armazenar uma grande quantidade de informações. Com a GML, a IBM conseguiria classificar e processar rapidamente todos os documentos. A ISO 14 (international organization for standardization – organização internacional para padronização), em 1986, trabalhou para padronizar esta linguagem. Neste momento, foi criada a SGML (Standard Generalized Markup Language - Linguagem Padrão de Marcações Genéricas), que era a GML, porém, com padrão. A SMGL é uma linguagem poderosa, com bastante adaptabilidade. Em 1989, foi criado o HTML (Hypertext Markup Language - linguagem de marcação de hipertexto). Linguagem para a criação de páginas em um site. A HTML foi derivada da SGML. Utiliza-se um conjunto de tags 15 (etiquetas ou marcas), entre os símbolos < >, que informam o que irá determinar a função de cada elemento. Em 1994, surge uma entidade chamada W3C 16 (world wide web consortium - consórcio da www). Ela cuidou de colocar em ordem o HTML, e de formalizar suas regras, para que fosse um padrão. Mesmo assim, o HTML não cumpriu tudo o que propunha e planejava para a Internet, crescendo de uma maneira descontrolada e desordenada. O HTML está em constante evolução, porém, ele não consegue suprir tudo que as aplicações necessitam. Surge, em 1996, a XML. Citando Marchal apud Pinheiro (2003, p. 22):

A XML foi proposta com o objetivo de suprir as limitações da HTML, complementando-a. Ao ser publicada como uma recomendação do W3C (world wide web consortium), em 1998, depois revisada em 2000, a XML

14 É uma organização de âmbito internacional (148 países no momento), que cuida da padronização e normalização. O ISO aprova normas válidas internacionalmente, em todos os campos técnicos, com exceção de eletrônica.

15

As tags formam o conjunto de comandos ou formatação da linguagem HTML.

16 Consórcio de âmbito mundial, criado em 1994. Desenvolve novas tecnologias, promovendo a constante evolução da Web.

46

rapidamente incorporou ferramentas que a colocam em um nível muito acima da simples publicação de documentos na Internet.

Quando foi criada, pensou-se que o propósito da XML seria de substituição da HTML. Este pensamento errôneo estende-se, em meios desinformados, até os dias

atuais. A XML não incorpora nada de apresentação 17 nas suas tags. As carências que se pretendia solucionar, e que o HTML não resolvia, eram:

o

no HTML, o conteúdo das páginas se mistura com as tags e estilos que se deseja apresentar;

o

no HTML, não permite compartilhar informações, seja entre computadores, telefones celulares ou os dispositivos móveis portáteis;

o

no HTML, a apresentação depende do visor.

Complementando os pontos acima, XML em 10 pontos (2006), nos mostra outras vantagens da XML:

o

XML é para estruturar dados;

o

XML parece um pouco com HTML;

o

XML é texto, mas não é para se ler;

o

XML é prolixo de propósito;

o

XML é uma família de tecnologias;

o

XML é modular;

o

XML é a base da Web Semântica 18 ;

o

XML é livre de licenças, independente de plataforma e é bem suportada.

Como características básicas da XML, segundo Pinheiro (2003): a proposta da XML é bastante simples; o objetivo é estruturar documentos; utiliza-se tags que podem ser criadas indefinidamente, tornado a linguagem com uma grande extensibilidade; grande disponibilidade de ferramentas desenvolvidas para o universo XML, que facilitam seu uso e implementação, auxiliando sua popularização (TOLENTINO apud PINHEIRO, 2003); facilidade de uso por ser uma linguagem legível, e até certo ponto compreensível pelo ser humano (YOUNG apud PINHEIRO, 2003); XML é de fácil validação e leitura por programas, ou seja, a construção de analisadores de dados XML, geralmente chamados de parsers (TOLENTINO apud

17 Mais adiante, no item 3.5, mostraremos a XSLT, encarregada da transformação e apresentação de documentos XML. 18 Conceito criado por Tom Berners Lee, criador da world wide web. O objetivo, ainda em andamento, é estruturar o conteúdo disponível da Internet, permitindo, dentre outras coisas, uma busca mais eficiente que as atuais. A XML é a linguagem pela qual os dados serão estruturados.

47

PINHEIRO, 2003); tem-se uma simplicidade sintática das marcações e a forte carga semântica contida na estrutura hierárquica (MARCHAL apud PINHEIRO, 2003). Daum e Merten (2002) nos explicam que a XML é uma mistura explosiva. Ela está localizada entre a tríade: Internet – processamento de documentos e banco de dados. Sua tecnologia passa maciçamente para a área de banco de dados e tecnologias de TI nas empresas, e sua aplicação é estabelecer comunicação entre as partes que estão em colaboração. A XML é uma tecnologia básica para a troca de documentos eletrônicos. Seu crescimento e adoção pelas organizações foi muito rápido, mesmo após a onda inicial. Agora a XML atingiu o status central no mundo da TI nas empresas. A questão de hoje para a XML não é se, mas como.

3.2. AS PRINCIPAIS UTILIZAÇÕES DA XML

Com relação à troca de documentos eletrônicos e o intercâmbio de dados

com formato neutro, na mesma empresa ou interorganizacionais, o uso da XML se tornou a sintaxe preferida para troca de mensagens corporativas. De acordo com Turban (et al, 2005, p. 343), “uma tecnologia emergente que suporta sistemas interorganizacionais e está sendo usada para integrar sistemas de parceiros comerciais é uma linguagem conhecida como XML [ Basicamente, onde existir a necessidade de troca de documentos eletrônicos, de maneira a automatizar os processos de negócio entre duas ou mais organizações, utiliza-se a XML. Segundo FURGERI (2001), as principais possibilidades de utilizações da XML são:

o troca de dados: motivo principal deste estudo. Devido à grande diversidade de computadores, rodando diferentes sistemas, em diferentes plataformas, sistemas e banco de dados contêm dados em formatos incompatíveis. Pelo fato do conteúdo básico do documento XML ser apenas texto, ela apresenta- se como a principal possibilidade de computadores diferentes trocarem dados pela internet. Neste caso, basta converter o formato do banco de dados em texto, seguindo regras estabelecidas nos documentos XML.

48

o

melhorar a busca de informações: a busca na Internet, com um grande número de páginas, sem padronização, é um sério problema. Utilizando a XML, tem-se um serviço de busca mais inteligente, evitando a procura dentro dos documentos HTML, onde está misturado apresentação e conteúdo.

o

automatização da web: devido ao fato da XML permitir a definição dos marcadores, os dados armazenados têm significado, permitindo linguagens, como o Java, manipular seu conteúdo, facilitando a pesquisa, inclusão, alteração e exclusão de dados.

o

uso em conjunto com documentos HTML: pode-se interligar a apresentação, contida nos documentos HTML, com os dados contidos nos documentos XML. Com isso, a mudança nos dados, no arquivo XML, refletirá diretamente no HTML, eliminando a necessidade de sua atualização.

o

desenvolvimento de catálogos: catálogos são documentos formados por conteúdo texto, altamente estruturados, que proporcionam um fácil tratamento por parte da XML. Podem possuir várias dimensões e se constituir de apenas texto, elementos gráficos ou imagens. Se escrito em linguagem XML, os catálogos poderão ter uma grande variedade de métodos de acesso e formas de apresentação, uma vez que diversas ferramentas, como veremos a seguir, podem analisar o seu conteúdo e apresentar. Um catálogo on-line, escrito em XML, é uma das partes mais importantes de um site, pois contém informações que os clientes desejam: produtos, fotos e preços.

o

automação da cadeia de suprimentos: enquanto os ERP´s realizam a integração total dos setores de uma empresa, os sistemas desenvolvidos a partir da XML realizam a integração de empresas. A automação do processamento de compra, maior flexibilidade na escolha de fornecedores e mudança na cadeia de suprimentos.

3.3. ALGUNS CONCEITOS DA XML

De acordo com Daum e Merten (2002), a regra principal de sintaxe da linguagem XML é a da boa formatação. Bem formatado significa que um documento

49

é sintaticamente correto. XML é uma linguagem de marcação. Elementos são identificáveis dentro de um documento com tags delimitadoras de início e fim. Mas, diferentemente do HTML, uma tag de início precisa sempre ter uma de fim. XML é case sensitive. De acordo com Pinheiro (2003), têm-se alguns conceitos da linguagem XML:

o

árvore: toda estrutura da sintaxe XML gira em torno de uma árvore. Um documento XML tem um, e apenas um, elemento raiz, e dentro deste, um número indefinido de outros elementos, distribuídos em níveis, também indefinidos.

o

elemento: é cada um dos componentes de um documento. Deve ser delimitado com tags de início e fim, e possuir um conteúdo.

o

nomes: os nomes das tags são livres, portanto, não existem nomes pré- definidos. Cada elemento deve possuir um nome.

o

tags: em XML são as marcações propriamente ditas, portanto, delimitam um elemento, e deve ter um nome de acordo com as regras estabelecidas. Como no HTML, as tags são sempre delimitadas pelos caracteres de abertura de fechamento “<” e “>”.

o

conteúdo de um elemento: é a porção de dados delimitados peças marcações de início e fim. Porém, há uma exceção para elementos vazios, que pode ser fechado com a própria tag de abertura, com o caracter “/” antes do delimitador “>”. O conteúdo do elemento pode conter qualquer coisa, inclusive outros elementos, criando o conceito recursivo, que gera uma estrutura em árvore.

o

atributos: são dados adicionais que podem ser atribuídos a um determinado elemento. São fornecidos na forma de pares: nome e valor, separados por um caracter “=”. Os nomes de atributos seguem as mesmas regras dos nomes dos elementos. Os valores são delimitados por aspas (“) ou apóstrofes (‘).

o

primeira linha do documento: precisa conter uma declaração XML, na qual identifica um documento XML, e determina a versão da XML, bem como, opcionalmente, qual o conjunto de caracteres padrão.

o

comentários: o que estiver inserido entre os marcadores “<!--" e “-->” são considerados comentários, e serão ignorados pelo processador XML.

o

outros elementos: há ainda outros elementos, como seções CDATA.

50

A figura 5 nos mostra um documento XML.

<?xml version="1.0" encoding="UTF-8"?> <!-- edited with XMLSPY v2004 (http://www.xmlspy.com) by Gestão e Desenvolvimento WEB --> <!DOCTYPE PRODUTOS SYSTEM "proddtd.dtd"> <PRODUTOS> <PRODUTO> <NOME>BORRACHA</NOME> <FABRICANTE> <FANTASIA>LATEX DO BRASIL</FANTASIA> <RAZAOSOCIAL> LATEX DO BRASIL LTDA</RAZAOSOCIAL> <ENDERECO> <RUA>RUA DAS AMERICAS</RUA>

<NUMERO>123</NUMERO>

<CIDADE>BELO HORIZONTE</CIDADE> <ESTADO>MG</ESTADO>

<CEP>30384260</CEP>

</ENDERECO> </FABRICANTE> <PRECO MOEDA="R$" PAIS="BRASIL">21,21</PRECO> </PRODUTO> </PRODUTOS>

Figura 05: Exemplo de um documento XML Fonte: Arquivo pessoal

3.4. A VALIDAÇÃO DE DOCUMENTOS XML

Um documento XML que atende as regras de sintaxe é um documento bem- formado. Porém, para a maioria das aplicações, ele deve ser validado baseado numa estrutura previamente definida, que constitui uma família de documentos. Estas especificações têm alguns mecanismos para se determinar a estrutura de validação de um documento XML. (PINHEIRO, 2003). Segundo Daum e Merten (2002), no passado a DTD (document type definition

– definição de tipo de documento) era o modo padrão de se definir um esquema

para um documento XML. No entanto, mais de uma dezena de linguagens alternativas de definição de esquemas foram criadas por várias instituições e indivíduos. Entretanto, o W3C produziu uma nova linguagem de esquema, a XML Schema.

51

a. DTD

O DTD é um documento (esquema) que validará um documento XML. Lee e Chu apud Pinheiro (2003), em estudos comparativos para validação estrutural e sintática da XML, apontam vários fatores restritivos ao uso da DTD:

o

sua sintaxe não é baseada ou derivada da XML, o que não permite que ela seja validada por um parser.

o

as declarações da DTD são globais, não permitindo declarar elementos de mesmo nome em pontos distintos do documento

o a DTD tem deficiências na especificação do tipo de dado dos elementos (inteiro, real, alfa-numérico, etc). Na figura 6, temos um exemplo de uma DTD, que valida o documento XML da figura 5.

<!ELEMENT PRODUTOS ((PRODUTO))+> <!ELEMENT PRODUTO (NOME, FABRICANTE, PRECO)> <!ELEMENT FABRICANTE (FANTASIA, RAZAOSOCIAL, ENDERECO+)> <!ELEMENT ENDERECO (RUA, NUMERO, CIDADE, ESTADO, CEP)> <!ELEMENT NOME (#PCDATA)> <!ELEMENT PRECO (#PCDATA)> <!ELEMENT FANTASIA (#PCDATA)> <!ELEMENT RAZAOSOCIAL (#PCDATA)> <!ELEMENT RUA (#PCDATA)> <!ELEMENT NUMERO (#PCDATA)> <!ELEMENT CIDADE (#PCDATA)> <!ELEMENT ESTADO (#PCDATA)> <!ELEMENT CEP (#PCDATA)> <!ATTLIST PRECO MOEDA CDATA #REQUIRED PAIS CDATA #REQUIRED> <!ATTLIST FABRICANTE NACIONALIDADE CDATA "BRASILEIRA">

Figura 06: Exemplo de uma DTD Fonte: Arquivo pessoal

b. XML Schema

As deficiências apontadas na DTD, foram suficientes para o W3C, em 2001, lançar e recomendar o XML Schema. Segundo Pinheiro (2003, p. 39), “um Esquema

52

XML tem por objetivo descrever a estrutura de um documento. Ele define os elementos existentes no documento, bem como sua ordem e os valores possíveis para os conteúdos”. A figura 7 nos mostra um exemplo de um XML Schema.

<?xml version="1.0" encoding="UTF-8"?> <!-- edited with XMLSPY v2004 rel. 2 (http://www.xmlspy.com) by Gestão e Desenvolvimento WEB --> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"> <xs:element name="mensagem"/> <xs:element name="de" type="xs:string"> <xs:annotation> <xs:documentation>Comment describing your root element</xs:documentation> </xs:annotation> </xs:element> <xs:element name="assunto" type="xs:string"/> <xs:element name="para" type="xs:string"/> <xs:element name="data" type="xs:date"/> <xs:element name="texto" type="xs:string"/> </xs:schema>

Figura 07: Exemplo de um XML Schema Fonte: Arquivo pessoal

As principais características do XML Schema são explicadas por Pinheiro

(2003):

o

tem a mesma estrutura de um documento XML, ou seja, é uma aplicação XML, com o mesmo vocabulário, 19 capaz de definir estruturalmente classes de documentos XML, e validá-las;

o

namespaces (espaço de nomes): contextualiza um nome de elemento ou de atributo em um documento XML, ou seja, determina um escopo para os elementos declarados. Utilizando o espaço de nomes, passa a ser permitido a repetição de um nome de elemento em um documento XML, desde que esteja em escopos diferentes. Declaram-se os namespaces apontando uma URI (uniform resource identifier). A XML permite que se declarem vários namespaces em um único documento, para tal, identifica cada um separado pelo caracter dois pontos (“:”), da palavra reservada xmlns.

grande diversidade de tipos de elementos; Com relação à criação do XML Schema, temos um conjunto de regras determinadas pelo W3C, que são: definições básicas; estruturas; tipos de dados.

o

19 Vocabulário é um conjunto de regras estruturais e escopo de valores de uma família de documentos. O W3c já recomedou diversos vocabulários, dentre eles: MathML (descrição de fórmulas matemáticas), CML (química), MML (clínica médica), dentre outros.

53

3.5. O QUE HÁ EM TORNO DA XML

Na verdade, a XML é muito simples, e existe ao seu redor um mundo de outras tecnologias que a completam e a fazem ampliar as possibilidades, facilitando a maneira que trabalha com os dados, e avance no tratamento as informações, bem como na busca e na recuperação. A XML não é apenas uma linguagem, mas várias que a fazem flexível, extensível e poderosa. Conforme nos mostra Daum e Merten 20 acerca do que há em torno da XML, são várias especificações recomendadas pelo W3C, como XPath, XPointer, XInclude, XQuery, XSL e DOM, que regulamentam o acesso a documentos XML, sua composição e transformação.

a. XPath

XPath define como os nós dentro dos documentos XML podem ser acessados. As expressões usadas no XPath têm um papel fundamental, e podem ser utilizadas em outros padrões, como na XSL e na XQuery, que veremos a seguir. Vimos que a XML é um conjunto de informações numa estrutura de árvore, com isso, ficará facilitada a localização de um elemento ou um atributo especificando os nós pai. Utilizam-se expressões de caminho que especificam um arquivo dentro de um diretório de arquivos. Por exemplo, se desejarmos recuperar o último nome do autor 5, numa árvore de hierarquia do pai para os filhos: livro – autores – autor – último_nome, tem-se :

/livro/autores/autor[5]/último_nome. Como tudo em XML é case sensitive, aqui também precisa-se levar em consideração as maiúsculas e minúsculas. Pode-se fazer o uso de funções na XPath, por exemplo: last() (número do último nó no contexto em questão); count() (número de nós de um conjunto de nós);

20 As especificações a seguir serão baseadas no livro: DAUM, Bethold; MERTEN, Udo. Arquitetura de sistemas com XML. Rio de Janeiro: Campus, 2002, cap. 2.

54

true() false() (valores booleanos verdadeiro ou falso); sum() (soma valores numéricos de um conjunto de nós); dentre outras.

b. XPointer

XPointer é baseado em XPath. É a linguagem de ponteiro XML. Identifica a parte desejada ou o elemento dentro documento. Sua finalidade é aumentar o endereço URI, de modo que seja possível endereçar para dentro de um arquivo XML. Fazendo uma similaridade com o HTML, seria uma âncora específica dentro de uma página que pode ser endereçada complementando-se uma URI com o nome da âncora. Outra característica do uso do XPointer é permitir que atinja um dado elemento pelo número, pelo nome, pelo tipo ou pela relação a outros elementos no documento.

c. XInclude

XInclude especifica como incluir documentos XML externos, em um documento XML alvo. XInclude introduz um mecanismo para fundir documentos XML. A sintaxe utiliza as mesmas características da XML - elementos, atributos, e referências de URI. Com o Xinclude, podem-se compor documentos de diferentes namespaces. A figura 8 temos um documento XML mostrando a flexibilidade do XInclude.

55

<?xml version=”1.0”?> <document xmlns:xi="http://www.w3.org/2001/XInclude"> <p>Filmes de ficcao</p> <xi:include href="filmes_ficcao.xml"/> </document>

Arquivo : filmes_ficcao.xml

<?xml version=”1.0”?> <filmes> <p>Matrix</p> </filmes>

Resultado após a mesclagem

<?xml version=”1.0”?> <document xmlns:xi="http://www.w3.org/2001/XInclude"> <p>Filmes de ficcao</p> <filmes xml:base="http://www.filmes.com.br/filmes_ficcao.xml"> <p>Matix</p> </filmes> </document>

Figura 08: Exemplo de um documento XML utilizando XInclude Fonte: Arquivo pessoal

d. XQuery

A necessidade de se ter consultas em XML, fez o W3C desenvolver o XQuery, que é a linguagem funcional de consulta a documentos XML. Ela tem características do XPath e do SQL (Structure Query Languange) 21 , e outras linguagens. Como é uma linguagem recente, alguns problemas foram detectados no início, mas, novas versões com correções foram lançadas. As consultas são feitas através de uma expressão. Em um banco de dados relacional, onde os dados estão estruturados, usa-se a SQL para o acesso e manutenção nos dados. Num documento XML, precisa-se de um recurso viável para resgatar os dados e obter as informações: XQuery é este recurso. As expressões XQuery são bastante parecidas com expressões SQL. XQuery, portanto, focaliza assuntos que não são cobertos pela XPath.

21 Linguagem funcional padrão de todos os banco de dados para definição e manipulação dos dados.

56

e. XSL

As especificações da XSL (extensible stylesheet language – linguagem de estilo extendida) definem como os documentos XML podem ser transformados em

outro formato, principalmente em um formato para apresentação. Esta especificação possui três partes: XPath, XSLT (XSL transformations – transformações XSL) e XSLFO (objetos de formatação XSL).

o

XPath: como vimos no item 3.5 – a, XPath é uma linguagem para navegarmos arquivos XML. Ela foi criada originalmente no contexto da XSL. Posteriormente ela se tornou uma recomendação separada.

o

XSLT: é uma linguagem baseada em XML. Especifica como os documentos XML podem ser transformados em outro formato (XML ou não). O documento de entrada precisa ser um XML bem formado.

o

XSLFO: é a linguagem para formatar arquivos XML. XSLFO pode ser comparada com a CSS (cascading style sheets - folhas de estilo em cascata), que faz a formatação de estilo em páginas HTML.

f.

APIS XML

São interfaces de programas de aplicações para XML. Definem como as aplicações podem utilizar os analisadores existentes e outras ferramentas XML. As aplicações são livres para tratar um documento XML e realizar a análise com lógica personalizada, porém, é recomendado que isto seja evitado, e utilizem analisadores padrões, como o SAX ou DOM.

g. SAX

SAX (Simple API for XML) não é um padrão do W3C. Existem diversos analisadores SAX, para diferentes linguagens de programação, dentre elas, Java, C++ e Delphi. As especificações SAX estão disponíveis publicamente.

57

SAX é um analisador baseado em eventos – ele lê um fluxo de entrada XML. SAX é bastante simples, não exige muita memória e suporta namespace. Não é possível modificar um documento XML, pois SAX é somente de leitura.

h. DOM

DOM (document object model) é uma interface de programação de aplicação completa para documentos XML. Esta interface permite que clientes possam navegar, acrescentar, modificar ou excluir documentos XML. DOM é relativamente pesado nos recursos, porém, ao contrário do SAX, armazena a estrutura completa do documento na memória. Como exemplo de uma implementação DOM muito popular nas plataformas Windows é o MSXML da Microsoft. A figura 9 nos mostra um exemplo de DOM:

Set xmlDoc = CreateObject("Msxml2.DOMDocument.4.0") Set stylePI = xmlDoc.createProcessingInstruction("xml", "version=""1.0""") xmlDoc.appendChild(stylePI) Set root = xmlDoc.createElement("ALUNOS") xmlDoc.appendChild root AdicionaAluno "1", "Renato", root AdicionaAluno "2", "Paulo", root AdicionaAluno "3", "Marcos", root AdicionaAluno "4", "Sérgio", root xmlDoc.save "c:\alunos.xml" sub AdicionaAluno(id, nome, raiz) set eleAluno = xmlDoc.createElement("ALUNO") eleAluno.setAttribute "id", id set eleNome = xmlDoc.createElement("NOME") Set eleNomeConteudo = xmlDoc.createTextNode(nome) eleNome.appendChild eleNomeConteudo eleAluno.appendChild eleNome raiz.appendChild eleAluno end sub

Figura 09: Exemplo de um documento DOM Fonte: Arquivo pessoal

58

CAPÍTULO IV – TROCA DE DOCUMENTOS ELETRÔNICOS VIA XML

4.1. CONCEITOS INICIAIS DAS ARQUITETURAS DE COMUNICAÇÃO

a. Web Services

Para entender a tecnologia de troca de documentos eletrônicos via XML, precisamos voltar um pouco no tempo, para entender os web services. De acordo com Doederlein (2006), no princípio dos anos 70 a programação de redes de computadores exigia o uso de APIs de camada de transporte, por exemplo BSD Sockets para TCP/IP (Transfer Control Protocol/Internet Protocol). A adoção de programação orientada a objetos, entre meados de 80 e começo dos anos 90, exigiu uma tecnologia de programação distribuída adequada, assim, surgiram os middlewares 22 de objetos distribuídos. O principal representante foi o CORBA (Common Object Request Broker Architecture), 23 que especifica um middleware aberto composto de objetos distribuídos, permitindo que componentes de software sejam conectados juntos, formando um sistema coeso. Enquanto isso, surgia o grande corrente do CORBA, o COM (Component Object Model), da Microsoft; não aberto, não multiplataforma, pior em desempenho e em flexibilidade, porém, a família da tecnologia COM tinha maior integração com o Windows. Na história dos objetos distribuídos, a plataforma J2EE (Java 2 Enterprise Edition) entrou com a produtividade, portabilidade e estabilidade, facilitando em alguns aspectos: não exigindo o uso de diversas de plataformas; livrando o programador de tarefas burocráticas comuns em CORBA e COM; mais integração do container J2EE, reunindo um middleware básico com serviços básicos; gerenciamento total da plataforma de aplicação, graças ao modelo bytecode portável. Posteriormente, surge o .NET da Microsoft, cuja arquitetura é um pouco mais evoluída que o COM. Em 2000, para surpresa de todos, houve um grande interesse nos web services. Duvidava-se desta nova tecnologia, pois: Quem precisava de um novo

22 Middleware é uma camada de software que fica no meio do caminho entre as aplicações distribuídas, provendo a comunicação entre as camadas de aplicação. 23 A OMG (Object Management Group) estabeleceu a arquitetura CORBA.

59

middleware? Qual a vantagem em substituir protocolos existentes por SOAP (Simple Object Access Protocol)? Não era mais uma estratégia da Microsoft? Precisava-se de respostas para estas perguntas. Um web service é um componente de software que provê dado e serviços para aplicações da Internet, contemplando a interação com outras aplicações. Os web services podem ser utilizados em conjunto com sistemas legados, assim, pode- se adicionar novas funcionalidades a eles, sem que seja necessário retirá-los de produção. A grande aceitação dos web services resultou no surgimento de um conjunto de tecnologias, que se tornaram um padrão, dentre elas: SOAP, WSDL e UDDI.

Percebem-se muitos outros avanços nos web services, por exemplo, o baixo acoplamento, reduzindo ao mínimo a quantidade de informações que uma aplicação tem sobre as demais. Com o uso da XML, que é o formato de dados de baixo acoplamento por excelência, os web services tornam-se o mais forte candidato a middelware universal, viabilizando o cenário de integração com custos mais reduzidos. (DOEDERLEIN, 2006). Segundo Barbosa (2006), usando web services elimina-se a necessidade dos aplicativos conversarem entre si, promovendo o uso de interfaces para comunicação. Também os web services são uma maneira de implementar EAI – todo software EAI conversa com os web services. O crescente interesse nos web services é que eles permitem SOA (Service-Oriented Architecture – arquitetura orientada a serviços).

b.

SOAP

No ano de 2000, o W3C aceitou a submissão do SOAP. É um protocolo de mais alto nível que o TCP/IP. Este formato de mensagem estabeleceu uma estrutura de transmissão para comunicação entre aplicações ou serviços via HTTP. Sendo uma tecnologia não vinculada a fornecedor, o SOAP disponibilizou uma alternativa atrativa em relação aos protocolos proprietários tradicionais. SOAP é assíncrono, ou seja, é capaz de, após despachar uma mensagem, processar outras.

60

De acordo com Doederlein (2006), SOAP possui duas vantagens:

o

Facilidade de tráfego na rede. Não é preciso abrir portas de firewall para deixar passar SOAP, pois são simples requisições HTTP.

o

Uso de XML, que por ser transformável, num cenário de integração feitas de forma independente, não é preciso que todos utilizem exatamente o mesmo esquema XML, apenas que reconheçam as mesmas entidades. Citando Reis (2005, p. 25):

Uma das particularidades interessantes do SOAP é que ele na verdade não

é apropriado para comunicação entre objetos remotos (e veja que SOAP é a

sigla para Simple Object Access Protocol). Ele é mais indicado para prover serviços, utilizando-se de passagem de parâmetros e recepção em um formato hierárquico (XML). Uma das razões para isso é que não houve uma grande preocupação em fazer com que o cliente tivesse a sensação de que

o que ele acessava do seu lado fosse um objeto real. Isso até que é fácil de entender, pois SOAP pode ser acessado inclusive por tecnologias não- orientadas a objeto.

Como SOAP permite a comunicação entre os dois mundos – objetos e não- objetos – foi desvinculada a idéia de objetos da tecnologia SOAP. Porém, o acesso se faz através de serviços.

c.

WSDL

WSDL (web services description language - linguagem de definição de serviços web), foi especificada pelo W3C, um ano após o SOAP, como uma nova implementação da XML. É uma linguagem padrão para descrever a interface dos web services. O WSDL também é baseado em XML e trafega sobre o HTTP, fornecendo uma descrição do serviço, possibilitando a integração com ferramentas de desenvolvimento. No WSDL estão descritos: a URL para acessar o serviço; o nome do web service; a descrição de cada método; a forma de fazer a requisição utilizando SOAP, GET ou POST. Segundo Reis (2005, p. 26), “algumas vezes encontramos a definição de WSDL como o currículo do serviço.” Na figura 10 temos um exemplo de WSDL.

61

61 Figura 10: Exemplo de WSDL. Fonte: REIS, 2005, p. 26. d. UDDI Segundo Doederlein (

Figura 10: Exemplo de WSDL. Fonte: REIS, 2005, p. 26.

d. UDDI

Segundo Doederlein (2006), podemos ter serviços padronizados, implementando operações úteis para aplicações. O mais essencial é o UDDI (Universal description, discovery and integration - descrição, descoberta e integração universais), um diretório que permite publicar e localizar informações sobre os serviços disponíveis. Estas informações estão organizadas como documentos WSDL. UDDI funciona como páginas amarelas (lista telefônica de WSDL´s), ou seja, um local onde se registra os web services. Quando não se sabe onde o web service está, com o UDDI faz-se a descoberta. (BARBOSA, 2006).

e. SOA

O SOA (Service oriented architecture - arquitetura orientada a serviços), é uma idéia arquitetural para as aplicações que integra os serviços para os usuários. Esta arquitetura é baseada em XML e utiliza tudo com web service (BARBOSA,

62

2006). A figura 10 nos mostra a tríade de tecnologias que compõe os web services:

SOAP; WSDL; UDDI.

tecnologias que compõe os web services: SOAP; WSDL; UDDI. Figura 11: Tríade de tecnologias que compõe

Figura 11: Tríade de tecnologias que compõe os web services. Fonte: REIS, 2005, p. 25.

É necessário que a tríade de protocolos funcione da seguinte forma:

o

o cliente lista os serviços disponíveis a partir de um servidor (UDDI);

o

escolhido um serviço, pede-se uma descrição do serviço através de seu currículo (WSDL);

o a chamada ao serviço acontece, passando parâmetros e recebendo valores (SOAP). (REIS, 2005). Busca-se com SOA modularizar a empresa em termos de serviços que podem ser reaproveitados e publicados para outras empresas, logo, o objetivo principal é modularizar e disponibilizar. SOA expandiu o conceito para que todos os serviços sejam modularizados ou componentizados. (REIS, 2005).

f.

BPM

BPM (business process modeling – modelagem de processos de negócio) é uma maneira de modelagem de processos de uma organização. Inspirou-se em um conceito de alguns anos: O&M (organização & métodos). Os analistas de sistemas têm pensado muito mais nas janelas dos sistemas, do que no gerenciamento da empresa por processos. (BARBOSA, 2006). BPM é uma evolução de EAI - visto no item 2.2 - além de saber a interface, sabe-se os processos.

63

Citando REIS (2005, p. 26):

A idéia do BPM é permitir que os processos da empresa sejam modelados

por fluxo de informação, ao invés de modelados por sistema.[

desenvolvimento tradicional, são desenvolvidos ou implantados cada um dos módulos da empresa. Por exemplo, cria-se o módulo de controle de estoque, financeiro, compras, recursos humanos, etc. E procura-se fazer com que os módulos se integrem criando portas de comunicação entre eles. Estas portas de comunicação podem ir desde a troca de arquivos TXT até técnicas mais sofisticadas.

em um

]

SOA e BPM se interagem de forma magnífica. Pode-se ter web services em cada atividade (pedidos, compras, materiais, fornecedores, clientes, etc), com isto, tem-se uma orquestração da empresa através dos web services, promovendo a integração para o resultado final. (REIS, 2005). Esta orquestração deve prever o uso de BPEL (business process execution language - linguagem para a execução de processos de negócio), 24 evitando qualquer incompatibilidade com esta alternativa, por exemplo, participantes que não possam falar SOAP, e não seriam orquestráveis por um motor BPEL. BPMS (business process management system – sistema de modelagem de processos de negócio) – é uma ferramenta para permitir que um desenho dos processos seja feito de forma visual. Devem permitir: simular os fluxos de processos; desenhar diagramas de wokflow; possuir ferramenta de EAI (que integre, pelo menos, com SOAP e web service); suportar servidor de aplicação. BPMN (business process modeling notation – notação para modelagem de processos de negócio) – representação gráfica para representar a maioria das situações comuns que acontecem com os fluxos de processos.

4.2. CONTEXTO PARA TROCA DE DOCUMENTOS

Se investigarmos os sistemas de informação das organizações, encontraremos inúmeros contextos carentes de troca de documentos eletrônicos. Isto porque, houve nos últimos anos, uma disseminação de sistemas de informação,

24 Uma linguagem XML para descrição de procesos de negócio. Permite descrever como as aplicações e as mensagens estão ligadas.

64

com as mais variadas arquiteturas e plataformas, com diferentes linguagens de programação e sistemas gerenciadores de bancos de dados, sem a preocupação com padronização. As tecnologias muitas vezes não conseguem se comunicar. Segundo Barbosa (2006), na Cemig (Centrais Elétricas de Minas Gerais), o número de sistemas que estão rodando está entre 1000 e 2000. O complicador é a heteriogenidade da natureza destes sistemas. Quando expandirmos o universo para os sistemas de informação em diferentes empresas, ou seja, interorganizacionais, teremos um quadro ainda pior. NFe – Nota Fiscal eletrônica - Para este estudo, usaremos o contexto da implantação da NFe nas empresas. Os sistemas das organizações para a emissão e controle das notas fiscais, por exemplo, os ERP´s, podem estar nas mais diversificadas arquiteturas. Temos então neste contexto: as empresas emissoras; as empresas receptoras; os escritórios de contabilidade (várias empresas fazem a contabilidade externamente); o governo. Este último, também, possui sistemas de informação em plataformas bastante diversificadas. A emissão e controle manual das notas fiscais muitas vezes são feitos em sistemas com uma informatização mínima, sem integração com os próprios sistemas internos. Este quadro ainda é a realidade em boa parte das organizações. Outro agravante são as empresas que fazem os serviços de contabilidade externamente, também sem integração. Neste caso a apuração dos impostos é feita de maneira isolada, manualmente, enviando para o Fisco apenas os valores apurados. Segundo Moreira (2006), “o objetivo é substituir a nota fiscal em papel, simplificando as obrigações dos contribuintes e permitindo, ao mesmo tempo, o acompanhamento em tempo real das operações comerciais pelo Fisco.” De acordo com o Ministério da Fazenda (2006):

A integração e cooperação entre administrações tributárias têm sido temas

muito debatidos em países federativos, especialmente naqueles que, como

o Brasil, possuem forte grau de descentralização fiscal. Nesses países, a

autonomia tributária tem gerado, tradicionalmente, multiplicidade de rotinas

de trabalho, burocracia, baixo grau de troca de informações e falta de

compatibilidade entre os dados econômico-fiscais dos contribuintes.[

controle apresenta-se difícil porque falta a visão integrada das ações dos

Portanto, a integração e compartilhamento de informações

têm o objetivo de racionalizar e modernizar a administração tributária brasileira, reduzindo custos e entraves burocráticos, facilitando o cumprimento das obrigações tributárias e o pagamento de impostos e contribuições, além de fortalecer o controle e a fiscalização por meio de intercâmbio de informações entre as administrações tributárias.

contribuintes[

o

]

]

65

A NFe é um documento digital emitido e armazenado eletronicamente. Sua validade jurídica é garantida pela assinatura digital do emitente e a autorização do uso fornecida pela administração tributária onde reside o contribuinte. Embora o sistema adotado pelas secretarias esteja baseado em Java, é válido destacar que sua compatibilidade se dá com qualquer solução desenvolvida em código aberto. COMPUTERWORLD (2006). Segundo Rodrigues apud Moreira (2006) a NFe é um projeto que vai diminuir as malfadadas obrigações acessórias das empresas neste país. Além de possibilitar

a redução de custos, a iniciativa não exigirá grandes investimentos das companhias.

A adoção da NFe pelas grandes empresas pressionará o uso dentro da sua cadeia

de fornecimento. A opção pelo documento eletrônico é voluntária, mas com o tempo vai se tornar quase uma obrigação, não pela lei, mas pelo mercado. Segundo Ministério da Fazenda (2006), como projeto da NFe, as mudanças serão significativas no processo de emissão e gestão das informações fiscais:

o

Benefícios para o contribuinte vendedor (emissor da NFe) : redução de custos de impressão; redução de custos de aquisição de papel; incentivo ao uso de relacionamentos eletrônicos com clientes (B2B);

o

Benefícios para o contribuinte comprador (receptor da NFe): eliminação de digitação de notas fiscais na recepção de mercadorias; planejamento de logística de entrega pela recepção antecipada da informação da NFe; redução de erros de escrituração; incentivo ao uso de relacionamentos eletrônicos com fornecedores (B2B);

o

Benefícios para a sociedade: redução do consumo de papel, com impacto positivo no meio ambiente; incentivo ao comércio eletrônico e ao uso de novas tecnologias; padronização dos relacionamentos eletrônicos entre empresas;

o Benefícios para as administrações tributárias: aumento na confiabilidade da Nota Fiscal; melhoria no processo de controle fiscal, possibilitando um melhor intercâmbio e compartilhamento de informações entre os fiscos; diminuição da sonegação e aumento da arrecadação; Deve-se ressaltar que, por enquanto, para o consumidor final não haverá mudanças, pois o projeto fixa-se nas transações internas das empresas.

66

4.3. TROCA DE DOCUMENTOS ELETRÔNICOS COM XML

Um cenário como descrito no contexto do item 4.2, parece ideal para a troca de documentos eletrônicos com XML. Citando Moreira (2006):

Na prática, a empresa emissora de nota fiscal eletrônica gera um arquivo eletrônico contendo as informações fiscais da operação comercial (no formato XML), que deve ser assinado digitalmente, garantindo a integridade dos dados e a autoria do emissor. Este arquivo eletrônico é então transmitido via internet à Secretaria da Fazenda de jurisdição do contribuinte, que fará uma pré-validação e devolverá um protocolo de recebimento à empresa, sem o qual a mercadoria não pode ser transportada. O documento eletrônico também será transmitido à Receita Federal, que será o repositório nacional de todas as NF-e emitidas e, no caso de operações interestaduais, para a Secretaria de Fazenda de destino da operação e Suframa (para mercadorias destinadas às áreas incentivadas).

Com a chave de acesso, o destinatário poderá consultar o documento eletrônico. Em papel teremos a impressão de uma representação gráfica simplificada da NFe, chamado DANFE (documento auxiliar da NFe), que conterá impressa a chave de acesso para consulta da NFe na internet e um código de barras

bidimensional que facilitará a captura e a confirmação de informações da NFe pelas unidades fiscais. (MOREIRA, 2006). Conforme as arquiteturas de comunicação vistas em 4.1, a NFe eletrônica as

usa, segundo PROJETO NFe

(2006), da seguinte maneira:

Os Portais das Secretarias de Fazenda Estaduais irão disponibilizar os seguintes serviços: a) Recepção de NF-e; 1) Recepção de Lote; 2) Consulta Processamento de Lote; b) Cancelamento de NF-e; c) Inutilização de numeração de NF-e; d) Consulta da situação atual da NF-e; e) Consulta do status do serviço. Para cada serviço oferecido existirá um Web Service específico. O fluxo de comunicação é sempre iniciado pelo aplicativo do contribuinte através do envio de uma mensagem ao Web Service com a solicitação do serviço desejado. O Web Service sempre devolve uma mensagem de resposta confirmando o recebimento da solicitação de serviço

A comunicação entre o

ao aplicativo do contribuinte na mesma conexão. [

contribuinte e a Secretaria de Fazenda Estadual será baseada em Web

Services disponibilizados nos Portais das respectivas Secretarias de

troca de mensagens entre

Fazenda da circunscrição do contribuinte. [

os Web Services do Portal da Secretaria de Fazenda Estadual e o aplicativo

do contribuinte será realizada no padrão SOAP, com troca de mensagens XML no padrão Style/Enconding: Document/Literal, wrapped.

]

]A

67

Estão disponibilizados vários arquivos de padronização, dentre eles os esquemas XML (XML Schemas). A figura 12 nos mostra o arquivo cabecmsg.xsd que é o esquema de validação do cabeçalho da mensagem de web service.

<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.portalfiscal.inf.br/nfe" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" targetNamespace="http://www.portalfiscal.inf.br/nfe" elementFormDefault="qualified" attributeFormDefault="unqualified"> <xs:element name="cabecMsg"> <xs:annotation> <xs:documentation>Schema XML de validação do cabeçalho da mensagem de Web Service </xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element name="versaoDados"> <xs:annotation> <xs:documentation>Versão da Leiaute XML da área de Dados

</xs:documentation> </xs:annotation> <xs:simpleType> <xs:restriction base="xs:decimal"> <xs:pattern value="[1-9]{1}[0-9]{0,1}\.[0-

9]{2}"/>

</xs:restriction> </xs:simpleType> </xs:element> </xs:sequence> <xs:attribute name="versao" use="required" fixed="1.02"> <xs:simpleType> <xs:restriction base="xs:decimal"> <xs:totalDigits value="4"/> <xs:fractionDigits value="2"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> </xs:element> </xs:schema> Figura 12: Esquema XML de validação do cabeçalho da mensagem de Web Service Fonte: MINISTÉRIO DA FAZENDA (2006)

Já existe a NFe em funcionamento em diversas organizações, principalmente de grande porte. A figura 13 temos um trecho de um documento XML com a NFe da Souza Cruz. Por ser extremamente extenso, o trecho do documento abaixo está reduzido e com adaptações.

<NFe xmlns="http://www.portalfiscal.inf.br/nfe"> <ide>

<natOp>Venda de merc. adquiridarecebida de 3s - ST</natOp>

<indPag>1</indPag>

<mod>55</mod>

<serie>10</serie>

<nNF>1</nNF>

<dEmi>2006-09-14</dEmi>

68

<dSaiEnt>2006-09-15</dSaiEnt>

<tpNF>1</tpNF>

</ide>

<emit>

 

<CNPJ>33009911004711</CNPJ>

<xNome>SOUZA CRUZ S.A.</xNome> <xLgr>R PROF SARMENTO BARATA</xLgr>

<nro>297</nro>

<xMun>PORTO ALEGRE</xMun> <UF>RS</UF>

<fone>8008882223</fone>

</emit>

<dest><CNPJ>00870198000326</CNPJ>

<xNome>POSTO LIBERDADE LTDA</xNome> <enderDest><xLgr>AV IPIRANGA</xLgr> <nro>2495</nro><xBairro>PR BELAS</xBairro> <xMun>PORTO ALEGRE</xMun>

</dest>

<prod>

 

<cProd>7000032</cProd>

<cEAN/> <xProd>CARLTON RED</xProd>

<genero>24</genero>

<CFOP>5403</CFOP>

<qCom>2.400</qCom>

<vProd>292.82</vProd>

<pICMS>25.00</pICMS>

<vICMSST>9.29</vICMSST>

</ICMS10></ICMS>

<cEnq>999</cEnq>

<IPITrib><CST>50</CST>

<qUnid>2.400</qUnid>

<vUnid>35.9000</vUnid>

</prod>

</NFe> Figura 13: Trecho de um documento XML com a NFe da Souza Cruz

Fonte: SECRETARIA DA FAZENDA DO ESTADO DO RS (Figura adaptada)

A tabela 01 nos mostra um quadro com o resumo dos padrões técnicos necessários para a NFe. Percebe-se a XML como base de todas as tecnologias.

69

69 Tabela 01: Resumo dos padrões técnicos para a NFe Fonte: PROJETO NFe , 2006, p.

Tabela 01: Resumo dos padrões técnicos para a NFe

Fonte: PROJETO NFe

, 2006, p. 10

4.4. O FIM DO PAPEL UTILIZADO NA TROCA DE DOCUMENTOS

O papel sempre foi um meio imprescindível para a realização de trocas de documentos entre empresas. A quantidade de papel aumenta à medida que o volume de negócios que as empresas possuem também aumenta. No início da era da informática, dizia-se que haveria redução do consumo de papel. Aconteceu o contrário, o consumo aumentou nos últimos anos. Porém, com o aumento na troca de documentos eletrônicos interorganizacionais, poderá ser reduzido o consumo de papel. É uma realidade que grande número de empresas têm a gestão ambiental como parte dos objetivos estratégicos. Elas desejam dar sua contribuição para uma melhor qualidade de vida do nosso planeta. A diminuição do uso do papel trará uma iniciativa de prevenção do meio ambiente.

70

No contexto deste estudo de troca de documentos eletrônicos via XML, visto no item 4.2, a NFe (nota fiscal eletrônica), de acordo com Moreira (2006), o projeto permite reduzir os custos das empresas com papel. Uma empresa participante do projeto da NFe, a Eurofarma, prevê uma economia de 25 mil reais por mês com aquisição de papel, impressão e armazenamento de documentos fiscais. Assim, espera obter o retorno do investimento no projeto em 12 e 18 meses. Outro exemplo, a Ford, empresa que emite 60 mil notas fiscais no mês. Ao ano, somente com a venda de automóveis, são aproximadamente 300 mil notas fiscais emitidas em papel.

Num cenário futuro, quando a NFe deixará o âmbito entre empresas, e atingir os consumidores finais, pode-se ter o término, inclusive, das contas de luz, água e telefone, em papel.

4.5.

OUTRAS

TECNOLOGIAS

ELETRÔNICOS

PARA

TROCA

DE

DOCUMENTOS

XML não é a única forma de troca de documentos eletrônicos, mesmo porque, avalia-se a XML como uma tecnologia relativamente nova. Outras formas de troca existiram, e continuam a existir. Sem dúvida que a XML, pelo o exposto neste estudo, é a forma mais aceitável, flexível, simples, eficaz e de menores custos para as organizações. Outras tecnologias são apresentadas para ilustrar a pesquisa.

a. Arquivos Texto TXT (flat file)

De acordo com Mello (2006):

Hoje em dia a utilização de arquivos texto (também chamados de Flat Files) para troca de informações é muito comum, visto que este padrão é utilizado desde os primórdios dos sistemas de computador. Porém a adoção do padrão XML (Extensible Markup Language) é uma tendência mundial. Este tipo de arquivo abre possibilidades infinitas de tratamento de dados, que

71

vão desde a utilização de schemas para definição e validação de dados até utilização de outros padrões para interagir com este formato.

A figura 14 nos mostra um exemplo de transformação de um arquivo texto tradicional - TXT (lado esquerdo), para um documento XML. Percebe-se que o arquivo texto não tem estrutura e é pobre em semântica, pois não descreve requisitos mínimos para o entendimento. Por este fato, este padrão que perdurou por muito anos para o intercâmbio de dados, nos dias atuais está sendo usado em muito menor quantidade, presente ainda apenas nos sistemas legados. Já o arquivo XML, nos permite o entendimento do significado dos dados,