20
Disseny i implementació de la base de Disseny i implementació de la base de dades d’un: dades d’un: Sistema de votació ciutadana a nivell Sistema de votació ciutadana a nivell Europeu a través d’Internet Europeu a través d’Internet Juan Pedro Matallana García Enginyeria Tècnica Informàtica de Gestió Ismael Pérez Laguna Consultor de TFC 15 de Gener de 2012 Data Lliurament

Disseny i implementació de la base de dades d’un:

  • Upload
    hazina

  • View
    40

  • Download
    5

Embed Size (px)

DESCRIPTION

Disseny i implementació de la base de dades d’un: Sistema de votació ciutadana a nivell Europeu a través d’Internet Juan Pedro Matallana García Enginyeria Tècnica Informàtica de Gestió Ismael Pérez Laguna Consultor de TFC 15 de Gener de 2012 Data Lliurament. Índex. Introducció - PowerPoint PPT Presentation

Citation preview

Page 1: Disseny i implementació de la base de dades d’un:

Disseny i implementació de la base de dades d’un: Disseny i implementació de la base de dades d’un: Sistema de votació ciutadana a nivell Europeu a Sistema de votació ciutadana a nivell Europeu a

través d’Internettravés d’Internet

Juan Pedro Matallana GarcíaEnginyeria Tècnica Informàtica de Gestió

Ismael Pérez LagunaConsultor de TFC

15 de Gener de 2012Data Lliurament

Page 2: Disseny i implementació de la base de dades d’un:

Introducció Justificació i objectius Planificació Productes obtinguts

Disseny de la Base de Dades Disseny conceptual Disseny lògic Disseny físic

Implementació del producte finalPla de proves

Funcionals Tractament d’errors

Pla de contingènciesAnàlisi de recursos i econòmicaConclusions

Índex

Page 3: Disseny i implementació de la base de dades d’un:

Justificació Raons per les quals s’ha escollit aquesta disciplina:

Recorregut acadèmic orientat a la programació.

Obligar-me a aprofundir en la matèria.

Les BBDD són una eina fonamental dins la programació.

El mon de les BBDD em resulta personalment atractiu.

Raons que expliquen la necessitat d’un projecte com aquest:

Hi han electors que no poden accedir als col·legis.

Foment de la participació.

Afavorir la interacció ciutadana amb l’administració.

Disponibilitat immediata de resultats.

Estandarditzar la BD de l’administració.

Estalvi en el manteniment.

Introducció I

Page 4: Disseny i implementació de la base de dades d’un:

Objectiu General, de tot TFC:

Consolidació dels coneixements adquirits durant la carrera.

Posar en pràctica les metodologies apreses.

Conèixer un SGBD de gran implantació comercial.

Assajar en la redacció de textos formals.

Específic, d’aquest projecte en particular:Disseny d’una BD segons els requeriments de l’enunciat.

Traslladar aquest disseny a l’SGBD Oracle.

Redacció de la memòria del projecte.

Exposar amb una presentació el resultat final.

Funcional, d’aquesta BD:Gravar, editar i esborrar dades relacionades amb les Votacions utilitzant procediments.

Generar estadístiques i llistats.

Documentar la feina feta.

Introducció II

Page 5: Disseny i implementació de la base de dades d’un:

Planificació Fites orientades al lliurament de les PAC:

Treball en 4 etapes seguint el mètode en cascada.

Repartiment del temps en funció de les fites:

Productes resultantsCarpeta d’instal·lació amb scripts per la creació i inici de la BD.Carpeta de desinstal·lació amb l’script per eliminar tot el projecte.Carpeta de Joc de proves amb els tests de funcionament.Arxiu amb la memòria a més de la presentació.

Introducció III

Page 6: Disseny i implementació de la base de dades d’un:

Disseny conceptual

Diagrama ER

Disseny lògic

Digrama Relacional

Disseny físic

Scripts de creació

Disseny

--- Creació de la taula EstatCREATE TABLE ESTAT( codi VARCHAR2(4)CONSTRAINT PK_ESTAT PRIMARY KEY, nom VARCHAR2(50)CONSTRAINT NN_LOCALITAT_nom NOT NULL, CONSTRAINT UN_ESTAT UNIQUE(nom));

Page 7: Disseny i implementació de la base de dades d’un:

Disseny conceptual En base als requeriments del client localitzem les possibles entitats:

Determinem quins objectes tenen entitat pròpia: Votació, Opció, Ciutadà, Cens, etc.

Seguint el mateix mètode es determinen quines seran les interrelacions:S’indica quines interrelacions existeixen entre les entitats:

Cens <Assignat> Votació.

Es determina quin és seu el grau d’interrelació: Cens [1..n] < Assignació (Data) > [1..m] Votació.

S’esbrina quins atributs corresponen a cada entitat i la clau que l’identifica:

Opció: Codi, votació_títol, descripció, vots_absoluts, vots_relatius.

L’esquema general queda complert amb el diagrama ER:

Disseny I

Page 8: Disseny i implementació de la base de dades d’un:

Disseny lògic Traducció d’entitats i interrelacions a relacions:

Cens [1..n] < Assignació (Data) > [1..m] Votació.

ASSIGNACIÓ(Cens.nom, Votacio.titol, data, votants, vots, participacio)

S’inclouen al model restriccions per garantir la coherència de les dades:{CENS.nom} Clau forana fa referència a un Cens.

{VOTACIÓ.títol} Clau forana fa referència a una Votació.

{data} Valor per defecte: avui.

El diagrama relacional dona una visió global d’aquesta fase de disseny:

Disseny II

Page 9: Disseny i implementació de la base de dades d’un:

Disseny físic

He tingut en compte per la creació de les taules a l’SGBD Oracle 10:

Els arguments que l’han de definir. El tipus de cadascun. Restriccions d’integritat que els afecten directament.

Una taula ens serveix per avaluar la qualitat dels requeriments:

Es mostra com s’han construït i com funcionen tots els procediments:

Es mostra els paràmetres d’entrada i sortida de cadascun. Les precondicions i les postcondicions per executar-los. Funcionament intern pas a pas.

Disseny III

Page 10: Disseny i implementació de la base de dades d’un:

S’ha creat una codificació especial per les claus primàries:

Clau per les taules: País, Regió i Localitat:

Clau per les taules : Cens Estatal, Regional i Local:

Claus per la taula : Estadístiques Agrupades:

Implementació I

Page 11: Disseny i implementació de la base de dades d’un:

Implementació IIEstructura del Producte Final

Memòria.pdf Presentació.pps Producte

Desinstalacio 00-Esborrar_Projecte.sql

Instalacio 01-Creacio_Taules.sql 02-Procediments.sql 03-Introduccio_Dades.sql

Joc_Proves 01-Proves_Alta_Correctes.sql 02-Proves_Modificacio_Correctes.sql 03-Proves_Votar_{VotacióTitol}_Correcte.sql 04-Proves_Baixa correctes.sql 05-Proves_Errors.sql 06-Proves_Llistat_Correctes.sql

Page 12: Disseny i implementació de la base de dades d’un:

Instal·lar Es necessita dins l’Ordinador de treball:

L’Oracle: Ens serveix per crear i servir la BD.

L’SQL-Developer: Per gestionar-la.

El visor de pdf: Ens obrirà l’arxiu amb la Memòria.

El PowerPoint: Ens permetrà obrir la Presentació.

S’haurà de descomprimir a carpeta el contingut de l’arxiu *.zip:

El propi Windows és capaç de fer-ho.

Amb l’SQL-Developer executarem els scripts sobre la BD:

Prèviament haurem creat un usuari amb drets i connectat.

Obrirem en ordre els arxius *.sql amb els scripts de creació. Es crearan les Taules, les seqüències i els disparadors. Es crearan els Procediments.

Omplirem les primeres dades incloses als scripts inicials.

El projecte estarà llest per ser provat.

Implementació III

Page 13: Disseny i implementació de la base de dades d’un:

Desinstal·lar Amb l’SQL-Developer connectarem a l’usuari de la BD:

Necessitem el nom i contrasenya de l’usuari.

Obrirem l’script 00-Esborrar_Projecte.sql:S’han de poder executar totes les comandes de l’arxiu.

En aquests moments podrem desinstal·lar l’Oracle si ens cal:Per mitjà d'afegir i treure programari de Windows:

Localitzem les entrades d’Oracle. Seleccionem eliminar.

Si volem podrem esborrar l’SQL-Developer:Esborrant la seva carpeta hi ha prou.

En aquest moment el producte estarà completament esborrat.

Implementació IV

Page 14: Disseny i implementació de la base de dades d’un:

Funcionals Amb la introducció de les dades inicials provarem la base del disseny:

INSERT INTO ESTAT

SELECT 'DE', 'Alemania' FROM DUAL

UNION ALL

SELECT 'A', 'Austria' FROM DUAL;

Uns scripts d’execució automàtica posen a prova els procediments:DECLARE

RSP VARCHAR2(200);

BEGIN

EXECUTE IMMEDIATE ‘PROCEDIMENT(a, b, RSP)’;

END;

/

Una taula ens mostrarà què es fa i quin és el resultat:

Pla de proves I

Page 15: Disseny i implementació de la base de dades d’un:

Tractament dels errors S’hauran d’identificar quins són els errors que es poden produir:

a) Avaluació dels valors buits.

b) Avaluació dels valors inexistents.

c) Avaluació dels valors repetits

d) Avaluació dels valors no permesos.

S’executaran scripts amb proves automàtiques que els reprodueixen:DECLARE

RSP VARCHAR2(200);

BEGIN

EXECUTE IMMEDIATE ‘PROCEDIMENT(a, b, RSP)’;

END;

/

Amb l’ajut d’una taula avaluarem els resultats:

Pla de proves II

Page 16: Disseny i implementació de la base de dades d’un:

Anàlisi de riscos Es mostraran possibles situacions de risc:

Mal funcionament o ruptura del maquinari de treball.

Acompanyades de les accions previstes com a solució:

Aprofitaré la meva experiència de tècnic en maquinari.

Resultats de l’anàlisi No totes les incidències es poden preveure:

El pla ha de ser obert.

Seguiment La memòria portarà un registre d’incidents amb la solució real aplicada.

Pla de contingències

Page 17: Disseny i implementació de la base de dades d’un:

Anàlisi dels recursos Serà necessari disposar d’eines de treball adients:

Maquinari: 2 Pc sobretaula sincronitzats. 1 Portàtil addicional. 1 Disc dur USB de recolzament. Xarxa Intranet amb sortida ADSL per Internet.

Programari: Windows XP (Entorn virtual), amb Oracle 10 instal·lat. Office 2003 PIME. Project 2003.

Hem de tenir en compte les persones: Director/a de projecte Administratiu/va Analista de BD Programador de BD

Anàlisi I

Page 18: Disseny i implementació de la base de dades d’un:

Anàlisi EconòmicCost dels recursos humans:

Cost dels recursos tècnics:

Cost dels recursos materials:

Anàlisi II

Page 19: Disseny i implementació de la base de dades d’un:

♥ S’han pogut complir tots els terminis de la programació La previsió d’incidències a funcionat. He aplicat els principis fonamentals apresos en la carrera:

1. Dividir els problemes grans en parts petites.

2. Analitzar-los de forma independent.

3. Dissenyar una solució.

4. Implementar-la i provar fins polir defectes.

♥ El producte obtingut funciona El resultat soluciona els requeriments del nostre client. La solució proposada és rendible.

♥ S’han complert les meves expectatives inicials He pogut aprofundir el meu coneixement de gestió en BD. He guanyat en seguretat i eficiència prenent decisions de disseny.

♥ La meva valoració final és totalment positiva.

Conclusions

Page 20: Disseny i implementació de la base de dades d’un:

Fi de la presentacióFi de la presentació

Gràcies per la seva Gràcies per la seva atencióatenció