ER-modell

A Wikipédiából, a szabad enciklopédiából
Ugrás a navigációhoz Ugrás a kereséshez

Az egyed-kapcsolat modell (vagy ER-modell, angolul entity–relationship model) egy adott tudásterületen belüli, egymással összefüggő dolgokat ír le. Egy alapvető ER-modell egyedtípusokból áll (amelyek osztályozzák az érdekes dolgokat), és meghatározza az egyedek (ezen egyedtípusok példányai) között létező kapcsolatokat.

Egy entitás-attribútum-kapcsolat diagram egy MMORPG számára Chen jelölését használva

A szoftverfejlesztésben az ER-modellt általában azért alkotják meg, hogy ábrázolja azokat a dolgokat, amelyekre az üzleti folyamatok végrehajtásához egy vállalkozásnak emlékeznie kell. Következésképpen az ER-modell egy absztrakt adatmodellé válik, amely egy olyan adat- vagy információs struktúrát határoz meg, amely egy adatbázisban, jellemzően egy relációs adatbázisban implementálható.

Az egyed-kapcsolat modellezést Peter Chen fejlesztette ki az adatbázisok és a tervezés számára, és 1976-ban publikálta egy tanulmányban,[1] de az ötlet változatai már korábban is léteztek.[2] Egyes ER-modellekben a szuper- és altípusú egyedek általánosítás-specializáció kapcsolatokkal kapcsolódnak egymáshoz,[3] és egy ER-modell használható a szakterület-specifikus ontológiák specifikációjában is.

Bevezetés[szerkesztés]

Az ER-modell általában egy szisztematikus elemzés eredménye, amelynek célja, hogy meghatározza és leírja, mi a fontos a folyamatok szempontjából egy adott üzleti területen. Nem határozza meg az üzleti folyamatokat; csak egy üzleti adatsémát mutat be grafikus formában. Általában grafikus formában, dobozok (egyedek) formájában rajzolják meg, amelyeket vonalak (kapcsolatok) kötnek össze, amelyek az egyedek közötti kapcsolatokat és függőségeket fejezik ki. Egy ER-modell kifejezhető verbális formában is, például: egy épület nulla vagy több lakásra osztható, de egy lakás csak egy épületben lehet.

Az egyedeket nem csak kapcsolatokkal, hanem további tulajdonságokkal (attribútumokkal) is jellemezhetjük, amelyek közé tartoznak az "elsődleges kulcsoknak" nevezett azonosítók. Az attribútumok, valamint az egyedek és kapcsolatok ábrázolására létrehozott diagramokat egyed-attribútum-kapcsolati diagramoknak, nem pedig egyed-kapcsolat modelleknek nevezhetjük.

Az ER-modellt jellemzően adatbázis formájában valósítják meg. Egy egyszerű relációs adatbázis megvalósításában egy táblázat minden sora egy egyed típus egy példányát, a táblázat minden mezője pedig egy attribútum típust képvisel. A relációs adatbázisban az egyedek közötti kapcsolat úgy valósul meg, hogy az egyik egyed elsődleges kulcsát egy másik egyed táblájában mutató vagy "idegen kulcs" formájában tároljuk.

Az ER/adatmodelleket hagyományosan két vagy három absztrakciós szinten építik fel. Megjegyzendő, hogy az alábbi fogalmi-logikai-fizikai hierarchiát más típusú specifikációkban is használják, és eltér a szoftverfejlesztés három séma megközelítésétől.

Fogalmi adatmodell[szerkesztés]

Ez a legmagasabb szintű ER-modell, mivel ez tartalmazza a legkevésbé részletes részleteket, de meghatározza a modellkészletbe foglalandó elemek általános körét. A fogalmi ER-modell általában a szervezet által általánosan használt referenciaadat-törzsadatokat határozza meg. A vállalati szintű koncepcionális ER-modell kidolgozása hasznos a szervezet adatarchitektúrájának dokumentálásához. A fogalmi ER-modell egy vagy több logikai adatmodell alapjául szolgálhat (lásd alább). A fogalmi ER-modell célja ezután a törzsadat-egységek strukturális metaadat-közösségeinek létrehozása a logikai ER-modellek között. A fogalmi adatmodell felhasználható az ER-modellek közötti közösségi kapcsolatok kialakítására az adatmodell-integráció alapjaként.

Logikai adatmodell[szerkesztés]

A logikai ER-modellhez nincs szükség fogalmi ER-modellre, különösen akkor, ha a logikai ER-modell hatálya csak egy különálló információs rendszer fejlesztésére terjed ki. A logikai ER modell több részletet tartalmaz, mint a fogalmi ER-modell. A törzsadat-egységek mellett már működési és tranzakciós adategységek is meghatározásra kerülnek. Az egyes adategységek részleteit kidolgozzák, és megállapítják az ezen adategységek közötti kapcsolatokat. A logikai ER-modell azonban attól a konkrét adatbázis-kezelő rendszertől függetlenül kerül kidolgozásra, amelybe implementálható.

Fizikai adatmodell[szerkesztés]

Minden logikai ER-modellből egy vagy több fizikai ER-modell is kialakítható. A fizikai ER-modellt általában úgy fejlesztik ki, hogy adatbázisként lehessen létrehozni. Ezért minden egyes fizikai ER-modellnek elegendő részletességet kell tartalmaznia egy adatbázis létrehozásához, és minden egyes fizikai ER-modell technológiafüggő, mivel minden adatbázis-kezelő rendszer némileg különbözik. A fizikai modell általában egy adatbázis-kezelő rendszer strukturális metaadataiban van leképezve relációs adatbázis-objektumokként, például adatbázis-táblák, adatbázis-indexek, egyedi kulcsindexek, és adatbázis-kényszerek, idegenkulcs-kényszer vagy közösségi kényszer formájában. Az ER-modellt általában a relációs adatbázis-objektumok módosításainak megtervezésére és az adatbázis strukturális metaadatainak karbantartására is használják.

Az információs rendszer tervezésének első szakaszában a követelményelemzés során ezeket a modelleket használják fel az információs igények vagy az adatbázisban tárolandó információk típusának leírására. Az adatmodellezési technika használható egy adott területre vonatkozó bármely ontológia (azaz a használt kifejezések és kapcsolataik áttekintése és osztályozása) leírására. Egy adatbázisra épülő információs rendszer tervezése esetén a fogalmi adatmodellt egy későbbi szakaszban (általában logikai tervezésnek nevezik) egy logikai adatmodellre, például a relációs modellre képezik le; ez pedig a fizikai tervezés során egy fizikai modellre kerül leképezésre. Megjegyzendő, hogy néha mindkét fázisra "fizikai tervezésként" hivatkoznak.

Egyed-kapcsolat modell[szerkesztés]

Két kapcsolódó egyed
Egyed egy tulajdonsággal
Kapcsolat egy tulajdonsággal
Elsődleges kulcs

Az egyed olyan önálló létezésre képes dologként definiálható, amely egyedileg azonosítható. Az egyed egy tartomány komplexitásától való elvonatkoztatás. Amikor egyedről beszélünk, általában a valós világ valamely aspektusáról beszélünk, amely megkülönböztethető a valós világ más aspektusaitól.

Az entitás olyan dolog, amely fizikailag vagy logikailag létezik. Egy entitás lehet egy fizikai tárgy, például egy ház vagy egy autó (ezek fizikailag léteznek), egy esemény, például egy ház eladása vagy egy autószerviz, vagy egy fogalom, például egy ügyféltranzakció vagy megrendelés (ezek logikailag léteznek - mint fogalom). Bár a leggyakrabban az entitás kifejezést használják, Chent követve valóban különbséget kell tennünk az entitás és az entitástípus között. Az entitástípus egy kategória. Az entitás szigorúan véve egy adott entitástípus egy példánya. Egy entitástípusnak általában sok példánya van. Mivel az entitástípus kifejezés kissé nehézkes, a legtöbb ember hajlamos az entitás kifejezést ennek a kifejezésnek a szinonimájaként használni.

Az entitásokat főneveknek tekinthetjük. Példák: egy számítógép, egy alkalmazott, egy dal, egy matematikai tétel stb.

A kapcsolat azt mutatja meg, hogy az entitások hogyan kapcsolódnak egymáshoz. A kapcsolatokat igéknek tekinthetjük, amelyek két vagy több főnevet kapcsolnak össze. Példák: saját kapcsolat egy vállalat és egy számítógép között, felügyeli kapcsolat egy alkalmazott és egy osztály között, előadja kapcsolat egy művész és egy dal között, bizonyítja kapcsolat egy matematikus és egy feltevés között stb.

A modell fent leírt nyelvi aspektusát az ERROL deklaratív adatbázis-lekérdezési nyelvben használjuk, amely a természetes nyelvi konstrukciókat utánozza. Az ERROL szemantikája és megvalósítása az átformált relációs algebrán (RRA) alapul, egy olyan relációs algebrán, amely az egyed-kapcsolat modellhez igazodik, és megragadja annak nyelvi aspektusát.

Az egyedek és a kapcsolatok egyaránt rendelkezhetnek attribútumokkal. Például: egy alkalmazott egyednek lehet egy társadalombiztosítási szám (SSN) attribútuma, míg egy bizonyított kapcsolatnak lehet egy dátum attribútuma.

A gyenge egyedek kivételével minden egyednek rendelkeznie kell egy minimális, egyedileg azonosító attribútumkészlettel, amely egyedi/első kulcsként használható.

Az egyed-kapcsolati diagramok nem mutatják az egyke egyedet vagy a kapcsolatok egyetlen példányait. Inkább egyedhalmazokat (azonos típusú egyedek) és kapcsolathalmazokat (azonos típusú kapcsolatok) mutatnak. Példák: egy adott dal egy egyed; az adatbázisban lévő összes dal gyűjteménye egy egyedhalmaz; egy gyermek és az ebédje közötti evéskapcsolat egyetlen kapcsolat; az adatbázisban lévő összes ilyen gyermek-ebéd kapcsolat halmaza egy kapcsolathalmaz. Más szóval, egy kapcsolathalmaz a matematikában egy relációnak felel meg, míg egy kapcsolat a reláció egy tagjának.

A kapcsolatkészletekre vonatkozó bizonyos kardinalitási korlátozások is megadhatók.

Természetes nyelv leképezése[szerkesztés]

Chen a következő "ökölszabályokat" javasolta a természetes nyelvi leírások ER-diagramokba való leképezésére: "English, Chinese and ER diagrams" (Angol, kínai és ER-diagramok), Peter Chen.

Angol nyelvtani szerkezet ER struktúra
Köznév Egyed típusa
Tulajdonnév Egyed
Tárgyas ige Kapcsolat típusa
Intranzitív ige Attribútum típusa
Melléknév Az egyed attribútuma
Határozószó Attribútum a kapcsolathoz

A fizikai nézet megmutatja, hogy az adatokat ténylegesen hogyan tárolják.

Kapcsolatok, szerepek és kardinalitások[szerkesztés]

Chen eredeti tanulmányában egy példát ad egy kapcsolatra és annak szerepeire. Leír egy kapcsolatot "házassággal" és annak két szerepével "férj" és "feleséggel".

A házasságban a férj szerepét az egyik személy, a feleség szerepét pedig egy másik személy játssza. Ezek a szavak főnevek. Ez nem meglepő; a dolgok megnevezéséhez főnévre van szükség.

Chen terminológiáját korábbi elképzelésekre is alkalmazták. Egyes diagramok vonalai, nyilai és varjútalpa inkább a korábbi Bachman-diagramoknak, mint Chen kapcsolati ábráinak köszönhetők.

Chen modelljének egy másik gyakori kiterjesztése, hogy a kapcsolatokat és szerepeket igeként vagy kifejezésként "nevezzük meg".

Szerepek elnevezése[szerkesztés]

Az is elterjedt, hogy a szerepeket olyan kifejezésekkel nevezzük meg, mint például az is the owner of és az is owned by. A helyes főnevek ebben az esetben a tulajdonos és a birtoklás. Így a személy a tulajdonos és az autó a birtoklás szerepét játssza, ahelyett, hogy a személy játssza a szerepét, a tulajdonosa stb.

A főnevek használata közvetlen előnyökkel jár, amikor szemantikus modellekből fizikai megvalósításokat generálunk. Ha egy személynek két kapcsolata van az autóval, akkor olyan neveket lehet generálni, mint a owner_person és driver_person, amelyek azonnal értelmesek.

Kardinalitások[szerkesztés]

Az eredeti specifikáció módosítása előnyös lehet. Chen leírta a look-across kardinalitásokat. Mellékesen megjegyezzük, hogy az Oracle Designerben használt Barker-Ellis jelölés a minimális kardinalitás (az opcionalitással analóg) és a szerep esetében azonos oldali, a maximális kardinalitás esetében pedig keresztbe nézős jelölést használ (a varjas láb).

A Merise,[4] Elmasri & Navathe[5] és mások[6] esetében a szerepek esetében az azonos oldali, valamint a minimális és maximális kardinálisok előnyben részesülnek. Újabb kutatók (Feinerer,[7] Dullea et al.[8]) kimutatták, hogy ez koherensebb, ha 2-nél nagyobb rendű n-edik kapcsolatokra alkalmazzák.

A Dullea et al. írásában ez olvasható: "Az UML-ben használt 'look across' jelölés nem reprezentálja hatékonyan az olyan kapcsolatokra vonatkozó részvételi korlátozások szemantikáját, ahol a szint magasabb, mint a bináris.".

A Feinererben ez áll: "Problémák merülnek fel, ha az UML-asszociációknál használt look-across szemantika alapján dolgozunk. Hartmann[9] megvizsgálja ezt a helyzetet, és megmutatja, hogyan és miért vallanak kudarcot a különböző transzformációk." (Bár az említett "redukció" hamis, mivel a 3.4. és a 3.5. diagram valójában ugyanaz), valamint "Ahogy a következő oldalakon látni fogjuk, a look-across értelmezés számos olyan nehézséget vezet be, amelyek megakadályozzák az egyszerű mechanizmusok kiterjesztését a bináris asszociációkról az n-edik asszociációkra".

Különböző módszerek ugyanannak az egy a sokhoz kapcsolatnak az ábrázolására. Az ábra minden esetben egy személy és egy születési hely közötti kapcsolatot mutatja: minden személynek egy és csak egy helyen kellett születnie, de minden egyes helyen nulla vagy több ember is születhetett.
Két kapcsolódó entitás, a Varjúláb jelöléssel ábrázolva. Ebben a példában egy opcionális kapcsolat látható az Előadó és a Dal között; a Dal egyehez legközelebbi szimbólumok a "nulla, egy vagy sok" jelképet jelentik, míg egy dalnak "egy és csak egy" Előadója van. Az előbbi tehát úgy olvasható, hogy egy Előadó "nulla, egy vagy sok" dal(oka)t ad(hat) elő.

Chen jelölése az egyed-kapcsolat modellezéshez téglalapokat használ az entitáshalmazok ábrázolására, és rombuszokat az első osztályú objektumokhoz megfelelő kapcsolatok ábrázolására: ezek saját attribútumokkal és kapcsolatokkal rendelkezhetnek. Ha egy entitáshalmaz részt vesz egy kapcsolathalmazban, akkor egy vonallal vannak összekötve.

Az attribútumok ovális alakban rajzolódnak ki, és egy vonallal pontosan egy egyedhez vagy kapcsolatkészlethez kapcsolódnak.

A kardinalitási korlátozások a következőképpen fejeződnek ki:

  • a kettős vonal részvételi megszorítást, teljességet vagy szurjektivitást jelez: az entitáshalmazban lévő összes egyednek részt kell vennie a kapcsolathalmaz legalább egy kapcsolatában;
  • az egyedhalmazból a kapcsolathalmazba mutató nyíl egy kulcskorlátozást, azaz injektivitást jelez: az egyedhalmaz minden egyes egyede legfeljebb egy kapcsolatban vehet részt a kapcsolathalmazban;
  • a vastag vonal mindkettőt jelzi, azaz a bijektivitást: az egyedhalmaz minden egyes egyed pontosan egy kapcsolatban vesz részt.
  • egy attribútum aláhúzott neve azt jelzi, hogy az attribútum kulcs: két különböző, ezzel az attribútummal rendelkező egyednek vagy kapcsolatnak mindig különböző értékei vannak erre az attribútumra.

Az attribútumokat gyakran elhagyják, mivel azok túlzsúfolhatják a diagramot; más diagramtechnikák gyakran felsorolják az egyedek attribútumait az egyedhalmazok számára rajzolt téglalapokon belül.

Kapcsolódó diagramalkotási egyezményes technikák:

  • Bachman jelölés
  • Barker jelölése
  • EXPRESS
  • IDEF1X
  • § Crow's foot notation ( Martin jelölés)
  • (min, max) - Jean-Raymond Abrial jelölése 1974-ben
  • UML osztálydiagramok
  • Merise
  • Objektum-szerep modellezés

Crow's foot notation[szerkesztés]

A Crow's foot notation (varjúláb jelölés), amelynek kezdete Gordon Everest (1976) cikkére vezethető vissza, a Barker-féle jelölésben, a strukturált rendszerelemzési és tervezési módszerben (SSADM) és az informatikai mérnöki tervezésben használatos. A varjúlábdiagramok az egyedeket dobozokként, a kapcsolatokat pedig a dobozok közötti vonalakként ábrázolják. E vonalak végein különböző alakzatok jelzik a kapcsolat relatív kardinalitását.

A CACI tanácsadói gyakorlatában a varjú lábjegyzetelést használták. A CACI számos tanácsadója (köztük Richard Barker) később az Oracle UK-hez került, ahol ők fejlesztették ki az Oracle CASE-eszközeinek korai verzióit, és így szélesebb körben is megismertették a jelölést.

Ezzel a jelöléssel a kapcsolatoknak nem lehetnek attribútumai. Ahol szükséges, a kapcsolatokat saját jogú egyedekké léptetik elő: például, ha meg kell ragadni, hogy egy előadó hol és mikor adott elő egy dalt, egy új "előadás" egyedet vezetnek be (az időt és a helyet tükröző attribútumokkal), és az előadó és egy dal kapcsolata közvetett kapcsolattá válik az előadáson keresztül (előadó-előadás-előadás, előadás-előadás-előadás-dal).

Három szimbólumot használunk a kardinalitás ábrázolására:

  • a gyűrű "nullát" jelent
  • a kötőjel az "egyet" jelenti
  • a szarkalábak „sok” vagy „végtelen”-t jelentenek

Ezeket a szimbólumokat párban használjuk a négyféle kardinalitástípus ábrázolására, amelyekkel egy egyed egy kapcsolaton belül rendelkezhet. A jelölés belső komponense a minimumot, a külső komponens pedig a maximumot jelöli.

  • gyűrű és kötőjelminimum nulla, maximum egy (opcionális)
  • kötőjel és gondolatjelminimum egy, maximum egy (kötelező)
  • gyűrű és szarkalábakminimum nulla, maximum sok (opcionális)
  • kötőjel és szarkalábakminimum egy, maximum sok (kötelező)

Modell használhatósági problémái[szerkesztés]

Egy modellezett adatbázis használata során a felhasználók két jól ismert problémával találkozhatnak, amikor a visszaküldött eredmények mást jelentenek, mint amit a lekérdezés szerzője feltételezett.

Az első a "rajongói csapda". Ez egy olyan (master) táblánál fordul elő, amely több táblához kapcsolódik egy egy a sokhoz kapcsolat keretében. A probléma a nevét onnan kapta, ahogy a modell kinéz, amikor egy egyed-kapcsolati diagramra rajzoljuk: a kapcsolódó táblák "legyezőszerűen kirajzolódnak" a fő táblából. Az ilyen típusú modell hasonlít a csillagsémához, az adattárházakban használt modelltípushoz. Ha a törzstáblán keresztül próbálunk összegeket számítani az aggregátumokon a szokásos SQL segítségével, váratlan (és hibás) eredmények adódhatnak. A megoldás vagy a modell vagy az SQL módosítása. Ez a probléma leginkább a döntéstámogató rendszerek adatbázisaiban fordul elő, és az ilyen rendszereket lekérdező szoftverek néha speciális módszereket tartalmaznak a probléma kezelésére.

A második kérdés a "szakadékcsapda". A szakadékcsapda akkor fordul elő, amikor a modell az egyedtípusok közötti kapcsolat meglétét sugallja, de az útvonal nem létezik bizonyos egyedek előfordulása között. Például egy épületnek van egy vagy több szobája, amelyekben nulla vagy több számítógép található. Az ember elvárná, hogy lekérdezhesse a modellt, hogy lássa az épületben lévő összes számítógépet. Azonban azok a számítógépek, amelyek jelenleg nem tartoznak egy helyiséghez (mert javítás alatt állnak vagy máshol vannak), nem jelennek meg a listán. Az épület és a számítógépek között egy másik kapcsolatra van szükség az épületben lévő összes számítógép megragadásához. Ez utóbbi modellezési probléma abból adódik, hogy a modellben nem sikerült a valós világban létező összes kapcsolatot megragadni. A részleteket lásd az Egyed-kapcsolat modellezés 2. fejezetben.

Egyed-kapcsolatok és szemantikus modellezés[szerkesztés]

Szemantikai modell[szerkesztés]

A szemantikus modell a fogalmak modellje, néha "platformfüggetlen modellnek" is nevezik. Ez egy intencionális modell. Legalábbis Carnap óta jól ismert, hogy:[10]

"...egy fogalom teljes jelentését két aspektus alkotja, az intenciója és a kiterjesztése. Az első rész magában foglalja egy fogalomnak a fogalmak világának egészébe való beágyazottságát, azaz a más fogalmakhoz való viszonyok összességét. A második rész a fogalom referenciális jelentését határozza meg, azaz a fogalom megfelelőjét a valóságos vagy egy lehetséges világban".

Kiterjesztési modell[szerkesztés]

Az kiterjesztési modell egy adott módszertan vagy technológia elemeihez illeszkedik, tehát "platformspecifikus modell". Az UML specifikáció kifejezetten kimondja, hogy az osztálymodellekben szereplő asszociációk kiterjesztések, és ez valójában magától értetődő, ha figyelembe vesszük a specifikáció által biztosított további "díszítések" széles skáláját, amelyek meghaladják a korábbi "szemantikus modellezési nyelvek" által biztosítottakat. "UML as a Data Modeling Notation, Part 2" (Az UML mint adatmodellezési jelölés, 2. rész)

Egyed-kapcsolat eredete[szerkesztés]

Peter Chen, az ER-modellezés atyja azt mondta korszakalkotó tanulmányában:

"Az egyed-kapcsolat modell azt a természetesebb nézetet követi, hogy a valós világ egyedekből és kapcsolatokból áll. Magába foglal néhány fontos szemantikai információt a valós világról."[11]

Eredeti, 1976-os cikkében Chen kifejezetten szembeállítja az egyed-relációs diagramokat a rekordmodellezési technikákkal:

"Az adatszerkezeti diagram a rekordok szerveződésének ábrázolása, és nem az egyedek és kapcsolatok pontos ábrázolása."

Több más szerző is támogatja Chen programját:[12][13][14][15][16]

Filozófiai összehangolódás[szerkesztés]

Chen összhangban van az ókori görög filozófusok idejéből származó filozófiai hagyományokkal: Platón és Arisztotelész.[17] Maga Platón a tudást a változatlan Formák (nevezetesen a dolgok sokféle típusának és tulajdonságának archetípusai vagy absztrakt ábrázolásai) és azok egymáshoz való viszonyának felfogásával hozza összefüggésbe.

Korlátok[szerkesztés]

  • Az ER-modell elsősorban fogalmi jellegű, egy ontológia, amely predikátumokat fejez ki egy tudástartományban.
  • Az ER-modelleket szívesen használják relációs adatbázis-struktúrák ábrázolására (Codd és Date után), de nem olyan gyakran más típusú adatstruktúrák (adattárházak, dokumentumtárolók stb.) ábrázolására.
  • Egyes ER-modell jelölések tartalmaznak szimbólumokat a szuper-alatt-típusú kapcsolatok és a kapcsolatok közötti kölcsönös kizárás ábrázolására; mások nem.
  • Az ER-modell nem mutatja meg egy egyed élettörténetét (hogyan változnak az attribútumai és/vagy kapcsolatai az események hatására az idő múlásával). Sok rendszer esetében az ilyen állapotváltozások nem triviálisak és elég fontosak ahhoz, hogy indokolják az explicit specifikációt.
  • Néhányan az ER-modellezést kiterjesztették az állapotváltozások ábrázolására szolgáló konstrukciókkal, amely megközelítést az eredeti szerző is támogatott;[18] erre példa az Anchor Modeling.
  • Mások az állapotváltozásokat külön modellezik, állapotátmenet-diagramok vagy más folyamatmodellezési technika segítségével.
  • A rendszerek egyéb aspektusainak modellezésére számos más típusú diagramot rajzolnak, beleértve az UML által kínált 14 diagramfajtát.[19]
  • Ma még ott is, ahol az ER-modellezés hasznos lehet, ritkán alkalmazzák, mert sokan használnak olyan eszközöket, amelyek hasonló típusú modelleket támogatnak, nevezetesen az OO-programozáshoz használt osztálydiagramokat és a relációs adatbázis-kezelő rendszerek adatmodelljeit. Ezen eszközök némelyike képes kódot generálni a diagramokból, és a diagramok kódból történő visszafejtésére.
  • Egy felmérés során Brodie és Liu[20] tíz Fortune 100 vállalatból álló mintán belül nem találtak egyetlen példát sem az egyed-kapcsolat modellezésre. Badia és Lemire[21] a használat hiányát az útmutatás hiányára, de az előnyök hiányára is okolja, például az adatintegráció támogatásának hiányára.
  • A továbbfejlesztett egyed-kapcsolat modell (EER-modellezés) számos olyan fogalmat vezet be, amelyek nem szerepelnek az ER-modellezésben, de szorosan kapcsolódnak az objektumorientált tervezéshez, mint például az is-a kapcsolatok.[22]
  • Az időbeli adatbázisok modellezésére számos ER-kiterjesztést vizsgáltak meg. Hasonlóképpen, az ER-modellt alkalmatlannak találták a többdimenziós adatbázisok (OLAP-alkalmazásokban használt) modellezésére; ezen a területen még nem alakult ki domináns koncepcionális modell, bár általában az OLAP-kocka (a szakterületen belül adatkocka) fogalma körül forognak.

Hivatkozások[szerkesztés]

  1. Chen, Peter (1976. március 1.). „The Entity-Relationship Model - Toward a Unified View of Data”. ACM Transactions on Database Systems 1 (1), 9–36. o. DOI:10.1145/320434.320440.  
  2. A.P.G. Brown, "Modelling a Real-World System and Designing a Schema to Represent It", in Douque and Nijssen (eds.), Data Base Description, North-Holland, 1975, ISBN 0-7204-2833-5.
  3. Lesson 5: Supertypes and Subtypes. docs.microsoft.com
  4. Hubert Tardieu, Arnold Rochfeld and René Colletti La methode MERISE: Principes et outils (Paperback - 1983)
  5. Elmasri, Ramez, B. Shamkant, Navathe, Fundamentals of Database Systems, third ed., Addison-Wesley, Menlo Park, CA, USA, 2000.
  6. ER 2004 : 23rd International Conference on Conceptual Modeling, Shanghai, China, November 8-12, 2004 (2004. október 27.). ISBN 9783540237235 
  7. A Formal Treatment of UML Class Diagrams as an Efficient Method for Configuration Management 2007
  8. James Dullea, Il-Yeol Song, Ioanna Lamprou - An analysis of structural validity in entity-relationship modeling 2002
  9. Hartmann, Sven. "Reasoning about participation constraints and Chen's constraints Archiválva 2013. május 10-i dátummal a Wayback Machine-ben.". Proceedings of the 14th Australasian database conference-Volume 17. Australian Computer Society, Inc., 2003.
  10. The Role of Intensional and Extensional Interpretation in Semantic Representations
  11. Chen, Peter (1976. március 1.). „The Entity-Relationship Model - Toward a Unified View of Data”. ACM Transactions on Database Systems 1 (1), 9–36. o. DOI:10.1145/320434.320440.  
  12. Kent in "Data and Reality" :
  13. Abrial in "Data Semantics" : "... the so called "logical" definition and manipulation of data are still influenced (sometimes unconsciously) by the "physical" storage and retrieval mechanisms currently available on computer systems."
  14. Stamper: "They pretend to describe entity types, but the vocabulary is from data processing: fields, data items, values. Naming rules don't reflect the conventions we use for naming people and things; they reflect instead techniques for locating records in files."
  15. In Jackson's words: "The developer begins by creating a model of the reality with which the system is concerned, the reality that furnishes its [the system's] subject matter ..."
  16. Elmasri, Navathe: "The ER model concepts are designed to be closer to the user’s perception of data and are not meant to describe the way in which data will be stored in the computer."
  17. Paolo Rocchi, Janus-Faced Probability, Springer, 2014, p. 62.
  18. P. Chen. Suggested research directions for a new frontier: Active conceptual modeling. ER 2006, volume 4215 of Lecture Notes in Computer Science, pages 1–4. Springer Berlin / Heidelberg, 2006.
  19. P. Chen. Suggested research directions for a new frontier: Active conceptual modeling. ER 2006, volume 4215 of Lecture Notes in Computer Science, pages 1–4. Springer Berlin / Heidelberg, 2006.
  20. The power and limits of relational technology in the age of information ecosystems Archiválva 2016. szeptember 17-i dátummal a Wayback Machine-ben.. On The Move Federated Conferences, 2010.
  21. A. Badia and D. Lemire. A call to arms: revisiting database design. Citeseerx,
  22. (1999. augusztus 3.) „Temporal Entity-Relationship models—a survey”. IEEE Transactions on Knowledge and Data Engineering 11 (3), 464–497. o. DOI:10.1109/69.774104.  

Fordítás[szerkesztés]

Ez a szócikk részben vagy egészben az Entity–relationship model című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.

Kapcsolódó szócikkek[szerkesztés]