miniatura|420x420px|El procés de modelització de dades. La figura il·lustra la manera com es desenvolupen i s'utilitzen els models de dades avui dia. Un model de dades conceptual es desenvolupa a partir dels requisits de dades per a l'aplicació que s'està desenvolupant, potser en el context d'un model d'activitat. El model de dades normalment constarà de tipus d'entitats, atributs, relacions, regles d'integritat i les definicions d'aquests objectes. Això s'utilitza com a punt de partida per al disseny d'interfícies o bases de dades. La modelització de dades en enginyeria de programari és el procés de crear un model de dades per a un sistema d'informació mitjançant l'aplicació de certes tècniques formals. Es pot aplicar com a part del concepte més ampli d'enginyeria basada en models (MDE).
Visió general El modelatge de dades és un procés que s'utilitza per definir i analitzar els requisits de dades necessaris per donar suport als processos empresarials dins de l'àmbit dels sistemes d'informació corresponents a les organitzacions. Per tant, el procés de modelatge de dades implica que modeladors de dades professionals treballin en estreta col·laboració amb les parts interessades de l'empresa, així com amb els usuaris potencials del sistema d'informació.
Hi ha tres tipus diferents de models de dades que es produeixen mentre es progressa des dels requisits fins a la base de dades real que s'utilitzarà per al sistema d'informació. Els requisits de dades es registren inicialment com un model de dades conceptual que és essencialment un conjunt d'especificacions independents de la tecnologia sobre les dades i s'utilitza per discutir els requisits inicials amb les parts interessades del negoci. El model conceptual es tradueix llavors en un model de dades lògic, que documenta les estructures de les dades que es poden implementar en bases de dades. La implementació d'un model de dades conceptual pot requerir diversos models de dades lògics. L'últim pas en el modelatge de dades és transformar el model de dades lògic en un model de dades físic que organitza les dades en taules i té en compte els detalls d'accés, rendiment i emmagatzematge. El modelatge de dades defineix no només els elements de dades, sinó també les seves estructures i les relacions entre elles.
Les tècniques i metodologies de modelització de dades s'utilitzen per modelar dades d'una manera estàndard, coherent i predictible per tal de gestionar-les com un recurs. Es recomana fermament l'ús d'estàndards de modelització de dades per a tots els projectes que requereixen un mitjà estàndard per definir i analitzar dades dins d'una organització, per exemple, mitjançant la modelització de dades:
ajudar els analistes de negoci, programadors, testers, redactors de manuals, selectors de paquets informàtics, enginyers, gestors, organitzacions relacionades i clients a comprendre i utilitzar un model semiformal acordat que engloba els conceptes de l'organització i com es relacionen entre si. gestionar les dades com a recurs integrar sistemes d'informació dissenyar bases de dades/magatzems de dades (també coneguts com a repositoris de dades)
El modelatge de dades es pot dur a terme durant diversos tipus de projectes i en múltiples fases de projectes. Els models de dades són progressius; no existeix el model de dades final per a una empresa o aplicació. En canvi, un model de dades s'ha de considerar un document viu que canviarà en resposta a un negoci canviant. Idealment, els models de dades s'haurien d'emmagatzemar en un repositori perquè es puguin recuperar, ampliar i editar amb el temps. Whitten et al. (2004) van determinar dos tipus de modelatge de dades:
Modelització estratègica de dades: Això forma part de la creació d'una estratègia de sistemes d'informació, que defineix una visió i una arquitectura generals per als sistemes d'informació. L'enginyeria de tecnologies de la informació és una metodologia que adopta aquest enfocament. Modelització de dades durant l'anàlisi de sistemes: En l'anàlisi de sistemes, es creen models de dades lògics com a part del desenvolupament de noves bases de dades.
La modelització de dades també s'utilitza com a tècnica per detallar els requisits empresarials per a bases de dades específiques. De vegades s'anomena modelització de bases de dades perquè un model de dades finalment s'implementa en una base de dades.
Temes Models de dades miniatura|320x320px|Com els models de dades aporten beneficis. Els models de dades proporcionen un marc perquè les dades s'utilitzin dins dels sistemes d'informació, proporcionant definicions i formats específics. Si un model de dades s'utilitza de manera consistent entre sistemes, es pot aconseguir la compatibilitat de les dades. Si s'utilitzen les mateixes estructures de dades per emmagatzemar i accedir a les dades, diferents aplicacions poden compartir dades sense problemes. Els resultats d'això s'indiquen al diagrama. Tanmateix, els sistemes i les interfícies sovint són cars de construir, operar i mantenir. També poden restringir el negoci en lloc de donar-li suport. Això pot passar quan la qualitat dels models de dades implementats en sistemes i interfícies és deficient.
Alguns problemes comuns que es troben en els models de dades són:
Les regles de negoci, específiques de com es fan les coses en un lloc concret, sovint es fixen en l'estructura d'un model de dades. Això significa que petits canvis en la manera com es duen a terme els negocis comporten grans canvis en els sistemes informàtics i les interfícies. Per tant, les regles de negoci s'han d'implementar de manera flexible que no doni lloc a dependències complicades, sinó que el model de dades ha de ser prou flexible perquè els canvis en el negoci es puguin implementar dins del model de dades d'una manera relativament ràpida i eficient. Els tipus d'entitats sovint no s'identifiquen o s'identifiquen incorrectament. Això pot conduir a la replicació de dades, estructura de dades i funcionalitat, juntament amb els costos associats d'aquesta duplicació en el desenvolupament i el manteniment. Per tant, les definicions de dades s'han de fer tan explícites i fàcils d'entendre com sigui possible per minimitzar la mala interpretació i la duplicació. Els models de dades per a diferents sistemes són arbitràriament diferents. El resultat d'això és que es requereixen interfícies complexes entre sistemes que comparteixen dades. Aquestes interfícies poden representar entre el 25 i el 70% del cost dels sistemes actuals. Les interfícies necessàries s'han de tenir en compte inherentment a l'hora de dissenyar un model de dades, ja que un model de dades per si sol no seria utilitzable sense interfícies dins de diferents sistemes. Les dades no es poden compartir electrònicament amb clients i proveïdors, perquè l'estructura i el significat de les dades no s'han estandarditzat. Per obtenir un valor òptim d'un model de dades implementat, és molt important definir estàndards que garanteixin que els models de dades satisfacin les necessitats empresarials i siguin coherents.
Esquemes conceptuals, lògics i físics miniatura|320x320px|L'arquitectura de tres nivells ANSI/SPARC. Això demostra que un model de dades pot ser un model (o vista) extern, un model conceptual o un model físic. Aquesta no és l'única manera de veure els models de dades, però és una manera útil, sobretot quan es comparen models. El 1975, l'ANSI va descriure tres tipus d'instància de model de dades:
Esquema conceptual: descriu la semàntica d'un domini (l'abast del model). Per exemple, pot ser un model de l'àrea d'interès d'una organització o d'una indústria. Això consisteix en classes d'entitats, que representen tipus de coses significatives en el domini, i afirmacions de relació sobre associacions entre parells de classes d'entitats. Un esquema conceptual especifica els tipus de fets o proposicions que es poden expressar mitjançant el model. En aquest sentit, defineix les expressions permeses en un "llenguatge" artificial amb un abast limitat per l'abast del model. De manera senzilla, un esquema conceptual és el primer pas per organitzar els requisits de dades. Esquema lògic: descriu l'estructura d'algun domini d'informació. Això consisteix en descripcions de (per exemple) taules, columnes, classes orientades a objectes i etiquetes XML. L'esquema lògic i l'esquema conceptual de vegades s'implementen com una sola cosa. Esquema físic: descriu els mitjans físics utilitzats per emmagatzemar dades. Això fa referència a particions, CPU, espais de taula i similars.
Segons ANSI, aquest enfocament permet que les tres perspectives siguin relativament independents entre si. La tecnologia d'emmagatzematge pot canviar sense afectar ni l'esquema lògic ni el conceptual. L'estructura de taula/columna pot canviar sense afectar (necessàriament) l'esquema conceptual. En cada cas, és clar, les estructures han de romandre coherents en tots els esquemes del mateix model de dades.
Procés de modelització de dades En el context de la integració de processos de negoci (vegeu la figura), el modelatge de dades complementa el modelatge de processos de negoci i, en última instància, dona lloc a la generació de bases de dades. miniatura|360x360px|Modelització de dades en el context de la integració de processos de negoci. El procés de disseny d'una base de dades implica produir els tres tipus d'esquemes descrits anteriorment: conceptual, lògic i físic. El disseny de la base de dades documentat en aquests esquemes es converteix mitjançant un llenguatge de definició de dades, que després es pot utilitzar per generar una base de dades. Un model de dades completament atribuït conté atributs detallats (descripcions) per a cada entitat que hi ha dins. El terme "disseny de base de dades" pot descriure moltes parts diferents del disseny d'un sistema de base de dades global. Principalment, i més correctament, es pot considerar com el disseny lògic de les estructures de dades bàsiques utilitzades per emmagatzemar les dades. En el model relacional, aquestes són les taules i les vistes. En una base de dades d'objectes, les entitats i les relacions es mapen directament a classes d'objectes i relacions amb nom. Tanmateix, el terme "disseny de base de dades" també es podria utilitzar per aplicar-se al procés global de disseny, no només de les estructures de dades bàsiques, sinó també dels formularis i consultes utilitzats com a part de l'aplicació global de la base de dades dins del sistema de gestió de bases de dades o SGBD.
En el procés, les interfícies del sistema representen entre el 25% i el 70% dels costos de desenvolupament i suport dels sistemes actuals. La raó principal d'aquest cost és que aquests sistemes no comparteixen un model de dades comú. Si els models de dades es desenvolupen sistema per sistema, no només es repeteix la mateixa anàlisi en àrees superposades, sinó que s'han de realitzar més anàlisis per crear les interfícies entre ells. La majoria dels sistemes d'una organització contenen les mateixes dades bàsiques, redissenyades per a un propòsit específic. Per tant, un model de dades bàsic dissenyat de manera eficient pot minimitzar la reelaboració amb modificacions mínimes per als propòsits dels diferents sistemes dins de l'organització
Metodologies de modelització Els models de dades representen àrees d'informació d'interès. Tot i que hi ha moltes maneres de crear models de dades, segons Len Silverston (1997) només destaquen dues metodologies de modelització, la de dalt a baix i la de baix a dalt: