Tenho que fazer em uml e Java um frigorifico inteligente, alguem me ajuda
a
fazer isto?? Pretende-se desenvolver um sistema de inventário para um frigorifico digital. O sistema deve permitir controlar todos os produtos colocados e retirados do frigorifico, para além de algumas outras possibilidades descritas mais adiante. No âmbito deste trabalho vamos considerar que o frigorifico tem algumas limitações, quer na sua constituição, quer no tipo de produtos que podem ser armazenados. A descrição do frigorifico e as suas limitações são as indicadas nos pontos seguintes: o O frigorifico só poderá ser do tipo combinado, isto é, constituído por dois blocos, um para refrigeração e outro para congelação. o Cada bloco é constituído por um conjunto de compartimentos que podem ser gavetas, prateleiras e suportes especiais. Cada compartimento apenas pode conter um tipo de produto, ou seja, não é possível combinar vários produtos num só compartimento. o Cada compartimento tem uma capacidade máxima, definida em termos do nº máximo de unidades de medida que pode conter (quilogramas, litros, unidades, etc.); o O congelador é constituído apenas por compartimentos do tipo gaveta onde podem ser armazenados produtos congelados; ? Os produtos congelados podem ser carne e peixe; ? A carne e o peixe são contabilizados em quilogramas; o O refrigerador é constituído por várias compartimentos que podem ser gavetas, prateleiras e suportes especiais; ? Nas gavetas podem ser armazenados produtos frescos (hortaliças e frutas). Tanto as hortaliças como as frutas são contabilizados em quilogramas. Para simplificar consideramos que as hortaliças são apenas cenouras e alfaces, e que as frutas são apenas laranjas e maças; ? Nas prateleiras podem ser armazenados apenas produtos já cozinhados para conservação. Este produtos não são considerados em termos de inventário do frigorifico; ? Nos suportes especiais podem ser armazenados leite, ovos e manteiga. O leite é contabilizado em litros. Os ovos são contabilizados em unidades e a manteiga em quilogramas. O modelo conceptual do problema deverá corresponder apenas à descrição anterior. Sob pretexto nenhum deverá o modelo conceptual incluir outros conceitos para além dos explicitamente mencionados. O modelo conceptual do problema deverá ser entregue sob a forma de um diagrama de classes UML e corresponde à primeira fase do trabalho. Este diagrama deverá incluir a classificação de conceitos em classes e o seu relacionamento através de associações definidas pelo utilizador, agregações e generalizações. Após a definição do modelo conceptual do problema, este modelo deverá ser estendido com um conjunto de conceitos (classes) de implementação e os respectivos atributos e operações. Estas classes são as necessárias para permitir a implementação do sistema através da linguagem de programação Java. Exemplos de classes de implementação são conceitos que não fazem parte do contexto do problema (listas, filas, elementos de interface com o utilizador, etc.) mas que são necessários para a implementação do mesmo através de uma linguagem de programação orientada por objectos. O modelo de desenho do problema corresponde à segunda fase do trabalho e deve ser entregue também na forma de um diagrama de classes UML. Para enquadrar o modelo de desenho os alunos devem considerar que será necessário implementar o conjunto de funcionalidades básicas e avançadas seguinte: 2.1. Funcionalidades Básicas: . Criar um frigorifico combinado, indicando o numero de compartimentos em cada bloco: gavetas, prateleiras e suportes especiais. Na criação do frigorifico deverá ser verificado se um determinado comportamento pode fazer parte de um determinado bloco, por exemplo, não deve ser possível criar suportes especiais no congelador. A cada compartimento tem que ser associado um tipo de produto e uma capacidade; . Criar os diversos produtos que podem ser armazenados, da lista definida anteriormente, sem indicação especifica das quantidades; . Introduzir e retirar produtos do tipo indicado anteriormente nos diversos compartimentos (gavetas, prateleiras e suportes), indicando a quantidade do produto que é armazenada. Confirmar se um determinado produto pode ser armazenado num determinado compartimento e também se existe capacidade para armazenar a quantidade pretendida; . Indicar a lista de produtos armazenados no frigorifico num determinado momento; 2.2. Funcionalidades Avançadas: . Permitir a criação de mecanismos de alarme que indicam a falta de um determinado produto, ou seja, indicar que um determinado produto atingiu um limite mínimo de quantidade que deverá ser associado ao tipo de produto quando este é criado; . Permitir a gravação em suporte persistente (ficheiro) da configuração do frigorifico, da lista de produtos e do conteúdo do frigorífico num determinado momento; . Permitir a associação de datas e horas aos movimentos de produtos no frigorifico. Com base na análise dos movimentos e das respectivas datas, produzir relatório de aquisição e consumo de produtos numa base semanal; |
------------------------------ LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm historico: http://www.mail-archive.com/java-list%40soujava.org.br para sair da lista: envie email para [EMAIL PROTECTED] -------------------------------------------------------------------------