UFMG - Pós-graduação em Ciência da Computação - Programação Paralela

A seguir: Aula 12 - Modelos Acima: Programação Paralela Anterior: Atingibilidade: o mais forte


Trabalho Prático: Uma Aplicação Cliente-Servidor

Um centro de supercomputação necessita de um sistema de cadastro e controle de projetos, instituições e usuários. A arquitetura deve ser cliente-servidor. A interface do sistema é feita via web.

Para se candidatar a usuário , basta dispor de acesso à Internet e um browser. O candidato deve fornecer os seguintes dados:

1.
Nome
2.
Endereço
3.
Login básico desejado (o login verdadeiro, para o Unix, é o login básico concatenado ao identificador do projeto)
4.
Senha
5.
Instituição
Se o login desejado já existir, o sistema deve pedir ao usuário uma troca. A Instituição deve ser previamente cadastrada, e o sistema deve oferecer ao usuário uma lista para escolha. Caso a instituição não exista, o cadastramento pode ser feito na hora, com retorno para a tela inicial.

Qualquer pessoa pode cadastrar uma instituição, fornecendo os seguintes dados:

1.
Nome
2.
Endereço
3.
CGC

Um usuário pode submeter um projeto , fornecendo os seguintes dados:

1.
login
2.
senha
3.
instituição financiadora do projeto
4.
unidades de serviço solicitadas (um inteiro)
5.
um identificador desejado para o projeto
O usuário que tiver seu projeto aprovado passa a ter o status de responsável pelo projeto.

Um usuário qualquer pode pedir a abertura de uma conta , fornecendo os seguintes dados:

1.
login
2.
senha
3.
identificador do projeto

Correntista s (usuários com conta) podem submeter jobs ao centro de supercomputação. O job deve ser aceito se o saldo for positivo. Ao fim do job, um programa do centro deve debitar na conta do correntista (e consequentemente no saldo do projeto) os recursos gastos.

Um usuário pode pedir o saldo do seu projeto a qualquer momento.

Devem ser usados sockets para a implementação. O tutorial de java tem toda informação necessária. O servidor deve atender em paralelo as requisições, disparando threads para cada pedido.


next up previous
Next: Aula 12 - Modelos Up: Programação Paralela Previous: Atingibilidade: o mais forte
Osvaldo Carvalho