disseny i implementació de la base de dades d'un sistema...
TRANSCRIPT
Josep Unyó BatllesEnginyeria tècnica informàtica de gestió15 de Juny de 2015
Disseny i implementació de la base de
dades d'un sistema de gestió de carteres d'inversió automatitzat
Manel Rella RuizTutor
● Requeriments inicials● Anàlisi prèvia● Planificació del projecte● Anàlisi dels requisits● Disseny conceptual● Disseny lògic● Disseny físic● Programació● Proves● Seguretat● Millores futures● Conclusions
ÍNDEX
ESPECIFICACIÓ DEL SISTEMA
ESPECIFICACIÓ DELS REQUISITS
ESPECIFICACIÓ DEL DISSENY
PROGRAMARI
REQUERIMENTS INICIALS
● BD amb dos parts diferenciades:● Mòdul operacional (TRANSACCIONAL)● Mòdul estadístic (DWH)
● S'implementaran processos ABM● S'implementaran consultes
● Cost constant de les consultes a DWH● Els procediments retornaran paràmetre de
sortida● S'implementaran tractament d'excepcions● Registre d'execució dels procediments
Adaptada a les necessitats d'un broker.
ESPECIFICACIÓ DEL SISTEMA
Entorn maquinari
Xarxa
Distribució del processamentClient/servidor
ab/cde
Arquitectura Client Lleuger/Servidor pesat
Terminis imposats
Recursos
Riscos
ANÀLISI PRÈVIA
Planificació
ESPECIFICACIÓ DEL SISTEMA
Previst
Real
CONTROL DESVIACIONSPLANIFICACIÓ
PLANIFICACIÓ
●Requisits de negoci● Dades de clients● Dades d'accions● Ordres de compra/venda● Cartera de clients● Històrics
ESPECIFICACIÓ REQUISITS
Anàlisi de requisits Què ha de fer?
Col·laboració estreta amb el client
● Requisits funcionals● Procediments ABM● Actualització preus● Consultes operatives● Consultes estadístiques
ESPECIFICACIÓ DISSENY
Com s'implementarà?
Independent de la plataforma
Esquema conceptual d'alt nivell:ESQUEMA CONCEPTUAL
MODEL ESTÀTIC MODEL DINÀMIC
Descriu l’estructura d'entitats i objectes
Descriu les interaccions i els actors
Anàlisi d'entitats Anàlisi de casos d'ús
ESPECIFICACIÓ DISSENY
DIAGRAMA CONCEPTUAL Mòdul operacional
Model estàtic Model dinàmic
ESPECIFICACIÓ DISSENY
TAULES DE DIMENSIONSTAULES DE FETS
CUB MULTIDIMENSIONAL
DIAGRAMA CONCEPTUAL Mòdul estadístic
Model estàtic Model dinàmic
ESPECIFICACIÓ DISSENY
Model dinàmic
DIAGRAMA CONCEPTUAL Mòdul de control
Model estàtic Model dinàmic
ESPECIFICACIÓ DISSENY
Dependent de la plataforma: Model
relacional
ESQUEMA LÒGIC
Conjunt de relacionsClaus primàriesClaus alternativesClaus foranesAtributs no nuls
Definim
ESQUEMA CONCEPTUAL
Mòdul operacional
ESPECIFICACIÓ DISSENY
ESQUEMA LÒGIC
Dependent del SGBD concret: Oracle 11g R2 XE
ESQUEMA FÍSIC
Arquitectura 3 nivells
Definim
Espais virtualsUsuarisTaulesSeqüènciesÍndexsPermisos
ESPECIFICACIÓ DISSENY
TABLESPACESDATAFILE '/home/vmpep/Documents/tfc/bd_tfc/TFC_DADES_01.dbf' SIZE 50MAUTOEXTEND ON NEXT 500K MAXSIZE 200MBLOCKSIZE 8KEXTENT MANAGEMENT LOCAL AUTOALLOCATESEGMENT SPACE MANAGEMENT AUTO;
OLTP: RECOMANAT 2kB a 8kB vsOLAP: RECOMANAT 16kB a 32KBBLOCKSIZE
EXTENT MANAGEMENT
LOCAL AUTOALLOCATE vsLOCAL UNIFORM SIZE xxK
SEGMENT SPACE MANAGEMENT
AUTO vsMANUAL
DADES OPERACIONALSDADES ESTADÍSTIQUESÍNDEXTEMPORAL
EV definits
ESPECIFICACIÓ DISSENY
CampsTipus de dadesRestriccions PK, FKRestriccions NOT NULLRestriccions UNIQUERestriccions CHECKTablespace
Definim
No definim.PCTFREE / PCTUSED DEFAULT
DIAGRAMA ER TAULES ORACLE
Mòdul operacional
Mòdul estadístic
IMPLEMENTACIÓ
PROCEDIMENTSpkg_control.sqlpkg_dwh.sqlpkg_cartera.sqlpkg_ordres.sqlpkg_accions.sqlpkg_clients.sqlpkg_consultes.sqlpkg_consultes_DWH.sqlpkg_utils.sql
DISPARADORS
Definim els procediments i funcions aprofitant les estructures de paquets
Cada paquet agrupa funcionalitats relacionades
Taules d'auditoria
Manteniment automàtic
HISTÒRIC ACCIONSHISTÒRIC CARTERA
TAULA DIMENSIÓ CLIENTSTAULA DIMENSIÓ ACCIONS
IMPLEMENTACIÓ
PROVES
Es planifiquen les proves per detectar el major nombre d'errors possibles.
Errors propis del sistema valors duplicats, registres no trobats, etcErrors de l'aplicació poques accions disponibles, acció no vendible, etc
Test procedimentsUnicitat ORA-00001Valor null ORA-01400registre inexistent ORA-01403personalitzat
DEPURACIÓ DELS ERRORS
Es criden els diferents procediments, passant paràmetres incorrectes, i capturant l'error esperat.
QUALITAT PRODUCTE
IMPLEMENTACIÓ
ANÀLISI COSTOS DE LES CONSULTES
Es defineix un índex per complir el requisit de cost constant
CREATE INDEX TF_CARTERAVALORS_IDXON TF_CARTERAVALORS (IDTEMPS DESC)TABLESPACE TFC_IDX;
IMPLEMENTACIÓ
ANÀLISI COSTOS DE LES CONSULTES
Es defineix un índex per complir el requisit de cost constant
CREATE INDEX TF_ACCIOMESNEGOCIADA_IDXON TF_ACCIOMESNEGOCIADA (IDTEMPS DESC)TABLESPACE TFC_IDX;
IMPLEMENTACIÓ
SEGURETAT
Tipus de dades
Principis generals de protecció de dades
Llei de protecció de dades de caràcter
personal
Nivell mitjà: ● Dades de caràcter personal● Dades de caràcter financer
Document de seguretat
● Fine-grained access control● Vistes parametritzades● Virtual Private Database (VPD)
Els clients només han de poder accedir a les seves dades
MILLORES PENDENTS
● AJUST FI DELS TABLESPACES: BLOCKSIZE, EXTENTS, SEGMENTS
● AJUST FI DEL RATIO EMPLENAT DE TAULES: PCTFREE, PCTUSED
● VALORAR NOUS INDEX, SI MILLOREN COST DE CONSULTES
● IMPLEMENTACIÓ DE LA SEGURETAT DE LES DADES
● MODIFICACIÓ TAULES PER ALTRES PRODUCTES FINANCERS
● MODIFICACIÓ DELS PROCEDIMENTS DE
CONSULTA PER TAL QUE RETORNIN REGISTRES COMPLERTS, I NO NOMÉS IMPRESIONS PER PANTALLA
CONCLUSIONS
● ÉS MOLT IMPORTANT FER UNA RECOLLIDA DE REQUISITS TANT COMPLERTA COM ES PUGUI, JA QUE DETERMINA L'ÈXIT DEL PROJECTE.
● CAL UNA PLANIFICACIÓ DETALLADA DE LES TASQUES. I DURANT EL
TRANSCURS DEL PROJECTE FER UN SEGUIMENT DE L'EVOLUCIÓ, JA QUE PERMET CORREGIR LES DESVIACIONS A TEMPS.
● ÉS ESENCIAL FER L'ESPECIFICACIÓ DEL DISSENY MOLT COMPLERTA, I BEN DOCUMENTADA. ÈS LA GARANTIA DE L'ÈXIT DEL DESENVOLUPAMENT.
● UN PLANTEIG ENCERTAT DE LES PROVES PERMET DETECTAR ERRORS DE PROGRAMACIO NO VOLGUTS I DEPURAR EL CODI. ASSEGURA LA QUALITAT DEL PRODUCTE.
● HE ADQUIRIT UNA VISIÓ CLARA DE LES FUNCIONS I RESPONSABILITATS D'UN DBA.
● M'HA APORTAT EXPERÌENCIA PRÀCTICA EN ASPECTES TRANSVERSALS DE LA GESTIÓ DE PROJECTES