Você está na página 1de 42

Licenciatura em Informtica - Anlise e Conceo de Sistemas de Informao -

PCparts.com

Documento de Anlise

Realizado por: Moiss Ramalho, N 110118010 Paulo Carvalho, N 110118001

Santarm, 16 de Dezembro de 2012

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Introduo ............................................................................................................................................... 3 Descrio do Sistema ............................................................................................................................. 4 Principais Funes do Sistema.............................................................................................................. 5 Diagrama de Casos de Utilizao ......................................................................................................... 6 Descrio dos Casos de Utilizao ....................................................................................................... 7 Registar Dados ................................................................................................................................. 7 Autenticar Utilizador ........................................................................................................................ 7 Gerir Artigos ..................................................................................................................................... 8 Gerir Promoes ............................................................................................................................ 10 Consultar Histrico de Encomendas ........................................................................................... 11 Encomendar Artigos ...................................................................................................................... 12 Finalizar Encomenda ..................................................................................................................... 13 Consultar Artigos ........................................................................................................................... 14 Gerir Perfil de Utilizador ................................................................................................................ 14 Log Out ........................................................................................................................................... 15 Diagrama de Classes ............................................................................................................................ 16 Modelo/Esquema de Dados ................................................................................................................ 17 Interfaces com o Utilizador ................................................................................................................. 18 Diagrama de Sequncia ....................................................................................................................... 24 Diagrama de Comunicao ................................................................................................................. 35 Concluses ............................................................................................................................................. 42

ndice

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Introduo

No mbito da disciplina de Anlise e Concepo de Sistemas de Informao do 1 Ciclo, 2 Ano, 1 Semestre da Licenciatura em Informtica da Escola Superior de Gesto e Tecnologia do Instituto Politcnico de Santarm foi solicitado aos alunos a execuo de um trabalho para avaliao da Unidade Curricular. Este trabalho consistiu na concepo de um Sistema de Informao, sendo que o tema por ns escolhido para servir de base a esta prova de avaliao a criao de uma loja on-line de venda de equipamentos informticos - PCparts. Este documento tem como objectivo apresentar uma resoluo possvel entre muitas para o problema proposto, e, como tal, sujeita a interpretaes. Tentaremos abordar a concepo do Sistema em causa de uma forma prtica, tentando tambm aplicar o mais correctamente possvel os conhecimentos adquiridos ao longo da Unidade Curricular, nunca esquecendo que ser sempre uma questo de interpretao dos problemas, havendo vrias maneiras de abordar as mesmas questes. Consideramos este trabalho bastante importante pela viso ampla e ao mesmo tempo especfica e pormenorizada de um Sistema de Informao, viso essa que nos ser eventualmente necessria no futuro caso queiramos trabalhar na rea dos Sistemas de Informao, para alm de certamente nos ir incutir e apresentar vrios mtodos e diferentes perspectivas, que iro ajudar a solidificar toda a teoria que nos foi transmitida. Sendo um trabalho que requer bastante ateno aos pormenores, natural que algum aspecto apresentado no esteja completamente em conformidade com o aprendido ou que algo nos tenha escapado, mas no obstante ser uma excelente experincia com muito valor para o futuro. Este trabalho elaborado em interdisciplinidade com a Unidade Curricular de Bases de Dados II, onde iremos utilizar o modelo proposto e aplica-lo na prtica.

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Descrio do Sistema

A PCparts.com uma empresa de venda pela Internet de equipamentos informticos. Ainda em fase de desenvolvimento, ser uma empresa orientada para vendas ao consumidor final, ambicionando tornar-se um dos principais concorrentes neste sector do comrcio electrnico. Com este objectivo em vista ser necessrio criar uma base de dados que permita uma boa gesto de todo o processo de venda, nomeadamente no tratamento do registo de novos clientes, no tratamento das encomendas, da informao relativa s promoes e da informao relativa aos artigos. Ser necessrio aos funcionrios da empresa fazer a manuteno das encomendas (consultar para expedir), dos produtos (inserir, remover, e alterar a informao a eles relativa: categoria, tipo, fabricante, e/ou promoo em que se insere) para alm da gesto das promoes (criar, alterar ou eliminar). Qualquer utilizador (quer annimo quer autenticado) poder fazer consultas sobre os artigos podendo para isso recorrer a vrios filtros: Por categoria (perifricos, componentes, armazenamento, redes, diversos), por tipo de artigo (router, processador, teclado, HD ou outros), por designao, por fabricante ou por promoo. Para poder efectuar alguma compra ser necessrio ao utilizador registar-se e autenticarse como cliente, sendo necessrio para o efeito facultar algumas informaes pessoais (nome, morada, n de telefone, e-mail e n de identificao fiscal). Poder utilizar as credenciais de acesso para posterior consulta do seu histrico de compras como tambm verificar se uma eventual encomenda j foi enviada. Poder tambm gerir o seu prprio perfil de utilizador (alterar a informao pessoal, morada ou contactos).

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Principais Funes do Sistema

O sistema em anlise tem as seguintes caractersticas:

Actores:
Annimo (consulta artigos, regista-se como Cliente ou autentica-se como Utilizador Credenciado); Cliente (consulta e encomenda artigos, consulta e altera perfil de Utilizador, consulta histrico de encomendas e o seu estado de envio); Funcionrio (consulta artigos e encomendas e gere artigos e promoes);

Funes:
Disponibilizar consulta sobre caractersticas e preos de artigos; Disponibilizar um meio para a venda ao pblico desses mesmos artigos; Disponibilizar aos clientes o histrico das suas compras (com informao do estado de envio das encomendas); Dar suporte manuteno da base de dados relativamente aos artigos e promoes;

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Diagrama de Casos de Utilizao


PCparts
Gerir Artigos extends Inserir Artigo extends

extends

Eliminar Artigo Alterar Artigo Finalizar Encomenda Gerir Promoes Funcionrio extends extends extends extends Inserir Promoo

Alterar Promoo

Eliminar Promoo

Encomendar Artigos

Consultar Encomendas Utilizador Credenciado Cliente

Consultar Artigos

Gerir Perfil de Utilizador

Registar Dados

Logout Autenticar Utilizador Utilizador Credenciado

Annimo

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Descrio dos Casos de Utilizao


Registar Dados
1 - Nome 2 - Atores 3 - Objectivos 4 - Ecrs Registar Dados Annimo Acrescentar um novo Utilizador Credenciado [Cliente] ao Sistema

AU, RD No existe sesso activa para o Utilizador actual

5 - Pr condies

6 - Cenrio principal 1. O Utilizador Annimo accionou a opo Novo Registo no ecr AU; 2. O Sistema apresenta o ecr RD; 3. O Utilizador preenche os dados e confirma; 4. O Sistema valida os dados e envia uma mensagem de correio electrnico para o endereo definido pelo utilizador com o nome de Utilizador (E-mail) e a Palavrachave definida; 5. O Sistema armazena os dados do novo Utilizador; 7 - Ps condies Existe um novo Utilizador registado no Sistema

Autenticar Utilizador
1 - Nome 2 - Atores 3 - Objetivos Autenticar Utilizador Annimo Verificar o tipo de Utilizador (Cliente ou Funcionrio) que est a aceder ao Sistema

4 - Ecrs

AU, CL, FN O Utilizador no tem sesso activa

5 - Pr condies

6 - Cenrio principal 1. O Utilizador Annimo acede ao Sistema; 2. O Utilizador solicita autenticao; 3. O Sistema apresenta o ecr AU; 4. O Utilizador insere as credenciais e confirma; 5. O Sistema verifica se as credenciais inseridas correspondem a algum Utilizador registado;

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

6.1 O Sistema no encontrou credenciais, mostra erro; 6.2 O Sistema encontrou um Cliente, mostra ecr CL; 6.3 O Sistema encontrou um Funcionrio, mostra ecr FN; 7 - Ps condies O Utilizador est credenciado e existe uma sesso activa

Gerir Artigos
1 - Nome 2 - Atores 3 Objetivos 4 - Ecrs Gerir Artigos Funcionrio Actualizar os artigos e informao associada

FN, GA, IA, EA, AA O Funcionrio tem sesso activa

5 - Pr condies

6 - Cenrio principal 1. O Funcionrio acciona a opo Gerir Artigos no ecr FN; 2. O Sistema apresenta o ecr GA; 3. O Funcionrio pode inserir artigo; 3.1 extends Inserir Artigo; 4. O Funcionrio pode eliminar artigo; 4.1 extends Eliminar Artigo; 5. O Funcionrio pode alterar artigo; 5.1 extends Alterar Artigo; 6. O Funcionrio fecha o ecr; 7. O Sistema apresenta o ecr FN;

1 - Nome

Inserir Artigo O Funcionrio tem sesso activa

2 - Pr condies

3 - Cenrio alternativo 1. O Funcionrio selecciona a opo Inserir Artigo no ecr GA; 2. O Sistema apresenta o ecr IA com uma lista dos artigos existentes; 3. O Funcionrio insere um artigo e confirma; 4. O Sistema armazena os dados relativos ao novo artigo; 5. O Funcionrio fecha o ecr; 6. O Sistema apresenta o ecr GA; 4 - Ps condies Existe(m) novo(s) artigo(s) na base de dados

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

1 - Nome

Eliminar Artigo O Funcionrio tem sesso activa

2 - Pr condies

3 - Cenrio alternativo 1. O Funcionrio selecciona a opo Eliminar Artigo no ecr GA; 2. O Sistema apresenta o ecr EA com uma lista dos artigos existentes; 3. O Funcionrio insere o cdigo de artigo a eliminar e confirma; 4. O Sistema verifica se o cdigo de artigo inserido tem correspondncia na base de dados; 5.1 O Sistema no encontrou correspondncia, mostra erro; 5.2.1 O Sistema encontrou correspondncia mas a sua eliminao viola as regras de integridade, mostra erro; 5.2.2 O Sistema encontrou correspondncia e a sua eliminao no viola as regras de integridade, elimina artigo da base de dados; 6. O Funcionrio fecha o ecr; 7. O Sistema apresenta o ecr GA; 4 - Ps condies Artigo(s) eliminado(s) da base de dados

5 - Observaes Este caso de uso foi criado no intuito de ser utilizado apenas em situaes de engano aquando da insero de novos artigos

1 - Nome

Alterar Artigo O Funcionrio tem sesso activa

2 - Pr condies

3 - Cenrio alternativo 1. O Funcionrio selecciona a opo Alterar Artigo no ecr GA; 2. O Sistema apresenta o ecr AA com uma lista dos artigos existentes; 3. O Funcionrio insere o cdigo de artigo a alterar e confirma; 4. O Sistema verifica se o cdigo de artigo inserido tem correspondncia na base de dados; 5.1 O Sistema no encontrou nenhuma correspondncia, mostra erro; 5.2 O Sistema encontra correspondncia e actualiza o ecr com os campos do artigo; 6. O Funcionrio faz as alteraes e confirma; 7.1 A alterao viola as regras de integridade, mostra erro; 7.2 O Sistema armazena os dados relativos ao artigo; 8. O Funcionrio fecha o ecr; 9. O Sistema apresenta o ecr GA; 4 - Ps condies Artigo(s) alterado(s) na base de dados

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Gerir Promoes
1 - Nome 2 - Atores 3 Objetivos 4 - Ecrs Gerir Promoes Funcionrio Actualizar as promoes e informao associada

FN, GP, IP, EP, AP O Funcionrio tem sesso activa

5 - Pr condies

6 - Cenrio principal 1. O Funcionrio acciona a opo Gerir Promoes no ecr FN; 2. O Sistema apresenta o ecr GP; 3. O Funcionrio pode inserir promoo; 3.1 extends Inserir Promoo; 4. O Funcionrio pode eliminar promoo; 4.1 extends Eliminar Promoo; 5. O Funcionrio pode alterar promoo; 5.1 extends Alterar Promoo; 6. O Funcionrio fecha o ecr; 7. O Sistema apresenta o ecr FN;

1 - Nome

Inserir Promoo O Funcionrio tem sesso activa

2 - Pr condies

3 - Cenrio alternativo 1. O Funcionrio selecciona a opo Inserir Promoo no ecr GP; 2. O Sistema apresenta o ecr IP com uma lista de todas as promoes; 3. O Funcionrio insere uma nova promoo e confirma; 4. O Sistema armazena os dados relativos promoo; 5. O Funcionrio fecha o ecr; 6. O Sistema apresenta o ecr GP; 4 - Ps condies Existem uma ou mais novas promoes na base de dados

1 - Nome

Eliminar Promoo O Funcionrio tem sesso activa

2 - Pr condies

3 - Cenrio alternativo 1. O Funcionrio selecciona a opo Eliminar Promoo no ecr GP;

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

2. O Sistema apresenta o ecr EP com uma lista de todas as promoes; 3. O Funcionrio insere o cdigo de promoo a eliminar e confirma; 4. O Sistema verifica se o cdigo de promoo inserido tem correspondncia na base de dados; 5.1 O Sistema no encontrou nenhuma correspondncia, mostra erro; 5.2.1 O Sistema encontrou correspondncia mas a sua eliminao viola as regras de integridade, mostra erro; 5.2.2 O Sistema encontrou correspondncia e a sua eliminao no viola as regras de integridade, elimina a promoo da base de dados; 6. O Funcionrio fecha o ecr; 7. O Sistema apresenta o ecr GP; 4 - Ps condies Uma ou mais promoes eliminadas da base de dados

5 - Observaes Este caso de uso foi criado no intuito de ser utilizado apenas em situaes de engano aquando da insero de novas promoes

1 - Nome

Alterar Promoo O Funcionrio tem sesso activa

2 - Pr condies

3 - Cenrio alternativo 1. O Funcionrio selecciona a opo Alterar Promoo no ecr GA; 2. O Sistema apresenta o ecr AP com uma lista de todas as promoes; 3. O Funcionrio insere o cdigo de promoo a alterar e confirma; 4. O Sistema verifica se o cdigo de promoo tem correspondncia na base de dados; 5.1 O Sistema no encontrou nenhuma correspondncia, mostra erro; 5.2 O Sistema encontra correspondncia e actualiza o ecr com os campos passveis de alterao relativos promoo; 6. O Funcionrio faz as alteraes e confirma; 7. O Sistema armazena os dados relativos promoo; 8. O Funcionrio fecha o ecr; 9. O Sistema apresenta o ecr GP; 4 - Ps condies Uma ou mais promoes alteradas na base de dados

Consultar Histrico de Encomendas


1 - Nome 2 - Atores 3 - Objetivos Consultar Histrico de Encomendas Utilizador Credenciado Permitir ao Cliente consultar o seu histrico de encomendas e permitir ao Funcionrio consultar as encomendas para proceder sua expedio e registar a data de envio

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

4 - Ecrs

CL, FN, CH, CHF O Funcionrio ou o Cliente tm sesses activas

5 - Pr condies

6 - Cenrio principal 1. O Utilizador acciona Consultar Encomendas no ecr CL ou no ecr FN; 2.1 O Sistema identifica o Utilizador como Cliente e apresenta o ecr CH com uma lista de todas as encomendas associadas ao Cliente; 2.1.1 O Cliente selecciona uma encomenda; 2.1.2 O Sistema apresenta os detalhes da encomenda seleccionada; 2.2 O Sistema identifica o Utilizador como Funcionrio e apresenta o ecr CHF, com uma lista de todas as encomendas finalizadas e no enviadas; 2.2.1 O Funcionrio pode seleccionar a opo Enviada relativa a uma encomenda e confirmar; 2.2.2 O Sistema actualiza a Data de Envio de encomenda de acordo a data do momento da aco; 2.2.3 O Funcionrio pode seleccionar uma encomenda; 2.2.4 O Sistema apresenta os detalhes da encomenda seleccionada; 2.2.5 O Funcionrio pode seleccionar a opo Listar Encomendas; 2.2.6 O Sistema apresenta uma lista de todas as encomendas finalizadas (enviadas ou no); 3. O Utilizador fecha o ecr; 3.1 O Sistema identifica um Cliente e apresenta o ecr CL; 3.2 O Sistema identifica um Funcionrio e apresenta o ecr FN; 7 - Observaes Apesar de o caso de uso ser o mesmo (Consultar Histrico de Encomendas) para todos os Utilizadores, o Sistema ir apresentar diferentes opes e comportamentos conforme o Utilizador se trate de um Cliente ou de um Funcionrio 8 - Ps condies Uma ou mais encomendas actualizadas [pelo Funcionrio] como enviadas

Encomendar Artigos
1 Nome 2 Atores 3 Objetivos Encomendar Artigos Cliente Efectuar encomenda de artigos

4 Ecrs CL, VE, CA 5 Pr condies O Cliente tem sesso activa

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

6 Cenrio principal 1. O Cliente selecciona Encomendar Artigo no ecr CA; 2. O Sistema verifica as existncias em stock do artigo seleccionado; 3.1 No h artigos disponveis, mostra erro; 3.2.1 H artigos disponveis, o Cliente no tem encomenda pendente, o Sistema regista uma nova encomenda que inclui o artigo seleccionado; 3.2.2 H artigos disponveis, o Cliente tem encomenda pendente, o Sistema actualiza a encomenda e adiciona o artigo seleccionado; 4. O Sistema apresenta o ecr VE com os detalhes da encomenda; 5. O Cliente pode excluir um ou mais artigos seleccionando Eliminar; 6. O Sistema remove da encomenda o(s) artigo(s) seleccionados; 7. O Cliente pode alterar o campo Quantidade relativo a um ou mais artigos nos detalhes da encomenda e seleccionar a opo Actualizar Encomenda; 8. O Sistema verifica as existncias em stock dos artigos na encomenda; 9.1 As quantidades pedidas existem em stock, o Sistema actualiza a encomenda com as novas quantidades e respectivos valores; 9.2 As quantidades excedem as existncias em stock, o Sistema actualiza a encomenda com as quantidades existentes e respectivos valores; 10. O Cliente pode finalizar a encomenda seleccionando a opo Finalizar Encomenda; 10.1 extends Finalizar Encomenda; 11. O Cliente fecha o ecr; 12. O Sistema apresenta o ecr CA; 7 - Ps condies Existe uma encomenda pendente

Finalizar Encomenda
1 - Nome 2 - Atores 3 - Objetivos Finalizar Encomenda Cliente Confirmar a finalizao da encomenda pendente O Cliente tem sesso activa e encomenda pendente

4 - Pr condies

5 - Cenrio alternativo 1. O Cliente seleccionou a opo Finalizar Encomenda no ecr VE; 2. O Sistema verifica as existncias em stock dos artigos na encomenda; 3.1 As quantidades encomendadas existem em stock, o Sistema finaliza a encomenda registando a Data de Encomenda e apresentando uma mensagem de sucesso; 3.2 As quantidades encomendadas excedem as existncias em stock, o Sistema actualiza a encomenda com as quantidades existentes e respectivos valores, apresenta uma mensagem com a causa da alterao e apresenta o ecr VE com a encomenda actualizada;

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

6 - Observaes A verificao das quantidades encomendadas repete-se no acto de finalizao de encomenda devido possvel variao dos stocks durante o tempo em que a encomenda esteve pendente 7 - Ps condies Existe uma nova encomenda finalizada aguardando envio

Consultar Artigos
1 - Nome 2 - Atores 3 - Objetivos 4 - Ecrs Consultar Artigos Utilizador Annimo, Utilizador Credenciado Pesquisa e consulta de artigos

CA,FN,CL,VE

5 - Cenrio principal 1.1 O Utilizador Annimo acede ao Sistema; 1.2.1 O Cliente selecciona Pesquisar Artigos no ecr CL; 1.2.2 O Cliente selecciona Continuar Encomenda no ecr VE (ou fecha o ecr); 1.3 O Funcionrio selecciona Pesquisar Artigos no ecr FN; 2. O Sistema apresenta o ecr CA com uma lista das promoes activas; 3. O Utilizador insere um termo de pesquisa e confirma; 4. O Sistema procura na base de dados correspondncias com o termo e apresenta uma lista dos artigos onde o mesmo conste; 5. O Utilizador selecciona um dos agrupamentos de caractersticas disponveis (filtros); 6. O Sistema apresenta uma lista de todos os artigos que tm correspondncia com o filtro escolhido; 7. O Cliente pode seleccionar Ver Encomenda; 8.1 O Sistema verifica se o Cliente tem uma encomenda pendente, encontra e apresenta o ecr VE com os detalhes; 8.2 O Sistema verifica se o Cliente tem uma encomenda pendente, no encontra, mostra erro; 6 - Observaes A aparncia do ecr CA para o Cliente ter duas opes no disponveis no ecr CA do Funcionrio ou do Utilizador Annimo: a opo Ver Encomenda e a opo Encomendar Artigo

Gerir Perfil de Utilizador


1 - Nome 2 - Atores 3 - Objetivos Gerir Perfil de Utilizador Cliente Consultar ou alterar informao relativa ao perfil de Utilizador

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

4 - Ecrs

CL, PU O Cliente tem sesso activa

5 - Pr condies

6 - Cenrio principal 1. O Cliente selecciona Gerir Perfil no ecr CL; 2. O Sistema apresenta o ecr PU com os dados relativos ao perfil de Utilizador; 3. O Cliente selecciona Alterar; 4. O Sistema apresenta um novo formulrio de perfil preenchido com os dados em registo; 5. O Cliente faz as alteraes e selecciona Actualizar; 6. O Sistema armazena os dados; 7. O Cliente fecha o ecr; 8. O Sistema apresenta o ecr CL; 7 - Ps condies O perfil de Utilizador [Cliente] foi alterado

Log Out
1 - Nome 2 - Atores 3 - Objectivos 4 - Ecrs Exemplo Utilizador Credenciado Terminar a sesso do Cliente ou Funcionrio

CL, FN, CA O Funcionrio ou o Cliente tm sesso activa

5 - Pr condies

6 - Cenrio principal 1. Utilizador acciona Terminar Sesso; 2. Sistema termina a sesso do Utilizador e apresenta o ecr CA; 7 - Ps condies Sesso encerrada

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Diagrama de Classes

Categoria -Nome_Categoria : String -Descrio_Categoria : String +Listar_Categoria()

Encomenda_Produto -Quantidade_Produto_Encomenda : Integer -Custo_Total_Produto : Integer 0..* Produto Encomenda -Valor_Total_Encomenda : Integer -Data_Encomenda : Date -Data_Envio : Date +Listar_Encomendas() +Actualizar_Encomenda() +Encomendas_No_Enviadas() +Ver_Encomenda() +Encomendas_Cliente() +Ver_Enc_Pendente() +Criar_Encomenda() 0..* 0..* 0..* 0..1 Cliente -Apelido : String -Telefone : Integer -Morada : String -NIF : Integer +Guardar_Cliente() +Validar Dados() Promoo -Nome_Promoo : String -Descrio_Promoo : String -Desconto_Promoo : Integer -Estado_Promoo : Boolean +Listar_Promoes_Activas() +Listar_Promoes() +Inserir_Promoo() +Remover_Promoo() +Alterar_Promoo() +Validar_Promoo() -Nome_Produto : String -Descrio_Produto : String -Preo_Produto : Integer -Stock_Produto : Integer +Listar_Artigos() +Inserir_Artigo() +Remover_Artigo() +Alterar_Artigo() +Validar_Artigo() +Verifica_Stock() +Pesquisar_Artigos() +Pesquisar_Artigos_Filtro() 0..* 1

Tipo -Nome_Tipo : String -Descrio_Tipo : String +Listar_Tipo()

0..*

1..*

Fabricante -Nome_Fabricante : String -Website_Fabricante : String -E-mail_Fabricante : String +Listar_Fabricante()

0..*

Produto_Promoo -Data_Incio : Date -Data_Fim : Date

Funcionrio

Utilizador -Nome : String -E-mail : String -Password : String -Tipo : Char +Validar_Credenciais()

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Modelo/Esquema de Dados

Utilizadores (Clientes / Funcionrios) (Cod_Utilizador, Nome, Apelido, Email, Password, Telefone, Morada, NIF, Tipo_Utilizador) Fabricantes (Cod_Fabricante, Nome_Fabricante, Website_Fabricante, Email_Fabricante) Categorias (Cod_Categoria, Nome_Categoria, Descricao_Categoria) Tipos (Cod_Tipo, Nome_Tipo, Descricao_Tipo) Produtos (Cod_Produto, Nome_Produto, Descricao_Produto, Preco_Produto, Stock_Produto, Estado_Produto, Cod_Fabricante_FK, Cod_Categoria_FK, Cod_Tipo_FK, Cod_Promocao_FK) Encomendas (Cod_Encomenda, Valor_Total_Encomenda, Data_Encomenda, Data_Envio, Cod_Cliente_FK) Promoes (Cod_Promoo, Nome_Promoo, Descrio_Promoo, Desconto_Promoo, Estado_Promoo) Encomendas_Produtos (Cod_Produto, Cod_Encomenda, Quantidade_Produto_Encomenda, Custo_Total_Produto) Produtos_Promoes (Cod_Produto, Cod_Promoo, Data_Incio, Data_Fim)

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Interfaces com o Utilizador


AU - Autenticao de Utilizador

CL - Cliente (ecr principal)

FN - Funcionrio (ecr principal)

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

RD - Registar Dados

GA - Gerir Artigos

IA - Inserir Artigos

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

EA - Eliminar Artigos

AA - Alterar Artigos

GP - Gerir Promoes

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

IP - Inserir Promoes

EP - Eliminar Promoes

AP - Alterar Promoes

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

CH - Consultar Histrico de Encomendas

VE - Visualizar Encomenda Pendente

CA - Consulta de Artigos

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

PU- Gerir Perfil de Utilizador para o Cliente

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Diagrama de Sequncia
Autenticar Utilizador

<< create >> e1 : AU Entrar_click Validar_Credenciais()

<< transient >> u : Utilizador

Tipo Top Package::Utilizador Annimo [Tipo = 0] << erro >>

x
[Tipo = 1] << create >> e2 : CL [Tipo = 2] << create >> c3 : FN

0 - Erro 1 - Cliente 2 - Funcionrio

<< destroy >>

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Registar Dados

e1 : AU

Novo_Registo_Click () << create >> e4 : RD

<< transient >> u : Utilizador

Confirmar_Dados_Click () Top Package::Utilizador Annimo Validar_Dados ()

Guardar_Cliente ()

<< create >>

m : Mensagem

Enviar ()

<< destroy >>

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Gerir Artigos

e3 : FN

Gerir_Artigos_Click () << create >> e5 : GA

Top Package::Funcionrio

Seleccionar_Inserir_Artigo_Click () << create >> e6 : IA << transient >> a : Artigo

Listar_Artigos () Lista Confirmar_Inserir_Click () Inserir_Artigo () Fechar_Click ()

<< destroy >>

Seleccionar_Alterar_Artigo_Click ()

x
<< create >> e7 : AA Listar_Artigos () Lista

x
<< transient >> a : Artigo

Confirmar_Alterar_Click () Validar_Artigo () Validao [ Invlido ] << erro >> [ Vlido ] Alterar_Artigo () Fechar_Click ()

<< destroy >> Seleccionar_Eliminar_Artigo_Click ()

x
<< create >> e8 : EA Listar_Artigos () Lista

x
<< transient >> a : Artigo

Confirmar_Eliminar_Click () Validar_Artigo () Validao [ Invlido ] << erro >> [ Vlido ] Eliminar_Artigo () Fechar_Click () Fechar_Click () << destroy >>

<< destroy >>

x
Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Gerir Promoes

e3 : FN

Gerir_Promoes_Click () << create >> e9 : GP

Top Package::Funcionrio

Seleccionar_Inserir_Promoo_Click () << create >> e10 : IP << transient >> p : Promoo

Listar_Promoo () Lista Confirmar_Inserir_Click () Inserir_Promoo () Fechar_Click ()

<< destroy >>

Seleccionar_Alterar_Promoo_Click ()

x
<< create >> e11 : AP Listar_Promoo () Lista

x
<< transient >> p : Promoo

Confirmar_Alterar_Click () Validar_Promoo() Validao [ Invlido ] << erro >> [ Vlido ] Alterar_Promoo() Fechar_Click ()

<< destroy >> Seleccionar_Eliminar_Promoo_Click ()

x
<< create >> e12 : EP Listar_Promoo () Lista

x
<< transient >> p : Promoo

Confirmar_Eliminar_Click () Validar_Promoo () Validao [ Invlido ] << erro >> [ Vlido ] Eliminar_Promoo () Fechar_Click () Fechar_Click () << destroy >>

<< destroy >>

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Consultar Histrico de Encomendas - Funcionrio

e3 : FN

Consultar_Encomendas_Click () << create >> e13 : CHF << transient >> e : Encomenda Top Package::Funcionrio

Encomendas_No_Enviadas () Lista Seleccionar_Opo_Enviada_Click () Actualizar_Data_Envio () Seleccionar_Encomenda_Click () Detalhes_Encomenda () Detalhes Seleccionar_Listar_Encomendas_Click () Listar_Encomendas () Lista_Todas_Encomendas Fechar_Click ()

<< destroy >>

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Consultar Histrico de Encomendas - Cliente

e2 : CL

Consultar_Encomendas_Click () << create >> e14 : CH << transient >> e : Encomenda Top Package::Funcionrio Encomendas_Cliente () Lista Seleccionar_Encomenda_Click () Ver_Encomenda ()

Detalhes Fechar_Click ()

<< destroy >>

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Encomendar Artigos e Finalizar Encomenda

e15 : CA

Encomendar_Artigo_Click ()

<< transient >> a : Artigo Verifica_Stock () [ Invlido ] << erro >> << transient >> c : Encomenda

Top Package::Cliente [ Vlido ] Ver_Enc_Pendente () Verificao Encomenda [Existe] Actualizar_Enc () [No Existe] Criar_Enc () << create >>

e17 : VE Ver_Encomenda () Detalhes

Eliminar_Click () Actualizar_Click () Actualizar_Enc ()

Actualizar_Enc () Verifica_Stock () Actualizar_Enc () Finalizar_Encomenda_Click () Actualizar_Enc () Verifica_Stock () [ Vlido ] << Sucesso >> [ Invlido ] << erro >> [Vlido] Finaliza_Enc () [Invlido] Actualiza_Enc () Ver Encomenda () Detalhes Fechar_Click ()

<< destroy >>

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Consulta de Artigos - Cliente

e2 : CL

Consultar_Artigos_Click () e15 : CA << transient >> p : Promoo Listar_Promoes_Activas () Lista

<< create >>

Top Package::Cliente

x
Pesquisar_Termo_Click ()

<< transient >> a : Artigo

Pesquisar_Artigos () Lista Seleccionar_Filtro_Click () Pesquisar_Artigos_Filtro () Lista

Ver_Encomenda ()

<< transient >> c : Encomenda Ver_Enc_Pendente () [ No Existe ] << erro >> [Existe] << create >> e17 : VE

Ver_Encomenda () Detalhes

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Consulta de Artigos - Funcionrio

e3 : FN Consultar_Artigos_Click () e15 : CA << transient >> p : Promoo Top Package::Funcionrio

<< create >>

x
Pesquisar_Termo_Click ()

Listar_Promoes_Activas () Lista

<< transient >> a : Artigo

Pesquisar_Artigos () Lista Seleccionar_Filtro_Click () Pesquisar_Artigos_Filtro () Lista

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Consulta de Artigos - Annimo

<< create >>

e15 : CA << transient >> p : Promoo Listar_Promoes_Activas () Lista

Pesquisar_Termo_Click ()

<< transient >> a : Artigo

Pesquisar_Artigos () Top Package::Annimo Lista Seleccionar_Filtro_Click () Pesquisar_Artigos_Filtro () Lista

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

LogOut - Funcionrio

e3 : FN

LogOut_Click () << create >> e1 : AU

Top Package::Top Package::Funcionrio

<< destroy >>

LogOut - Cliente

e2 : CL

LogOut_Click () << create >> e1 : AU

Top Package::Top Package::Cliente

<< destroy >>

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Diagrama de Comunicao
Autenticar Utilizador
u: Utilizador
is cia en d e Cr ar_
<< transient >>

<< create >> 1: 2: Entrar_Click 5.1 : [Tipo = 0] << erro >>

3: V

alid

o Tip 4:

e1 : AU
5.3 :

5.2 : [Tipo = 1] << create >>

e2 : CL

[Ti p

o=

2] <

<c rea te >

Top Package::Utilizador Annimo

>

e3 : FN

Registar Dados

e1 : AU

<< create >> 2: << destroy >> 6:

o 1: N

_C sto egi R vo_

() lick

3: Confirmar_Dados_Click () e4 : RD

4: Validar_Dados () 5: Guardar_Cliente ()

<< transient >> u : Utilizador

Top Package::Annimo

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Gerir Promoes

1: Gerir_Promoes_Click () e3 : FN

<< create >> 2: e9 : GP

Top Package::Funcionrio

e10 : IP
3.1 3.1 .1: L 3.1 .2: L istar .4: ista _Pr Ins de om o eri r_P Prom es rom o () o es o ()

<< create >> 2: 3: Seleccionar_Inserir_Promoo_Click () 4: Seleccionar_Eliminar_Promoo_Click () 5: Seleccionar_Alterar_Promoo_Click ()

: k () 3.1 Clic >> erir_ ) te ( s rea s_In Click c << irma ar_ .1.7 nf Fech >> 3 Co .3: .1.5: reate 1 . 3 <c 3 <
<< create >> 5.1: 5.1.3: Confirmas_Alterar_Click () 5.1.5: Fechar_Click () << create >> 5.1.6:

<< destroy >> 3.1.6:

e9 : GP

e11 : AP

5.1.1: Listar_Promoes () 5.1.2: Lista de Promoes 5.1.4: Alterar_Promoo ()

<< transient >> p : Promoo

Top Package::Funcionrio

3.1 .3: < Co < cre n 3.1 firm ate > .5: ar_ > 4 .1 E F << cre echa limin : ate r_C ar_ >> lick Clic k () 4.1 () .7:

<< destroy >> 5.1.6:

e12 : EP

() es o es rom omo o () o>> P _ tar de Pr mo <<err Lis o () > .1: sta _Pr .1: ro> o 4.1 .2: Li lidar 4.1.5 <<er mo 4.1 4: Va ado] .2.1: r_Pro . r a 4.1 cont 4.1.5 imin l ] n o E lido .2: E [N [Inv 1.5.2 . ]4 lido [V

<< destroy >> 4.1.6:

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Gerir Artigos

1: Gerir_Artigos_Click () e3 : FN

<< create >> 2: e5 : GA

Top Package::Funcionrio

e6 : IA
3. 1 3. .1: L 3.1 1.2: L istar .4: ist _A Ins a d rtig eri e A os r_A rti () rtig gos os ()

<< create >> 2: 3: Seleccionar_Inserir_Artigo_Click () 4: Seleccionar_Eliminar_Artigo_Click () 5: Seleccionar_Alterar_Artigo_Click ()

: k () 3.1 _Clic >> ir te Inser k () a e lic cr s_ << irma ar_C .1.7 f h on Fec >> 3 3: C .1.5: eate . 1 3 < cr 3. <
<< create >> 5.1: 5.1.3: Confirmas_Alterar_Click () 5.1.5: Fechar_Click () << create >> 5.1.6:

<< destroy >> 3.1.6:

e5 : GA

e6 : AA

5.1.1: Listar_Artigos () 5.1.2: Lista de Artigos 5.1.4: Alterar_Artigo ()

<< transient >> a : Artigo

Top Package::Funcionrio

3.1 .3: < Co < cre n 3.1 firm ate > .5: ar_ > 4 .1 E F << cre echa limin : ate r_C ar_ >> lick Clic k () 4.1 () .7:

<< destroy >> 5.1.6:

e7 : EA

() os rtig os r_A Artig o () ro>> a t er de tig Lis .1: sta _Ar : << >> ) 4.1 .2: Li lidar 1.5.1 erro igo ( 4.1 4: Va o] 4. .1: << r_Art . d a 4.1 ntra .1.5.2 imin l nco ] 4 : E o E lido .2.2 [N [Inv 4.1.5 ] o lid [V

<< destroy >> 4.1.6:

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Consulta de Artigos - Annimo


<< transient >> p : Promoo
() as ctiv vas A _ i os Act rom s_ _P romo r a t _P Lis 2: : Lista 3

<< create >> 1: 4: Pesquisar_Termo_Click () 7: Seleccionar_Filtro_Click ()

e15 : CA

Top Package::Annimo

5: Pe sq u is 8: Pe 6: Lis a_Art s 9: quis ta_A igos_ Lis ta_ a_Ar rtigos Click Art tigo () igo s_F () s_F iltr iltr o () o( )

<< transient >> a: Artigo

Consulta de Artigos - Funcionrio


<< transient >> p : Promoo
() as tiv Ac tivas _ s o Ac rom os_ r_P om sta a_Pr i L 3: : List 4

1: Consultar_Artigos_Click () e3 : FN

<< create >> 2: 5: Pesquisar_Termo_Click () 8: Seleccionar_Filtro_Click ()

e15 : CA

Top Package::Funcionrio

6: Pe sq u is 9: Pe 7: Lis a_Art 10 squi ta_A igos : Li sa_ rtig _Cl sta _A Artigo os () ick () rtig os_ s_Filt Filt ro ( ) ro ()

<< transient >> a: Artigo

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Consulta de Artigos e Ver Encomenda - Cliente

1.1: Pesquisar_Artigos_Click () e2 : CL

1.2 :

Co

nti nu

ar_ En

com en d

<< create >> 2:

e15 : CA

Top Package::Cliente

a_C lick ()
e17 : VE

<< transient >> p : Promoo


() as ctiv vas A _ i t os Ac rom mos_ _P tar _Pro s i L 3: : Lista 4

e17 : VE

[Encontra Enc] << create>> 13: 14: Ver_encomenda () 15: Detalhes

<< create >> 2: 5: Pesquisar_Termo_Click () 8: Seleccionar_Filtro_Click () 11: Ver_Encomeda_Click ()

e15 : CA
12: [No Verifica_ E Enco ntra E ncomend a nc] 1 6: << () erro >>

Top Package::Cliente

6: Pe sq u is 9: Pe 7: Lis a_Art 10 squi ta_A igos : L i sa _ rtig _Cl sta _A Artigo os () ick () rtig os_ s_Filt Filt ro ( ) ro ()

c : Encomenda

<< transient >> a: Artigo

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Consulta Histrico de Encomendas - Funcionrio


3: Enc_No_Enviadas () 4: Lista_ Enc_No_Enviadas 6: Actualizar_Encomenda () 8: Ver_Encomenda () 9: Detalhes 11: Listar_Encomendas () 12: Lista_Todas_Encomendas

1: Consultar_Encomendas_Click ()

e3 : FN

<< create >> 2: 5: Opo_Enviada_Click () 7: Selec_Enc_Click () 10: Listar_Encomendas_Click () 13: Fechar_Click ()

e13 : CHF

<< transient >> c : Encomenda

Top Package::Funcionrio

<< destroy >> 14:

Consulta de Encomendas - Cliente


<< create >> 2: 5: Selec_Encomenda_Click () 8: Fechar_Click ()

1: Consultar_Encomendas_Click ()

e3 : FN

3: Encomendas_Cliente () 4: Lista_ Encomendas_Cli 6: Ver_Encomenda () 7: Detalhes

e13 : CHF

<< transient >> c : Encomenda

Top Package::Funcionrio

<< destroy >> 9:

LogOut - Funcionrio

1: LogOut_Click ()

<< create >> 2:

e3 : FN

e1 : AU

Top Package::Funcionrio

<< destroy >> 3:

LogOut - Cliente

1: LogOut_Click ()

<< create >> 2:

e2 : CL

e1 : AU

Top Package::Cliente

<< destroy >> 3:

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Ano letivo 2012/13

Escola Superior de Gesto e Tecnologia de Santarm

Anlise e Conceo de Sistemas de Informao

Concluses
Como referimos na Introduo, no havendo uma viso absoluta que possa ser considerada a correcta, esta nossa proposta de resoluo uma das muitas possveis, havendo certamente algumas falhas mas tambm algumas questes que no estando erradas sero certamente discutveis, dada a subjectividade da interpretao. Pensamos ter atingido a grande maioria dos Objectivos, e pudemos reparar pela sua implementao e aplicao prtica no trabalho da Unidade Curricular de Bases de Dados II, que embora no esteja perfeito e apesar de pequenas discrepncias, conseguimos seguir o modelo por ns proposto e aplica-lo na sua quase totalidade, ganhando tambm assim uma melhor noo da relao teoria/prtica, consolidando conhecimentos e ficando com uma viso abrangente do percurso feito desde o incio da concepo at sua implementao em cdigo de programao. Consideramos que alm da sua importncia para quem queira eventualmente trabalhar na rea, o elaborar deste trabalho invocou-nos a (necessria) capacidade de, na nossa mente, imaginar o Sistema a trabalhar, imaginar as aces dos utilizadores e a resposta do Sistema e transpor isso para a Concepo j com testes efectuados, na medida em que muitas alteraes foram feitas medida que imaginmos o Sistema a trabalhar e chegmos concluso que como o estaramos a conceber iria trazer problemas ou eventualmente no faria sentido. Compreendemos assim a necessidade do planeamento, de forma a evitar problemas que iriam surgir, inevitavelmente, caso se antecipasse a sua implementao sem passar por todas as fases e sem a elaborao dos respectivos esquemas e diagramas. Ficmos a compreender de uma forma interessante a evoluo do Sistema, desde a avaliao das necessidades do mesmo at sua implementao e testes, tentando o mais possvel aplicar o mtodo interactivo e incremental que nos foi incutido previamente. Esperamos ter sido claros na exposio da nossa interpretao do problema e na proposta de resoluo apresentada, e que desperte a quem analise este Sistema tanto interesse como o que o desafio proposto nos despertou a ns.

Ano letivo 2012/13