Dados dois diretórios designados em um computador, o agente de mirror deve se encarregar em manter ambos os diretórios exatamente iguais
Havendo uma inserção de arquivo ou subdiretório em um dos diretórios, o agente deve inserí-lo no seu diretório mirror
Havendo modificação nos arquivos de um dos diretórios, o agente de mirror deve copiar os arquivos modificados para o diretório mirror (utilizando a data do arquivo para definir qual é o mais atual)
Apagando-se um arquivo ou subdiretório de um dos diretórios, ele deve ser apagado também no diretório mirror
O agente de Mirror deve funcionar como um daemon.
Os diretórios que devem ser espelhados devem ser passados ao agente como um parâmetro (não devem ser embutidos no código).
Havendo um arquivo com o nome KILL_AG.$$$ em um dos diretórios mirror, o agente deve se matar.
O agente somente procederá a mudanças nos diretórios quando os arquivos estiverem fechados ou seja, enquanto algum arquivo estiver aberto, ele não procederá a nenhuma mudança referente ao arquivo em questão.
o agente deve utilizar algum mecanismo que evite o consumo de muito tempo de CPU, para não entrar em conflito com outros processos que estejam rodando na mesma máquina.
Implementar o agente de mirror onde agora um dos lados do mirror é um diretório local e o outro um servidor ftp remoto
Lembrar de manter o agente em estado sleep um certo tempo para evitar o consumo excessivo de tempo de CPU e o congestionamento da rede
A implementação deve ser feita em cima de sockets e não em cima de outros objetos mais especializados existentes no Java
Desenvolver e implementar um agente do tipo web-robot de manutenção que
dado um URL correspondente a um web site determinado, vasculhe todos o links a partir deste site, e verifique se o link continua válido
percorra todas as sub-web pages do site, efetuando a mesma atividade
envie uma mensagem de e-mail para um endereço designado quando links inválidos forem encontrados
Implementar a seguinte configuração
Implementar um objeto Market, que vende informações da seguinte forma:
Lista arquivos, com preço e conteúdo em Kbytes
Recebe agentes móveis para negociação
Vende arquivos, retirando dinheiro do agente e retornando o arquivo desejado
Implementar um agente Trader, que compra informações da seguinte forma:
Agente obtém do usuário a lista de arquivos que deseja comprar, uma lista de Markets que deseja visitar e uma quantidade de dinheiro
Agente move-se para os Markets indicados, procurando pelos arquivos desejados
Encontrando o arquivo, o agente compra-o, incorporando-o em seu código e retorna ao final da busca para sua origem
Fazer o seguinte teste
Criar 3 objetos Market em máquinas diferentes, com arquivos diferentes sendo vendidos, sendo que pelo menos 1 deles exista em mais de um Market
Criar um agente Trader e dar a ele a incumbência de encontrar 5 arquivos diferentes, sendo que 3 deles devem existir unicamente em cada servidor, um deles deve existir em 2 servidores e um deles não deve estar em nenhum servidor
Indicar ao agente Trader os Markets a visitar, e dar dinheiro suficiente para a compra de todos os arquivos
Verificar se o agente retorna com todos os arquivos que poderia comprar
Escolha um processo organizacional qualquer do mundo real e crie um modelo do mesmo via Redes de Agentes utilizando o ONTool
Escolha um processo para o qual você possa variar parâmetros de modo a simular diferentes situações
Complexidade desejada: no entorno de 10 lugares na rede
Simule diferentes situações do processo organizacional
Escreva um relatório, na forma de um arquivo HTML explicando o processo organizacional escolhido e o modelo e mostrando os resultados das simulações
Envie os arquivos da rede gerada, junto com o arquivo HTML e eventuais imagens em um arquivo ZIP