Escolar Documentos
Profissional Documentos
Cultura Documentos
Versão <1.0>
Portal XPRecife Versão: 1.0
Especificação dos Requisitos Data Versão: 30/ 05 / 05
Especificacao Requisitos.doc
Nome E-mail
Allan Rodrigo dos Santos Araújo arsa@cin.ufpe.br
José Carlos de Moura Júnior jcjm@cin.ufpe.br
Livar Correia de Oliveira Cavalcanti Cunha lcocc@cin.ufpe.br
Rafael Oliveira Nóbrega ron@cin.ufpe.br
Renan Távora Weber rtw@cin.ufpe.br
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
3 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
Sumário
4 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
O Portal do XPRecife tem como objetivo ser um centro de comunicação para os membros do
grupo e para qualquer outra pessoa interessada em metodologia de desenvolvimento de
software, especialmente metodologias ágeis e eXtreme Programming (XP).
!
Este documento tem como público, essencialmente, a equipe de desenvolvimento. Sendo a parte
de protótipos de tela, a única que pode despertar interesse nas pessoas representantes do
cliente.
5 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
6 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
7 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
8 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
9 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
Esta seção possui uma descrição detalhada da modelagem de dados que será utilizada no
desenvolvimento do projeto. Segue com uma descrição do minimundo, do diagrama E-R, e das
tabelas modeladas utilizando ferramenta CASE.
10 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
" #
O Portal do XPRECIFE tem como objetivo ser um centro de comunicação para os membros do
grupo e para qualquer outra pessoa interessada em metodologia de desenvolvimento de software,
especialmente metodologias ágeis e eXtreme Programming (XP).
As entidades do sistema são:
• Usuário
o Cada usuário possuirá um código, um nome, um endereço, um telefone e um
nível de acesso, além de um e-mail (login dele) e uma senha.
• Colunista
o No caso de colunista, além das informações comuns a todos os usuários, ele
também possui uma foto.
• Administrador
o O administrador possui todas as informações dos colunistas, diferenciando
apenas por um nível de acesso diferente.
Deve-se ressaltar que os códigos de todas as entidades são únicos. Um usuários possui um
único endereço. Um usuário pode submeter de 0 a N notícias, links, eventos, revisões de livro,
comentários e artigos e cada “publicação” desta está relacionada a apenas 1 usuário. Um colunista
e um administrador podem submeter várias colunas e uma coluna pode ser enviada por apenas um
colunista. Uma notícia pode ter vários comentários, e um comentário pode estar relacionado a
11 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
apenas 1 notícia. Uma revisão de livro pode ter vários comentários, mas um comentário pode estar
associado somente a uma revisão de livro.
$%
O banco de dados a ser implementado no projeto é essencialmente relacional. Portanto, não
permite que nosso modelo seja orientado a objetos. No entanto, por convenção, neste diagrama logo
a seguir, utilizaremos notações do modelo E-R estendido para ajudar a diminuir o tamanho do
diagrama e, ao mesmo tempo, comunicar com a mesma riqueza de detalhes.
12 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
Note que no diagrama acima, todos os relacionamentos do tipo “ISA” representa que, por
exemplo, um administrador e um colunista têm todos os atributos de usuário, assim como todas as
entidades de publicações possuem todos os atributos de informação.
$% !& ' ( )
A escolha do SGBD realizada por nosso cliente, satisfazendo assim aos requisitos não-
funcionais, impede quem implementemos uma modelagem de dados orientada a objetos, embora todo
o restante da aplicação seja orientado a objetos. Por isso, deve haver um mapeamento indireto entre
a representação das entidades e relacionamentos mostrada na secção anterior, e a solução final
adotada logo abaixo, que é puramente relacional e normalizada. Vejamos:
Evitamos ter uma tabela grande concentrando a parte de “Informações” e de “Usuários” com
o tamanho máximo de atributos que uma das outras entidades tinham e apenas uma coluna para
dizer o tipo daquela linha. Por quê? Para não ter várias linhas com atributos com conteúdo vazio,
economizando assim, espaço de armazenamento. Como visto acima, temos algumas tabelas
semelhantes quanto aos atributos e, esta decisão foi tomada levando em conta a facilidade que
proporcionará à implementação da aplicação.
Outra importante decisão tomada foi ter tabelas de destaque associadas aos principais tipos de
publicações. Dado que o conteúdo do site deve ser dinâmico, temos de ter as informações que devem
ser carregadas na página definidas em tempo de execução.
13 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
" * +
A visão que o diagrama de Casos de Uso de UML promove uma completa visualização da
impressão que os usuários têm de um sistema. O principal foco é a interação entre os atores (agentes
externos ao sistema) e os serviços que o determinado sistema provê, onde cada serviço é conhecido
por “Caso de Uso”.
14 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
15 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
16 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
" *
Os diagramas de classes de UML são um dos principais elementos das visões estáticas de um
sistema. Fornece uma ampla visibilidade sobre a estrutura de “classes” sobre as quais o sistema está
montado. Abaixo seguem alguns dos principais modelos independentes de plataforma que obtivemos:
17 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
18 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
É preciso entender que este primeiro modelo ainda é bastante abstrato e independente de
tecnologia, nos próximos passos de projeto, o modelo acima será refinado em modelos mais
concretos e próximos daquilo que será implementado.
19 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
Os diagramas de seqüência de um sistema preocupam-se com a ordem temporal com que são
trocadas as mensagens entre os objetos que compõe o sistema. Geralmente, são baseados nos casos
de uso. Também optaremos por essa alternativa.
20 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
O caso de uso “Remover-se como Usuário” tem troca de mensagens similar ao “Alterar
Usuário”, portanto, omitimos seu diagrama.
21 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
O caso de uso acima é usado para alterar o status do usuário. Para remover um usuário, o
fluxo das mensagens é semelhante, portanto, omitido no diagrama.
(Caso de Uso para Modificar a parte de uma das áreas de Destaque do site)
22 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
O parâmetro não foi definido porque pode haver diversos tipos de busca: por título, por data,
por classificação, etc. Por isso, demais detalhes serão definidos com a revisão do modelo acima, para
gerar o modelo específico de plataforma.
InterfaceWeb EnviadorNewsletter
enviarNewsletter(n: Newsletter)
23 Effektiv / XPRECIFE
Portal XPRecife Versão: 1.0
Modelagem de Dados e Funcional Data Versão: 30 / 05 / 05
Documento_Modelagem.doc
24 Effektiv / XPRECIFE