Steve Data Modeling: versionhallinnan strategiat haltuun
Johdanto:
Tässä blogissa tutustumme kahteen eri tapaan hallita tietueiden versioita tietomallinnuksessa ja tarjoamme näkemyksiä ja strategioita tietueiden ja niiden alitietueiden useiden versioiden tehokkaaseen hallintaan.
Nämä strategiat ovat tärkeitä suunnittelijoille, jotka työskentelevät objektimallien parissa, joissa versionhallinta on ratkaisevaa.
Tietueiden versioinnin tapojen ymmärtäminen
Tietueiden versiointiin on kaksi päätapaa:
- Rinnakkaiset tietueet
- Aliversiot
Tarkastellaan kumpaakin tapaa tarkemmin ja katsotaan, miten ne toteutetaan ja mitkä ovat niiden edut ja haitat.
Rinnakkaiset tietueet
Rinnakkaisten tietueiden tavassa jokainen tietueen versio luodaan erilliseksi, tasavertaiseksi tietueeksi ylätason objektin alle. Menetelmä on suoraviivainen, ja esimerkki siitä on tapa, jolla Salesforce toteuttaa tarjoukset myyntimahdollisuuksien alla.

Toteutus:
Jokainen versio on erillinen tietue ylätason objektin alla.
Voit merkitä yhden tietueista ensisijaiseksi, mutta kaikki versiot näkyvät luettelonäkymissä, liittyvissä luetteloissa ja raporteissa.
Edut:
- Yksinkertainen ja suoraviivainen toteuttaa.
Haitat:
- Kaikki versiot näkyvät, minkä vuoksi niitä on vaikea erottaa toisistaan.
- Eri versioiden välillä ei ole selvää yhteyttä tai kirjausketjua.
Ilman kunnollista valvontaa ensisijaisia tai keskeneräisiä tietueita voi olla useita.
Aliversiot
Aliversioiden tavassa luodaan kaksi objektitasoa: ylätason pääobjekti ja aliobjekti jokaista versiota varten. Tämä mahdollistaa siistin versioinnin ja muutoslokin.

Toteutus:
- Ylätason objekti edustaa konfiguraatiota, ja aliobjektit edustavat kutakin versiota.
- Jokainen aliversio numeroidaan automaattisesti, ja sillä on tila (esim. arkistoitu, aktiivinen, odottava).
- Aktiivinen versio on lukittu ja käytössä tuotannossa, kun taas luonnosversiota voi muokata.
- Kun luonnos aktivoidaan, siitä tulee aktiivinen, ja edellinen aktiivinen versio arkistoidaan.
Edut:
- Antaa selkeän kirjausketjun ja historiallisen dokumentaation.
- Varmistaa, että vain yksi versio on aktiivinen kerrallaan.
- Arkistoidut tietueet toimivat muuttumattomana historiana.
Haitat:
- Voi tuntua joistakin käyttäjistä monimutkaiselta, mutta on välttämätön tärkeissä prosesseissa, kuten työnkuluissa (flows).
Esimerkki Salesforcen toteutuksesta

Salesforce käyttää samankaltaista tapaa työnkuluissa. Salesforcessa on ylätason työnkulkuobjekti ja sen alla työnkulun versiot. Jokainen versio numeroidaan automaattisesti, mikä antaa yksityiskohtaisen historian jokaisesta työnkulusta, sen luonnista ja aktivointipäivistä.
Toteutus varmistaa, että vain yksi työnkulku on aktiivinen kerrallaan, mikä antaa luotettavan ja tehokkaan versionhallinnan.
Osa 5: lopuksi
Oikean tietueiden versiointitavan ymmärtäminen ja valinta on tietomallinnuksessa ratkaisevaa. Rinnakkaiset tietueet ovat yksinkertaisia, mutta aliversiot tarjoavat enemmän hallintaa ja tehokkaan kirjausketjun. Tutkimalla Salesforcen toteutusta ja pohtimalla omia tietomallinnuksen haasteitasi voit valita tarpeisiisi parhaiten sopivan tavan.
Pysy kuulolla!
Lisää näkemyksiä ja vinkkejä löydät täältä www.SteveTechArc.com-sivustolta ja YouTube-kanavalta @SteveTechArc (opens in a new tab). Tilaa kanava ja hio tietomallinnustaitojasi kanssamme!
Autamme muuttamaan maailmaa jakamalla hienoja ajatuksia muille arkkitehdeille ja kaikille, jotka ovat matkalla arkkitehdiksi!
STA 2.1