Engenharia de Software

Slides:



Advertisements
Apresentações semelhantes
Ciclo de vida e organização do projeto
Advertisements

Sistemas distribuídos Metas de Projeto Prof. Diovani Milhorim
Sistemas Cliente/Servidor Introdução
Engenharia de Software
Engenharia de Software
UML Modelando um sistema.
UML Visões – Parte 2.
SISTEMAS OPERACIONAIS ERP E SCM
Engenharia de Software
Sistemas Distribuídos
Centrado na arquitetura
INTRODUÇÃO A INFORMÁTICA
Metodologias Orientadas a Agentes
Interação Cliente Servidor
Análise e Projeto de Sistemas
Engenharia de Requisitos Requisito – sistema Caso de uso - usuário
Aspectos Avançados em Engenharia de Software Aula 3 Fernanda Campos
Como Desenvolver Sistemas de Informação
Sistemas Distribuídos
Introdução a Arquitetura Orientada a serviços
DIAGRAMA DE COMPONENTES
Sistema Cliente-servidor ou Sistema Client-server
Sistema de Informação Gerencial (SIG)
Gerenciamento de Configuração
Universidade São Marcos Curso: Gestão de Negócios Internacionais
Sistemas Distribuídos
Análise e Projeto de Sistemas UNIVERSIDADE DE CRUZ ALTA Ciência da Computação 2010/1.
Gerenciamento de Dados
Análise e Projeto de Sistemas
Sistemas Operacionais
Arquitetura Cliente /Servidor
Modelos de Processo de Software
Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05.
Fase de Concepção (Início, Planejamento)
Professor: Márcio Amador
Programação Orientada à Objetos
Sistemas Distribuídos Introdução. Conceito Coleção de múltiplos processos que executam sobre uma coleção de processadores autônomos interligados em uma.
Prof. Silvestri – todos os direitos reservados SISTEMAS DISTRIBUIDOS Aula 5 Eduardo Silvestri
O Processo de desenvolvimento de software
Introdução à Engenharia de Software
SISTEMAS OPERACIONAIS I
Engenharia de Software
Processos.
O que é? É o processo de investigação técnica com intuito de identificar a qualidade, a segurança e a exatidão do software desenvolvido. A validação do.
Sistemas Distribuídos
Introdução a Banco de Dados Aula 04
RUP - Cap. 4 – Processo Centrado na Arquitetura
METODOLOGIA, MÉTODOS E FERRAMENTAS
Laboratório de Programação
Aplicações de redes em sistemas de informação
Requisitos de Software
Integração de Ferramentas CASE
© 2007 by Pearson Education ©Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 18 Slide 1 Reuso de Software.
Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.
Prototipação de Software
Análise e Projeto de Sistemas Orientado a Objetos Profa. Ana Karina Barbosa.
Estilos Arquiteturais
Serviços de rede e internet Jackson Eduardo da Silva.
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Aula 02 de Eng. de Requisitos
Engenharia de Software Orientada a Objetos
Interações entre objetos
Redes e Sistemas Distribuídos II – Cód Prof. MSc. Ronnison Reges Vidal.
Apresentação Leonardo Brussolo de Paula
Projetar Processos. Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar distribuição | 2 Descrição do Projeto.
TÉCNICAS DE ESTIMATIVAS
Processos de Software Ludimila Monjardim Casagrande 1º Semestre Desenvolvimento e Qualidade.
1 Especificação de Sistemas de Software e a UML. 2 Modelagem de sistema A modelagem de sistema auxilia o analista a entender a funcionalidade do sistema.
©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE1/41 Análise e Projeto de Sistemas Arquitetura de Software.
Bruna Cavallero Martins Universidade Católica de Pelotas.
Transcrição da apresentação:

Engenharia de Software Projeto Orientado a Objetos Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto Orientado a objetos Um projeto orientado a objetos é representado pelos projetistas em termos de “coisas”, em vez de operações ou funções. O sistema em funcionamento é constituído de objetos que interagem entre si, que mantêm seu próprio estado local e fornecem operações com base nessas informações de estado. Os objetos ocultam informações e estados, limitam o acesso e se comunicam entre si. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto Orientado a objetos A Análise Orientada a Objetos se dedica a desenvolver um modelo orientado a objetos do domínio de aplicação. O Projeto Orientado a Objetos se dedica a desenvolver um modelo orientado a objetos de um sistema de software para implementar os requisitos identificados. A Programação Orientada a Objetos se ocupa de realizar um projeto de software utilizando uma linguagem orientada a objetos. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto Orientado a objetos Os sistemas orientados devem possui as seguintes características: Fácil manutenção Pouco impacto em modificações “Objetos–componentes” de fácil reutilização Reutilizar componentes de projetos antecedentes Reduz custo, validação, desenvolvimento. Diminui o risco do projeto Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto Orientado a objetos Um objeto é uma entidade que possui um estado e um conjunto definido de operações que operam nesse estado. O estado é representado por um conjunto de atributos de objeto. As operações associadas com o objeto fornecem serviços para outros objetos (cliente), que requisitam esses serviços quando alguma computação é necessária. Os objetos são criados de acordo com uma definição de classe de objetos, que serve como um template para criar objetos. Esta classe apresenta declarações de todos os atributos e operações que devem ser associados a um objeto dessa classe. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto Orientado a objetos Notação UML para Classe de Objetos Nome da Classe Funcionário nome: string endereco: string matricula: integer departamento: Atributos baterPonto(); retirarSalario(); mudarDados(); Operações Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto Orientado a objetos A comunicação entre os objetos de um sistema de software orientado a objetos pode ser: Síncrona: O objeto que chama espera que a requisição de serviço seja concluída. Assíncrona: o objeto que chama pode continuar em operação enquanto o serviço requisitado está sendo executado. Neste caso os objetos foram implementados como processos simultâneos ou threads. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto Orientado a objetos O processo geral para o projeto orientado a objetos engloba os seguintes estágios: Compreender e definir o contexto e os modos de utilização dos sistema. Projetar a arquitetura do sistema. Identificar os principais objetos do sistema Desenvolver os modelos de projeto Especificar as interfaces dos objetos. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto Orientado a objetos (compreender e definir contexto) O primeiro estágio do processo de software é desenvolver a compreensão das relações entre o software que está sendo projetado e seu ambiente externo. O contexto do sistema é o modelo estático, que descreve os outros sistemas naquele ambiente. O modelo de uso do sistema é um modelos dinâmico, que descreve como o sistema realmente interage com seu ambiente. É recomendado utilizar os diagramas de contexto e caso de uso da UML. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto Orientado a objetos (Projetar a Arquitetura) Uma vez as interações entre o sistema de software que está sendo projetado e o ambiente do sistema tenham sido definidas, é possível utilizar essas informações como base para projetar a arquitetura do sistema O sistema deve ser decomposto de modo que as arquiteturas sejam o mais simples possível. A boa prática indica no máximo 7 entidades fundamentais para um modelo de arquitetura. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto Orientado a objetos (Identificar os objetos ) Nesta fase do projeto já deve haver uma idéia dos objetos essenciais do sistema. Embora a fase seja ‘identificar objetos’, na verdade esse processo se ocupa em identificar as classes de objetos. Algumas dicas para identificação de objetos: Utilizar o vocabulário usual do sistema, onde atributos são nomes e operações são verbos. Utilizar entidades tangíveis (exemplos do mundo real) como: aeronave, gerente, cliente, pedido. Utilizar uma abordagem comportamental, onde primeiro deve ser compreendido o comportamento geral do sistema. Realizar uma abordagem baseada em cenários, onde vários cenários de utilização do sistema são identificados e analisados de cada vez. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto Orientado a objetos (Modelos de projeto) Há dois modelos de projetos que podem ser produzidos para descrever um projeto orientado a objetos. Os modelos estáticos, que descrevem a estrutura estática do sistema em termos das classes de objetos de sistema e de seus relacionamentos. Ex. diagrama de Classe na UML. Os modelos dinâmicos,que descrevem a estrutura dinâmica do sistema e mostram as interações entre os objetos do sistema (e não as classes de objetos).Ex. diagrama de seqüência, atividades e estado na UML. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto Orientado a objetos (Especificação de interface entre objetos) É necessário especificar as interfaces para que os objetos e outros componentes possam ser projetados em paralelo, considerando a interface já oferecida. Deve ser evitado informações de representação de interface nos projetos de interface. As representações devem ser ocultas e as operações de objeto devem ser fornecidas para modificar e atualizar dados. Não existe necessariamente a relação 1:1 entre objeto e interface. Um objeto pode ter mais de uma interface de serviço que o mesmo implemente. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Engenharia de Software Projeto de Softwares de Tempo Real Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto de Software em Tempo Real Um sistema em tempo real é um sistema de software que precisa responder a eventos em tempo real. Sua precisão não depende apenas dos resultados que ele produz, mas também do momento em que esses resultados são produzidos. Os sistemas de tempo real são diferentes de outros tipos de sistemas de software seu funcionamento correto depende da resposta do sistema aos eventos dentro de um determinado intervalo de tempo (geralmente curto). Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto de Software em Tempo Real Um sistema em tempo real é como um sistema de estímulo/resposta. Considerando um determinado estímulo fornecido, o sistema deve produzir uma resposta correspondente. Os estímulos são de duas classes: Estímulo Periódico: Eles ocorrem em intervalos de tempo previsíveis. Ex. examinar um sensor a cada 50 milisegundos e reagir (responder) de acordo com valor (estímulo) deste sensor. Estímulo Aperiódico: ocorrem irregularmente, em geral são assinalados utilizando-se o mecanismo de interrupção do computador. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto de Software em Tempo Real Modelo Geral de um sistema de tempo real Sensor Sensor Sensor Sensor Sensores associados ao sistema que fornecem informações sobre o estado do ambiente do sistema. Sistema de Controle De Tempo Real Controlam alguma unidade de hardware que influencia o ambiente. Atuador Atuador Atuador Atuador Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto de Software em Tempo Real Um sistema em tempo real tem de responder a estímulos que ocorrem em diferentes momentos. Sua arquitetura deve ser organizada de modo que o controle seja transferido ao manipulador apropriado para aquele estímulo, assim que ele for recebido. Sistemas em tempo real são normalmente projetados como um conjunto de processos concorrentes e cooperantes e parte do sistema é dedicado a gerenciar estes processos. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto de Software em Tempo Real O processo de projeto para sistemas de tempo real difere de outros processos de projeto de software, porque os tempos de resposta do sistema devem ser considerados logo no início do processo. Os eventos (estímulos), em vez dos objetos ou das funções, devem ser a parte central do processo de projeto. Os estágios deste processo são: Identificar os estímulos que o sistema deve processar e as repostas associadas. Para cada estímulo e cada resposta associada, identificar as restrições de tempo que se aplicam ao processamento de estímulo e resposta. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto de Software em Tempo Real Agregar o processamento de estímulo e de resposta em uma série de processos simultâneos. Para cada estímulo e resposta, projetar algoritmos para realizar os cálculos requeridos. Projetar um sistema de escalonamento que assegura que os processos sejam iniciados a tempo de atender seus prazos. Integrar o sistema sob o controle de um executivo tempo real. Um executivo em tepo real é responsável pelo gerenciamento de processos e recursos. Ele sempre inclui um escalonador, que é o componente responsável por decidir qual processo devem ser escalonado para ser executado. As decisões de escalonamento são tomadas utilizando-se prioridades de processo. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Engenharia de Software Projeto de Software com Reuso Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto com Reuso A engenharia baseada em reuso é uma abordagem para o desenvolvimento que tenta maximizar o reuso do software já existente. Reuso de sistemas de aplicações:Todo sistema de aplicação pode ser reutilizado pela sua incorporação, sem mudança, em outros sistemas. Reuso de Componentes: Os componentes de uma aplicação, que variam em tamanho incluindo desde subsistemas até objetos isolados. Reuso de Funções: Os componentes de software que implementam uma única função, como uma função matemática, podem ser reutilizados. Esse tipo de reuso tem como base bibliotecas. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto com Reuso Requisitos fundamentais para projetos baseado em reuso: Deve ser possível encontrar componentes reutilizáveis apropriados. As organizações necessitam de uma base de componentes reutilizáveis adequadamente catalogados e documentados. Deve ser fácil encontrar componentes nesse catálogo, se ele existir. O responsável pelo reuso dos componentes precisa ter certeza de que os componentes se comportarão como especificado e de que serão confiáveis. Os componentes devem ter uma documentação associada para ajudar o usuário a compreendê-los e adaptá-los a uma nova aplicação. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto com Reuso Benefícios fundamentais do reuso de software Maior Confiabilidade: Os componentes reutilizados que são empregados nos sistemas em operação devem ser mais confiáveis do que os componentes novos, pois os mesmos já foram experimentados e testados em diferentes ambientes. Redução de Riscos de Processo: recorrendo a componentes já existentes diminui-se a incerteza sobre os custos relacionados aos reuso desse componente do que sobre custos de desenvolvimento. Fator importante para o Gerenciamento de projetos para controle das estimativas de custo de software. Uso efetivo de especialistas: em vez de especialistas em aplicações fazerem o mesmo trabalho em diferentes projetos, eles podem desenvolver componentes reutilizáveis, que englobam seu conhecimento. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto com Reuso Benefícios fundamentais do reuso de software Conformidade em padrões: Alguns padrões como os de interface com o usuário, podem ser implementados como um conjunto de componentes-padrão. Desenvolvimento acelerado: De modo geral, é mais importante fornecer um sistema para o mercado o mais rápido possível do que se prender aos custos gerais de desenvolvimento. O reuso de componentes acelera a produção, porque o tempo de desenvolvimento e o de validação devem ser reduzidos. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto com Reuso – Desenvolvimento baseado em componentes O desenvolvimento baseado em componentes leva em conta a utilização de componentes “caixa-preta”, que oferecem serviços através de uma interface bem definida. Visualizar um componente como um provedor de serviços enfatiza duas importantes características de um componente reutilizável: O componente é uma entidade executável independente. O código- fonte não está disponível, de modo que o componente não é compilado com outros componentes do sistema. Os componentes publicam sua interface e todas as interações são feitas por meio dessa interface. A interface de um componente é expressa em termos de operações parametrizadas e seu estado interno nunca é exposto. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto com Reuso – Desenvolvimento baseado em componentes Os componentes são definidos por suas interfaces (modelo mais genérico): Interface Provides: a interface que fornece, que define os serviços oferecidos pelo componente. Interface Requires: a interface que requer, que especifica os serviços que devem estar disponíveis a partir do sistema que está utilizando o componente. Se estas interfaces não forem definidas, o componente não funcionará. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto com Reuso – Desenvolvimento baseado em componentes O termo COTS (produtos de prateleira) pode se aplicar a qualquer componente oferecido por um terceiro (fabricante). Problemas relacionados com sistemas COTS: Falta de controle sobre a funcionalidade e o desempenho. Problemas com interoperabilidade entre sistemas COTS Nenhum controle sobre a evolução do sistema. Suporte técnico dos fabricantes. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Projeto com Reuso – Desenvolvimento baseado em componentes Características de componentes reutilizáveis: O componente deve refletir abstrações estáveis de domínio, que são conceitos fundamentais no domínio de aplicações, as quais se modificam pouco. O componente deve ocultar a maneira como seu estado é representado e deve fornecer operações que permitam que o estado seja acessado e atualizado. O componente deve ser tão independente como possível. Todas as exceções devem ser parte da interface do componente. Os componentes não devem manipular as próprias exceções uma vez que diferentes aplicações terão diferentes requisitos para manipulação de exceções. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Engenharia de Software Projeto de Sistemas Distribuídos Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Arquitetura de Sistemas Distribuídos Em uma arquitetura de sistemas distribuídos o processamento das informações é distribuído entre vários servidores. Atualmente há três tipos de sistema: Sistemas Pessoais: projetados para executar em computadores pessoais. Ex. Editor de texto, planilhas de cálculo, sistemas gráficos. Sistemas Embutidos: são projetados em um único processador ou em um grupo de processadores integrados. Ex. sistemas de controle de dispositivos domésticos. Sistemas Distribuídos: o software é executado em um grupo de processadores fracamente integrados, que cooperam entre si conectados por uma rede. Ex. caixa eletrônico, site de compras. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Arquitetura de Sistemas Distribuídos Importantes características de um sistema distribuído: Compartilhamento de recursos de hardware, software, impressora, arquivo, porém tudo gerenciado por um computador central. Abertura de sistema, que diz até que ponto ele pode ser ampliado, adicionando-se novos recursos não proprietários a ele. Os sistemas distribuídos normalmente incluem hardware e software de diferentes fabricantes. Controle de Concorrência: em um sistema distribuído vários processos podem operar ao mesmo tempo em computadores diferentes. Escalabilidade : a capacidade do sistema de aumentar com o aumento de recursos. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Arquitetura de Sistemas Distribuídos Importantes características de um sistema distribuído: Transparência: o usuário não necessita saber da natureza distribuída do sistema. Os diferentes componentes de um sistema Distribuído podem ser implementados em diferentes linguagens de programação e serem executados em processadores diferentes. Modelo de dados e protocolo de comunicação podem ser inteiramente diferentes. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Arquitetura de Sistemas Distribuídos Para possibilitar a comunicação dos vários componentes distribuídos no sistema é necessário um software para gerenciar a comunicação entre os diferentes ambientes, chamado Middleware. Middlewares são softwares para gerenciamento de comunicação com banco de dados, gerentes de transações, conversores de dados e controladores de comunicação. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Arquitetura de Sistemas Distribuídos Arquitetura Cliente – Servidor Em uma arquitetura Cliente-Servidor um conjunto de serviços é fornecido por servidores a um conjunto de clientes que utilizam este serviço. Os clientes devem estar cientes que os servidores estão disponíveis, porém não sabem da existências dos demais clientes. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Arquitetura de Sistemas Distribuídos (Cliente-Servidor) Aspectos de um cliente sistema distribuído Cliente-Servidor Clientes e Servidores são diferentes Clientes recebem serviços dos servidores e não de outros clientes. Servidores podem atuar como clientes solicitando serviço de outro servidor, porém nunca de outro cliente. Os clientes devem saber dos serviços oferecidos pelos servidores. Os clientes devem saber como contatar os servidores. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Arquitetura de Sistemas Distribuídos (Cliente-Servidor) Não necessariamente existe a proporção 1 processo – 1 processador, pois a arquitetura se refere a estrutura lógica e não física da execução do sistema. Sistema em 3 camadas Cada parte pode estar sendo executada em servidores distintos. Responsável pela interface com o usuário Camada de Apresentação Camada de processamento da aplicação Camada Gerenciamento de Dados Implementa a lógica Operações com o banco de dados. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Arquitetura de Sistemas Distribuídos (Cliente-Servidor) A arquitetura Cliente – Servidor mais simples é a de 2 camadas: Modelo Cliente Magro: o processamento da aplicação fica todo no servidor, o cliente só é responsável por executar o software de apresentação. Servidor Gerenciamento de dados e processamento da aplicação Cliente Apresentação Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Arquitetura de Sistemas Distribuídos (Cliente-Servidor) Modelo Cliente Gordo: o servidor é responsável apenas pelo gerenciamento dos dados. O cliente impolementa a lógica da aplicação e as interações com o usuário. Apresentação e processamento de aplicações Servidor Gerenciamento de Dados Cliente Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Arquitetura de Sistemas Distribuídos (Cliente-Servidor) Desvantagens dos Modelos 2 camadas Cliente Magro Cliente Gordo Escalabilidade e Desempenho Precisa reinstalar o cliente a cada versão Atribui grande carga a rede. Problema de gerenciamento do sistema Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Arquitetura de Sistemas Distribuídos (Cliente-Servidor) Modelo 3 camadas Não necessariamente em máquinas distintas Servidor Processamento de Aplicações Cliente Servidor Gerenciamento de Dados Cliente Interação HTTP Cliente Servidor Web Provisão de Serviço de Conta Servidor de Banco de Dados Da conta cliente SQL Cliente Consulta SQL Cliente Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Arquitetura de Sistemas Distribuídos Arquitetura de Objetos Distribuídos Nesta arquitetura os componentes fundamentais são objetos que fornecem em uma interface um conjunto de serviços. Não há distinção entre cliente e servidor pois os objetos realizam requisições e dão retorno de operações entre si. Os objetos podem ser distribuídos na rede em uma série de computadores que se comunicam entre si através de um Middleware. Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho