Anda di halaman 1dari 3

24/04/12

Lab 09

Lab09 Universidade Federal de Campina Grande UFCG Centro de Engenharia Eltrica e Informtica CEEI Departamento de Sistemas e Computao DSC
Professores: Reinaldo Gomes (turma1) Kyller Gorgnio (turma2) Livia Campos (turma 3) Disciplina: Laboratrio de Programao 2 Perodo: 2012.1

Laboratrio 09
Neste laboratrio iremos exercitar o desenvolvimento de um programa OO baseado em mltiplas classes que colaboram entre si e nos conceitos de colees de objetos.

Instrues:
Durao:duasaulas Datadeentrega:01/05/2012at23:59h(turmas1,2e3) Sertoleradooatrasodenomximo24hsparaaentregadolaboratrio.A penalidadeparaentregascomatrasoserde50%danotadolab Crieoprojetolab09noeclipseeprogrametodososexercciosdentrodopacote lp2.lab09 Salveopacotecontendoasclassescriadasemumarquivozipchamadolab09 <seuNome>.zip(ou.tgz)eosubmetaatravsdaferramentaEasyLabCorrection (https://les.dsc.ufcg.edu.br:8443/EasyLabCorrection/) Certifiquesedequeseusprogramasnotmerrosdecompilao Antesdadefiniodecadaclasseescrevaoseunomeemcomentrio(/*Aluno: <seunome>*/)

O problema
Considere um sistema de controle para ser usado na biblioteca central da UFCG. Esse sistema deve permitir o cadastro de livros e dos usurios da biblioteca. Os itens da biblioteca (livros) devem possuir pelo menos os seguintes campos: ttulo; autores; editora; STATUS( disponvel, emprestado ou reservado); edio; ano de publicao e quantidade de exemplares disponveis. Se o livro estiver emprestado ou reservado, deve ser possvel saber quantos dias faltam para ele ficar disponvel. Observe que os estados disponvel e reservado podem ocorrer simultneamente. O mesmo ocorre para os estados emprestado e reservado. Usurios cadastrados devem poder fazer buscas por livros usando o sistema da biblioteca e, caso encontrem

https://docs.google.com/document/pub?id=1Aj7hOPk3S4od8c4p2NXhZCJB2kXW4FIM

1/3

24/04/12

Lab 09

um ttulo desejado, podero fazer reservas e pegar livros emprestados. Os usurios s podero pegar at 3 livros ao mesmo tempo (podendo ficar at 30 dias com cada um deles) e caso eles tenham algum livro com devoluo em atraso, eles tambm no podero pegar novos livros mesmo que tenham quota disponvel. Um livro qualquer pode ser reservado por mais de um usurio. Caso mais de um usurio requisite a reserva de um livro, dever ser criada uma fila de espera na qual o primeiro usurio a pedir o l ivro ser o primeiro a ser atendidos. Implemente o sistema descrito acima fazendo o tratamento de erros usando excees sempre que for necessrio. No esquea de fazer os testes de unidade para cada classe criada. Por fim implemente um programa main que simule o uso desse sistema. Voc dever criar a bibioteca, cadastrar os livros e os usurios e simular o uso da biblioteca pelos usurios.

Funcionalidades extra 1. Faadistinoentreostiposdeusurios.Aocadastrarumnovousurio,identifiquese eleprofessoroualuno.Professorespoderoficarcomumlivroporat6meses, enquantoosalunosspoderoficarcomumlivropornomximo30dias. 2. Permitaocadastrodelivrosquenopodemserretiradosdabiblioteca.Esseslivros soapenasparaconsultanolocaleningum(nemmesmoprofessores)poderetir los.

Critrios de avaliao
1. Corretude(4,0) a. Implementecorretamenteasclassesquecompemseusistema,obedecendo aosrequisitosdaespecificao. 2. Estilo(2,0) a. ProcureseguirasconvenesdeJavaparanomeaode variveis/mtodos/classes b. Lgicaclara(prezesemprepelasimplicidadedocdigo) c. GarantaqueseusistemaOOrespeitaosconceitosdeencapsulamento (lembrandodopadrodeprojetoExpert)eocultaodainformao d. Garantaboamodularizaodasclasses 3. Documentao(1,0) a. Coberturaequalidadedojavadoc b. ProcureseguirasconvenesdeJavaparaconstruodojavadoc. 4. Testesdeunidade(3,0) a. Cobertura:ostestesdevemcobrirtodasasclassesimplementadas(excetoa classecomomain()),verificartodososmtodosdestasclasses(testesde toString()podemsersuprimidos).Issosignificaavaliarmtodosacessadores, modificadoresemtodoscomportamentais,tantonascondiesnormaisde usoquantoemcondieslimites b. Qualidade:verificarusocorretodo@Before,existnciadeumaclassedeteste paracadaclassedosistema,existnciadevriosmtodosdeteste (modularizao)emcadaclassedeteste 5. Ausnciademtodomain()(1,0) 6. Existeerrodecompilao?(50%)

https://docs.google.com/document/pub?id=1Aj7hOPk3S4od8c4p2NXhZCJB2kXW4FIM

2/3

24/04/12

Lab 09

a. Diminuiode50%danotaobtidanolab,assim,sevoctirou7.0suanota baixarpara3.5. 7. Existnciadealgumcdigomorto(1,0) a. Cdigoquenoutilizadoemnenhummomentopeloprograma,porexemplo, ummtodoprivadoquenochamadopornenhummtododentrodeuma classe. 8. Funcionalidadesavanadas(+1,0)


PublishedbyGoogleDocs ReportAbuse Updatedautomaticallyevery5minutes

https://docs.google.com/document/pub?id=1Aj7hOPk3S4od8c4p2NXhZCJB2kXW4FIM

3/3

Anda mungkin juga menyukai