Desenvolvimento de uma infra-estrutura para composição dinâmica e segura de Serviços Web 1

Tamanho: px
Começar a partir da página:

Download "Desenvolvimento de uma infra-estrutura para composição dinâmica e segura de Serviços Web 1"

Transcrição

1 Anais do IX Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais 333 Desenvolvimento de uma infra-estrutura para composição dinâmica e segura de Serviços Web 1 Jorge R. Lohn 1, Michelle S. Wangham 1 1 Universidade do Vale do Itajaí Centro de Ciências Tecnológicas da Terra e do Mar Rodovia SC KM4 - Sertão do Maruim São José SC Brasil {jlohn, wangham}@univali.br Abstract. Business Processes describe complex services that transpose the organizational boundaries and are provided by different partners. The dynamic composition of business processes provides flexibility and easy adaptation to changes in the rules of business, and create cohesive and reusable services. To use the dynamic composition, it is necessary an infrastructure that enables secure communication between all participants. This paper describes the security infrastructure for dynamic composition of business processes in collaborative networks geared to services, based on a case study. Resumo. Processos de negócios descrevem serviços complexos que transpassam os limites organizacionais e são providos por diferentes parceiros. A composição dinâmica de processos de negócio proporciona flexibilidade e fácil adaptação às mudanças nas regras de negócio, além de criar serviços coesos e reutilizáveis. Para possibilitar a composição dinâmica, é necessária uma infra-estrutura que possibilite a comunicação segura entre todos os participantes. O objetivo deste artigo é descrever uma infra-estrutura de segurança para composição dinâmica de processos de negócios em redes colaborativas orientadas a serviços, tendo como base um estudo de caso. 1. Introdução Conforme consta em [W3C 2004], os Serviços Web seguem a Arquitetura Orientada a Serviços (AOS) e são componentes de softwares projetados para suportar interações entre aplicações heterogêneas sobre a Internet. A AOS é um paradigma para organização e utilização de competências distribuídas que estão sob controle de diferentes domínios proprietários. Os serviços são independentes de plataforma, de linguagens de programação e arquitetura de máquina, pois utilizam padrões abertos e bastante difundidos, tais como o XML e o HTTP [De Mello et. al. 2006]. No contexto da AOS, a composição de Serviços Web visa criar processos de negócios de alto nível, que transpassem diferentes limites organizacionais [Peltz 2003]. Conforme [Charfi e Mezini 2005], a composição de Serviços Web visa combinar serviços de diferentes provedores a fim de criar um Serviço Web mais sofisticado e com maior valor agregado. Segundo [Milanovic e Malek 2004], desenvolvedores e usuários 1 Trabalho financiado pelo CNPQ (CNPq /2007-5).

2 334 Anais do IX Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais podem solucionar problemas complexos a partir da combinação de serviços básicos, em uma ordem conveniente à solução do problema, acelerando o desenvolvimento de aplicações e possibilitando a reutilização de serviços, diminuindo tempo e custo para o desenvolvimento de processos de negócio de alto nível. Através da especificação WS- BPEL é possível criar composição de Serviços Web. A WS-BPEL é a linguagem mais popular e de grande aceitação para a execução de processos de negócio de Serviços Web, a qual define um conjunto de atividades participantes da orquestração, especificando padrões de fluxo de controle e de dados [OASIS 2007]. A composição dinâmica de Serviços Web visa ligar, automaticamente, diferentes serviços a fim de atingir um objetivo complexo, tendo como base, normalmente, dados semânticos adicionais que descrevem os Serviços Web, os quais são utilizados para a geração dinâmica de processos de negócios [Berners-Lee, Hendler e Lassila 2001]. O uso da Web semântica na composição de Serviços Web é um tópico de pesquisa muito relevante devido ao seu potencial em alcançar uma integração de aplicações que seja dinâmica, escalável e com custo efetivo [Wu et al. 2003]. Em muitos casos, as partes que compõem as redes colaborativas não se conhecem e, mesmo em empresas que são parceiras, a segurança sempre é uma preocupação. Devido à necessidade do compartilhamento de informações sigilosas, as redes colaborativas precisam de uma efetiva infra-estrutura de segurança para impedir que um membro consiga acesso não autorizado às informações. Cada empresa que compõem uma rede colaborativa possui suas próprias políticas, logo neste ambiente colaborativo têm-se várias políticas de segurança. Cada domínio transposto por um processo de negócio pode prover seu próprio conjunto de credenciais de segurança, tomando como base suas tecnologias subjacentes de segurança e suas políticas de segurança e de negócios (DE MELLO et al., 2005). Ou seja, havendo a necessidade de colaboração, há ainda a necessidade de um acordo entre os parceiros envolvidos. Este trabalho tem por objetivo descrever uma infra-estrutura para composição dinâmica e segura de processos de negócios em redes colaborativas orientadas a serviços, com base em um estudo de caso (Agência de Viagens). Na Seção 2, são descritas as principais especificações para prover segurança na arquitetura dos Serviços Web. A Seção 3 descreve a infra-estrutura proposta. A Seção 4 descreve o estudo de caso desenvolvido para verificar a aplicabilidade do modelo proposto. Na Seção 5, a implementação de um protótipo da infra-estrutura e do estudo de caso é descrita. Por fim, na Seção 6, os resultados e as contribuições deste trabalho são descritos na conclusão. 2. Segurança em Serviços Web A segurança é sempre uma questão importante em sistemas distribuídos. Vários padrões são utilizados para prover segurança às informações expressas em XML [Imamura et al. 2002; Bartel et al. 2002] e conseqüentemente aos Serviços Web. Entretanto, quando se considera não mais um serviço único, mas sim uma orquestração de Serviços Web, constata-se que a segurança dos processos de negócios não foi ainda profundamente investigada e que ainda não existem soluções concretas e completas [Koshutanski e Massacci 2003; Charfi e Mezini 2005; Carminati, Ferrari e Hung 2005]. As tecnologias desenvolvidas para prover a comunicação segura, a autenticação e autorização precisam ser aprimoradas para que a composição dinâmica ganhe maior confiabilidade.

3 Anais do IX Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais 335 Nas seções a seguir são apresentadas as principais especificações para prover segurança no ambiente de Serviços Web e alguns trabalhos que visam prover segurança para composições de Serviços Web Especificações de Segurança para os Serviços Web A especificação XML Signature (XMLDSig) [Bartel et al. 2002] foi uma proposta conjunta da W3C e IETF que define regras para gerar e validar assinaturas em XML. Com a XMLDsig é possível assinar documentos XML, bem como qualquer tipo de documento eletrônico. O padrão XML Encryption (XMLEnc) [Imamura et al. 2002] garante a segurança fim-a-fim para aplicações que necessitem realizar a troca de dados de forma segura. Garante a confidencialidade persistente, garantindo assim a confidencialidade dos dados mesmo depois do término da sessão. A especificação Security Assertion Markup Language (SAML) [OASIS 2005] consiste em um conjunto de especificações e esquemas XML, que juntos definem uma forma padrão para criar, trocar e interpretar asserções de segurança entre entidades de uma aplicação distribuída. Por meio de XML, são expressas informações sobre a autorização e atributos de um sujeito. A SAML visa garantir a interoperabilidade entre os diferentes sistemas de autenticação.a WS-Security [OASIS 2006] define um esquema XML (conjunto de extensões ao SOAP) que possibilita incluir de forma padronizada as informações relacionadas à assinatura e cifragem dos dados da mensagem SOAP em questão, utilizando as especificações XMLDSig e XMLEnc para permitir a construção de Serviços Web seguros. A especificação visa garantir a segurança fim-a-fim no nível de mensagem e não somente no nível de transporte [De Mello et al. 2006]. A WS-Policy [W3C 2007] e a WS-PolicyAttachment [W3C 2006] permitem especificar requisitos não funcionais aos serviços ou recursos dentro do ambiente de Serviços Web. A WS-Policy provê uma gramática flexível e extensível, baseada em XML, a qual permite descrever uma ampla variedade de requisitos e habilidades para o ambiente de Serviços Web. A WS-Policy apresenta um modelo dividido em três principais componentes: 1) asserção da política: representa um requisito ou uma qualidade do recurso, específica a um domínio; 2) alternativas de política: é a combinação de asserções de políticas, definindo um conjunto de requisitos para satisfazer tal alternativa; e 3) política: é um conjunto de alternativas de políticas; satisfazer a política significa satisfazer alguma dessas alternativas. A especificação WS- PolicyAttachment provê meios para associar políticas escritas através da WS-Policy com os determinados recursos e também define como associar políticas a elementos XML, no caso dos Serviços Web, os documentos WSDL (Web Service Description Language) e UDDI (Universal Description, Discovery and Integration) Trabalhos Relacionados Conforme constatado em [Charfi e Mezini 2005] são poucos os trabalhos acadêmicos que tratam aspectos de segurança no contexto da composição de Serviços Web. No campo da indústria os esforços são ainda menores. Nenhum esforço concreto, por parte da OASIS, entidade que padroniza a linguagem WS-BPEL, visa promover a aproximação dos grupos de trabalhos desta linguagem com os que trabalham com os padrões de segurança, para indicar como deve ocorrer a interação e integração da camada de processo de negócios com a camada de qualidade de serviço (de segurança).

4 336 Anais do IX Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais Um dos primeiros esforços para prover segurança em processos de negócios BPEL, proposto em [Koshutanski e Massacci 2003], trata somente de aspectos de autorização, através de um modelo de controle de acesso interativo baseado em abduções lógicas que visa proteger os interesses de segurança dos processos e de seus parceiros. Requisitos como a autenticação SSO (Single Sign On) diante de diferentes tecnologias de segurança e de qualidade de proteção não são cobertos pelo framework. Uma proposta mais ampla para tratar o problema da segurança no contexto das atividades BPEL é descrita em [Charfi e Mezini 2005]. Os autores têm como premissa que a especificação das interações entre Serviços Web dentro de uma composição deve ser acrescida com especificações de propriedades relacionadas à segurança. Este trabalho está baseado no uso da especificação WS-Security para prover a qualidade de proteção das mensagens e do padrão WS-Policy para especificar os requisitos de segurança das atividades BPEL. A lógica necessária para garantir as características de segurança é anexada dentro da lógica de composição usando um conjunto de aspectos. Os aspectos são gerados (em tempo de implantação) a partir de uma biblioteca de aspectos, de acordo com um descritor XML de implantação. De acordo com a solução proposta, os processos de negócios deixam de ser executados quando não há compatibilidade entre os mecanismos de autenticação ou quando não há confiança estabelecida entre os parceiros. A idéia de que tanto os provedores quanto os requerentes possuam preocupações de segurança que devem ser levadas em conta durante a composição dos Serviços Web é amplamente discutida em [Carminati, Ferrari e Hung 2005]. Nesse trabalho, os autores definem uma forma para modelar restrições de segurança que estão em conformidade com os padrões de Serviços Web. Ao invés de utilizar o padrão WS-Policy, este trabalho utiliza uma solução particular para especificar estas restrições. Uma abordagem para implantar a avaliação de compatibilidade entre as restrições de segurança também é definida através de uma arquitetura intermediadora (brokered), em que um serviço (broker) é que executa o processo de casamento de requisitos. Em [Huang 2005], um framework de segurança baseado em políticas usando descrições semânticas de requisitos de segurança é modelado. O framework prevê a especificação de políticas de alto nível, incluindo restrições complexas relacionadas com a lógica de negócio, por meio de descrições semânticas. O modelo está focado na WS-BPEL e prevê a integração de uma definição de processo com as políticas de segurança, no entanto não define como isso deve ser feito, nem como as políticas devem ser especificadas. 3. Infra-estrutura Proposta Para criação de processos de negócios executáveis em redes colaborativas, foi modelada uma infra-estrutura de segurança para composição dinâmica de Serviços Web 2. A infraestrutura pode ser dividida em três partes: a primeira parte da infra-estrutura proposta 1 Este artigo é resultante de um trabalho de conclusão de curso e encontra-se inserido dentro de um projeto mais amplo, intitulado Mecanismos de Segurança para Processos de Negócios em Redes Colaborativas (CNPQ/ Edital Universal 2007). Estudos e trabalhos já foram realizados no contexto deste trabalho, a saber: (1) um modelo de composição de políticas de qualidade de proteção para Serviços Web compostos [Böger 2008]; e (2) Infra-Estrutura de Segurança para Orquestração de Serviços Web em Sistemas Abertos [Carpes 2008].

5 Anais do IX Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais 337 corresponde ao serviço CompositorPNSeg responsável pela seleção dinâmica dos parceiros do processo de negócio; a segunda parte é responsável por associar às políticas de segurança as trocas de mensagens do processo de negócio, chamado compositor de políticas de qualidade de proteção para Serviços Web compostos [Böger 2008]. A última parte da infra-estrutura de segurança, a camada de segurança, será responsável por aplicar as políticas de segurança geradas pelo compositor de políticas ao processo de negócio [Carpes 2008]. O presente artigo contribuiu através da definição da infra-estrutura e do estudo de caso para validar a infra-estrutura. Conforme ilustrado na Figura 1, na infra-estrutura proposta, um cliente inicia o processo através de uma invocação ao CompositorPNSeg (passo 1 da Figura 1). Nesta invocação, as informações repassadas pelo cliente (dados semânticos) devem estar estruturadas em uma instância de uma ontologia, a qual permite ao cliente especificar de forma não ambígua as informações a serem utilizadas para selecionar os serviços participantes da composição dinâmica. Para cada aplicação específica, é preciso desenvolver uma ontologia e estender as funcionalidades da infra-estrutura. Com base nos dados semânticos, o CompositorPNSeg irá consultar os registros UDDI, localizados em um ou mais diretórios UDDI, a fim de selecionar os serviços que atendam os requisitos expressos e que irão compor o processo de negócio (ver passo 2). O passo 3 ilustra a criação do processo de negócio executável, o qual é criado através da linguagem WS-BPEL, este processo deverá conter chamadas aos métodos de cada um dos serviços que foram selecionados no passo 2. Figura 1. Infra-estrutura de segurança proposta Conforme ilustrado no passo 4, o serviço CompositorPNSeg interage com o serviço compositor de políticas de qualidade de proteção para Serviços Web compostos, obtendo como resultado um conjunto de políticas associadas às trocas de mensagens do processo de negócio, sendo que esse conjunto pode ser entendido como a política composta da colaboração. Segundo Böger (2008), a política composta indica quais os mecanismos de proteção que devem ser utilizados nas trocas de mensagem do processo

6 338 Anais do IX Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais e também demonstra se existe algum ponto onde não há compatibilidade dos mecanismos requeridos pelos participantes do processo. Assim sendo, as políticas devem ser descritas e anexadas de acordo com a WS-Policy e WS-PolicyAttachment, as asserções de segurança devem estar de acordo com a WS-SecurityPolicy e os processos de negócio devem ser descritos em WS-BPEL. Caso a política gerada seja nula, o CompositorPNSeg irá recriar o processo BPEL, conforme ilustrado no passo 5 da Figura 1. Ao recriar um processo, o CompositorPNSeg obtêm as interseções que geraram políticas sem alternativa, obtendo desta forma os serviços a serem substituídos. Após substituir os serviços que não possuíam políticas compatíveis, o novo processo deve ser validado novamente para verificar se todas as intersecções possuem políticas válidas. Neste ponto, o processo de negócio já está criado e pronto para ser executado em um motor de orquestração, pois o processo dinâmico já foi criado e a política de segurança já foi anexada. O passo 6 ilustra o retorno do processo BPEL para a aplicação que invocou o CompositorPNSeg. O passo 7 ilustra a execução do processo de negócio no motor de orquestração. Durante a execução do processo BPEL, a camada de segurança intercepta todas as trocas de mensagens entre o processo BPEL e os serviços participantes. É neste momento que as políticas definidas pelo compositor de políticas são aplicadas às trocas de mensagem, tendo como base a especificação WS-Security. O resultado gerado pela execução do processo de negócio é retornado ao cliente como resultado da execução segura do processo composto dinamicamente (ver passo 7). 4. Estudo de Caso A fim de verificar a aplicabilidade do compositor de processos dinâmicos, este foi empregado em um estudo de caso chamado Agência de Viagens. Neste estudo de caso, o agente de viagens é um processo de negócio (orquestração BPEL), resultante do processo de seleção de participantes e de criação do processo de negócio, realizado pelo CompositorPNSeg. A aplicação da agência de viagens oferece meios para consultar informações sobre hotéis, empresas aéreas e locadoras de veículo, disponibilizando desta maneira um mecanismo flexível para criação de pacotes de viagens. Para possibilitar a consulta foi desenvolvida uma ontologia OWL para representar as informações do cliente. Também foram desenvolvidos Serviços Web para representar os hotéis, para representar empresas aéreas e por fim, para representar locadoras de automóveis. Para cada domínio de aplicação (hotel, companhia aérea e locadora), foi desenvolvida uma ontologia, seguindo o padrão OWL-S, para definir quais dados semânticos cada serviço deveria anexar a sua WSDL. Conforme ilustrado na Figura 2, usando um navegador, o cliente, interessado em montar um pacote de viagens, acessa a aplicação web da agência de viagens para poder especificar suas preferências, preenchendo um formulário. Este formulário é enviado a uma aplicação web para que, com base nestas informações, uma instância da ontologia para a agência de viagens seja criada, possibilitando que a aplicação invoque o CompositorPNSeg para selecionar os parceiros mais aptos a fornecer os serviços ao cliente, ou seja, para que o CompositorPNSeg defina o processo de negócio, que será executado para coletar as informações necessárias dos parceiros selecionados, tais como preço e condições de pagamento. Foi necessário o desenvolvimento de uma aplicação web já que o navegador não consegue trocar mensagens SOAP com Serviços Web, logo a aplicação web obtém as informações submetidas, monta a mensagem SOAP e invoca o serviço CompositorPNSeg.

7 Anais do IX Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais 339 Para definir o processo BPEL, o CompositorPNSeg invoca o método comporprocesso (conforme Figura 2), passando como parâmetro uma instância da ontologia criada para representar as informações das preferências do cliente. O CompositorPNSeg analisa a instância da ontologia recebida com o objetivo de selecionar, em um serviço de diretórios, os serviços com maior aptidão para fornecer as melhores opções para o cliente. Para selecionar os parceiros o método selecionaparceiros é invocado. Em seguida, o CompositorPNSeg, através da invocação do método criaprocessobpel cria o processo BPEL, chamado de AgenteDeViagens, para interagir seqüencialmente com todos os serviços selecionados. Para este estudo de caso, foi definido que dentre a lista de parceiros retornada, o CompositorPNSeg seleciona os três primeiros Serviços Web de cada domínio de aplicação (hotel, companhia área e locadora de automóvel). Figura 2. Estrutura do estudo de caso (Agência de Viagens) Após a criação do processo AgenteDeViagens, o CompositorPNSeg interage com o serviço Compositor de Políticas de Qualidade de Proteção para verificar a compatibilidade das políticas dos serviços integrantes da composição e para gerar a política global do serviço composto. O Compositor de Políticas é um Serviço Web que possui apenas um método composepolicies o qual recebe como parâmetro o processo BPEL do AgenteDeViagens. Se o resultado sumário retornado pelo compositor de políticas for de sucesso, indicando que não há incompatibilidades entre as políticas dos serviços participantes, então o processo AgenteDeViagens já pode ser executado no motor de orquestração. Logo, o processo recém criado é retornado para a aplicação que está interagindo com o CompositorPNSeg. Caso o resultado sumário seja de falha, indicando que há incompatibilidades entre os serviços Web participantes, será necessário então recriar o processo para substituir o serviço que não possui compatibilidade de política. Para solucionar este problema o CompositorPNSeg invoca o método recriaprocessobpel, o qual procura substituir os serviços que apresentaram incompatibilidade de políticas. Se

8 340 Anais do IX Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais o CompositorPNSeg não encontrar um serviço que satisfaça os requisitos do cliente e de segurança, então o serviço é eliminado do AgenteDeViagens. Em seguida, a aplicação executa o AgenteDeViagens, através do método consultaparceiros, sendo que este deve ter a propriedade createinstance assinalada. Cada invocação realizada pelo AgenteDeViagens com outros serviços é interceptada pelos interceptadores de mensagem responsáveis por aplicar os mecanismos de segurança. Quando a mensagem é enviada a partir do AgenteDeViagens, o interceptador de mensagem (handler) intercepta a mensagem e aplica a política global, quando um Serviço Web envia uma mensagem, o interceptador de mensagem intercepta e aplica as políticas daquele serviço. Conforme ilustrado na Figura 2, ao término da sua execução, os resultados provindos das invocações aos serviços participantes da composição são retornados à aplicação que invocou o método consultaparceiros do AgenteDeViagens. Por fim, a aplicação web gera uma resposta com as informações obtidas (página HTML) para serem enviadas ao navegador. As informações são exibidas no formato do arquivo XML no navegador do cliente. 5. Implementação A infra-estrutura para composição dinâmica e segura de Serviços Web e o estudo de caso (Agência de Viagens) foram desenvolvidos na plataforma Java e em alguns frameworks open source. A agência de viagens é uma aplicação web que foi desenvolvida utilizando-se da tecnologia JSF 1.2 (JavaServer Faces) 3 com o auxílio de algumas bibliotecas de componentes, como a facelets 4 e tomahawk 5, além de utilizar HTML e CSS (Cascading Style Sheets). Para criar a instância da ontologia com as informações do usuário foi utilizado o framework open source Jena, sendo este um projeto desenvolvido em Java e utilizado para a criação de aplicações web semânticas. Os Serviços Web para representar as empresas aéreas, os hotéis e as locadoras de automóvel foram desenvolvidos com o framework Apache Axis2. O Axis2 é uma plataforma para implementação e interação com serviços Web, o qual está dividido em vários módulos. Nestes módulos, as mensagens são interceptadas através dos handlers. Foi através destes handlers que a política composta foi aplicada às trocas de mensagens. O núcleo da sua implementação é voltado puramente para o processamento de mensagens SOAP, sem nenhum vínculo à camada de transporte destas mensagens, suportando tanto interações síncronas, quanto assíncronas. Para cada serviço foram desenvolvidas políticas de segurança. As políticas foram desenvolvidas com base na especificação WS-Policy. E através da especificação WS-PolicyAttachment, as políticas são anexadas à interface WSDL do Serviço Web e também do processo BPEL do AgenteDeViagens. Para cada serviço desenvolvido foi criada uma instância da ontologia OWL-S para possibilitar o uso de dados semânticos nos Serviços Web, sendo disponibilizadas junto com o Serviço Web que descreve. Cada ontologia que descreve um serviço é 3 O JSF é um framework MVC (Model View Controller), que possibilita uma separação entre as camadas da aplicação, ou seja, garantindo a modularidade. Disponível em: 4 Disponível em: 5 Disponível em:

9 Anais do IX Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais 341 composta por 4 arquivos, o service que informa onde encontra-se as outras ontologias, o presents que descreve o que o serviço fornece, o supports que descreve como o serviço é acessado e o describedby que descreve como o serviço funciona. A ferramenta ActiveBPEL foi utilizada para escrever a WS-BPEL do compositorpnseg, sendo este implementado em Java e executado no motor de orquestração Apache ODE. Porém, como o compositor de processos segue a especificação WS-BPEL este pode ser executado em qualquer outro motor de orquestração que implementa WS-BPEL. O CompositorPNSeg utiliza o framework Jena para analisar as instâncias das ontologias. Para simplificar a solução, neste trabalho foi feito o casamento sintático das ontologias. Testes de software foram feitos ao longo do desenvolvimento de cada um dos componentes da infra-estrutura e do estudo de caso. 6. Conclusão O presente trabalho descreveu uma infra-estrutura de segurança para composição dinâmica de Serviços Web, cujo objetivo é criar uma orquestração de Serviços Web para atender uma determinada demanda, ou seja, para solucionar um problema específico. Foi criada a demanda de uma agência de viagens para validar o compositor dinâmico de processos. O compositor dinâmico de processos de negócios seguros é um serviço web composto (uma orquestração BPEL) utilizado para criar processos de negócios executáveis com base de dados semânticos anexados aos serviços web participantes (serviços web semânticos). A especificação OWL-S foi utilizada para possibilitar o uso de dados semânticos nos Serviços Web, por isso cada serviço web deve possuir uma instância da ontologia para descrevê-lo. O resultado do CompositorPNSeg é um processo BPEL que deve ser publicado em um container web para ser então invocado. Visando garantir a integridade, confidencialidade e autenticidade dos processos de negócios resultantes, a infra-estrutura de segurança proposta utiliza os principais padrões de segurança para a arquitetura dos Serviços Web, as especificações Ws-Policy, Ws-Security, XML-Signature e XML-Encryption. Contudo, este trabalho, através dos estudos e dos testes realizados, conseguiu mostrar que é possível criar processos dinâmicos que interajam com seus parceiros de forma segura, através da utilização de ontologias para expressar informações relevantes para a criação do processo de negócio. A área de ontologia para Serviços Web pode ser ainda mais explorada e proporcionar bons trabalhos futuros. Referências Bartel, M.; Boyer, J.; Fox, B.; Lamacchia, B.; Simon, E. (2002). XML-Signature Syntax and Processing. W3C. Berners-Lee, T., Hendler, J., Lassila, O. (2001). The semantic web. Scientific American. Böger, D. S. (2008). Um modelo de composição de políticas de qualidade proteção para Serviços Web compostos. Trabalho de Conclusão de Curso (Graduação) - Universidade Federal de Santa Catarina, Florianópolis.

10 342 Anais do IX Simpósio Brasileiro em Segurança da Informação e de Sistemas Computacionais Carminati, B., Ferrari, E., e Hung, P. C. K. (2005). Web service composition: A security perspective. In Proceedings WIRI, pages Carpes, F. W. M. (2008). Infra-Estrutura de Segurança para Orquestração de Serviços Web em Sistemas Abertos. Projeto de Fim de Curso (Graduação) - Universidade Federal de Santa Catarina, Florianópolis. Charfi, A. e Mezini, M. (2005). Using aspects for security engineering of web service compositions. In Proceedings of the 2005 IEEE International Conference on Web Services, volume I, pages IEEE. De Mello, E. R., Wangham, M. S., Fraga, J. S. e Camargo, E. (2006). Segurança em Serviços Web. In: Jorge Nakahara Jr; Lau Cheuk Lung. (Org.). Livro texto dos Minicursos do VI Simpósio Brasileiro de Segurança da Informação e de Sistemas Computacionais (SBSeg2006). SBC: Porto Alegre, v. 1, pages Huang, D. (2005). Semantic policy-based security framework for business processes. In: 4th International Semantic Web Conference. Imamura, T., Dillaway, B., Simon, E. (2002). XML Encryption Syntax and Processing. W3C. Koshutanski, H., Massacci, F. (2003). An access control framework for business processes for web services. Proc. XMLSEC '03: Proceedings of the 2003 ACM workshop on XML security. pages Milanovic, N.; Malek, M. (2004). Current Solutions for Web Service Composition. Berlin, Web Services Architecture. OASIS. (2005) Security Assertion Markup Language (SAML) 2.0 : Technical Overview. OASIS. OASIS. (2006). Web Services Security: SOAP Message Security 1.1. OASIS. SOAPMessageSecurity.pdf. OASIS (2007). Web Services Business Process Execution Language Version 2.0. OASIS. Peltz, C. (2003). Web services orchestration and choreography. IEEE Computer, 36(10): pages W3C (2004). Web Services Architecture. W3C. (2006). Web Services Policy Attachment (WS-PolicyAttachment), World Wide Web Consortium. W3C. (2007). Web Services Policy 1.5 Framework. World Wide Web Consortium. Wu, D., Parsia, B., Sirin, E., Hendler, J. e Nau, D. (2003). Automating DAML-S web services composition using SHOP2. Proc. Proceedings of 2nd International Semantic Web Conference (ISWC2003), Sanibel Island, Florida.

Introdução a Web Services

Introdução a Web Services Introdução a Web Services Mário Meireles Teixeira DEINF/UFMA O que é um Web Service? Web Service / Serviço Web É uma aplicação, identificada por um URI, cujas interfaces podem ser definidas, descritas

Leia mais

contidos na descrição do serviço para localizar, contactar e chamar o serviço. A figura mostra os componentes e a interação entre eles.

contidos na descrição do serviço para localizar, contactar e chamar o serviço. A figura mostra os componentes e a interação entre eles. Web Services Web Service é um componente de software identificado por uma URI que independe de implementação ou de plataforma e pode ser descrito, publicado e invocado sobre uma rede por meio de mensagens

Leia mais

Desenvolvimento de Aplicações Distribuídas

Desenvolvimento de Aplicações Distribuídas SOA e Web Services Pontifícia Universidade Católica de Minas Gerais Instituto de Ciências Exatas e Informática DAD (2019/01) Tópicos Apresentação da disciplina Introdução Desafios e características Arquitetura

Leia mais

MIDDLEWARE PARA A COMUNICAÇÃO DE DADOS ENTRE SISTEMAS DISTRIBUÍDOS COM WS SECURITY. CAIO RENAN HOBUS Orientador: Jhony Alceu Pereira

MIDDLEWARE PARA A COMUNICAÇÃO DE DADOS ENTRE SISTEMAS DISTRIBUÍDOS COM WS SECURITY. CAIO RENAN HOBUS Orientador: Jhony Alceu Pereira MIDDLEWARE PARA A COMUNICAÇÃO DE DADOS ENTRE SISTEMAS DISTRIBUÍDOS COM WS SECURITY CAIO RENAN HOBUS Orientador: Jhony Alceu Pereira ROTEIRO Introdução Objetivos do trabalho Fundamentação teórica Desenvolvimento

Leia mais

Web Services - Definição. Web Services - Introdução. Universidade Federal de Santa Catarina. DSOOII Web Services

Web Services - Definição. Web Services - Introdução. Universidade Federal de Santa Catarina. DSOOII Web Services Universidade Federal de Santa Catarina DSOOII Web Services Web Services - Introdução Havia inconsistência de plataformas, sistemas operacionais e/ou linguagens de programação; Acadêmicos: Ariane Talita

Leia mais

INFORMÁTICA. Instruções: Para responder às questões de números 71 e 72, considere o texto a seguir:

INFORMÁTICA. Instruções: Para responder às questões de números 71 e 72, considere o texto a seguir: INFORMÁTICA Prova de Agente Fiscal de Rendas do ICMS-SP/2013 - FCC. Por Ana Lucia Castilho* Instruções: Para responder às questões de números 71 e 72, considere o texto a seguir: A equipe de TI da empresa

Leia mais

Projeto. Observatório Nacional de Clima e Saúde

Projeto. Observatório Nacional de Clima e Saúde Projeto Observatório Nacional de Clima e Saúde Coordenação Técnica Institucional: Fiocruz e INPE Coordenação Nacional CGVAM- Coordenação Geral de Vigilância Ambiental Secretaria de Vigilância em Saúde

Leia mais

Comentários: Desenvolvimento de Sistemas Rogério Araújo

Comentários: Desenvolvimento de Sistemas Rogério Araújo Comentários: Desenvolvimento de Sistemas Rogério Araújo rgildoaraujo@gmail.com 1 Técnico de informática no Ministério Público Federal Professor da Equipe Itnerante Desenvolvimento de Sistemas Certificações

Leia mais

Prof. Me. Sérgio Carlos Portari Júnior

Prof. Me. Sérgio Carlos Portari Júnior Prof. Me. Sérgio Carlos Portari Júnior Ambientes que visam desenvolver aplicações que precisam de um processamento paralelo e distribuído deverão saber lidar com algumas dificuldades. Isto decorre da heterogeneidade

Leia mais

1 Introdução. 1 World Wide Web Consortium -

1 Introdução. 1 World Wide Web Consortium - 1 Introdução A internet é uma ampla fonte de disseminação de informações, abrangendo praticamente todas as áreas de conhecimento. A maioria das informações disponíveis hoje para a grande parte dos usuários

Leia mais

Engenharia de Software Orientada a Serviços

Engenharia de Software Orientada a Serviços Engenharia de Software Orientada a Serviços Paulo Cesar Masiero Engenharia de Software Roteiro Contexto Arquiteturas Orientadas a Serviços Serviços como componentes reusáveis Engenharia de Serviços Desenvolvimento

Leia mais

5 Arquitetura Proposta

5 Arquitetura Proposta 5 Arquitetura Proposta Neste capítulo detalhamos a arquitetura proposta que provê acesso a fontes de dados autônomas, heterogêneas e distribuídas, as quais podem ser desde sistemas gerenciadores de bancos

Leia mais

3 Tecnologias Relacionadas

3 Tecnologias Relacionadas Tecnologias Relacionadas 31 3 Tecnologias Relacionadas O objetivo deste capítulo é apresentar um resumo de cada tecnologia relacionada ao processo proposto nesta dissertação, mostrando suas principais

Leia mais

5 Arquitetura de implementação

5 Arquitetura de implementação Arquitetura de implementação 103 5 Arquitetura de implementação 5.1 Visão geral Nossa arquitetura é caracterizada pela construção de um ambiente para execução de aplicações hipermídia definidas segundo

Leia mais

Figura 1 - Uma possível forma de acesso à informação compartilhada.

Figura 1 - Uma possível forma de acesso à informação compartilhada. 14 1 Introdução Uma das técnicas de simulação numérica largamente utilizada para calcular esforços e o comportamento de estruturas em engenharia, mediante a utilização de computadores, é a Análise de Elementos

Leia mais

Análise de Requisitos

Análise de Requisitos Análise de Requisitos Prof.ª: Érika A. Barrado Analisar x Projetar Análise: significa investigar, descobrir ou desvendar algo; Consiste em encontrar o conjunto de requisitos para um dado software; Definida

Leia mais

Documento de Arquitetura de Software- SGE

Documento de Arquitetura de Software- SGE Documento de Arquitetura de Software- SGE IFG Autor: Marcelo Roldrin Barros Silva 1. Introdução 1.1 Finalidade Este documento oferece uma visão geral arquitetural abrangente do sistema SGE (Sistema de

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos LICENCIATURA EM COMPUTAÇÃO Prof. Adriano Avelar Site: www.adrianoavelar.com Email: eam.avelar@gmail.com 1. Que são sistemas abertos? É um sistema que oferece serviços de acordo com

Leia mais

5 Conclusão e trabalhos futuros

5 Conclusão e trabalhos futuros 5 Conclusão e trabalhos futuros Neste capítulo fazemos uma retrospectiva do trabalho realizado, uma avaliação da proposta de solução de integração de dados ou conhecimentos mostrada na dissertação e também

Leia mais

3 Uma Abordagem Orientada a Aspectos para o Desenvolvimento de Frameworks

3 Uma Abordagem Orientada a Aspectos para o Desenvolvimento de Frameworks 48 3 Uma Abordagem Orientada a Aspectos para o Desenvolvimento de Frameworks Este capítulo apresenta uma visão geral da contribuição principal deste trabalho: uma abordagem orientada a aspectos para o

Leia mais

Web Services. Tópicos. Introdução (1/3) CONTEXTO HISTÓRICO WEB SERVICES Conclusões

Web Services. Tópicos. Introdução (1/3) CONTEXTO HISTÓRICO WEB SERVICES Conclusões Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Programa de Pós-Graduação em Ciência da Computação Web Services Conceitual Juliano Moraes, Marcus Breda, Paulo Gil, Rafael

Leia mais

2 Conceitos. 2.1 Sistema Multiagentes Abertos e Abordagens de Leis

2 Conceitos. 2.1 Sistema Multiagentes Abertos e Abordagens de Leis 2 Conceitos Neste capítulo são apresentados alguns conceitos necessários para o entendimento desta dissertação. Visto que esta proposta está inserida no contexto de sistemas multiagentes abertos, serão

Leia mais

Curso online de. Formação em Front-End. Plano de Estudo

Curso online de. Formação em Front-End. Plano de Estudo Curso online de Formação em Front-End Plano de Estudo Descrição do programa O Programa de Desenvolvimento Web lhe oferece conhecimentos para desenvolver habilidades necessárias para se tornar um Desenvolvedor

Leia mais

GERENCIAMENTO BASEADO NA WEB. Baseado em slides gentilmente cedidos pelo Prof. João Henrique Kleinschmidt da UFABC.

GERENCIAMENTO BASEADO NA WEB. Baseado em slides gentilmente cedidos pelo Prof. João Henrique Kleinschmidt da UFABC. GERENCIAMENTO BASEADO NA WEB Baseado em slides gentilmente cedidos pelo Prof. João Henrique Kleinschmidt da UFABC. Gerenciamento baseado na Web 2 Web browser Acesso ubíquo Interface Web vs Gerenciamento

Leia mais

Introdução ao Desenvolvimento de

Introdução ao Desenvolvimento de Introdução ao Desenvolvimento de Aplicações Web com JSF e PrimeFaces Marcelo Vinícius Cysneiros Aragão ICC Inatel Competence Center marcelovca90@inatel.br Santa Rita do Sapucaí, 15 de março de 2016 Conteúdo

Leia mais

PMR3507 Fábrica digital

PMR3507 Fábrica digital LSA Laboratório de Sistemas de Automação www.pmrlsa.poli.usp.br PMR3507 Fábrica digital Do EDI ao SOA Escola Politécnica da Universidade de São Paulo Departamento de Engenharia Mecatrônica e de Sistemas

Leia mais

3 Uma Arquitetura Distribuída via WEB

3 Uma Arquitetura Distribuída via WEB 24 3 Uma Arquitetura Distribuída via WEB Neste capítulo será apresentada a Arquitetura de Ambiente Distribuído no qual está implementado o Gerador VRML (VRMLGer) e o fluxo de dados que há entre as diferentes

Leia mais

6.1. Teste Baseado em Gramática e Outras Abordagens de Teste

6.1. Teste Baseado em Gramática e Outras Abordagens de Teste 6 Discussão Além das técnicas de teste usando modelos gramaticais, existem outras abordagens de teste funcional de sistemas que estão sendo estudadas pela comunidade científica. Algumas delas se dedicam

Leia mais

Análise e projeto de sistemas

Análise e projeto de sistemas Análise e projeto de sistemas Conteúdo: UML O processo de desenvolvimento de software Prof. Patrícia Lucas A linguagem de modelagem unificada (UML) A UML teve origem em uma tentativa de se unificar os

Leia mais

IFSC/Florianópolis - Programação Orientada a Objetos com Java - prof. Herval Daminelli

IFSC/Florianópolis - Programação Orientada a Objetos com Java - prof. Herval Daminelli Programa de computador sequência de comandos ou instruções executados por um computador com a finalidade de produzir um resultado e resolver um problema; Linguagem de programação método para a criação

Leia mais

SERVIÇOS WEB. Frankley Gustavo F. Mesquita, Tamiris Souza Fonseca. 27 de junho de 2016

SERVIÇOS WEB. Frankley Gustavo F. Mesquita, Tamiris Souza Fonseca. 27 de junho de 2016 Frankley Gustavo F. Mesquita Tamiris Souza Fonseca 27 de junho de 2016 Sumário 1 2 3 4 5 6 7 8 O padrão Web foi desenvolvido pelo Laboratório Europeu de Física de Partículas (CERN - European Particle Physics

Leia mais

UNIVERSIDADE FEDERAL DE GOIÁS INSTITUTO DE INFORMÁTICA. Sistemas Distribuídos

UNIVERSIDADE FEDERAL DE GOIÁS INSTITUTO DE INFORMÁTICA. Sistemas Distribuídos UNIVERSIDADE FEDERAL DE GOIÁS INSTITUTO DE INFORMÁTICA Sistemas Distribuídos Mestrado em Ciência da Computação 1o. Semestre / 2006 Prof. Fábio M. Costa fmc@inf.ufg.br www.inf.ufg.br/~fmc/ds-msc2006 Aula

Leia mais

Webmedia 06 Diego Fiori de Carvalho Júlio Cézar Estrella Renata Pontin de Mattos Fortes Rudinei Goularte

Webmedia 06 Diego Fiori de Carvalho Júlio Cézar Estrella Renata Pontin de Mattos Fortes Rudinei Goularte Interoperabilidade XML com Web Services para modelo de arquitetura em Sistemas de Informação Geográfico Webmedia 06 Diego Fiori de Carvalho Júlio Cézar Estrella Renata Pontin de Mattos Fortes Rudinei Goularte

Leia mais

Desenvolvimento Web II

Desenvolvimento Web II Desenvolvimento Web II Web Service PHP Rest Frameworks: Slim e Laravel (get/ post / put / delete) Gil Eduardo de Andrade Web Service Introdução: Um web service pode ser definido como uma tecnologia que

Leia mais

TRABALHO DE CONCLUSÃO DE CURSO

TRABALHO DE CONCLUSÃO DE CURSO UNIVERSIDADE FEDERAL DE SANTA CATARINA DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA CURSO DE BACHARELADO EM CIÊNCIAS DA COMPUTAÇÃO TRABALHO DE CONCLUSÃO DE CURSO Resumo Artigo I Desenvolvimento de Aplicações

Leia mais

O que se espera para o futuro dos Web Services? As tecnologias são respectivamente JSON e REST.

O que se espera para o futuro dos Web Services? As tecnologias são respectivamente JSON e REST. Web Services Por que os Web Services são atrativos para a integração de sistemas? Pois os Web services são componentes que possibilitam que as aplicações se comuniquem utilizando protocolos padrão da internet

Leia mais

Serviços para a Web Semântica

Serviços para a Web Semântica Serviços para a Web Semântica André Desessards Jardim Universidade Católica de Pelotas Centro Politécnico Mini Curso Web Semântica Serviços para a Web Semântica, assim como serviços web convencionais,

Leia mais

Domínios da Arquitectura

Domínios da Arquitectura Visão que incorpora na arquitectura tecnológica o suporte aos conceitos SOA Explicitar o Bus de Serviços Os workflows e as orquestrações de processos 3/2/2005 José Alves Marques 1 Domínios da Arquitectura

Leia mais

Protótipo de Protocolo de Aplicação para Troca de Documentos da Área Extra Judicial. Acadêmico: Fabrício Bento Orientador: Paulo Fernando da Silva

Protótipo de Protocolo de Aplicação para Troca de Documentos da Área Extra Judicial. Acadêmico: Fabrício Bento Orientador: Paulo Fernando da Silva Protótipo de Protocolo de Aplicação para Troca de Documentos da Área Extra Judicial Acadêmico: Fabrício Bento Orientador: Paulo Fernando da Silva Conteúdo Introdução Fundamentação teórica Desenvolvimento

Leia mais

Engenharia de Software Orientada a Serviços

Engenharia de Software Orientada a Serviços Engenharia de Software Orientada a Serviços Paulo Cesar Masiero Engenharia de Software Roteiro Contexto Arquiteturas Orientadas a Serviços Engenharia de Serviços Desenvolvimento de Software como Serviço

Leia mais

Metamodelos para Banco de Dados. Carlos Julian Menezes Araújo Prof. Dr. Robson do Nascimento Fidalgo

Metamodelos para Banco de Dados. Carlos Julian Menezes Araújo Prof. Dr. Robson do Nascimento Fidalgo Metamodelos para Banco de Dados Carlos Julian Menezes Araújo cjma@cin.ufpe.br Prof. Dr. Robson do Nascimento Fidalgo 1 Agenda Metadados MDA MOF Metamodelos CWM Pacote Relacional Referências 2 Metadados

Leia mais

7 Conclusão e Trabalhos Futuros

7 Conclusão e Trabalhos Futuros 7 Conclusão e Trabalhos Futuros Como um novo e poderoso paradigma para o design e a implementação de sistemas de software (Lind, 2001;Wooldridge et al., 2001), o SMA requer metodologias, linguagens de

Leia mais

3 Estado da arte. 3.1 A linguagem de consultas SPARQL

3 Estado da arte. 3.1 A linguagem de consultas SPARQL Estado da arte 24 3 Estado da arte Nesse capítulo serão discutidas ferramentas, tecnologias e soluções existentes na área da web semântica. Na seção 3.1 e 3.2 deste capítulo serão discutidas abordagens

Leia mais

2 Metodologias para Projetos de Aplicações Hipermidia

2 Metodologias para Projetos de Aplicações Hipermidia 2 Metodologias para Projetos de Aplicações Hipermidia O processo de desenvolvimento de aplicações é o objeto de diversas pesquisas, principalmente no caso das aplicações voltadas para a Internet, que diferem

Leia mais

2

2 ANÁLISE DE SISTEMAS (processo de desenvolvimento de sistemas) por Antônio Maurício Pitangueira 1 2 Levantamento de requisitos Análise de requisitos Projeto Implementação Testes Implantação Foco da disciplina

Leia mais

Para descrever os metadados das aplicações, desenvolvemos um método chamado SHDM (Semantic Hypermedia Design Method) [Lima & Schwabe 2002a, 2002b,

Para descrever os metadados das aplicações, desenvolvemos um método chamado SHDM (Semantic Hypermedia Design Method) [Lima & Schwabe 2002a, 2002b, 1 Introdução A Web Semântica é uma visão [W3C, 2001b]: uma idéia de termos dados na Web definidos e conectados de modo a serem utilizados por máquinas não só com objetivo de apresentação, mas também para

Leia mais

Desenvolvimento de Aplicações Corporativas Avançadas. Web Services

Desenvolvimento de Aplicações Corporativas Avançadas. Web Services Desenvolvimento de Aplicações Corporativas Avançadas Web Services Agenda Introdução Web Service Arquitetura Soluções Passos básicos Implementando com Apache Axis Novos protocolos Conclusão O cenário de

Leia mais

Este capítulo aborda os fundamentos principais aplicados neste trabalho.

Este capítulo aborda os fundamentos principais aplicados neste trabalho. 2 Fundamentos Este capítulo aborda os fundamentos principais aplicados neste trabalho. 2.1 Linked Data Linked Data é um padrão de práticas a serem seguidas para a publicação e interligação de dados estruturados

Leia mais

Frameworks funcionais para JSF que proporciona o desenvolvimento de aplicações computacionais WEB

Frameworks funcionais para JSF que proporciona o desenvolvimento de aplicações computacionais WEB Frameworks funcionais para JSF que proporciona o desenvolvimento de aplicações computacionais WEB Bruno Costa Silva 1, Ricardo Rufino 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil brunocostasilva62@hotmail.com,

Leia mais

Apresentação do Capítulo 4 MDA (Model-Driven Archtecture) ALUNO: DOMENICO SCHETTINI FILHO NÚMERO USP:

Apresentação do Capítulo 4 MDA (Model-Driven Archtecture) ALUNO: DOMENICO SCHETTINI FILHO NÚMERO USP: Apresentação do Capítulo 4 MDA (Model-Driven Archtecture) ALUNO: DOMENICO SCHETTINI FILHO NÚMERO USP: 8429016 Definição de MDA OMG (Object Management Group) propôs uma aplicação abrangente das práticas

Leia mais

Ambiente Educacional Interativo Móvel para atividade em sala de aula 1

Ambiente Educacional Interativo Móvel para atividade em sala de aula 1 Ambiente Educacional Interativo Móvel para atividade em sala de aula 1 Sergio Ferreira do AMARAL 2 Mirela Campos AMARAL 3 Dirceu da SILVA 4 Universidade Estadual de Campinas, SP Resumo Este artigo descreve

Leia mais

Desenvolvimento Web. Introdução Geral. Prof. Vicente Paulo de Camargo

Desenvolvimento Web. Introdução Geral. Prof. Vicente Paulo de Camargo Introdução Geral Prof. Vicente Paulo de Camargo Web e Internet A Internet é uma rede de computadores que conecta milhões de computadores Se comunicam através do protocolos específicos A Web é uma forma

Leia mais

JADEX: A BDI REASONING ENGINE. Alexander Pokahr, Lars Braubach e Winfried Lamersdorf Springer US - Multi-Agent Programming 2005 pp.

JADEX: A BDI REASONING ENGINE. Alexander Pokahr, Lars Braubach e Winfried Lamersdorf Springer US - Multi-Agent Programming 2005 pp. JADEX: A BDI REASONING ENGINE Alexander Pokahr, Lars Braubach e Winfried Lamersdorf Springer US - Multi-Agent Programming 2005 pp. 149-174 Volume 15 Motivação Existem muitas plataformas para desenvolvimento

Leia mais

Desenvolvendo um protótipo do UDDI. Luís Fernando Jordan. 1. Introdução. 1.1 Apresentação.

Desenvolvendo um protótipo do UDDI. Luís Fernando Jordan. 1. Introdução. 1.1 Apresentação. Desenvolvendo um protótipo do UDDI. Luís Fernando Jordan. 1. Introdução. 1.1 Apresentação. Este Trabalho é um resumo do trabalho de conclusão do curso de ciência da computação, apresentado pelo aluno Luís

Leia mais

PROJETO ARQUITETURAL PARTE II: PADRÕES DE PROJETO. Projeto de Programas PPR0001

PROJETO ARQUITETURAL PARTE II: PADRÕES DE PROJETO. Projeto de Programas PPR0001 PROJETO ARQUITETURAL PARTE II: PADRÕES DE PROJETO Projeto de Programas PPR0001 QUALIDADE DO PROJETO 2 3 Qualidade do Projeto de Software Modularidade: gerar particionamento em elementos que executam funções

Leia mais

Adaptação do Sistema de Busca Semântica ao Padrão XML e Automatização do Processo de Modelagem dos Objetos de Aprendizagem no ROAI para o Padrão OWL

Adaptação do Sistema de Busca Semântica ao Padrão XML e Automatização do Processo de Modelagem dos Objetos de Aprendizagem no ROAI para o Padrão OWL Bruna Fagundes Rócio Profª Orientadora: Avanilde Kemczinski, Dra. Supervisor: Marcelo da Silva Hounsell, Dr. UDESC Joinville, DCC, GPIE Objetivos Automatizar o processo de modelagem dos objetos de aprendizagem

Leia mais

U NIVERSIDADE F EDERAL DE P ERNAMBUCO

U NIVERSIDADE F EDERAL DE P ERNAMBUCO U NIVERSIDADE F EDERAL DE P ERNAMBUCO GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO CENTRO DE INFORMÁTICA 2015.1 Extensão do Dataset OpenCIn com Dados Referentes às Notícias e Eventos Relacionados ao Centro de Informática

Leia mais

Pré-requisitos: Conhecimentos de informática gerencial e lógica de programação.

Pré-requisitos: Conhecimentos de informática gerencial e lógica de programação. CURSO DESENVOLVEDOR FRONT-END HTML5/CSS3/JavaScript Objetivo: Este curso visa introduzir o aluno do mundo do desenvolvimento Web, com aplicabilidade, ensino e capacitação nas principais linguagens de diagramação

Leia mais

Modelo de Componentes CORBA

Modelo de Componentes CORBA Modelo de Componentes CORBA Cláudia Brito L. N. da Silva cblns@cin.ufpe.br Roteiro 1. Visão geral 2.! Definindo componentes! Implementando componentes! Empacotando componentes! Instalando componentes!

Leia mais

Figura 16 Niagara - Visão de grupos de notas.

Figura 16 Niagara - Visão de grupos de notas. Conclusão 6 Conclusão 6.1 Trabalhos Relacionados Dentre as funcionalidades fornecidas pela interface gerada pelo framework, em destaque está a possibilidade do zoom livre. Disponibilizar esta funcionalidade

Leia mais

4 Processo de Transformação

4 Processo de Transformação Tecnologias Relacionadas 43 4 Processo de Transformação Com a constante mudança nos requisitos (funcionais e não funcionais) do domínio da aplicação, há uma grande necessidade de que os sistemas estejam

Leia mais

5 Trabalhos Relacioandos

5 Trabalhos Relacioandos 5 Trabalhos Relacioandos Neste capítulo, são descritos alguns trabalhos relacionados enfatizando a relação entre eles e o trabalho proposto. A principal contribuição deste trabalho é a proposta de um framework

Leia mais

6 Conclusão. 6.1 Trabalhos relacionados

6 Conclusão. 6.1 Trabalhos relacionados Conclusão 112 6 Conclusão 6.1 Trabalhos relacionados A primeira versão do método SHDM apresentada por Lima (2003) empregava um modelo orientado a objetos como a base estrutural do modelo conceitual de

Leia mais

3 Arquitetura para mediação flexível de Web services idênticos

3 Arquitetura para mediação flexível de Web services idênticos 22 3 Arquitetura para mediação flexível de Web services idênticos Este capítulo apresenta uma proposta de arquitetura de software baseada na mediação flexível de Web services idênticos. 3.1. Requisitos

Leia mais

5 Estudo de Caso. 5.1.O Cenário

5 Estudo de Caso. 5.1.O Cenário 5 Estudo de Caso Para ilustrar a integração de repositórios de sistemas de bibliotecas digitais e sistemas de aprendizagem segundo a proposta apresentada nesta tese, neste capítulo apresenta-se um estudo

Leia mais

Desenvolvimento de Software Baseado em Componentes. Paulo C. Masiero

Desenvolvimento de Software Baseado em Componentes. Paulo C. Masiero Desenvolvimento de Software Baseado em Componentes Paulo C. Masiero 1 Introdução Frustração com as promessas da Orientação a objetos em relação ao reuso de classes. Frameworks são uma solução para um domínio

Leia mais

Curso Online de E-commerce. Plano de Estudo

Curso Online de E-commerce. Plano de Estudo Curso Online de E-commerce Plano de Estudo Descrição do programa O programa oferece metodologias e técnicas necessárias para a implementação de soluções web baseadas no CMS para o suporte, estratégias

Leia mais

especificação por meio de exemplos não é garantia de corretude, mas a experiência mostra que tende a ser melhor do que o estado da prática hoje

especificação por meio de exemplos não é garantia de corretude, mas a experiência mostra que tende a ser melhor do que o estado da prática hoje 1 Introdução Testar é o conjunto de tarefas ou passos executados para verificar se um produto ou serviço atende à sua proposta. Dessa forma, a execução de testes em um programa contribui para a melhoria

Leia mais

Obtendo Interoperabilidade Semântica em Sistemas. Metamorphosis

Obtendo Interoperabilidade Semântica em Sistemas. Metamorphosis Obtendo Interoperabilidade Semântica em Sistemas Heterogéneos de Informação com Metamorphosis Giovani R. Librelotto José Carlos Ramalho Pedro R. Henriques Departamento de Informática Universidade do Minho

Leia mais

Dados Abertos Governamentais e a Web Semântica

Dados Abertos Governamentais e a Web Semântica Dados Abertos Governamentais e a Web Semântica Disciplina: Ontologias e Web Semântica Professor: Fred Freitas Jônatas de Lira Rocha Roteiro Dados Abertos Lei de Acesso a Informação Dados Abertos Governamentais

Leia mais

O W3C e a Web Semântica. CPqD - abril/2009 Workshop Rede IP do Futuro

O W3C e a Web Semântica. CPqD - abril/2009 Workshop Rede IP do Futuro O W3C e a Web Semântica CPqD - abril/2009 Workshop Rede IP do Futuro Web, W3C e Web Semântica Tim Berners-Lee criou / propôs a Web em 1989 (há 20 anos) http://www.w3.org/history/1989/proposal.html (URI

Leia mais

O Processo da Descoberta de um Serviço: Discovery

O Processo da Descoberta de um Serviço: Discovery UDDI é a parte chave para o sucesso de Web Services. UDDI cria um padrão ide plataforma interoperável que habilita empresas, negócios e aplicações a rapidamente, facilmente e dinamicamente descobrirem

Leia mais

ALUNO: RONI FABIO BANASZEWSKI

ALUNO: RONI FABIO BANASZEWSKI Model-View-Controller ALUNO: RONI FABIO BANASZEWSKI Objetivo Separar dados ou lógica de negócios (Model) da interface do usuário (View) e do fluxo da aplicação (Control) A idéia é permitir que uma mesma

Leia mais

Por que é importante?

Por que é importante? Disciplina: Engenharia de Software 3 Bimestre Aula 5: ENGENHARIA DE SOFTWARE BASEADA EM COMPONENTES Para o desenvolvimento de softwares customizados, a engenharia de software baseada em componentes é uma

Leia mais

Introdução à Computação

Introdução à Computação Introdução à Computação Jordana Sarmenghi Salamon jssalamon@inf.ufes.br jordanasalamon@gmail.com http://inf.ufes.br/~jssalamon Departamento de Informática Universidade Federal do Espírito Santo Agenda

Leia mais

Uso de um Modelo de Confiança para a Composição de Serviços Web

Uso de um Modelo de Confiança para a Composição de Serviços Web 27º Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuídos 857 Uso de um Modelo de Confiança para a Composição de Serviços Web Emerson Ribeiro de Mello 12, Joni da Silva Fraga 1, Michelle

Leia mais

Aula 12 -QS -Engenharia de SW Orientada a Serviço

Aula 12 -QS -Engenharia de SW Orientada a Serviço Aula 12 -QS - Engenharia de SW Orientada a Serviço Prof. Ms. Luiz Alberto Contato: lasf.bel@gmail.com Roteiro Contexto Arquiteturas Orientadas a Serviços Engenharia de Serviços Desenvolvimento de Software

Leia mais

2 Versão 1: Funcionalidade Básica e Interface Web

2 Versão 1: Funcionalidade Básica e Interface Web Técnicas de Projeto e Implementação de Sistemas II Descrição do Projeto da Disciplina 1 Introdução O projeto da disciplina consiste na implementação de um sistema de busca de tarifas de passagens aéreas.

Leia mais

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Engenharia de Software I Informática 2006 Profa. Dra. Itana Gimenes RUP: Projeto Artefatos Modelo de Projeto: Lista de classes de

Leia mais

Introdução a Computação em Nuvem

Introdução a Computação em Nuvem Introdução a Computação em Nuvem Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia

Leia mais

DESENVOLVIMENTO DE APLICAÇÕES COM JAVA 2EE E UML

DESENVOLVIMENTO DE APLICAÇÕES COM JAVA 2EE E UML DESENVOLVIMENTO DE APLICAÇÕES COM JAVA 2EE E UML Jhonattan Vieira do Carmo, Ricardo Ribeiro Rufino Universidade Paranaense (Unipar) Paranavaí PR Brasil jhonattan_si@hotmail.com ricardo@unipar.br Resumo.

Leia mais

3 Trabalhos relacionados

3 Trabalhos relacionados 3 Trabalhos relacionados Adaptação e implantação dinâmicas são requisitos de aplicações em diversos domínios. Diversas abordagens são capazes de promover adaptação e implantação em tempo de execução. Alguns

Leia mais

SERVIÇO CONTRATO Especificação das operações de Serviço

SERVIÇO CONTRATO Especificação das operações de Serviço SERVIÇO Especificação das operações de Serviço 1.0 01/07/2014 1 de 8 Histórico de Revisões Data Versão Descrição Elaboração Inicial da especificação da operação de serviço 17/06/2014 0.1 ImportarArquivoContratoCCEAL.

Leia mais

Documento de Requisitos SISTEMA DE APOIO À ESCRITA (SAPES)

Documento de Requisitos SISTEMA DE APOIO À ESCRITA (SAPES) 1. Introdução 1.1 Propósito Documento de Requisitos SISTEMA DE APOIO À ESCRITA (SAPES) O propósito deste documento de especificação de requisitos é definir os requisitos do sistema SAPES - Sistema de Apoio

Leia mais

1 Introdução Motivação

1 Introdução Motivação Introdução 15 1 Introdução Em sua origem, a WWW - World-Wide Web (Berners-Lee, 1994) foi concebida como uma aplicação de hipertexto, visando apresentar informações científicas com referências cruzadas

Leia mais

SOLUÇÃO DE INTEGRAÇÃO PARA O SISPORTOS

SOLUÇÃO DE INTEGRAÇÃO PARA O SISPORTOS SOLUÇÃO DE INTEGRAÇÃO PARA O SUMÁRIO 1.Introdução......3 1.1.Cenário...3 1.2.Premissas...3 2.Modelo da Arquitetura da Solução...3 3.Propósito da Solução Integração com o Web Services para o...5 4.Interoperabilidade...6

Leia mais

2.2. Arquitetura Orientada a Serviço

2.2. Arquitetura Orientada a Serviço 2 Serviços A Web, o desenvolvimento do E-Business e novos conceitos como Web Services e Arquitetura Orientada a Serviço (SOA) criaram a base para o surgimento de uma nova economia em rede. O escopo de

Leia mais

Padrões para Definição de Metadados

Padrões para Definição de Metadados Padrões para Definição de Metadados Marcos Vinícius Salgado Monteiro mvsmonteiro@midiacom.uff.br 1- Introdução 2- MPEG-7 3- TV-Anytime 4- RDF 4.1- OWL 5- Conclusão Roteiro Introdução Hoje em dia, cada

Leia mais

Adaptação Dinâmica desistemas Distribuídos p.1/54

Adaptação Dinâmica desistemas Distribuídos p.1/54 Adaptação Dinâmica de Sistemas Distribuídos Francisco José da Silva e Silva Orientadores: Prof. Dr. Markus Endler Prof. Dr. Fabio Kon Instituto de Matemática e Estatística da Universidade de São Paulo

Leia mais

Introdução a Computação em Nuvem

Introdução a Computação em Nuvem Introdução a Computação em Nuvem Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia

Leia mais

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos Introdução Laboratório de Computação para Ciências Módulo II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Mestrado Profissional

Leia mais

Ferramenta MVCase Uma Ferramenta Integradora de Tecnologias para o Desenvolvimento de Componentes Distribuídos

Ferramenta MVCase Uma Ferramenta Integradora de Tecnologias para o Desenvolvimento de Componentes Distribuídos Ferramenta MVCase Uma Ferramenta Integradora de Tecnologias para o Desenvolvimento de Componentes Distribuídos Eduardo Santana de Almeida Daniel Lucrédio Calebe de Paula Bianchini Antonio Francisco do

Leia mais

Aula 12 Modelagem de Processos de Negócio Prof. Filipe Wall Mutz

Aula 12 Modelagem de Processos de Negócio Prof. Filipe Wall Mutz Aula 12 Modelagem de Processos de Negócio Prof. Filipe Wall Mutz Introdução Devido a dinâmica do mundo dos negócios, empresas frequentemente se veem com processos obsoletos e ineficientes. Novas tecnologias

Leia mais

Web Services. Sistemas Distribuídos Marcos Costa

Web Services. Sistemas Distribuídos Marcos Costa Web Services Sistemas Distribuídos Marcos Costa masc@cin.ufpe.br Definição! WebServices.org! Web Services are encapsulated, loosely coupled contracted functions offered via standard protocols 2 Definição

Leia mais

INF1013 MODELAGEM DE SOFTWARE

INF1013 MODELAGEM DE SOFTWARE INF1013 MODELAGEM DE SOFTWARE Departamento de Informática PUC-Rio Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 1 O Paradigma Orientado a Objetos A Linguagem UML Descrição da Arquitetura 1 Programa

Leia mais