Escolar Documentos
Profissional Documentos
Cultura Documentos
Departamento de Informática
Graduação em Ciência da Computação
Vitória
2007
Cleverton Lopes Silva
Vitória
2007
Cleverton Lopes Silva
COMISSÃO EXAMINADORA
___________________________________________________
Prof. Dr. Orivaldo de Lira Tavares
UFES — Universidade Federal do Estado do Espírito Santo — BR
Membro Orientador
___________________________________________________
Prof. Dr. xxxxxxxxxxxxxxxxxxxxxxxxx
UFES — Universidade Federal do Estado do Espírito Santo — BR
Membro Titular
___________________________________________________
Prof. Dr. xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
UFES — Universidade Federal do Estado do Espírito Santo — BR
Membro Titular
É muito fácil começar a usar o Siwep. Quando você visita a página inicial do
site, lá estão as notícias mais populares do momento. Elas foram selecionadas por
um número suficiente de usuários para aparecerem em posição de destaque no site.
Esta seleção é feita através das manifestações de usuários cadastrados no sistema,
que através de seus votos, demonstram que por algum motivo, gostaram destas
notícias. Além disso, temos que ressaltar que, a fim de manter o site com notícias
mais atualizadas possíveis, a data da postagem da notícia, além do voto é claro, é
um fator que pesa na hora de selecionar as notícias que estarão na página principal
do sistema.
ABSTRACT
SUMÁRIO
Lista de Figuras
1.1 Objetivo
Neste ambiente, o usuário poderá enviar notícias por meio de várias formas:
texto, links, vídeos, áudios ou até mesmo uma combinação destes. Depois de
enviada, a notícia ficará disponível por um determinado período de tempo para que
outros usuários possam votar e comentar a respeito. Caso consiga uma boa
quantidade de votos, essa notícia poderá ser promovida para a página principal do
site. Esse processo é dinamicamente e periodicamente executado, à medida que
novas notícias são enviadas ou votadas.
1.2 Motivação
1.3 Metodologia
2.1 Digg
[...] Espécie de símbolo da chamada web participativa, o Digg, é um
sistema de webjornalismo participativo que é inteiramente editado por sua
comunidade de usuários registrados – no caso do Digg, essa comunidade é
composta por nada menos que 1 milhão de pessoas (BRAMATTI, 2007).
O grande pilar para tanto sucesso do Digg são os seus leitores, que geram
uma boa renda de anúncios para o site e dão trabalho para as pessoas que enviam
e revisam notícias.
A ilustração 1 abaixo mostra um exemplo de página inicial do Digg.
2.2 Overmundo
2.3 DB4o
2.4 .NET
2.5 Mono
”Mono é uma tecnologia Open Source patrocinada pela Novell que provê
suporte para se desenvolver e executar aplicações .NET, tanto em terminais como
em servidores nas plataformas Linux, Solaris, Mac OS X, Windows e Unix” [ICAZA,
2006].
1
C Sharp é uma linguagem de programação orientada a objetos criada pela Microsoft, faz parte da sua
plataforma .Net. A companhia baseou C Sharp na linguagens C++ e Java.
3 Especificação de Requisitos
Cursos alternativos:
• Dados inválidos: o sistema informa o erro e pede que o
responsável pelo cadastramento do usuário informe dados que
sejam válidos.
• Não preenchimento de algum dos dados obrigatórios: o
sistema informa o erro e pede que o responsável preencha todos
os dados obrigatórios.
• E-mail e/ou login já cadastrados: o sistema informa o erro e
pede que o responsável pelo cadastramento informe um e-mail
e/ou login que não estejam cadastrados no sistema.
Descrição: Por meio deste caso de uso, um usuário que tenha esquecido sua
senha, pode solicitar o envio da mesma ao seu e-mail.
Classes: Usuário;
Descrição: Por meio deste caso de uso, o usuário pode editar/alterar seus
dados cadastrais.
Cursos alternativos:
• Dados inválidos: o sistema informa o erro e pede que o usuário
informe dados válidos.
Classes: Usuário;
Restrições de Integridade: O usuário não pode alterar seu e-mail e/ou login.
Caso de Uso Efetuar Logout
Classes: Usuário;
Descrição: Por meio deste caso de uso, o usuário pode adicionar um amigo,
também usuário do sistema. É importante ressaltar que este relacionamento de
amizade não é reflexivo.
Classes: Usuário;
Descrição: Por meio deste caso de uso, o usuário pode manifestar a sua
opinião votando nas notícias que mais lhe agradam. É uma forma de demonstrar
que gostou da notícia.
Descrição: Este caso de uso permite aos usuários publicarem novas notícias,
associando-as a um determinado tema. Esta publicação pode ser efetuada de duas
maneiras: em forma de texto ou links.
Curso Normal: O usuário, a partir da página inicial do sistema, clica no link
rotulado de publicar notícia. O sistema redireciona o navegador para uma página
apropriada para o envio de notícias. O usuário informa os dados da notícia, incluindo
título, descrição do texto e link, seleciona um tema relacionado com a notícia e
submete ao sistema. O sistema valida os dados e exibe uma tela de confirmação.
Logo após, as informações são registradas.
Cursos alternativos:
• Dados inválidos: o sistema informa o erro e pede que o
responsável pela publicação da notícia informe dados válidos.
• Não preenchimento de algum dos dados obrigatórios: o
sistema informa o erro e pede que o responsável preencha todos
os dados obrigatórios.
Restrições de Integridade: Não pode ter duas notícias com o mesmo título.
Descrição: Este caso de uso permite aos usuários emitirem suas opiniões a
respeito de determinadas notícias postadas no site.
Descrição: Este caso de uso permite aos usuários denunciarem notícias que
julgam serem inadequadas para o bom uso do ambiente.
Cursos alternativos:
• Tema já cadastrado: o sistema informa o erro e pede que o
administrador informe um tema que não esteja cadastrado no
sistema.
• Não preenchimento de algum dos dados obrigatórios: o
sistema informa o erro e pede que o responsável preencha todos
os dados obrigatórios.
Este pacote contém as classes que efetuam o controle dos usuários, como
mostra a ilustração 7:
Ilustração 7: Diagrama de classes do pacote Controle de Usuários.
Este pacote contém as classes responsáveis pelo controle das notícias, como
mostra a ilustração 8:
Ilustração 8: Diagrama de classes do pacote Controle de Notícias.
Todas as classes desta camada herdam de uma classe chamada DAO, que
implementa os métodos Salvar, Excluir e RecuperarTodos.
Este caso de uso, com o intuito de dar mais opção de pesquisa ao usuário, foi
dividido em dois: Pesquisar Conteúdo por Autor e Pesquisar Conteúdo por Tema.
Por Autor
Ilustração 21: Diagrama de Seqüência para o caso de uso Pesquisar Conteúdo por Autor.
Por Tema
O usuário pode então votar (apenas um voto por notícia) em qualquer uma
dessas notícias, selecionando o botão rotulado de “votar”.
Ilustração 23: Diagrama de Seqüência para o caso de uso Votar em Notícia.
2
É uma referência num documento em hipertexto a outro documento ou a outro recurso.
Ilustração 28: Diagrama de estados para o mapa de navegação geral do Siwep para um
Internauta.
Default.aspx
Login.aspx
Através desta página, um internauta pode se autenticar no sistema, voltar à
página inicial e prosseguir para as páginas de recuperar senha ou de cadastro de
novo usuário.
Quando o internauta preenche o formulário de autenticação, e clica no botão
entrar, antes de processar os dados, o sistema checa se todos os campos foram
preenchidos, e se o e-mail digitado realmente está no formato padrão de um e-mail.
SobreNos.aspx
Cadastro.aspx
RecuperarSenha.aspx
Home.aspx
EditarPerfil.aspx
ExibirNoticia.aspx
PublicarNoticia.aspx
ExibirColaboradores.aspx
ExibirAmigos.aspx
Através desta página, um usuário pode visualizar todos os seus amigos, voltar
à Home do sistema ou prosseguir para as páginas de editar perfil e exibir notícias de
amigo.
Quando o usuário clica no link rotulado de Exibir Notícias do Amigo de um
determinado amigo, o navegador é direcionado para á página ExibirNotíciasAmigo,
onde são exibidas todas as notícias postadas por aquele amigo.
ExibirNoticiasAmigo.aspx
6.1 Implementação
6.1.1 Monodevelop
6.1.2 Assemblies
6.1.4 Nomenclatura
7.1 Conclusões
Além disso, é importante destacar que este trabalho foi uma oportunidade de
consolidar conceitos vistos durante o curso de graduação em Ciência da
Computação, com ênfase em Sistemas de Informação, oferecido pela Universidade
Federal do Espírito Santo.
Perspectivas Futuras
FALBO, Ricardo de Almeida; SOUZA, Vítor Estêvão Silva. An Agile Approach for
Web Systems Engineering. WebMedia, Poços de Caldas, Minas Gerais - Brazil,
December 5–7, 2005.
PATERSON, Jim. The Definitive Guide to db4o, Apress, Nova Iorque, 2006.