ADS Tecnologia em Anlise e Desenvolvimento de Sistema
INF008 Programao Orientada a Objetos Trabalho Semestre 2014.2 Prof. Frederico Barboza Noturno
O trabalho dever ser desenvolvido utilizando o modelo arquitetural de duas camadas
e separao clara de atribuies das classes. Os dados devem ser persistidos em SGBDR de escolha do aluno. Preferencialmente, a aplicao deve fornecer GUI para suas operaes. A aplicao deve fornecer um sistema que permita manter informaes de bandas e cantores (nome, nome da cidade de fundao ou nascimento e ano de fundao ou nascimento). Alm disso, o sistema deve manter o conjunto de obras produzido pelo artista. O sistema deve ser projetado para ser extensvel em termos do tipo de obra, mas, em um primeiro momento, ir armazenar dois tipos de obras: Obras de udio (CDs) e obras de vdeo (DVDs). Para cada CD registrado o tempo de durao total, o ttulo, o ano de lanamento e uma nota (0 a 5) fornecida pelo usurio e o link para a URI do CD em um servio de stream (como o Deezer, Spotify, etc). Para cada DVD, registra-se o ttulo, o ano de lanamento, o tempo de durao, a nota fornecida pelo usurio e um status que informa se o DVD possui legenda em portugus. O sistema deve permitir: A manuteno do cadastro de bandas. Incluso; Consulta (baseado no nome da banda); Atualizao dos dados de uma banda consultada; Excluso de uma banda consultada (em conjunto com toda sua obra). A manuteno do cadastro de Obras. Incluso Consulta (baseado no nome da banda, nome da obra e ano de lanamento); Atualizao dos dados de uma obra consultada; Excluso de uma obra consultada. A consulta de material por banda Consultas de material de uma banda. Consultas de material acima de uma determinada nota. Consultas de material por ano de lanamento. A gerao de arquivo XML da obra de uma banda escolhida conforme o formato abaixo. O trabalho dever ser desenvolvido em dupla. A dupla dever preparar uma apresentao na qual demonstre o funcionamento do sistema e apresente um
diagrama ilustrativo das principais classes e subsistemas usados na construo da
Qualidade do Cdigo (padro de linguagem, identao, etc.); Orientao a Objetos (projeto OO, classes, diviso de responsabilidades, etc.); Projeto Arquitetural (diviso em camadas, separao de concerns, etc.); Apresentao (clareza, cobertura dos elementos necessrios).
<ARTISTA nome = nome>
<CD nome = nome> <ANO_LANCAMENTO>ano</ANO_LANCAMENTO> <NOTA>nota</NOTA> <LINK>link</LINK> </CD> <DVD nome = nome> <ANO_LANCAMENTO>ano</ANO_LANCAMENTO> <NOTA>nota</NOTA> <LEGENDA_PT>[sim|no]</ LEGENDA_PT > </DVD> </ARTISTA>