Escolar Documentos
Profissional Documentos
Cultura Documentos
10. Remover uma acomodao. S deve ser permitido se ela estiver desocupada. Caso
contrrio uma exceo deve ser gerada;
11. Incrementar o nmero de dias da ocupao (atributo numDiasOcupacao) de
uma determinada acomodao;
A aplicao dever ainda possibilitar aos usurios do sistema gerar os seguintes
relatrios:
1. Relatrio que mostre para cada tipo de acomodao: a sua descrio, a quantidade
de acomodaes deste tipo existentes, a quantidade de acomodaes deste tipo que
esto desocupadas e a quantidade de acomodaes deste tipo que esto ocupadas (na
data atual);
2. Relatrio que mostre para cada bairro o seu nome, o nmero de clientes que
desejam se hospedar no bairro, a quantidade total de hospedagens no bairro, a
quantidade de hospedagens ocupadas e a quantidade de hospedagens desocupadas no
bairro.
3. A quantidade de clientes hospedados por bairro.
4. A quantidade de clientes por sexo e nacionalidade.
5. O total arrecadado em hospedagens por bairro, por tipo de hospedagem, por
nacionalidade do cliente e pelo sexo do cliente.
6. A quantidade de hospedagens (por tipo) que deveriam ser adicionadas para atender
a todos os clientes (ainda sem hospedagem).
A aplicao dever possibilitar aos clientes:
1. Consultar a despesa (valor total a pagar) de sua acomodao;
2. Consultar o valor do desconto de sua acomodao.
3. Listar as acomodaes desocupadas que se enquadram em suas preferncias, por
ordem de preferncia (prioridade).
4. Listar as acomodaes que se enquadram em suas preferncias, por ordem de
preferncia (prioridade), e que estaro desocupadas em uma determinada data
fornecida como parmetro.
* Ao se ocupar uma acomodao deve-se solicitar ao usurio o tipo do cliente e a
quantidade de dias que o cliente deseja ficar hospedado. Inicialmente deve-se verificar
se a acomodao se encontra desocupada (atributo ocupado igual a false). Em
caso afirmativo, deve-se atribuir o valor true ao atributo ocupado, atribuir a data
1 A regra de negcios da aplicao deve ser definida para ser programada no banco
de dados. Isso quer dizer que tudo o que foi visto nas informaes gerais deve ser
implementado no banco de dados atravs de Triggers, Views, Stored Procedures,
constraints, etc.
2 Deve ser criado um diagrama Entidade Relacionamento com as tabelas do sistema.
A partir desse diagrama um script deve ser gerado para a criao do banco de dados.
3 Deve-se seguir uma padronizao para os nomes das tabelas, campos, indices,
sequencias, restries, etc.
4 O sistema ser utilizado por usurios e pelos clientes. evidente que os clientes
iro acessar o sistema remotamente atravs de browser. Nossa preocupao deixar
todas as funcionalidades no banco de dados e implementar a parte Desktop que os
usurios utilizaro.
* Nomes de tabelas Devem ser escritas no singular; O nome deve ser o mais
descritvel possvel, mas no pode ter mais do que 30 caracteres; Caso o nome seja
composto, deve ser separado por Underline; O nome deve ser escrito em maisulo;
* Nomes dos campos Devem ser escritos em maisculo; Todo nome precisa ter um
prefixo e dependendo do prefixo deve-se vincular ao tipo de dados padro para aquele
prefixo, como no esquema abaixo:
Nome
Auto Incremento
Cdigo
Descrio
Data
Valor
Tipo
Situao
Nome
Nmero
Quantidade
Taxa
Prefixo
SEQ
COD
DSC
DAT
VLR
TIP
SIT
NOM
NUM
QTD
TAX
Tipo de Dado
Number
Number
Varchar2
Data
Number(p,s)
Varchar2
Varchar2
Varchar2
Number
Number
Number
* Constraint Reference o nome dessas constraints devem conter os nomes das duas
tabelas envolvidas separadas por Underline;
* O nome das chaves primarias devem comear com PK_ seguido do nome da tabela;
* O nome das views devem comear com VIEW_ seguido de uma descrio clara do
que ser mostrado;