metas de projeto introdução questões básicas de projeto requisitos do usuário

66
METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Upload: internet

Post on 17-Apr-2015

122 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

METAS DE PROJETO

Introdução

Questões Básicas de Projeto

Requisitos do Usuário

Page 2: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Características de um SD(Requisitos Genéricos de Projeto)

• Compartilhamento de recursos

• Sistema Aberto

(Openness)

• Concorrência

• Escalabilidade

(Extensibilidade)

• Tolerância à Falha

• Transparência de Distribuição

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 3: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Introdução• O projeto de SD

objetiva alcançar as metas de projeto chaves:

Alta Performance

Confiabilidade

Escalabilidade

Consistência

Segurança

• Abordar as questões técnicas básicas de projeto que afetam o alcance destas metas.

• Focalizar arquiteturas de sistema e componentes usados para satisfazer os requisitos genéricos.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 4: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Introdução• O projeto e a implementação de SD deve ser

aberto. O desenvolvimento de aplicações distribuídas frequentemente resulta na necessidade de adicionar novos serviços. Esses serviços devem ser projetados satisfatoriamente em conjunção com os serviços existentes e satisfazer padrões similares com respeito a metas de projeto chaves.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 5: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Introdução

• Neste sentido o desenvolvimento de cada nova aplicação distribuída envolve decisões de projeto que objetivam as mesmas metas como no projeto inicial do sistema. Assim o conhecimento do projeto é indispensável, não somente no projeto inicial de SDs, mas também para o desenvolvimento de aplicações distribuídas.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 6: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Introdução

• O que o projeto de um serviço distribuído envolve ?

Metas específicas podem ser identificadas com respeito a cada das categorias listadas na Figura 2.1 e, possivelmente, outras categorias específicas de serviço.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 7: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Introdução

• Essas metas podem ser expressas na forma de declarações formais sobre o comportamento de um sistema, tal como:

“o serviço continuará a estar disponível após a falha de qualquer processo servidor”, que pode ser verificada, ou por análise do projeto ou por teste. O alcance de tais metas é uma medida do sucesso de um projeto.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 8: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Introdução

• Nas seção 2.2 seguinte:

Principais problemas técnicos e imprevistos, para o alcance das metas de projeto chaves.

Um bom projeto é mais do que resolver problemas técnicos e evitar imprevistos; ele deve ser orientado para as metas em função dos desenvolvedores de software e dos usuários finais.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 9: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Introdução

• As necessidades específicas de ambas destas classes (desenvolvedores de software e usuários finais) são notoriamente difíceis de identificar.

• Requisitos genéricos do usuário para sistemas distribuídos ( seção 2.3 )

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 10: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Questões Básicas de Projeto

• Questões que não são relacionadas à natureza distribuída de um sistema - tais como técnicas de engenharia de software, interação usuário-computador e projeto de algoritmo.

• Discussão de interesse: questões que surgem especificamente da natureza distribuída do sistema.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 11: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Questões Básicas de Projeto

De natureza distribuída:

• Nomeação

• Comunicação

• Estrutura do Software

• Alocação de Carga

• Manutenção de Consistência

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 12: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Questões Básicas de Projeto

• Nomeação (Naming)

SDs são baseados: compartilhamento de recursos e transparência de distribuição. Os nomes atribuídos a recursos ou objetos devem ter significados globais que são independentes da localização do objeto, e eles devem ser suportados por um sistema de interpretação de nomes.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 13: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Nomeação

• O sistema de interpretação de nomes deve traduzir nomes, no sentido de habilitar programas acessarem recursos nomeados.

• Questão de projeto: projetar esquemas de nomeação com escalabilidade para um grau apropriado, no qual nomes são traduzidos eficientemente para satisfazer metas apropriadas de performance.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 14: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Nomeação

• A provisão de esquemas de propósito geral para nomeação de recursos é uma consequência necessária do compartilhamento de recursos.

• Esquemas de nomeação devem ser projetados para suportar escalabilidade e transparência de localização.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 15: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Nomeação

• Serviços de nomes mantém a informação necessária para resolver nomes e prover um serviço de resolução de nomes para clientes.

• Seu projeto tem impacto sobre a performance, escalabilidade e na segurança de sistemas distribuídos.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 16: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Questões Básicas de Projeto

• Comunicação

A performance e a confiabilidade das técnicas de comunicação usadas para implementação de SDs são críticas para a performance do sistema.

• Altas velocidades de transmissão podem ser alcançadas nas redes (LAN ou WAM).

• Mas, ... ...Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 17: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Comunicação

• Mesmo com redes de alta velocidade, comunicação pode consumir tempo, por causa do número e complexidade das camadas de software envolvidas.

• Questão de projeto:

otimizar a implementação de comunicação em SDs, considerando um modelo de programação de alto nível para seu uso.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 18: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Comunicação• O projeto de subsistemas de comunicação,

particularmente os modelos de comunicação para os quais eles são otimizados têm impacto sobre a performance e na abertura do sistema.

• Os modelos Cliente/Servidor e Multicast são os mais efetivos para a construção de SDs abertos e suas implementações eficientes são requisitos chave de projeto.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 19: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Questões Básicas de Projeto

• Estrutura do Software

A característica de ser aberto é alcançada através do projeto e construção de componentes de software com interfaces bem-definidas.

• Abstração de Dados é uma importante técnica de projeto para SDs. Serviços podem ser vistos como os gerenciadores de objetos de um determinado tipo de dados

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 20: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Estrutura do Software

• Abstração de Dados é uma importante técnica de projeto para SDs.

• Serviços podem ser vistos como gerenciadores de objetos de um determinado tipo de dados.

• A interface para um serviço pode ser vista como um conjunto de operações.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 21: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Estrutura do Software

• Questão de projeto:

Estruturar um sistema de modo que novos serviços possam ser introduzidos, para trabalharem em conjunção com o serviços já existentes, mas, sem duplicação de elementos de serviços que já existem.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 22: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Estrutura do Software

• Métodos para se estruturar software são requeridos para se alcançar os benefícios de abertura do sistema.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 23: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Estrutura do Software

• As escolhas desses métodos se situam no domínio de projeto de sistemas operacionais (os métodos pelos quais os recursos básicos requeridos por todas as aplicações serão providos e o grau para o qual eles podem ser configurados e otimizados para satisfazer os requisitos do usuário).

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 24: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Alocação da Carga de Trabalho

Sistema de Computação Centralizado:

Todos os recursos de processador e memória são disponíveis para alocação pelo SO, em uma maneira requerida pela carga de trabalho imposta pelo usuário corrente.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 25: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Alocação da Carga de Trabalho

Sistema Distribuído Simples (Figura 1.1)

A performance do processador e capacidade de memória de uma workstation determina o tamanho da maior tarefa que pode ser realizada por um usuário.

Workstation-Server Model

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 26: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Alocação da Carga de Trabalho

Existem vantagens substanciais para usuários em “colocar os ciclos do processador perto do usuário”, especialmente em aplicações altamente interativas.

Modelo Workstation-Server. Mas, ... ...

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 27: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Alocação de Carga de Trabalho

• O simples modelo Workstation-Server não otimiza o uso de recursos de processamento e memória, e não habilita ao seu usuário, que tenha tarefa de computação exigindo grande poder de processamento e requerimento de memória, a obter recursos adicionais.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 28: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Questões Básicas de Projeto

• Alocação de Carga de Trabalho

Boa performance é um requisito para a maior parte dos produtos oriundos da engenharia, e é de interesse primordial para a maioria dos programadores e projetistas de sistemas.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 29: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Alocação da Carga de Trabalho

• Duas modificações no

Workstation-Server Model:

Processor Pool Model

Shared Memory Multiprocessor

Computers

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 30: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Alocação da Carga de Trabalho

• Processor Pool Model (Figura 2.6)

Inclui processadores que podem ser alocados para tarefas dos usuários, dinamicamente.

Possibilita tarefas serem alocadas para workstations ociosas ou sub-utilizadas.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 31: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Alocação da Carga de Trabalho

• Shared-Memory Multiprocessors

(Figura 2.7)

Pode ser aplicado a ambos os modelos, especialmente para uma grande carga de computação, que pode ser manipulada por diversos processadores separados, como no caso de servidores muito sobrecarregados.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 32: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Alocação da Carga de Trabalho

• Alocação da Carga de Trabalho tem impacto na efetividade com qual os recursos de hardware de um SD são usados, e portanto, na performance total do sistema.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 33: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Alocação da Carga de Trabalho• Computadores multiprocessadores de

memória compartilhada são frequentemente usados para tarefas intensivas de processador em SDs.

• Abordagem para construção de software para o uso de workstation ociosas, para realizar tarefas computacionais de longa duração de execução, pode ser usada para alocação da carga de trabalho.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 34: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Alocação da Carga de Trabalho

• Questão de Projeto para SDs:

Como dispor o processamento, a comunicação e os recursos, distribuídos em uma rede, visando obter um efeito ótimo no processamento de uma carga de trabalho que estará sempre mudando.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 35: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Questões Básicas de Projeto

• Manutenção de Consistência

Questões de consistência frequentemente surgem da separação dos recursos de processamento e da concorrência em SDs.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 36: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Manutenção de Consistência

Existem diversos problemas de consistência que podem surgir em SDs:

• consistência de:

cache, clock, falha (failure), replicação,

atualização (update) e interface do usuário.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 37: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Manutenção de Consistência

• Sua significância para o projeto está no seu impacto sobre a performance de SDs e aplicações distribuídas.

• Questão de Projeto: A manutenção de consistência em um custo razoável é talvez o mais difícil problema encontrado no projeto de um SD.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 38: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Manutenção de Consistência

• A necessidade para consistência:

Quando dados compartilhados ou recursos são atualizados por diversos processos independentes e existe a necessidade para manter consistência entre cópias de dados replicados, incluindo o caso importante, no qual cópias ou partes de recursos são cached em computadores clientes.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 39: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Requisitos do Usuário

• Consideração pelos projetistas de SDs das necessidades dos usuários potenciais.

• A maior parte dos SDs são projetados para prover facilidades de computação de propósito geral ...

• Os mais importantes requisitos que surgem em sistemas práticos:

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 40: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Requisitos do Usuário

• Funcionalidade “O que o sistema deve fazer para os usuários.”

• Qualidade de Serviço “Envolvendo questões sobre performance, confiabilidade e segurança.”

• Reconfiguração “A necessidade para um sistema acomodar mudanças sem causar desrupção da provisão de serviço existente.”

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 41: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Requisitos do Usuário

• Habilitam usuários e programas de aplicação a explorarem as características especiais de sistemas distribuídos, sem comprometer as características-chaves e as metas de projeto já identificadas.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 42: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Funcionalidade

• Quais serviços podem usuários e desenvolvedores de aplicação esperar de um sistema distribuído ?

• Quais aplicações os usuários podem rodar ?

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 43: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Funcionalidade• Benefícios de Sistemas Distribuídos são:

(a) a economia e a conveniência proporcionada pelo compartilhamento de recursos de HW e de informação;

(b) o melhoramento potencial em performance e confiabilidade oriunda da separação dos componentes de software, de modo que possam ser executados em computadores separados.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 44: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Funcionalidade

• O requisito mínimo para um sistema distribuído é a de que a funcionalidade provida por um tal sistema, não deve ser menor do que o usuário poderia esperar de qualquer um único computador isolado.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 45: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Funcionalidade

• O requisito mais forte é que um sistema distribuído deve proporcionar um melhoramento com relação aos serviços providos por qualquer computador isolado, exceto, compartilhamento de recursos, através de uma ou ambas melhorias:

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 46: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Funcionalidade• Compartilhamento através de uma rede pode trazer uma variedade de recursos, do

que poderia ser proporcionado por um único computador.

• Utilização das vantagens de distribuição pode ser possível a nível de API, de modo

que aplicações que executam compartilhamento explícito, tolerância à falha ou aplicações paralelas podem ser

programadas.Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 47: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Funcionalidade

• A maioria dos usuários estão interessados, principalmente, na questão de quais aplicações eles podem rodar.

• Por um lado, novas funcionalidades - aquelas que não existem em um sistema centralizado - podem ser providas em um sistema distribuído.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 48: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Funcionalidade

• Por outro lado, já existe muito software, que roda em sistemas centralizados. Muito esforço e investimento financeiro foi feito para a produção e manutenção desse software. Assim, de um indivíduo ou organização que tenha investido nesse software, surge a questão:

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 49: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Funcionalidade

• Esse software ainda trabalhará na transição para um novo sistema distribuído ?

Algum software tem de ser substituído em uma transição para um sistema que explora as vantagens da distribuição ?

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 50: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Funcionalidade

• Existem quatro opções abertas, quando considerando a migração de computação centralizada multi-usuário, ou computação baseada em PC de um único usuário, para a computação distribuída:

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 51: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Funcionalidade• 1. Adaptar sistemas operacionais existentes: Continua-se a usar sistemas operacionais

existentes, que tenham sido adaptados para rede, tal como o UNIX; adiciona-se serviços, como aplicações no topo do UNIX, sempre que possível, mas modifica-se o kernel, em alguns casos importantes, para prover transparentemente, uma implementação distribuída de uma facilidade existente.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 52: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Funcionalidade• 2. Migrar para um inteiramente novo sistema

operacional projetado para sistemas distribuídos;

Para se obter as vantagens totais da distribuição, os projetistas não devem estar restritos pelas características de sistemas antigos. Todos os serviços de sistemas operacionais podem ser abertos e distribuídos nesta opção. O software existente torna-se em desuso.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 53: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Funcionalidade• 3. Emulação: Migra-se para um novo sistema operacional

projetado para sistemas distribuídos, mas um que possa emular um ou mais sistemas operacionais existentes. Assim, o software existente continuará a rodar, mas um novo software pode ser escrito usando a interface de chamadas de sistema do novo sistema operacional, para se obter as vantagens da distribuição. Ambos tipos de software podem rodar lado-a-lado.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 54: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Funcionalidade

• A opção 1 é um pouco limitada nas possibilidades para novas funcionalidades que ela oferece.

• A opção 2 representa um ideal do ponto de vista do projetista, mas pode deixar muitos usuários insatisfeitos.

• A opção 3 parece preferível em relação a qualquer das outras duas.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 55: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Reconfiguração

• A escalabilidade de um projeto de sistema distribuído e sua habilidade para acomodar heterogeneidade, são relevantes quando o projeto é para ser implementado em instalações separadas de diferentes tamanhos e máquinas, e quando uma instalação particular é expandida. No último caso, a mudança deve ocorrer sem parar o sistema.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 56: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Reconfiguração

• Existem duas escalas de tempo em sistemas distribuídos, sobre as quais, mudanças são causas potenciais para parar o sistema, e que devem ser consideradas no projeto do software do sistema:

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 57: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Reconfiguração

• Mudanças a Curto-Prazo:

O software de sistema distribuído deve ser projetado para tratar as seguintes mudanças em condições de tempo de execução:

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 58: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Reconfiguração

• Um processo com falha, computador ou componente da rede é substituído por um outro, trabalhando replicando o outro.

• Carga computacional é deslocada de máquinas sobrecarregadas para máquinas menos sobrecarregadas, de forma a aumentar o throughput do sistema distribuído.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 59: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Reconfiguração

• Comunicações de rede são minimizadas para transferir dados entre máquinas, em um tal modo, para tornar esses dados, localmente acessíveis, e assim evitar comunicações de redes.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 60: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Reconfiguração

• Evolução a Médio ou Longo-Prazo:

Em adição a mudanças devido a expansão em escala e a necessidade para acomodar componentes heterogêneos que ocorrem como parte de um desenvolvimento normal de sistema distribuído, máquinas existentes são, algumas vezes, atribuídas com novos papéis, ou aquisições de novas máquinas são feitas.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 61: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Reconfiguração

• A habilidade para acomodar mudanças sobre qualquer destas escalas de tempo

é chamada de reconfiguração do sistema

( reconfigurability ), e as próprias mudanças individuais são chamadas reconfigurações. O requisito para efetuar reconfigurações sem parar o sistema importa em torná-las transparentes.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 62: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Qualidade de Serviço

• Uma vez que usuários são providos com a funcionalidade que eles requerem de um serviço em um SD, podemos ir indagar sobre a provisão da qualidade de serviço, e se existe qualquer valor adicionado surgido da distribuição.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 63: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Qualidade de Serviço

• Discutimos qualidade de serviço sobre os seguintes aspectos:

- Performance (tempo de resposta

experimentado pelos seus usuários).

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 64: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Qualidade de Serviço

- Confiabilidade (medida de quão pequena é a probabilidade do sistema desviar do comportamento como ele foi projetado, em relação à especificação de seu comportamento correto).

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 65: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Qualidade de Serviço

- Disponibilidade ( medida da proporção de

tempo que o sistema está disponível para

uso).

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro

Page 66: METAS DE PROJETO Introdução Questões Básicas de Projeto Requisitos do Usuário

Qualidade de Serviço

- Segurança (o problema tem dois aspectos)

- privacidade e integridade dos dados

que viajam na rede;

- abertura à interferência com software de

sistema.

Computação Distribuída UNIRONDON - Cuiabá - MTJoão Bosco Mangueira Sobral Daniela Barreiro Claro