Modelització de dades

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).[1]

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ó.[2]

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.[3]

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.[4]
  • 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.[5]

Temes

Models de dades

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.[6]

Esquemes conceptuals, lògics i físics

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.

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:

  • Els models ascendents o models d'integració de vistes sovint són el resultat d'un esforç de reenginyeria. Normalment comencen amb formularis d'estructures de dades existents, camps a les pantalles de les aplicacions o informes. Aquests models solen ser físics, específics de l'aplicació i incomplets des d'una perspectiva empresarial. És possible que no promoguin l'intercanvi de dades, sobretot si es construeixen sense fer referència a altres parts de l'organització.
  • Els models de dades lògics de dalt a baix, en canvi, es creen de manera abstracta obtenint informació de persones que coneixen l'àrea temàtica. Un sistema pot no implementar totes les entitats d'un model lògic, però el model serveix com a punt de referència o plantilla.

De vegades, els models es creen combinant els dos mètodes: considerant les necessitats de dades i l'estructura d'una aplicació i fent referència de manera consistent a un model d'àrea temàtica. En molts entorns, la distinció entre un model de dades lògic i un model de dades físic és borrosa. A més, algunes eines CASE no distingeixen entre els models de dades lògics i els físics.

Diagrames d'entitat-relació

Exemple de diagrama d'entitat-relació IDEF1X utilitzat per modelar el mateix IDEF1X. El nom de la vista és mm. També es donen la jerarquia de domini i les restriccions. Les restriccions s'expressen com a frases en la teoria formal del metamodel.

Hi ha diverses notacions per a la modelització de dades. El model real s'anomena sovint "model entitat-relació", perquè representa les dades en termes de les entitats i relacions descrites a les dades. Un model entitat-relació (MER) és una representació conceptual abstracta de dades estructurades. La modelització entitat-relació és un mètode de modelització de bases de dades d'esquema relacional, utilitzat en enginyeria de programari per produir un tipus de model de dades conceptual (o model de dades semàntic) d'un sistema, sovint una base de dades relacional, i els seus requisits de manera descendent.

Aquests models s'utilitzen en la primera etapa del disseny del sistema d'informació durant l'anàlisi de requisits per descriure les necessitats d'informació o el tipus d' informació que s'ha d'emmagatzemar en una base de dades. La tècnica de modelització de dades es pot utilitzar per descriure qualsevol ontologia (és a dir, una visió general i classificacions dels termes utilitzats i les seves relacions) per a un determinat univers de discurs, és a dir, l'àrea d'interès.

S'han desenvolupat diverses tècniques per al disseny de models de dades. Tot i que aquestes metodologies guien els modeladors de dades en la seva feina, dues persones diferents que utilitzen la mateixa metodologia sovint obtindran resultats molt diferents. Les més destacables són:

Modelització de dades genèriques

Exemple d'un model de dades genèric.

Els models de dades genèrics són generalitzacions dels models de dades convencionals. Defineixen tipus de relació general estandarditzats, juntament amb els tipus de coses que poden estar relacionades mitjançant aquest tipus de relació. La definició del model de dades genèric és similar a la definició d'un llenguatge natural. Per exemple, un model de dades genèric pot definir tipus de relació com ara una "relació de classificació", que és una relació binària entre una cosa individual i un tipus de cosa (una classe), i una "relació part-tot", que és una relació binària entre dues coses, una amb el paper de part i l'altra amb el paper de tot, independentment del tipus de coses que estiguin relacionades.

Donada una llista extensible de classes, això permet la classificació de qualsevol cosa individual i l'especificació de relacions part-tot per a qualsevol objecte individual. Mitjançant l'estandardització d'una llista extensible de tipus de relació, un model de dades genèric permet l'expressió d'un nombre il·limitat de tipus de fets i s'aproximarà a les capacitats dels llenguatges naturals. Els models de dades convencionals, en canvi, tenen un abast de domini fix i limitat, perquè la instanciació (ús) d'aquest model només permet expressions de tipus de fets que estan predefinits al model.

Modelització semàntica de dades

L'estructura de dades lògica d'un SGBD, ja sigui jeràrquica, de xarxa o relacional, no pot satisfer totalment els requisits d'una definició conceptual de les dades perquè té un abast limitat i està esbiaixada cap a l'estratègia d'implementació emprada pel SGBD. Això és així, tret que el model de dades semàntic s'implementi a la base de dades expressament, una elecció que pot afectar lleugerament el rendiment però que generalment millora enormement la productivitat.

Models de dades semàntiques.

Per tant, la necessitat de definir les dades des d'una perspectiva conceptual ha portat al desenvolupament de tècniques de modelització semàntica de dades. És a dir, tècniques per definir el significat de les dades dins del context de les seves interrelacions amb altres dades. Com s'il·lustra a la figura, el món real, en termes de recursos, idees, esdeveniments, etc., es defineix simbòlicament per la seva descripció dins dels magatzems de dades físics. Un model de dades semàntiques és una abstracció que defineix com els símbols emmagatzemats es relacionen amb el món real. Per tant, el model ha de ser una representació real del món real.

L'objectiu del modelatge semàntic de dades és crear un model estructural d'una part del món real, anomenada "univers del discurs". Per a això, es consideren tres relacions estructurals fonamentals:

  • Classificació/instanciació: els objectes amb alguna similitud estructural es descriuen com a instàncies de classes
  • Agregació/descomposició: Els objectes compostos s'obtenen unint les seves parts.
  • Generalització/especialització: les classes diferents amb algunes propietats comunes es reconsideren en una classe més genèrica amb els atributs comuns.

Un model de dades semàntic es pot utilitzar per a molts propòsits, com ara:

  • Planificació de recursos de dades
  • Construcció de bases de dades compartibles
  • Avaluació del programari del proveïdor
  • Integració de bases de dades existents

L'objectiu general dels models de dades semàntiques és capturar més significat de les dades integrant conceptes relacionals amb conceptes d'abstracció més potents coneguts del camp de la intel·ligència artificial. La idea és proporcionar primitives de modelització d'alt nivell com a parts integrals d'un model de dades per tal de facilitar la representació de situacions del món real.

Referències

  1. ↑ «What Is Data Modeling? | IBM» (en anglès), 29-09-2021. [Consulta: 30 agost 2025].
  2. ↑ «Data Modeling Explained: Techniques, Examples, and Best Practices» (en anglès). [Consulta: 30 agost 2025].
  3. ↑ «What Is Data Modeling?» (en anglès). [Consulta: 30 agost 2025].
  4. ↑ «What is Data Modeling? - Data Modeling Explained - AWS» (en anglès americà). [Consulta: 30 agost 2025].
  5. ↑ Agar, Robert. «What is Conceptual Data Modeling?» (en anglès americà), 11-06-2021. [Consulta: 30 agost 2025].
  6. ↑ «Data Modeling: A Comprehensive Guide for Analysts» (en anglès americà), 15-02-2024. [Consulta: 30 agost 2025].