Domov Razvoj Modeliranje podatkov v agilnem okolju

Modeliranje podatkov v agilnem okolju

Anonim

Avtor osebja Techopedia, 16. november 2016

Odvzem: Voditelj Eric Kavanagh razpravlja o pomenu modeliranja podatkov v okretnem razvoju z Robinom Bloorjem, Dezom Blanchfieldom in IDER-ovim Ronom Huizengo.

Trenutno niste prijavljeni. Če si želite ogledati video, se prijavite ali prijavite.

Eric Kavanagh: V redu, gospe in gospodje. Še enkrat dobrodošli. V sredo je ob 4:00 EST. To pomeni, da je čas za Hot Technologies. Da, resnično. Moje ime je Eric Kavanagh, jaz bom vaš gostitelj.

Za današnjo temo je to staro, a dobro. Vsak dan je vse boljši, ker oblikuje naš svet upravljanja podatkov, "modeliranje podatkov v agilnem okolju." Na tvojem strani je resnično predstavljen diapozitiv na Twitterju @eric_kavanagh. Res bi ga morali postaviti na ta diapozitiv. Moral bom na to.

Tako je leto vroče. Modeliranje podatkov obstaja že od nekdaj. Resnično smo bili v središču in duši podjetja za upravljanje informacij, oblikovali podatkovne modele, poskušali razumeti poslovne modele in jih uskladiti s svojimi podatkovnimi modeli. To resnično poskušaš narediti, kajne?

Podatkovni model predstavlja poslovanje na temeljni način, kako torej vsi ti novi viri podatkov spreminjajo igro? Zvedeli bomo o tem. Ugotovili bomo, kako lahko na spreten način ostanete na vrhu stvari. In seveda, to je beseda leta.

Robin Bloor je z nami, naš glavni analitik, Dez Blanchfield, ki prihaja iz Sydneya v Avstraliji in Ron Huizenga, starejši vodja izdelkov iz IDERA - dolgoletni moj prijatelj, odličen govornik v tem prostoru, pozna svoje stvari, zato ne bodite sramežljivi, vprašajte mu težka vprašanja, ljudje, težka. S tem bom Robina postal voditelj in ga odnesel.

Dr. Robin Bloor: V redu. Hvala za to, Eric. Glede manekenstva moram reči, da mislim, da sem bil v svetu IT, še preden je obstajal, v smislu, da se v zavarovalnici spomnim, da sem delal, da smo prišli fant in nam dal vse vrste delavnice o modeliranju podatkov. Torej gledamo približno 30 let, ali je 30 let? Mogoče celo dlje od tega, morda pred 35 leti. Dolgo in dolgo modeliranje je bilo dejansko del industrije in seveda nima nič skupnega z dame na modnih pistah.

Želel sem povedati, kajti to, kar običajno počnemo, se jaz in Dez pogovarjata o različnih stvareh in samo mislil sem, da bom splošen pregled dal modeliranju, vendar je to realnost, kar zdaj postaja očitno.

Resničnost velikih podatkov imamo, vemo, imamo več podatkov, več virov podatkov, imamo tokove podatkov, ki so v zadnjih treh ali štirih letih vstopili v enačbo in začeli dobivati ​​večji del tega, in večja je potreba po razumevanju podatkov in povečanju hitrosti sprememb, ki se dodaja več podatkov in se uporablja tudi več podatkovnih struktur.

To je težak svet. Tukaj je slika, ki je dejansko nekaj, kar smo narisali pred tremi leti, toda v bistvu, ko enkrat vključite pretakanje v mešanico in dobite to idejo o rafineriji podatkov, vozlišču podatkov, podatkovni povezavi ali čemur koli, vidite, da obstajajo podatki, ki resnično v mirovanju, v smislu, da se ne giblje veliko. In tu so podatki, tokovi in ​​dobili ste vso transakcijsko aplikacijo, danes pa imate dogodke, tokove podatkov o dogodkih, ki se dogajajo v aplikacijah in morda bodo morali, in dandanes z lambda arhitekturami, o katerih vsi govorijo, resnično vpliva na samo celotno polje podatkov.

In dandanes razmišljamo o tem, da obstaja podatkovna plast. Podatkovna plast obstaja na nekakšen način, v smislu, da je dober del le-te lahko v oblaku in se lahko širi po podatkovnih centrih, lahko tudi na delovnih postajah. Podatkovna plast je do neke mere povsod in v tem smislu povsod obstajajo procesi, ki poskušajo na tak ali drugačen način obdelati podatke in premikati podatke o njih. A tudi vedeti, kaj je, ko ga premikaš, je velika stvar.

Če gledamo modeliranje podatkov v najbolj splošnem pomenu, imate na dnu tovrstne zbirke datoteke in baze podatkov. Imate podatkovne elemente, ki imajo ključe, definicije elementov, vzdevke, sinonime, posebne fizične formate in potem imamo to plast metapodatkov.

Zanimivost metapodatkov je, da metapodatki v celoti dobijo pomen. Če dejansko nimate metapodatkov, potem lahko v najboljšem primeru uganite pomen podatkov, vendar boste imeli ogromno težav. Metapodatki morajo biti tam, toda pomen ima strukturo. Nočem se spuščati v filozofijo pomena, toda tudi v načinu, kako ravnamo s podatki, je v človeški misli in človeškem jeziku veliko prefinjenosti, ki se v podatkih ne izraža zlahka. Toda tudi glede na podatke, ki jih dejansko obdelujemo na svetu, metapodatki imajo pomen in strukturo metapodatkov - en podatek v odnosu do drugega in kaj to pomeni, če so sestavljeni in kaj to pomeni, ko ponovno povezan z drugimi podatki, zahteva, da ga modeliramo. Ni dovolj dobro samo zabeležiti metapodatkovne oznake na stvari, dejansko morate zapisati pomen na strukture in razmerje med strukturami.

Nato imamo na zgornjem sloju poslovne definicije, kar je običajno plast, ki poskuša prenašati pomen med metapodatki, kar je oblika opredelitve podatkov, ki ustreza načinu organizacije podatkov v računalniku in človeškem pomenu. Torej imate poslovne izraze, definicije, razmerja, koncepte na ravni entitete, ki obstajajo v tem sloju. In če bomo imeli neskladnost med temi sloji, potem moramo imeti modeliranje podatkov. V resnici ni izbirna. Bolj kot lahko to dejansko storite v smislu avtomatizacije, tem bolje. A ker je to povezano s pomenom, je res težko nadomestiti. Dovolj enostavno je, da metapodatke ujamete v zapis in ga lahko dobite iz niza pomenov, vendar vam ne pove strukture struktur ali tega, kaj zapisi pomenijo ali konteksta zapisa.

Torej, po mojem mnenju gre za modeliranje podatkov. Poudariti: bolj zapleteno je vesolje podatkov, bolj ga morate modelirati. Z drugimi besedami, malo je podobno, da v svet dodajamo ne le več primerkov stvari, ki bi ustrezali zapisom podatkov, ampak dejansko dodamo več pomena svetu, tako da zajemamo podatke o vedno več stvareh. Vse bolj kompleksen občutek je, da ga moramo razumeti.

Teoretično obstaja vesolje podatkov in nanj potrebujemo vpogled. V praksi so dejanski metapodatki del vesolja podatkov. Torej, ni preprosta situacija. Začetno modeliranje je od zgoraj navzdol in od spodaj navzgor. Graditi morate v obe smeri in razlog za to je, da imajo podatki pomen za računalnik in postopek, ki ga morajo obdelovati, vendar ima smisel sam po sebi. Torej, potrebujete pomen od spodaj navzgor, ki izpolnjuje programsko opremo, ki potrebuje dostop do podatkov, in potrebujete pomen od zgoraj navzdol, da ga lahko ljudje razumejo. Gradnja metapodatkovnih modelov ni in nikoli ne more biti projekt; gre za stalno dejavnost - mora biti nenehna dejavnost v vsakem okolju, ki obstaja. Na srečo obstaja veliko okolij, kjer to pravzaprav ni tako in stvari temu uidejo v poštev.

Ko gremo naprej, se modeliranje z razvojem tehnologije povečuje s pomembnostjo. To je moje mnenje. Če pa pogledate na IoT, lahko mobilni razumemo bolj kot nekoč, čeprav je uvedel nove dimenzije: dimenzijo lokacije z mobilnim telefonom. Ko pridete do IoT, si ogledamo izredne težave s podatki, ki jih v resnici še nikoli nismo imeli in moramo tako ali drugače pravilno razumeti, kaj imamo, natanko kako jih lahko strnemo, kaj lahko storimo v smislu pridobivanja pomena od združevanja in seveda, kaj lahko storimo z njim, ko ga obdelamo.

Mislim, da sem to povedal dovolj. Grem naprej k Dezu Blanchfieldu, ki bo v celoti povedal kaj drugega.

Dez Blanchfield: Hvala. Vedno težko početje, toda to je tema, o kateri smo se dogovorili in o tem na kratko spregovorili v nagovoru prednastavitve, in če bi klicali zgodaj, bi verjetno ujeli cel kup odličnih draguljev. Eden od ukrepov, ki ga ne želim ukrasti grom tega, je pa eden od nas odvzetih iz našega predskupine, ki ga želim deliti, če ga ne bi ujel, le okoli teme potovanje podatkov in presenetilo me je, da ga dejansko zapišem, ko razmišljam o poti, ki jo podatki izvajajo v drugačnem kontekstu okoli generacijske življenjske dobe - leto, meseci, tedni, dan, ura, minuta, sekunda - in kontekst okoli podatkov je pozicioniran v tem kontekstu. Ali sem razvijalec kode ali ali sem strokovnjak za podatke in razmišljam o strukturi in obliki ter metapodatkih okrog vsakega od elementov ali o načinu, na katerega sistem in podjetje komunicirata.

Zanimiv je majhen potek, vsekakor pa naj se potopim. Zlasti oblikovanje podatkov je stavek, ki ga uporabljam za govor o vseh podatkih in zlasti o razvoju aplikacij ali baze podatkov. Mislim, da je oblikovanje podatkov izraz, ki v mislih vse zelo dobro zajame. Te dni, ko govorimo o oblikovanju podatkov, govorimo o sodobnem agilnem oblikovanju podatkov, in po mojem mnenju je, da razvijalci in strokovnjaki za podatke niso bili tako dolgo nazaj; bili so v svojih silosih in kosi oblikovanja so šli iz enega silosa v drugega. Vendar sem danes zelo naklonjen stališču, da se ne samo spremeni, ampak se mora spremeniti; to je nekakšna nujnost in to je ta aplikacija - razvijalci in kaj drugega, kar lahko počne v zvezi z razvojem, ki se ukvarja s podatki, oblikovalci, ki naredijo ustrezne oblikovalske elemente shem in polj ter zapisov ter sisteme in infrastrukture lokacij in baz podatkov, modeliranje in celotno upravljanje izziv okoli tega. To je zdaj moštveni šport in od tod tudi moja slika kopice ljudi, ki skačejo iz letala, ki deluje kot ekipa, da igra to vizualno zanimivo podobo ljudi, ki padejo skozi nebo.

Tretjič, kaj se je zgodilo zaradi tega? No, članek iz leta 1986, ki ga je napisalo par gospodov, katerih imena sem si obupno skušal storiti prav, Hirotaka Takeuchi in Ikujiro Nonaka, mislim, da je tako izgovorjeno, sta ustvarila članek z naslovom "Premikanje mečka navzdol." ta ideja o metodologiji zmage v ragbiju, ki izhaja iz te dejavnosti scruma, kjer se vsi znajdejo na enem mestu in dve ekipi v bistvu zakleneta glave v nekaj, kar se imenuje scrum, da bi poskusili dobiti nadzor nad žogo in jo igrati po igrišču pridite do poskusne črte in se z žogo dotaknite tal in dobite točko, imenovano trine, in ponovite ta postopek in za ekipo dobite več točk.

Ta članek je bil objavljen leta 1986 v reviji Harvard Business Review in radovedno je dejansko dobil veliko pozornosti. Dobila je veliko pozornosti, ker je predstavila nove neverjetne koncepte in tukaj je sprednji posnetek zaslona. Tako so ta koncept scruma vzeli iz ragbija v igri in ga uvedli v poslovanje, zlasti v igro oblikovanja in izvajanja projektov, natančneje pri izvajanju projektov.

Kar smo naredili, smo dali novo metodologijo v primerjavi z všečkami PRINCE2 ali PMBOK, ki smo jih prej uporabili v tem, kar smo poimenovali metodologija slapov, veste, naredite to in to in to in to in sledite njim v zaporedju in se povežite vse pike naokoli, kar je odvisno od tega, kaj ste imeli, ali ne delajte drugega dela, dokler ne naredite prvega dela, ker je bilo odvisno od prvega dela. To, kar nam je dala, je nova metodologija, da smo nekoliko bolj prilagodljivi, od koder izvira izraz, o tem, kako bomo stvari izvajali, in še posebej glede oblikovanja in razvoja, pri izvajanju projektov na lokalni ravni.

Nekateri ključni najemniki - samo tako se lotim tega - je okrog ključnih najemnikov škode. Uvedla je idejo o gradnji nestabilnosti, da učinkovito, če pomislite na strah pred kaosom, svet obstaja v stanju kaosa, vendar se je oblikoval planet, kar je zanimivo, zato gradite nestabilnost, sposobnost, da se malo odskočite in še vedno dejansko delajo stvari, samoorganizirajoč se projektne skupine, prekrivanje favoriziranja z zelo odgovornim razvojem, različnimi vrstami učenja in nadzora skozi pot izvajanja projekta, organizacijski prenos učenja. Kako torej vzamemo informacije iz enega dela podjetja in jih prenašamo v druge od ljudi, ki imajo idejo, vendar ne razvijajo kode ali ne razvijajo baz podatkov in infrastrukture, ampak podatke tem ljudem? In še posebej časovno določene rezultate. Z drugimi besedami, naredimo to za določeno časovno obdobje, bodisi na dan kot v 24 urah ali tednu ali nekaj tednov in poglejmo, kaj lahko naredimo, nato pa stopimo korak nazaj in pogledamo.

In če oprostite punco, je to res nova igra pri izvajanju projektov in treh glavnih komponent zanj, kar bo smiselno, ko se bomo tu malo bolj približali - tu je izdelek: vsi ti ljudje imajo idejo in imajo potreba, da se nekaj naredi in zgodba, ki jih obdaja. Razvijalci, ki delujejo po agilnem modelu pridobivanja svojih zgodb in z vsakodnevnimi načrti, uporabljajo metodologijo scruma, da razpravljajo o tem in razumejo, kaj morajo storiti, nato pa pojdite in se vključite v to. Potem smo ljudje slišali za mojstre scruma, ki nadzirajo to celotno zadevo in dovolj dobro razumejo metodologijo, da jo lahko poganjamo. Vsi smo videli te slike, ki sem jih dobil na desni strani sten in belih desk, polnih zapisov Post-It, in so služile kot Kanban stene. Če ne veste, kdo je Kanban, vas povabim k Googlu, kdo je bil gospod Kanban in zakaj je šlo za spremembo načina, kako stvari premikamo z ene strani na drugo v steni dobesedno, ampak v projektu.

Na prvi pogled to poišče tako: vzame seznam stvari, ki jih želi organizacija narediti, vodi jih skozi vrsto stvari, ki jih imenujemo šprinti, ki so razdeljeni na 24-urna obdobja, mesece in dobite to inkrementalno serijo izhodov. To je pomembna sprememba načina izvajanja projektov, dostavljanja do te faze, ker del tega poteka kot ameriška vojska, ki je v veliki meri razvila nekaj, imenovano PMBOK, kot ideja, da tanka ne peljejo v polje dokler ne vstavite metkov v stvar, ker če rezervoar v polju nima nabojev, je neuporaben. Torej, zato je prvi del postavljen naboj v rezervoar, drugi del pa rezervoar na polje. Na žalost pa se je to, kar se je zgodilo z razvijalci v razvojnem svetu, nekako prijelo te agilne metodologije in se z njo sprijaznilo, če oprostiš punco, na sprintu.

Nepomembno je, da se je zgodilo, ko pomislimo na agilno, ponavadi pomislimo na razvijalce, ne pa na baze podatkov in kaj skupnega s svetom baz podatkov. Bil je nesrečen izid, ker je realnost, da okretnost ni omejena na razvijalce. Po mojem mnenju je izraz okreten po mojem mnenju pogosto napačno povezan izključno z razvijalci programske opreme in ne oblikovalci baz podatkov in arhitekti. Neizmerno enaki izzivi, s katerimi se srečujete pri razvoju programske opreme in aplikacij, se spopadajo z vsem, kar zadeva načrtovanje in razvoj ter delovanje in vzdrževanje ter s tem podatkovno infrastrukturo in zlasti baze podatkov. Akterji v tej določeni oddaji podatkov vključujejo vloge arhitektov podatkov, oblikovalcev, skrbnikov, upravljavcev infrastrukture baze podatkov in samih baz podatkov do poslovnih in sistemskih analitikov in arhitektov, ljudi, ki sedijo in razmišljajo o tem, kako sistemi in poslujejo, kako bomo pretakali podatke.

To je tema, ki jo redno objavljam, ker je moja nenehna frustracija, ker sem zelo prepričan, da morajo strokovnjaki za podatke - zdaj ne bi smeli - intimno sodelovati pri vseh sestavnih delih projekta, resnično, zlasti pri razvoju. Če tega ne storimo, si resnično ne dajemo najboljše možnosti za dober izid. Pogosto se moramo o njih vrteti in razmišljati o teh stvareh, ker obstaja scenarij, pridemo do izdelave aplikacije in ugotovimo, da razvijalci niso vedno strokovnjaki za podatke. Delo z bazami podatkov zahteva zelo specializirane spretnosti, zlasti glede podatkov, in gradi izkušnjo. Če čez noč ne postaneš takoj guru baze podatkov ali strokovnjak za poznavanje podatkov; to je pogosto nekaj, kar izvira iz življenjske izkušnje in zagotovo z všečkami doktorja Robina Bloorja iz oddaje Code Today, ki je knjigo precej bogato napisal.

V mnogih primerih - in to je žal, vendar je resničnost - da obstajata dva dela tega kovanca, to je, da imajo razvijalci programske opreme lastno odkritje glede strokovnjakov za baze podatkov in so zgradili veščine, ki jih potrebujete pri modeliranju baz podatkov, saj je razvoj modela samo bistvenega pomena za gurujevo inženirstvo o tem, kako pridejo podatki in kako poteka organizacija potovanja ter kakšen naj bi bil ali naj ne bi bil videti, ali pa nedvomno zaužitje in razumevanje tega, da se običajno dobi v domačih spretnostih, ki so jih določili razvijalci programske opreme. In nekateri pogosti izzivi, s katerimi se srečujemo, samo da bi to postavili v kontekst, vključujejo samo osnovno ustvarjanje in vzdrževanje ter upravljanje samega oblikovanja jedrnih baz, dokumentiranje podatkov in infrastrukture baze podatkov ter nato ponovno uporabo teh podatkovnih sredstev, načrte shem, generacije sheme, upravljanje in vzdrževanje sheme ter njihova uporaba, izmenjava znanj o tem, zakaj je ta shema zasnovana na poseben način, prednosti in slabosti, ki nastanejo s tem, pa sčasoma povzročajo spremembe podatkov, časovno modeliranje in vrste modelov, ki jih uporabljamo za sisteme in podatke, ki jih pretakamo skozi njih. Generacija kode podatkovne baze in gre na integracijo in nato modeliranje podatkov okoli njih in nato hitrejši dostop do nadzora varnosti okoli podatkov, celovitost podatkov je, če podatke premikamo, ko ohranjamo svojo celovitost, ali je na voljo dovolj metapodatkov ali bi morala prodaja videti vse zapise v tabeli ali bi morali videti samo naslov, ime, priimek, ki vam pošilja stvari v objavi? In potem je seveda največji izziv vse to modeliranje platform baz podatkov, ki je že samo po sebi drugačen pogovor.

Zelo sem prepričan, da je ob upoštevanju vsega tega, da bi lahko omogočili kakršno koli to nirvano, nujno, da imajo strokovnjaki za podatke in razvijalci ustrezna orodja in da bodo ta orodja sposobna za projektno usmerjeno izvajanje projektov, načrtovanje, razvoj in tekoče operativno vzdrževanje. Veste, stvari, kot je sodelovanje med projekti med strokovnjaki za podatke in razvijalci programske opreme, enotna točka resnice ali en sam vir resnice za vse stvari v zvezi z dokumentacijo samih baz podatkov, podatki, sheme, od kod prihajajo zapisi, lastniki teh zapisov . Mislim, da je v tem dnevu in starosti to povsem kritično, da bomo dobili to nirvano podatkov o kralju, da morajo biti na voljo prava orodja, ker je zdaj izziv prevelik, da bi to počeli ročno, in če ljudje Če bi se lahko gibali v eni organizaciji in iz nje, je preveč enostavno, da ne bi sledili istemu postopku ali metodologiji, ki bi ga lahko vzpostavila ena oseba, ki bi bil dober in ne bo nujno prenašal teh spretnosti in sposobnosti naprej.

Glede na to bom šel do našega dobrega prijatelja v IDERI in slišal o tem orodju in kako se ukvarja s temi stvarmi.

Ron Huizenga: Hvala lepa in hvala tudi Robinu in Dezu, da sta res dobro postavila oder, in videli boste nekaj prekrivanja v nekaj stvareh, o katerih sem govoril. Vendar so res postavili zelo trdne temelje za nekatere koncepte, o katerih bom govoril z vidika modeliranja podatkov. In veliko tega, kar so povedali, odmeva moje izkušnje, ko sem bil svetovalec, ki je delal na področju modeliranja podatkov in arhitekture podatkov, skupaj z ekipami - tako slap v zgodnjih dneh kot razvijanje v sodobnejše izdelke s projekti, kjer smo uporabljali agilno metodologije za zagotavljanje rešitev.

Torej, o čemer bom danes govoril, temelji na teh izkušnjah, pa tudi na orodju in nekaterih zmogljivostih orodij, ki jih uporabljamo, da nam pomagajo na tej poti. Kar bom na kratko opisal, je, da se ne bom spuščal v podrobnosti; pravkar smo imeli res dober pregled nad tem, kaj je to. Govoril bom o tem, kaj je podatkovni model in kaj nam v resnici pomeni? In kako v naših organizacijah omogočimo koncept agilnega oblikovalca podatkov, kako vključimo modelarje podatkov, kakšno je sodelovanje modelarjev in arhitektov med šprintom, kakšne vrste dejavnosti bi se morali ukvarjati in kakšno ozadje je nekaj pomembnih zmogljivosti orodja za modeliranje, ki jih uporabljamo, da resnično pomagamo olajšati to delo? Potem se bom malo preučil in se malo pogovoril o nekaterih poslovnih vrednotah in prednostih vključevanja podatkovnega oblikovalca ali o načinu, kako bom dejansko povedal zgodbo, težave s tem, da podatkovni oblikovalec ni popolnoma vključen v projekte in pokazal vam bom, da na podlagi izkušenj in grafike napak pred in po sliki dejanskega projekta, s katerim sem sodeloval pred mnogimi leti. Nato bomo povzeli še nekaj točk in poleg tega imeli vprašanja in odgovore.

Na kratko, ER Studio je zelo močan paket, ki vsebuje veliko različnih komponent. Podatkovni arhitekt, kjer modelarji podatkov in arhitekti porabijo večino svojega časa za svoje modeliranje podatkov. Obstajajo tudi druge komponente, o katerih danes sploh ne bomo govorili, na primer poslovni arhitekt, kjer modeliramo procese in programski arhitekt, za nekatere modele UML. Potem je tu še Repozitorij, kjer se prijavimo in delimo modele ter skupinam omogočimo, da sodelujejo pri njih in jih objavijo na strežniku ekipe, tako da več občinstva, ki sodeluje v projektu, dejansko vidi artefakte, ki jih imamo. " ustvarjamo iz podatkovne perspektive kot tudi druge stvari, ki jih počnemo pri sami izvedbi projekta.

Tisto, na kar se bom danes osredotočil, bo nekaj stvari, ki jih bomo zasledili iz Data Architect, in ker je res pomembno, da imamo pri tem vidike, ki temeljijo na skladišču. Zlasti ko začnemo govoriti o konceptih, kot je upravljanje sprememb, ki so nujni, ne le prožni razvojni projekti, ampak kakršna koli vrsta razvoja, ki se dogaja naprej.

Zato se za trenutek pogovorimo o Agile Data Modelerju. Kot smo že prej predstavili v predstavitvi, je nujno, da imamo modele podatkov in / ali arhitekte, ki so popolnoma vključeni v napredne razvojne procese. Zgodilo se je zgodovinsko, da, resnično smo razmišljali o okretnem z razvojnega vidika in nekaj stvari je že prišlo do tega, kar je res povzročilo, da se to tudi zgodi. Del tega je bil posledica narave načina razvoja samega razvoja. Ko se je začel agilni razvoj in smo začeli s tem konceptom samoorganizirajočih se ekip, če ste Kool-Aid pili nekoliko preveč čisto in ste bili na ekstremni programski strani stvari, je prišlo do zelo dobesedne interpretacije stvari, kot so samoorganizirajoče se ekipe, kar si veliko ljudi razlaga tako, da potrebujemo samo skupino razvijalcev, ki lahko sestavijo celotno rešitev. Ali to pomeni razvijanje kode, podatkovnih baz ali shrambe podatkov, ki so za njo, in vse je bilo odstopljeno razvijalcem. Toda s tem se zgodi, da izgubiš posebne sposobnosti, ki jih imajo ljudje. Ugotovil sem, da so močne ekipe tiste, ki jih sestavljajo ljudje iz različnih okolij. Kot na primer kombinacija močnih razvijalcev programske opreme, arhitektov podatkov, oblikovalcev podatkov, poslovnih analitikov in poslovnih deležnikov, ki skupaj sodelujejo, da bi dosegli končno rešitev.

Tudi danes govorim o tem, da bom to storil v okviru razvojnega projekta, v katerem razvijamo aplikacijo, ki bo očitno tudi s tem povezana podatkovna komponenta. Vendar moramo storiti korak nazaj, preden to storimo, ker se moramo zavedati, da je tam zelo malo razvojnih projektov na Greenfieldu, kjer smo popolnoma osredotočeni na ustvarjanje in porabo podatkov, ki je omejena samo v samem tem razvojnem projektu. . Moramo narediti korak nazaj in pogledati celotno organizacijsko stališče z vidika podatkov in procesa. Ker lahko ugotovimo, da informacije, ki jih uporabljamo, že obstajajo nekje v organizacijah. Kot oblikovalci in arhitekti to razkrijemo, tako da vemo, od kod izvirati te informacije v samih projektih. Poznamo tudi vpletene podatkovne strukture, ker imamo oblikovalske vzorce tako kot razvijalci oblikovalske vzorce za svojo kodo. In vzeti moramo tudi to celotno organizacijsko perspektivo. Na podatke ne moremo samo gledati v kontekstu aplikacije, ki jo gradimo. Podatke moramo modelirati in poskrbeti, da jih bomo dokumentirali, ker živijo dlje od samih aplikacij. Te aplikacije prihajajo in odhajajo, vendar moramo biti sposobni pogledati podatke in se prepričati, da so robustni in dobro strukturirani, ne samo za uporabo, ampak tudi za odločitve, ki poročajo o dejavnostih, BI poročanju in integraciji v druge aplikacije, notranje in zunaj naših organizacij. Zato moramo pogledati celotno veliko sliko podatkov in kakšen je življenjski cikel teh podatkov ter razumeti potovanje informacij po celotni organizaciji od zibelke do groba.

Zdaj, k dejanskim ekipam samim in kako dejansko moramo delati, se je metodologija slapov počutila kot prepočasna, da bi dala rezultate. Ker je bilo poudarjeno s primerom tanka, je bil korak za drugim in je pogosto trajalo predolgo, da smo dosegli izvedljiv končni rezultat. To, kar počnemo zdaj, je, da moramo imeti iterativni slog dela, kjer postopoma razvijamo njegove sestavne dele in ga skozi čas izpopolnjujemo, kjer izdelujemo uporabno kodo ali uporabne artefakte, bom rekel, za vsak šprint. Pomembna stvar je sodelovanje med tehničnimi zainteresiranimi stranmi v skupini in poslovnimi deležniki, saj sodelujemo, da bi te uporabniške zgodbe prenesli v izvedljivo vizijo kode in podatkov, ki podpirajo tudi to kodo. In sam Agile Data Modeler bo pogosto ugotovil, da nimamo dovolj modelarjev v organizacijah, zato lahko en modelar podatkov ali arhitekt hkrati podpira več skupin.

Drugi vidik tega pa je, tudi če imamo več modelarjev, moramo zagotoviti, da imamo na voljo orodje, ki omogoča sodelovanje več projektov, ki so med letom hkrati, in njihovo skupno rabo. artefakti podatkov in zmožnosti prijave in odjave. To bom šel zelo hitro, ker smo to že obravnavali v prejšnjem razdelku. Prava predpostavka agilnosti je, da stvari zastavljate iz zaostanka, zgodb ali zahtev. V okviru iteracij sodelujemo kot skupina. Običajno je dvotedenski ali enomesečni šprint, odvisno od organizacije, zelo pogost. In tudi dnevne sestanke za pregledovanje in pripravljenost, da bomo odpravili blokatorje in poskrbeli, da bomo premikali vse vidike naprej, ne da bi se na različnih področjih zaustavili. V teh šprintih želimo zagotoviti, da izdelujemo uporabne izdelke kot del vsakega šprinta.

Nekoliko drugačen pogled na to, ki ga še širim, je scrum metodologija, o kateri bom konkretneje govoril tukaj, in to prejšnjo sliko smo v bistvu samo še nekoliko izboljšali. Običajno obstajajo zaostanki izdelka in nato še zaporni zaporniki. Tako imamo na splošno zaostanek, da si na začetku vsake ponovitve sprint pripomnimo: "Kaj bomo gradili v tem šprintu?" In to se naredi na sestanku za načrtovanje šprinta. Nato razčlenimo naloge, povezane s tem, in izvedemo v tistih eno- do štiritedenskih šprintih s temi dnevnimi pregledi. Medtem ko sledimo svojemu napredku z izgorevalnimi grafikoni in gorilnimi grafikoni, da v osnovi sledimo temu, kaj je treba graditi v primerjavi s tistim, kar gradimo, da določimo stvari, kot je hitrost našega razvoja, ali bomo naredili svoje urnik, vse te vrste stvari. Vsi ti se med sprintom nenehno izpopolnjujejo, namesto da bi šli nekaj mesecev po cesti in ugotovili, da boste kmalu dosegli, da morate časovni razpored projekta podaljšati. In zelo pomembno, kot del tega, celotne ekipe, na koncu je sprinterski pregled in retrospektiva sprint, zato preden začnete naslednjo iteracijo, pregledate, kaj ste storili, in iščete načine, kako lahko izboljšati se bo naslednjič.

V smislu dosežkov je to v bistvu diapozitiv, ki povzame značilne vrste stvari, ki se dogajajo v šprintih. In je zelo usmerjen v razvoj, zato veliko stvari, ki jih vidimo tukaj, na primer funkcionalne zasnove in primere za uporabo, dela preizkuse oblikovalskih kod, ko pogledamo te škatle tukaj, in ne bom šel skozi njih na kateri koli ravni podrobnosti so zelo usmerjeni v razvoj. Pod tem pa je pokopan podatek, da moramo podpreti tudi ta podatek, ki bo ustrezal temu podpori. Vsakič, ko vidimo stvari, kot so zaostanki, zahteve in zgodbe uporabnikov, moramo med tem preučiti, kakšni so razvojni deli, ki jih moramo narediti, kakšne analize moramo narediti, kako pa oblikovanje podatkov ali podatkovni model, kaj pa stvari, kot so poslovni glosarji, da lahko poslovni pomen povežemo z vsemi umetninami, ki jih izdelujemo? Ker moramo uporabiti končne izdelke v vsakem šprintu.

Nekateri bodo rekli, da moramo na koncu vsakega sprinta izdelati uporabno kodo. Ni nujno, da je to v najčistejši razvojni perspektivi, vendar imamo pogosto - še posebej na začetku - morda nekaj takega kot sprint nič, kjer smo osredotočeni izključno na to, da postavimo stvari in počnemo stvari, kot je to, da preizkusimo svoje testne strategije v kraj. Zasnova na visoki ravni, ki jo bomo začeli, preden začnemo izpolnjevati podrobnosti in poskrbeti, da bomo imeli čist nabor začetnih zgodb ali zahtev, preden začnemo angažirati drugo občinstvo in nato kot ekipa napredovati naprej. Vedno je malo pripravljalnega časa, zato bomo zelo pogosto imeli sprint nič ali celo sprint nič in en. Mogoče je malo faze zagona, preden bomo dosegli rešitev.

V tem kontekstu se pogovorimo o podatkovnih modelih. Ko ljudje pomislijo na podatkovne modele, pogosto pomislijo na podatkovni model kot na sliko, kako se različni podatki združijo - to je samo vrh ledene gore. Če želite v celoti utelešati duh, kako resnično želite pristopiti k modeliranju podatkov - naj bo to v agilnem razvoju in drugih stvareh -, se morate zavedati, da bo podatkovni model, če je narejen pravilno, postal vaša popolna specifikacija, kaj ti podatki pomenijo v organizaciji in kako je nameščena v zalednih bazah podatkov. Ko rečem baze podatkov, ne mislim samo na relacijske baze podatkov, ki jih morda uporabljamo, ampak na današnje arhitekture, kjer imamo velike podatke ali platforme NoSQL, kot jih raje poimenujem. Tudi tiste velike shrambe podatkov, ker morda združujemo veliko različnih shramb podatkov v smislu porabe informacij in njihovega vključevanja v naše rešitve, pa tudi, kako te podatke vztrajamo ali shranjujemo iz naših rešitev.

Morda bomo v določeni aplikaciji hkrati delali z več bazami podatkov ali viri podatkov. Zelo pomembno je, da želimo imeti popolno specifikacijo, torej logična specifika tega, kaj to pomeni sprint organizacijske perspektive, kakšni so fizični konstrukti glede na to, kako dejansko definiramo podatke, odnose med njimi v vaše baze podatkov, vaše referenčne omejitve integritete, preverite omejitve, vse tiste potrditvene dele, o katerih običajno razmišljate. Opisni metapodatki so izredno pomembni. Kako veste, kako uporabiti podatke v svojih aplikacijah? Če je ne morete opredeliti in vedeti, kaj pomeni ali vedeti, od kod prihaja, da se prepričate, da v teh aplikacijah porabljate pravilne podatke - poskrbite, da imamo pravilne konvencije o poimenovanju, popolne definicije, kar pomeni polni slovar podatkov za ne le tabele, vendar stolpci, ki vsebujejo te tabele - in podrobne opombe o uvajanju o tem, kako to uporabljamo, ker moramo zgraditi to bazo znanja, ker bodo tudi, ko bo ta aplikacija narejena, te informacije uporabljene za druge pobude, zato se moramo prepričati da imamo vse to dokumentirano za prihodnje izvedbe.

Spet se spuščamo do stvari, kot so tipi podatkov, ključi, indeksi, sam podatkovni model pooseblja veliko poslovnih pravil, ki pridejo v poštev. Razmerja niso le omejitve med različnimi tabelami; pogosto nam pomagajo, da opišemo, kakšna so prava poslovna pravila v tem, kako se ti podatki obnašajo in kako deluje skupaj kot enotna enota. In seveda so zelo pomembne omejitve vrednosti. Seveda so ena izmed stvari, s katerimi se nenehno ukvarjamo in čedalje bolj prevladuje, stvari, kot je upravljanje podatkov. Torej moramo z vidika upravljanja podatkov preučiti, kaj opredeljujemo tukaj? Določiti želimo stvari, kot so varnostne klasifikacije. S katerimi vrstami podatkov imamo opravka? Kaj se bo obravnavalo kot glavno upravljanje podatkov? Katere so transakcijske trgovine, ki jih ustvarjamo? Katere referenčne podatke uporabljamo v teh aplikacijah? Poskrbeti moramo, da je pravilno zajet v naših modelih. In tudi glede kakovosti podatkov obstajajo nekateri podatki, ki so za organizacijo pomembnejši od drugih.

Sodeloval sem v projektih, kjer smo več kot ducat starih sistemov zamenjali z novimi poslovnimi procesi in oblikovali nove aplikacije in shrambe podatkov, da bi jih nadomestili. Morali smo vedeti, od kod prihajajo informacije. Kar zadeva najpomembnejše podatke s poslovnega vidika, če pogledate ta diapozitiv podatkovnega modela, ki sem ga dobil tukaj, boste videli, da spodnja polja v teh določenih entitetah, kar je le majhna podmnožica, dejansko sem uspel zajeti poslovno vrednost. Naj gre za visoko, srednje ali nizko za te vrste stvari za te različne konstrukte v organizaciji. Ujel sem tudi stvari, kot so glavni podatkovni razredi, pa naj bodo to glavne tabele, ali so referenčne, če so bile transakcijske. Tako lahko svoje metapodatke razširimo v svoje modele in tako dobimo veliko drugih značilnosti zunaj samih podatkov, ki so nam resnično pomagale pri drugih pobudah zunaj originalnih projektov in jih prenašale naprej. Zdaj, ko je bilo v enem diapozitivu veliko, bom vse ostale dokaj hitro prestal.

Zdaj se bom zelo hitro pogovarjal o tem, kaj počne modelar podatkov, ko gremo skozi te različne sprinte. Najprej polni udeleženec sej za načrtovanje šprinta, kjer se ukvarjamo z uporabniškimi zgodbami, se zavezujemo, kaj bomo v tem šprintu predstavili, in ugotovimo, kako ga bomo strukturirali in dostavili. Prav tako delam kot modelar podatkov, saj vem, da bom delal na ločenih območjih z različnimi razvijalci ali z različnimi ljudmi. Ena od pomembnih značilnosti, ki jo lahko imamo, ko delamo podatkovni model, lahko ta podatkovni model razdelimo na različne poglede, ne glede na to, ali jih imenujete predmetna področja ali podvrste, naša terminologija. Ko gradimo model, ga prikazujemo tudi v teh različnih perspektivah pod-modelov, tako da različna občinstva vidijo le tisto, kar jim ustreza, da se lahko osredotočijo na to, kar razvijajo in predstavljajo. Tako da imam morda nekoga, ki dela del načrtovanja aplikacije, morda bi kdo drug delal pri vnosu naročil, kjer vse te stvari počnemo v enem samem šprintu, vendar jim lahko prikažem poglede skozi tiste podvrste, ki samo veljajo za območje, na katerem delajo. Potem pa se ti prilegajo celotnemu modelu in celotni strukturi pod-modelov, da bi različnim gledalcem omogočili ogled, kaj morajo videti.

Osnove z vidika modeliranja podatkov, ki jih želimo imeti, imajo vedno osnovno osnovo, do katere se lahko vrnemo, saj je ena izmed stvari, ki jo moramo imeti, ne glede na to, ali gre na koncu šprinta ali na koncu od več šprintov želimo vedeti, kje smo začeli in vedno imamo izhodiščno točko, da vemo, kakšna je bila delta ali razlika tega, kar smo proizvedli v danem šprintu. Poskrbeti moramo tudi za hiter preobrat. Če pridete vanj kot modelar podatkov, vendar v tradicionalni vlogi vratarja rečete: "Ne, ne, tega ne morete storiti. Najprej moramo vse to narediti", izključeni boste iz ekipe, ko resnično potrebujete biti aktiven udeleženec vseh teh agilnih razvojnih skupin. To pomeni, da nekatere stvari padejo iz vagona in v določenem šprintu jih prevzamete.

Kot primer se lahko osredotočite na podatkovne strukture samo zato, da se razvoj razvija, recimo, tisti del za vnos naročil, o katerem sem govoril. V kasnejšem sprintu se lahko vrnete in izpolnite podatke, kot je nekaj dokumentacije za podatkovni slovar, okoli nekaterih artefaktov, ki ste jih ustvarili. Te definicije ne boste dokončali vse v enem šprintu; boste postopoma nadaljevali s svojimi rezultati, ker boste lahko te podatke vnesli v sodelovanju s poslovnimi analitiki, ko bodo razvijalci zasedeni pri gradnji aplikacij in vztrajanju v teh shrambah podatkov. Želite si olajšati in ne biti ozko grlo. Obstajajo različni načini, kako sodelujemo z razvijalci. Za nekatere stvari imamo oblikovalske vzorce, tako da smo spredaj polni udeleženci, zato bomo morda imeli oblikovalski vzorec, kjer bomo rekli, da ga bomo dali v model, ga bomo potisnili v baze podatkov razvijalcev razvijalcev in potem bodo lahko začnite sodelovati z njim in zahtevajte spremembe v tem.

Razvijalci se lahko ukvarjajo z drugimi področji, imajo nekaj, na čemer delajo, in nekaj prototipirajo, tako da nekatere stvari preizkusijo v svojem razvojnem okolju. Vzamemo to bazo podatkov, s katero so delali, jo vnesemo v naše orodje za modeliranje, primerjamo z modeli, ki jih imamo, nato pa jih razrešimo in potisnemo spremembe nazaj, da bodo lahko ponovno spremenili svoje kode, tako da sledijo ustreznim strukturam podatkov ki jo potrebujemo Ker so morda ustvarili nekaj stvari, ki smo jih že imeli drugje, zato poskrbimo, da delujejo s pravimi viri podatkov. Vse to ponavljamo do našega šprinta, tako da dobimo popolne podatke, popolno dokumentacijo in definicijo vseh teh podatkovnih struktur, ki jih izdelujemo.

Najuspešnejši agilni projekti, pri katerih sem sodeloval v smislu zelo dobrih dobav, so bili filozofija, modeliranje vseh sprememb celotne fizične specifikacije baze podatkov. V bistvu model podatkov postane nameščena zbirka podatkov, s katero delate, za vse novo, kar ustvarjamo, in ima popolne reference drugih shramb podatkov, če jih porabimo iz drugih zunanjih baz podatkov. Kot del tega izdelujemo inkrementalne skripte v primerjavi s polno generacijo. In mi uporabljamo svoje oblikovalske vzorce, da nam omogočijo tako hitro dvig v smislu, da gremo stvari sprint z različnimi razvojnimi skupinami, s katerimi sodelujemo.

Tudi v šprinterskih dejavnostih je ponovno osnova za primerjavo / združitev, zato vzemimo zamisel o modeliranju vsake spremembe. Vsakič, ko naredimo spremembo, želimo spremeniti spremembo in kar je zelo pomembno, kaj vse je manjkalo pri modeliranju podatkov do nedavnega, pravzaprav, dokler ga nismo ponovno uvedli, je sposobnost povezovanja modeliranja opravil in vaših rezultatov z uporabniškimi zgodbami in nalogami, ki dejansko povzročajo te spremembe. Želimo imeti možnost, da preverimo spremembe v našem modelu, enako kot razvijalci preverjajo v svojih kodah, navajajo tiste uporabniške zgodbe, ki jih imamo, tako da vemo, zakaj smo na novo naredili spremembe, kar počnemo. Ko to storimo, ustvarjamo svoje inkrementalne skripte DDL in jih objavljamo, tako da jih je mogoče prevzeti z drugimi razvojnimi rezultati in preveriti v naši gradbeni rešitvi. Spet bomo morda imeli en model ali delali z več ekipami. In kot sem že govoril, nekatere stvari izvira modelar podatkov, druge stvari so ustvarili razvijalci, na sredini pa se srečamo, da se lotimo celotnega najboljšega dizajna in ga potisnemo naprej in poskrbimo, da je pravilno oblikovan v našem celotne strukture podatkov. V nadaljevanju moramo ohraniti disciplino zagotavljanja, da imamo v svojem podatkovnem modelu vse ustrezne konstrukcije, vključno s stvarmi, kot so nične in ne nične vrednosti, referenčne omejitve, v bistvu preverjanje omejitev, vse tiste stvari, o katerih običajno razmišljamo .

Pogovorimo se zdaj le o nekaj posnetkih nekaterih orodij, ki nam pomagajo pri tem. Pomembno se mi zdi, da imamo to shrambo za sodelovanje, zato je tisto, kar lahko naredimo kot oblikovalci podatkov - in to je delček dela podatkovnega modela v ozadju -, ko delamo na stvareh, za katere želimo zagotoviti, da bomo lahko delati samo s predmeti, ki jih moramo imeti možnost spremeniti, narediti spremembe, ustvariti naše skripte DDL za spremembe, ki smo jih naredili, ko smo stvari ponovno preverjali. Torej, kar lahko storimo, je v ER Studio primer, lahko odkrijemo predmete ali skupine predmetov, na katerih delamo, ni treba preveriti celotnega modela ali podmodela, lahko preverimo samo tiste stvari, ki nas zanimajo. Kar želimo po tem, je bodisi odjava ali prijava - to storimo oboje, ker različne razvojne ekipe delujejo na različne načine. Želimo zagotoviti, da to povežemo z uporabniško zgodbo ali nalogo, ki poganja zahteve za to, in to bo ista uporabniška zgodba ali naloga, ki jo bodo razvijalci razvijali in preverjali svojo kodo.

Torej, tukaj je zelo hiter delček nekaj zaslonov enega od naših centrov za upravljanje sprememb. V tem primeru ne bom podrobneje opisoval, toda tisto, kar vidite, je uporabniška zgodba ali naloga in je izvlečeno pod vsakim od tistih, ki jih vidite dejanski zapisi sprememb - ustvarili smo samodejni zapis sprememb, ko opravimo prijavo in odjavo, na ta zapis o spremembah pa lahko damo še več opisa. Povezana je z nalogo, lahko imamo več sprememb na nalogo, kot bi pričakovali. In ko gremo v zapis sprememb, ga lahko pogledamo in še pomembneje je, kaj smo pravzaprav spremenili? Za to posebno, osvetljeno zgodbo sem tam naredil eno vrsto sprememb in ko sem pogledal sam dejanski zapis o spremembah, je določil posamezne dele v modelu, ki se je spremenil. Tu sem spremenil nekaj atributov, jih ponovno obdelal in prinesel med vožnjo poglede, ki jih je bilo treba spremeniti, ki so odvisni tudi od njih, tako da bodo ustvarjeni v inkrementalni DLL. To ni samo modeliranje na osnovnih objektih, ampak orodje za modeliranje z močnim pogonom, kot je to, zazna tudi spremembe, ki jih je treba prepletati skozi odvisne predmete v bazi podatkov ali podatkovni model.

Če sodelujemo z razvijalci in to počnemo v nekaj različnih stvareh, to počne nekaj v njihovem peskovniku in želimo primerjati in videti, kje so razlike, uporabimo zmožnosti primerjave / združevanja na desni in levi strani strani. Lahko rečemo: "Tu je naš model na levi strani, tukaj je njihova baza podatkov na desni strani, pokažite mi razlike." Nato lahko izberemo in izberemo, kako rešujemo te razlike, ali stvari potisnemo v bazo podatkov ali če v bazi podatkov je nekaj stvari, ki jih vrnemo v model. Lahko gremo dvosmerno, tako da lahko gremo obe smeri hkrati posodabljamo izvor in cilj in nato izdelamo inkrementalne skripte DDL, da te spremembe umestimo v samo okolje baze podatkov, kar je izredno pomembno. Kar lahko storimo tudi to, da lahko tudi kadar koli uporabimo to primerjavo in združitev, če na poti fotografiramo posnetke, lahko vedno primerjamo začetek enega šprinta za začetek ali konec drugega šprinta, tako da lahko vidimo popolna inkrementalna sprememba tega, kar je bilo storjeno v določenem razvojnem šprintu ali preko serije sprintov.

To je zelo hiter primer alter skripta. Vsak od vas, ki je sodeloval z bazami podatkov, bo videl to vrsto stvari. To lahko tisto, kar lahko potisnemo iz kode kot alter skript, tako da poskrbimo, da bomo ohrani stvari tukaj. Kar sem potegnil od tu, samo zato, da zmanjšamo nered, je tisto, kar počnemo tudi s temi skripti za alter, če predpostavimo, da v teh tabelah obstajajo tudi podatki, zato bomo ustvarili tudi DML, ki bo povlekel podatke začasnih tabel in ga vrnemo nazaj tudi v nove podatkovne strukture, zato ne bomo gledali samo struktur, ampak tudi podatke, ki jih morda že vsebujemo v teh strukturah.

Hitro se bomo pogovarjali o sistemih za samodejno vgradnjo, saj ko delamo okreten projekt, pogosto delamo s sistemi za samodejno vgradnjo, kjer moramo skupaj preveriti različne rezultate, da ne bomo prekinili svojega dela. To pomeni, da sinhroniziramo rezultate, tiste skripte za spreminjanje, o katerih sem govoril s skriptom DDL, je treba preveriti, istočasno je treba preveriti ustrezno aplikacijsko kodo in seveda veliko razvojnikov zdaj ne se izvaja z neposrednim SQL proti bazam podatkov in tej vrsti stvari. Pogosto uporabljamo vztrajne okvire ali gradimo podatkovne storitve. Poskrbeti moramo, da se spremembe teh okvirov ali storitev preverijo istočasno. V nekaterih organizacijah gredo v avtomatiziran sistem gradnje in če se sestavljanje zlomi, po agilni metodologiji vse naredijo pritrjevanje krova, preden se premaknemo naprej, tako da vemo, da imamo delujočo rešitev, preden gremo naprej. In eden od projektov, pri katerem sem sodeloval, smo to do konca skrajšali - če se je sestava zlomila, smo dejansko pritrdili na številne računalnike na našem območju, kjer smo bili kolokacijski s poslovnimi uporabniki, imeli smo rdeče utripajoče luči kot vrh policijskih avtomobilov. In če se je sestava pokvarila, so se rdeče utripajoče luči začele ugasniti in vedeli smo, da je vse na robu: popravite gradnjo in nato nadaljujte s tem, kar počnemo.

Rad bi govoril o drugih stvareh, in to je edinstvena zmožnost ER Studio-a, resnično pomaga, ko poskušamo graditi te artefakte kot razvijalce za te obstojne meje, imamo koncept, imenovan predmeti poslovnih podatkov in kaj nam to omogoča Ali če na primer pogledate ta zelo poenostavljen podatkovni model, nam omogoča, da enkapsuliramo entitete ali skupine entitet, kjer so obstojne meje. Kjer si kot vodja podatkov lahko zamislimo nekaj, kot je glava naročila in poravnava naročil ter druge podrobne tabele, ki bi se povezale s tem na način, kako ga izdelamo, in naši razvijalci podatkovnih storitev morajo vedeti, kako stvari obstajajo do teh različnih podatkov strukture. Naši razvijalci razmišljajo o stvareh, kot je nakupni nalog kot na splošno, in kakšna je njihova pogodba s tem, kako ustvarijo te določene predmete. Lahko predstavimo te tehnične podrobnosti, tako da lahko ljudje, ki gradijo podatkovne strežnike, vidijo, kaj je pod njim, in ostale občinstvo lahko zaščitimo pred zapletenostmi, tako da le vidijo različne predmete višjega nivoja, kar zelo dobro deluje tudi pri komunikaciji s podjetjem analitiki in poslovni deležniki, ko govorimo tudi o medsebojnem delovanju različnih poslovnih konceptov.

Lepo pri tem je tudi, da jih konstruktivno razširimo in strnemo, da lahko vzdržujemo razmerja med predmeti višjega reda, čeprav izvirajo iz konstrukcij, ki so vsebovane znotraj teh samih poslovnih poslovnih podatkov. Zdaj kot modelar, pridite do konca šprinta, na koncu šprint-ovijanja imam veliko stvari, ki jih moram storiti, ki jih za naslednji šprint poimenujem s hišnim vodenjem. Vsak šprint, ki ga ustvarim v imenu Imenovane izdaje - mi daje svojo osnovno osnovo za tisto, kar imam na koncu izdaje. Torej to pomeni, da gre moja osnovna črta naprej, vse te izhodiščne ali Named Release, ki jih ustvarim in shranim v svoje repozitorij, pa lahko uporabim za primerjavo / združitev, tako da se lahko vedno primerjam s katerim koli koncem sprinta iz katerega koli drugega šprinta, ki zelo pomembno je vedeti, kakšne spremembe so bile v vašem podatkovnem modelu na poti skozi njegovo pot.

Ustvarjam tudi skript delta DDL z uporabo primerjave / združitve znova od začetka do konca šprinta. Mogoče sem preveril cel kup inkrementalnih skript, toda če jo potrebujem, imam zdaj skript, ki ga lahko uporabim za postavitev drugih peskovnikov, tako da lahko rečem, da smo to imeli na začetku enega šprinta, push V tem primeru zgradimo bazo podatkov kot peskovnik, da začnemo z naslednjim šprintom in jih lahko uporabimo tudi za stvari, kot so na primer primeri stand-up QA, in na koncu seveda želimo, da se naše spremembe potisnejo v proizvodnjo, tako da imamo več stvari ob istem času. Spet v celoti sodelujemo pri načrtovanju šprinta in retrospektivi, retrospektive so resnično naučene lekcije in to je izredno pomembno, saj lahko med agilnostjo pridete zelo hitro, morate se ustaviti in proslaviti uspehe, kot zdaj. Ugotovite, kaj je narobe, naslednjič bolje počastite, hkrati pa proslavite stvari, ki so šle pravilno, in nadgradite na njih, ko boste nadaljevali naprej v naslednjih šprintih naprej.

Zdaj bom zelo hitro govoril o poslovni vrednosti. Obstajal je projekt, s katerim sem se ukvarjal pred mnogimi leti, ki se je začel kot agilni projekt, in bil je skrajni projekt, tako da je bila to čisto samoorganizirajoča se ekipa, kjer so se ukvarjali samo razvijalci. Če na kratko povem, je ta projekt zastajal in ugotovili so, da porabljajo vedno več časa za sanacijo in odpravljanje ugotovljenih pomanjkljivosti, kot pa za večjo funkcionalnost in pravzaprav, ko so gledali na to, na izgorelih lestvicah bodo morali projekt podaljšati za šest mesecev z velikimi stroški. Ko smo ga pogledali, je bil način za odpravo težave uporabiti ustrezno orodje za modeliranje podatkov s kvalificiranim modelarjem podatkov, ki je vključen v sam projekt.

Če pogledate to navpično vrstico na tem posebnem grafikonu, je to prikaz skupnih napak v primerjavi s kumulativnimi predmeti, in govorim o podatkovnih objektih ali konstrukcijah, ki so bile ustvarjene, kot so tabele z omejitvami in te vrste stvari, če bi pogledali pred uvedbo modelarja podatkov je število napak dejansko preseglo in začelo je ustvarjati nekaj vrzeli glede na dejansko število predmetov, ki so bili izdelani do tega trenutka. Po 21. tednu, ko je prišel modelar podatkov, je ponovno oblikoval model podatkov na podlagi tega, kaj je bilo treba popraviti, in nato začel modelirati, ko bo projektni tim nadaljeval, spremembe so se v tem projektu premikale naprej . In videli ste zelo hiter preobrat, da smo v približno šprintu in pol opazili velik napredek v številu predmetov in podatkovnih konstrukcij, ki se ustvarjajo in gradijo, ker smo ustvarjali iz orodja za modeliranje podatkov in ne iz razvijalčeve palice graditi jih v okolju in bili so pravilni, ker so imeli ustrezno referenčno celovitost in druge konstrukte, ki bi jih moral imeti. Raven napak na skoraj skoraj ravni. Z ustreznim ukrepanjem in zagotavljanjem, da je bilo modeliranje podatkov v celoti vključeno, je bil projekt izveden pravočasno z veliko višjo stopnjo kakovosti, pravzaprav pa sploh ne bi bil izveden, če teh korakov ne bi izvedli. Zunaj je veliko okretnih neuspehov, veliko je tudi agilnih uspehov, če bi v prave vloge vključili prave ljudi. Jaz sem velik zagovornik agilnosti kot operativne discipline, vendar morate poskrbeti, da boste imeli znanje in spretnosti vseh pravih skupin, ki sodelujejo kot vaše projektne skupine, ko greste naprej na agilni način.

Če povzamemo, morajo biti pri vseh razvojnih projektih vključeni arhitekti podatkov in oblikovalci; v resnici so lepilo, ki združuje vse skupaj, saj kot oblikovalci podatkov in arhitekti razumemo, ne samo podatkovne konstrukcije danega razvojnega projekta, temveč tudi, kje podatki obstajajo v organizaciji in od kod lahko podatke pridobimo in tudi kako se bo uporabljal in uporabljal zunaj same aplikacije, ki jo delamo. Razumemo zapletena podatkovna razmerja in je najpomembnejše, da se lahko premaknemo naprej in tudi z vidika upravljanja, da preslikamo dokument in razumemo, kako izgleda vaša celotna podatkovna pokrajina.

Je kot proizvodnja; Prihajal sem iz proizvodnega ozadja. Kakovost ne morete preveriti v nečem na koncu - kakovost morate vgraditi v svoj dizajn vnaprej in na poti, modeliranje podatkov pa je način, da to kakovost vključite v zasnovo na učinkovit in stroškovno učinkovit način do konca. . In spet nekaj, kar je treba zapomniti - in to ne bo bajno, ampak resnica je - aplikacije prihajajo in odhajajo, podatki so ključno premoženje podjetja in presegajo vse tiste meje uporabe. Vsakič, ko vložite aplikacijo, vas najbrž prosijo, naj podatke shranijo iz drugih aplikacij, ki so bile prej, zato se moramo spomniti, da gre za ključno premoženje podjetja, ki ga ves čas ohranjamo.

In to je to! Od tu bomo prevzeli več vprašanj.

Eric Kavanagh: V redu, dobro, naj ga najprej vrnem Robinu. In potem, Dez, prepričan sem, da imaš nekaj vprašanj. Vzemi ga, Robin.

Dr. Robin Bloor: V redu. Iskreno povedano, nikoli nisem imel težav z okretnimi razvojnimi metodami in zdi se mi, da to, kar počnete tukaj, ima pomen. Spomnim se, da sem v osemdesetih gledal na nekaj, kar je resnično nakazovalo, da je težava, s katero se dejansko srečujete, ko projekt izgine izpod nadzora, običajno, če dovolite, da se napaka nadaljuje izven določene faze. Težko je popraviti, če te etape ne boš pravilno uredil, zato je ena izmed stvari, ki jih počneš tukaj - in mislim, da je to diapozitiv - vendar ena od stvari, ki jih počneš tukaj v sprintu nič, po mojem mnenju je absolutno pomembno, ker resnično poskušate tam pripeti rezultate. In če ne dobite pripetih izdelkov, potem končni izdelki spremenijo obliko.

To je, nekako, moje mnenje. To je tudi moje mnenje - res nimam nobenega argumenta z mislijo, da moraš modeliranje podatkov dobiti natančno določeno raven, preden greš skozi. Kar bi rad poskusil in naredil, ker tega nisem dojel popolnega občutka, je samo opisati enega od teh projektov glede na njegovo velikost, v smislu, kako je tekel, glede na to, kdo, veste, kje so se težave pojavile, ali so jih rešili? Ker menim, da je ta diapozitiv zelo pri srcu, in če bi lahko o tem podrobneje razložili, bi bil zelo hvaležen.

Ron Huizenga: Seveda, uporabil bom nekaj primerov projektov. Tisti, ki je nekako šel s tirnic, ki jih je prineslo nazaj, tako da so dejansko vključili prave ljudi in naredili modeliranje podatkov. Vse je bilo resnično način, kako zagotoviti, da je bila zasnova bolje razumljena in očitno smo imeli boljši izvedbeni dizajn na poti skozi njegovo modeliranje. Ker, ko ga modelirate, veste, da lahko ustvarite svoj DDL in vse iz orodja nazaj in izven, namesto da bi se morali graditi tako, kot to običajno počnejo ljudje, tako da greste naravnost v okolje baze podatkov. Značilne stvari, ki se bodo zgodile pri razvijalcih, so, da bodo šle tja in bodo rekli, v redu, potrebujem te tabele. Recimo, da delamo vpise naročil. Tako lahko ustvarijo glavo naročila in tabele s podrobnostmi o naročilu in te vrste stvari. A pogosto bodo pozabili ali zanemarili in se prepričali, ali obstajajo omejitve, ki predstavljajo tuje ključne odnose. Ključi morda ne bodo pravilni. Konvencije o poimenovanju so lahko tudi sumljive. Ne vem, kolikokrat sem se zatekel v okolje, na primer, ko vidite kup različnih tabel z različnimi imeni, potem pa so imena stolpcev v teh tabelah kot ID, Ime ali kaj podobnega, zato Resnično sem izgubil kontekst brez tabele, kaj točno je to.

Tako bomo ponavadi pri modeliranju podatkov poskrbeli, da bomo uporabili ustrezne konvencije o poimenovanju za vse artefakte, ki nastajajo tudi v DDL. Če pa bom bolj natančen glede narave samih projektov, na splošno govorim o precej velikih pobudah. Eden od njih je bil projekt preoblikovanja podjetij v višini 150 milijonov dolarjev, kjer smo zamenjali več kot ducat starih sistemov. Imeli smo pet različnih agilnih ekip hkrati. Imel sem popolno ekipo za arhitekturo podatkov, zato sem imel modele podatkov iz svoje ekipe, vdelane v vsakega od drugih ekip drugih področij aplikacij, in sodelovali smo s kombinacijo notranjih poslovnih strokovnjakov, ki so poznali zadevo, ki so delali uporabniške zgodbe za zahteve same. V vsaki skupini, ki je dejansko modelirala poslovni proces, smo imeli poslovne analitike, z diagrami aktivnosti ali diagrami poslovnih procesov, ki so pomagali razviti uporabniške zgodbe bolj pri uporabnikih, preden so jih zaužili tudi preostali člani ekipe.

In potem seveda razvijalci, ki so nadgrajevali aplikacijsko kodo. In tudi mi smo sodelovali, mislim, da so štirje različni proizvajalci sistemske integracije gradili različne dele aplikacije, pa tudi tam, kjer je ena ekipa gradila podatkovne storitve, druga je gradila logiko aplikacij na enem področju, druga pa je imela strokovno znanje na drugem poslovnem področju je gradil logiko uporabe na tem področju. Tako smo imeli celo sodelovanje ljudi, ki so delali na tem projektu. Zlasti na tem moštvu smo imeli 150 ljudi na obali in še 150 virov na morju, ki so sodelovali v dvotedenskih šprintih, da bi to odgnali. Da bi to naredili, morate poskrbeti, da streljate na vse jeklenke, in vsi so dobro sinhronizirani glede na njihove rezultate, vi pa ste imeli te pogoste resete, da ste se prepričali, da smo končali z dostavo vseh potrebnih artefaktov na koncu vsakega šprinta.

Dr. Robin Bloor: No, to je impresivno. In samo še malo podrobnosti o tem - ste na koncu tega projekta zaključili s popolnim, kar bi poimenoval, karto MDM celotnega podatkovnega območja?

Ron Huizenga: Imeli smo celoten podatkovni model, ki je razpadel z razkrojem med vsemi različnimi poslovnimi področji. Sam slovar podatkov je bil v smislu polnih definicij nekoliko krajši. Imeli smo večino tabel; imeli smo večino stolpcev opredeljenih, kaj točno pomenijo. Bilo jih je nekaj, kar je zanimivo, veliko teh je bilo informacij, ki so prišle iz zapuščenih sistemov, kjer so po koncu samega obsega projekta še vedno dokumentirani kot prenosni niz artefakti, kot je zunaj samega projekta, ker je bilo to potrebno, da bi organizacija morala podpirati naprej. Hkrati je organizacija zavzela precej večje stališče do pomena upravljanja podatkov, saj smo videli veliko pomanjkljivosti v teh zapuščenih sistemih in tistih starih podatkovnih virov, ki smo jih poskušali porabiti, ker niso bili dokumentirani. V veliko primerih smo imeli samo baze podatkov, da smo morali obrniti inženir in poskusiti ugotoviti, kaj je tam in za kaj so informacije.

Dr Robin Bloor: Ne preseneča me, prav poseben vidik tega. Upravljanje podatkov je, tako imenovano, zelo sodobna težava in mislim, da je res veliko dela, ki bi ga, recimo, morali v zgodovini opraviti na področju upravljanja podatkov. Nikoli ni bilo, ker bi se lahko nekako znebili, če tega ne storite. Ker pa je podatkovni vir samo rastel in rastel, sčasoma niste mogli.

Kakor koli že, bom šel k Dezu, ker mislim, da sem imel svoj čas. Dez?

Dez Blanchfield: Da, hvala. Skozi vso to stvar gledam in razmišljam o sebi, da govorimo o videnju agilnega, uporabljenega v jezi na več načinov. Čeprav ima to negativne konotacije; To sem mislil na pozitiven način. Ali bi nam morda lahko dali scenarij, mislim, obstajata dve mesti, za katere vidim, da je to popoln sklop: eno so novi projekti, ki jih je treba izvesti že od prvega dne, vendar menim, da je po mojih izkušnjah to pogosto V primeru, da so projekti dovolj veliki, da je to potrebno na več načinov, obstaja zanimiv izziv med lepljenjem obeh svetov, kajne? Ali nam lahko daste kakršen koli vpogled v nekatere zgodbe o uspehu, ki ste jih videli, kje ste šli v neko organizacijo, je postalo jasno, da sta se oba sveta rahlo spopadla in ste lahko uspešno postavili to na svojem mestu in združiti velike projekte, če bi morda šli drugače na tirnice? Vem, da gre za zelo široko vprašanje, vendar me samo zanima, če lahko določeno študijo primera nekako navedete, kje ste rekli, veste, to smo postavili na svoje mesto in vse razvojno ekipo je združilo z podatkovna skupina in smo se nekako lotili nečesa, kar bi drugače lahko potopilo čoln?

Ron Huizenga: Seveda, in pravzaprav je bil projekt, ki se je zgodil kot plinovod, tisti, na katerega sem namigoval, kjer sem pokazal ta grafikon z napakami pred in po vključitvi podatkovnega modelirja. Precej pogosto in obstajajo vnaprej pripravljeni pojmi, še posebej, če se stvari vrtijo tam, kjer je to storjeno s povsem razvojnega vidika, so v te agilne projekte, ki oddajajo aplikacije, vključeni le razvijalci. Seveda se je tam zgodilo, da so se spustili z tirnic in zlasti svojih podatkovnih artefaktov ali pa so podatki, ki so jih predložili, manjkajo po kakovosti in resnično obravnavajo stvari na splošno. In pogosto se pojavlja napačno prepričanje, da bodo modelirji podatkov upočasnili projekte in da bodo, če oblikovalec podatkov nima pravega odnosa. Kot sem rekel, morate izgubiti - včasih obstajajo oblikovalci podatkov, ki imajo takšen tradicionalni odnos do vrat, "če smo tukaj, da nadzorujemo, kako izgledajo podatkovne strukture", in miselnost mora izginiti. Vsakdo, ki sodeluje v agilnem razvoju, še posebej modelirniki podatkov, mora prevzeti vlogo spodbujevalca, da bo resnično pomagal ekipam napredovati naprej. Najboljši način za ponazoritev tega je, da ekipi zelo hitro pokažemo, kako produktivni so lahko z modeliranjem sprememb. In spet, zato sem govoril o sodelovanju.

Obstaja nekaj stvari, ki jih lahko najprej oblikujemo in generiramo DDL, da bomo prešli na razvijalce. Prav tako želimo zagotoviti, da se jim ne bo zdelo omejeno. Če obstajajo stvari, na katerih delajo, naj delajo v svojih razvojnih peskovnikih, ker tam razvijalci delajo na svojih namiznih ali drugih bazah podatkov, da bi spremenili nekaj, kjer preizkušajo stvari. In sodelujte z njimi in recite: "V redu, delaj s tem." Vložili ga bomo v orodje, ga razrešili, nato pa ga bomo potisnili naprej in vam dali skripte, ki jih boste lahko uporabili za posodobitev svojega baze podatkov, da jih nadgradimo do dejanskega dovoljenega resničnega pogleda na produkcijo, ko bomo še naprej. In to lahko zelo hitro obrnete. Ugotovil sem, da so se moji dnevi zapolnili tam, kjer sem se samo vračal nazaj in nazaj z različnimi razvojnimi skupinami, gledal spremembe, primerjal, ustvarjal scenarije, jih sprožil in uspel sem se dokaj enostavno zadržati s štirimi razvojnimi skupinami, ko bomo enkrat dosegla zagon.

Dez Blanchfield: Ena od stvari, ki mi prihaja na misel, je ta, da veste, da veliko pogovorov, ki jih vodim vsakodnevno, govori o tem tovornem vlaku, ki prihaja k nam, nekako, s strojem stroj in IoT. In če mislimo, da imamo zdaj veliko podatkov o našem trenutnem okolju v podjetju, veste, če za trenutek vzamemo v poštev samoroge, kjer vemo, da Googles in Facebooks ter Ubers imajo petabajte podatkov, toda v tradicionalnem podjetju govorimo o še vedno na stotine terabajtov in veliko podatkov. Toda po mojem mnenju ta tovorni vlak prihaja pri organizacijah in dr. Robin Bloor je nanj že prej pripovedoval IoT. Veste, veliko spletnega prometa imamo, imamo socialni promet, zdaj imamo mobilnost in mobilne naprave, oblak je nekako eksplodiral, zdaj pa imamo pametno infrastrukturo, pametna mesta in tu je ves svet podatkov, ki je pravkar eksplodiral.

Za vsakodnevno organizacijo, srednjo do veliko organizacijo, ki sedi tam in opazuje ta svet bolečine, ki je na njih, in nimajo v mislih takojšnjega načrta, kakšni so ukrepi, v nekaj stavkih, ki bi jih navedli o tem, kdaj in kje morajo začeti pogovorno razmišljati o uvedbi nekaterih teh metodologij. Kako zgodaj morajo začeti načrtovati, da bodo skoraj sedeli in bili pozorni in pravijo, da je pravi čas, da najdejo nekaj orodij in se usposobijo za ekipo ter se pogovorijo z vocabom o tem izzivu? Kako pozno v zgodbi prepozno ali kdaj prezgodaj? Kako to izgleda v nekaterih organizacijah, ki jih vidite?

Ron Huizenga: Za večino organizacij bi rekel, da če tega še niso storili in so modeliranje podatkov in arhitekturo podatkov prilagodili z močnimi orodji, kot je to, je čas, ki ga potrebujejo, včeraj. Ker je zanimivo, da tudi danes, ko gledamo podatke v organizacijah, imamo toliko podatkov v naših organizacijah in na splošno na podlagi nekaterih raziskav, ki smo jih videli, učinkovito uporabljamo manj kot pet odstotkov teh podatkov ko gledamo organizacije. In z velikimi podatki IoT ali celo NoSQL - tudi če ne gre samo za IoT, ampak le za velike podatke na splošno - kjer zdaj začnemo porabljati še več informacij, ki izvirajo izven naših organizacij, je ta izziv čedalje večji in večji ves čas. In edini način, da se bomo lahko lotili tega, nam bo pomagal razumeti, za kaj gre za te podatke.

Primer uporabe je torej nekoliko drugačen. Kar se nam zdi, je, da ko gledamo te podatke, jih zajemamo, moramo obrniti inženir, videti, kaj je v teh, naj bo to v naših podatkovnih jezerih ali celo v naših lastnih bazah, sintetizirati, kaj podatki so, mu dodajte pomene in definicije, da bomo lahko razumeli, kaj so podatki. Ker dokler ne razumemo, kaj je, ne moremo zagotoviti, da ga pravilno ali ustrezno uporabljamo. Zato se moramo resnično dogovoriti o tem, kaj so ti podatki. Drugi del tega pa je, ne storite tega, ker lahko z vidika porabe vseh teh zunanjih podatkov preverite, ali imate primer uporabe, ki podpira porabo teh zunanjih podatkov. Osredotočite se na stvari, ki jih potrebujete, in ne le na poskuse vlečenja in uporabe stvari, ki jih boste morda potrebovali pozneje. Najprej se osredotočite na pomembne stvari in ko boste delali skozi to pot, boste nato zaužili in poskušali razumeti ostale informacije od zunaj.

Odličen primer tega je, da vem, da govorimo o IoT in senzorjih, toda enak problem je bil v mnogih organizacijah že vrsto let, še pred IoT. Kdor ima sistem nadzora proizvodnje, pa naj bo to plinovodno podjetje, proizvodno podjetje, katero koli podjetje, ki temelji na procesih, ima stvari, kjer delajo veliko avtomatizacije s kontrolami in uporabljajo tokove podatkov in podobne stvari te zbirke podatkov, ki jih poskušajo spiti, da bi ugotovili, kakšni so dogodki v moji proizvodni opremi, ki signalizirajo - kaj se je zgodilo in kdaj? In med tem ogromnim tokom podatkov so samo določeni podatki ali oznake, ki jih zanima, da jih morajo presejati, sintetizirati, modelirati in razumeti. In lahko ignorirajo preostanek, dokler ne pride čas, da ga resnično razumejo, nato pa lahko razširijo svoje področje uporabe, da vse več tega potegnejo v obseg, če je to smiselno.

Dez Blanchfield: Res je. Vprašanje, ki ga bom postavil, je vprašanje, ki ga je postavil gospod Eric, in o njem smo zasebno klepetali. Pravkar sem vprašal njegovo dovoljenje, ki ga je dal, da ga prosim od vas. Ker to lepo pripelje do tega, samo da zavijemo, ker gremo malo čez čas in se bom vrnil Ericu. Toda vprašanje drugega Erica je bilo, ali je smiselno domnevati, da so lastniki zagona seznanjeni in razumejo edinstvene izzive modeliranja terminologije in tako naprej, ali bi ga morali dati komu drugemu v razlago? Torej, z drugimi besedami, ali naj bi bil zagon sposoben in pripravljen ter se pripravljen in sposoben osredotočiti na to? Ali je to nekaj, kar bi najbrž morali prodati in privabiti strokovnjake?

Ron Huizenga: Mislim, da je kratek odgovor res odvisen. Če gre za zagon, ki nima lastnika osebe, ki je arhitekt podatkov ali oblikovalec podatkov, ki resnično razume bazo podatkov, potem najhitreje začnemo pripeljati nekoga s svetovalnim ozadjem, ki je v tem prostoru zelo dobro seznanjeno in lahko dobi grejo. Kajti tisto, kar boste našli - in v resnici sem to storil na številnih posvetovanjih, ki sem jih opravil, preden sem prišel na temno plat upravljanja izdelkov - je, da bi šel v organizacije kot svetovalec, vodil njihove ekipe za arhitekturo podatkov, da bi se lahko znova preusmerili in usposobili svoje ljudi o tem, kako to storiti, da bi to lahko vzdrževali in opravljali misijo naprej. In potem bi šel na svoj naslednji angažma, če je to smiselno. Ogromno ljudi, ki to počnejo, imajo zelo dobre izkušnje s podatki, ki jih lahko sprožijo.

Dez Blanchfield: To je odlična odvzemna točka in z njo se popolnoma strinjam in prepričan sem, da bi bil tudi dr. Robin Bloor. Zlasti v zagonu ste osredotočeni na to, da postanete MSP na določeni vrednosti ponudbe, ki jo želite zgraditi kot del samega zagonskega podjetja in verjetno ne bi bilo treba biti strokovnjak za vse, zato odličen nasvet. Hvala lepa, fantastična predstavitev. Res odlični odgovori in vprašanja. Eric, vrnem se ti, ker vem, da smo čez čas verjetno odšli deset minut in vem, da se rad držiš blizu naših časovnih oken.

Eric Kavanagh: V redu je. Imamo vsaj nekaj dobrih vprašanj. Naj vam vrnem enega. Mislim, da ste odgovorili na nekatere druge. Ampak zelo zanimivo opazovanje in vprašanje enega udeleženca, ki piše, da včasih zaradi okretnih projektov modelar podatkov nima celotne dolgoročne slike in tako na koncu oblikuje nekaj v šprintu, nato pa mora preoblikovati v šprintu tri ali štiri. Se to ne zdi kontraproduktivno? Kako se lahko temu izognete?

Ron Huizenga: Zaradi narave agilnosti vam v določenem šprintu ne bo šlo vse popolnoma v redu. In to je pravzaprav del agilnega duha, je: delaj z njim - delal boš prototipiranje tam, kjer delaš kodo v danem šprintu in jo boš izboljšal. In del tega procesa je, ko pošiljate stvari, ki jih končni uporabnik vidi in pravi: "Ja, to je blizu, ampak resnično moram tudi to narediti malo bolj." Tako da to ne vpliva samo na funkcionalno zasnovo same kode, vendar moramo pogosto pod določenimi stvarmi spremeniti ali dodati več podatkovnih struktur, da uporabniku omogočimo, kar želi. In to je vse poštena igra in zato resnično želite uporabiti zmogljiva orodja, ker lahko zelo hitro modelirate in spremenite to orodje za modeliranje in nato ustvarite DDL za bazo podatkov, s katero lahko razvijalci delujejo, da bi to zagotovili spremenite se še hitreje. Rešite jih, da ne bi morali narediti ročnega kodiranja podatkovnih struktur in jim omogočite, da se osredotočijo na programsko ali aplikacijsko logiko, pri kateri so najbolj izkušeni.

Eric Kavanagh: To ima popoln smisel. Nekaj ​​drugih ljudi je postavilo točno določena vprašanja o tem, kako se vse to vrne v orodje. Vem, da ste nekaj časa preiskovali primere in pokazali ste nekaj posnetkov zaslona o tem, kako dejansko delite te stvari. Kako pogosto glede na celoten sprint postopek vidite, da igrate v organizacijah v primerjavi s tem, kako pogosto vidite bolj tradicionalne procese, kjer se stvari samo vrstijo in si vzamejo več časa? Kako razširjen je vaš pristop v slogu šprinta?

Ron Huizenga: Mislim, da se vedno bolj vidimo. Vem, da bi, rekel bi, verjetno, zlasti v zadnjih 15 letih, videl veliko več posvojitev ljudi, ki priznavajo, da morajo resnično sprejeti hitrejše dostave. Tako sem videl, da vse več organizacij skače po agilnem pasu. Ni nujno v celoti; morda bodo začeli z nekaj pilotnimi projekti, da bi dokazali, da deluje, vendar obstajajo nekateri, ki so še vedno zelo tradicionalni in se držijo metode slapov. Dobra novica je seveda ta, da orodja delujejo zelo dobro v teh organizacijah, pa tudi za take vrste metodologij, vendar imamo v orodju prilagodljivost, tako da tisti, ki skačejo na krovu, orodja v orodjarni na konice prstov. Stvari, kot so primerjava in združitev, stvari, kot so zmogljivosti obratnega inženiringa, zato lahko vidijo, kakšni so obstoječi viri podatkov, zato lahko dejansko hitro primerjajo in ustvarijo inkrementalne skripte DDL. In ko začnejo to sprejemati in vidijo, da lahko imajo produktivnost, se njihova nagnjenost k sprejetju še bolj povečuje.

Eric Kavanagh: No, to so super stvari, ljudje. Pravkar sem v oknu za klepet objavil povezavo do diapozitivov, zato preverite to; za vas je malo bitly. Vse te spletne oddaje imamo za poznejši ogled. Delite jih s prijatelji in sodelavci. In Ron, najlepša hvala za vaš čas danes, na prireditvi ste vedno prijetni - pravi strokovnjak na tem področju in očitno je, da veste svoje stvari. Torej, hvala vam in hvala IDERI in seveda Dezu ter našemu lastnemu Robin Bloorju.

In s tem se bomo poslovili, ljudje. Še enkrat hvala za vaš čas in pozornost. Cenimo, da se zadržujete 75 minut, to je precej dober znak. Fantje v oddaji, se pogovorimo naslednjič. Adijo.

Modeliranje podatkov v agilnem okolju