(→"Receita" para a Entrega de Diagramas UML) |
(→Conteúdo e Estrutura do Repositório) |
||
Line 57: | Line 57: | ||
{{CollapsedCode|Conteúdo inicial do repositório CVS para o módulo woo-app|<source lang="text"> | {{CollapsedCode|Conteúdo inicial do repositório CVS para o módulo woo-app|<source lang="text"> | ||
ggc-app | ggc-app | ||
− | |||
├── Makefile | ├── Makefile | ||
└── src | └── src | ||
Line 63: | Line 62: | ||
└── app | └── app | ||
├── App.java | ├── App.java | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
├── exceptions | ├── exceptions | ||
− | │ ├── | + | │ ├── DuplicatePartnerKeyException.java |
− | |||
− | |||
│ ├── FileOpenFailedException.java | │ ├── FileOpenFailedException.java | ||
│ ├── InvalidDateException.java | │ ├── InvalidDateException.java | ||
│ ├── Message.java | │ ├── Message.java | ||
− | |||
│ ├── UnavailableProductException.java | │ ├── UnavailableProductException.java | ||
− | │ ├── | + | │ ├── UnknownPartnerKeyException.java |
│ ├── UnknownProductKeyException.java | │ ├── UnknownProductKeyException.java | ||
│ ├── UnknownServiceLevelException.java | │ ├── UnknownServiceLevelException.java | ||
│ ├── UnknownServiceTypeException.java | │ ├── UnknownServiceTypeException.java | ||
− | │ | + | │ └── UnknownTransactionKeyException.java |
− | |||
− | |||
├── lookups | ├── lookups | ||
− | │ ├── | + | │ ├── DoLookupPaymentsByPartner.java |
− | │ ├── | + | │ ├── DoLookupProductBatchesUnderGivenPrice.java |
│ ├── Label.java | │ ├── Label.java | ||
│ ├── Menu.java | │ ├── Menu.java | ||
− | │ └── | + | │ └── Prompt.java |
├── main | ├── main | ||
│ ├── DoAdvanceDate.java | │ ├── DoAdvanceDate.java | ||
│ ├── DoDisplayDate.java | │ ├── DoDisplayDate.java | ||
− | │ ├── | + | │ ├── DoOpenFile.java |
− | │ ├── | + | │ ├── DoSaveFile.java |
− | |||
− | |||
− | |||
− | |||
− | |||
│ ├── DoShowGlobalBalance.java | │ ├── DoShowGlobalBalance.java | ||
│ ├── Label.java | │ ├── Label.java | ||
│ ├── Menu.java | │ ├── Menu.java | ||
− | │ └── Message.java | + | │ ├── Message.java |
+ | │ └── Prompt.java | ||
+ | ├── partners | ||
+ | │ ├── DoRegisterPartner.java | ||
+ | │ ├── DoShowAllPartners.java | ||
+ | │ ├── DoShowPartnerAcquisitions.java | ||
+ | │ ├── DoShowPartner.java | ||
+ | │ ├── DoShowPartnerSales.java | ||
+ | │ ├── DoToggleProductNotifications.java | ||
+ | │ ├── Label.java | ||
+ | │ ├── Menu.java | ||
+ | │ ├── Message.java | ||
+ | │ └── Prompt.java | ||
├── products | ├── products | ||
− | |||
− | |||
− | |||
− | |||
│ ├── DoShowAllProducts.java | │ ├── DoShowAllProducts.java | ||
+ | │ ├── DoShowAvailableBatches.java | ||
+ | │ ├── DoShowBatchesByPartner.java | ||
+ | │ ├── DoShowBatchesByProduct.java | ||
│ ├── Label.java | │ ├── Label.java | ||
│ ├── Menu.java | │ ├── Menu.java | ||
− | │ | + | │ ├── Message.java |
− | + | │ └── Prompt.java | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | │ └── | ||
└── transactions | └── transactions | ||
− | ├── | + | ├── DoReceivePayment.java |
− | ├── | + | ├── DoRegisterAcquisitionTransaction.java |
+ | ├── DoRegisterBreakdownTransaction.java | ||
├── DoRegisterSaleTransaction.java | ├── DoRegisterSaleTransaction.java | ||
├── DoShowTransaction.java | ├── DoShowTransaction.java | ||
├── Label.java | ├── Label.java | ||
├── Menu.java | ├── Menu.java | ||
− | └── | + | ├── Message.java |
+ | └── Prompt.java | ||
</source> | </source> | ||
}} | }} |
AVISOS - Avaliação em Época Normal |
---|
Esclarecimento de dúvidas:
|
Requisitos para desenvolvimento, material de apoio e actualizações do enunciado (ver informação completa em Projecto de Programação com Objectos):
|
Processo de avaliação (ver informação completa em Avaliação do Projecto):
|
Material de Uso Obrigatório |
---|
As bibliotecas po-uuilib e o conteúdo inicial do CVS são de uso obrigatório: |
|
A máquina virtual, fornecida para desenvolvimento do projecto, já contém todo o material de apoio. |
Uso Obrigatório: Repositório CVS |
Apenas se consideram para avaliação os projectos existentes no repositório CVS oficial.
Trabalhos não presentes no repositório no final do prazo têm classificação 0 (zero) (não são aceites outras formas de entrega). Não são admitidas justificações para atrasos em sincronizações do repositório. A indisponibilidade temporária do repositório, desde que inferior a 24 horas, não justifica atrasos na submissão de um trabalho. |
Os repositórios CVS para os projectos (um por grupo) já contêm versões iniciais do projecto.
Os repositórios estão disponíveis no AFS em:
O conteúdo do repositório pode ser manipulado com o comando cvs ou com qualquer outro cliente compatível (e.g. eclipse).
No texto que se segue:
Assim, os valores possíveis para a variável de ambiente CVSROOT (ou pela opção -d do comando "cvs") são:
O código fornecido é de uso obrigatório e deve ser completado.
Cada projecto é constituído por dois módulos: project/ggc-core e project/ggc-app.
Conteúdo inicial do repositório CVS para o módulo ggc-core |
---|
ggc-core
├── Makefile
└── src
└── ggc
├── exceptions
│ ├── BadEntryException.java
│ ├── ImportFileException.java
│ ├── MissingFileAssociationException.java
│ └── UnavailableFileException.java
├── WarehouseManager.java
└── Warehouse.java
|
Conteúdo inicial do repositório CVS para o módulo woo-app |
---|
ggc-app
├── Makefile
└── src
└── ggc
└── app
├── App.java
├── exceptions
│ ├── DuplicatePartnerKeyException.java
│ ├── FileOpenFailedException.java
│ ├── InvalidDateException.java
│ ├── Message.java
│ ├── UnavailableProductException.java
│ ├── UnknownPartnerKeyException.java
│ ├── UnknownProductKeyException.java
│ ├── UnknownServiceLevelException.java
│ ├── UnknownServiceTypeException.java
│ └── UnknownTransactionKeyException.java
├── lookups
│ ├── DoLookupPaymentsByPartner.java
│ ├── DoLookupProductBatchesUnderGivenPrice.java
│ ├── Label.java
│ ├── Menu.java
│ └── Prompt.java
├── main
│ ├── DoAdvanceDate.java
│ ├── DoDisplayDate.java
│ ├── DoOpenFile.java
│ ├── DoSaveFile.java
│ ├── DoShowGlobalBalance.java
│ ├── Label.java
│ ├── Menu.java
│ ├── Message.java
│ └── Prompt.java
├── partners
│ ├── DoRegisterPartner.java
│ ├── DoShowAllPartners.java
│ ├── DoShowPartnerAcquisitions.java
│ ├── DoShowPartner.java
│ ├── DoShowPartnerSales.java
│ ├── DoToggleProductNotifications.java
│ ├── Label.java
│ ├── Menu.java
│ ├── Message.java
│ └── Prompt.java
├── products
│ ├── DoShowAllProducts.java
│ ├── DoShowAvailableBatches.java
│ ├── DoShowBatchesByPartner.java
│ ├── DoShowBatchesByProduct.java
│ ├── Label.java
│ ├── Menu.java
│ ├── Message.java
│ └── Prompt.java
└── transactions
├── DoReceivePayment.java
├── DoRegisterAcquisitionTransaction.java
├── DoRegisterBreakdownTransaction.java
├── DoRegisterSaleTransaction.java
├── DoShowTransaction.java
├── Label.java
├── Menu.java
├── Message.java
└── Prompt.java
|
Estes módulos podem ser obtidos em conjunto fazendo checkout de project (ver abaixo).
O repositório já tem a seguinte estrutura:
Esta estrutura já contém algumas classes parcialmente implementadas (ggc-core) (que devem ser adaptadas) e outras parcial ou completamente implementadas (ggc-app) (algumas das quais não podem ser alteradas).
Antes de tudo o mais, fazer cópias de segurança (vulgo "backups") de tudo o que já foi feito.
O repositório já contém uma versão preliminar do projecto e devem ser dados os seguintes passos, para continuar a desenvolver o projecto:
Agradece-se a comunicação de eventuais problemas.
Tal como indicado no método de avaliação, os 3 diagramas a entregar -- UML-po-uilib.pdf, UML-ggc-app.pdf, UML-ggc-core.pdf -- devem ser colocados na directoria uml do projecto no repositório CVS.
Os comandos abaixo explicam como realizar essa operação a partir de um projecto no repositório (desde obter uma cópia local até completar a entrega). O passo de obter a cópia local pode ser omitido se o projecto já tiver sido obtido anteriormente. O passo de adicionar novos ficheiros pode ser omitido se as versões dos diagramas corresponderem a actualizações de adições anteriores. Nos exemplos dos comandos abaixo, ist123456 é o ISTid da pessoa que realiza as operações e 199 é o grupo dessa pessoa (estes dois valores variam de pessoa para pessoa e de grupo para grupo).
cvs -d :ext:ist123456@sigma.tecnico.ulisboa.pt:/afs/ist.utl.pt/groups/leic-po/po21/cvs/199 co project cd project
cp ~/UML-po-uilib.pdf ~/UML-ggc-app.pdf ~/UML-ggc-core.pdf uml
cvs add uml/UML-po-uilib.pdf uml/UML-ggc-app.pdf uml/UML-ggc-core.pdf
cvs update
cvs commit -m "Adicionados diagramas UML."