Rumah Pembangunan Pemodelan data dalam persekitaran yang tangkas

Pemodelan data dalam persekitaran yang tangkas

Anonim

Dengan Staff Techopedia, 16 November 2016

Takeaway: Host Eric Kavanagh membincangkan pentingnya model pemodelan dalam perkembangan tangkas dengan Robin Bloor, Dez Blanchfield dan IDERA Ron Huizenga.

Anda tidak log masuk sekarang. Sila log masuk atau mendaftar untuk melihat video.

Eric Kavanagh: Baiklah, tuan-tuan dan puan-puan. Selamat datang sekali lagi. Ia hari Rabu pukul 4:00 EST. Ini bermakna ia adalah masa untuk Teknologi Hot. Ya sememangnya. Nama saya Eric Kavanagh, saya akan menjadi tuan rumah anda.

Untuk topik hari ini, ia adalah seorang lelaki tua tetapi seorang yang baik. Ia semakin baik setiap hari kerana ia membentuk dunia pengurusan data kami, "Pemodelan Data dalam Persekitaran Agile." Terdapat slaid tentang anda benar-benar, memukul saya di Twitter @ aic_kavanagh. Kita sepatutnya meletakkannya pada slaid itu. Saya perlu meneruskannya.

Jadi panas tahun itu. Pemodelan data telah ada selama-lamanya. Ia benar-benar berada di hati dan jiwa perniagaan pengurusan maklumat, mereka bentuk model data, cuba memahami model perniagaan dan menyelaraskannya ke model data anda. Itulah yang anda cuba lakukan, bukan?

Model data mewakili perniagaan dengan cara yang asas, jadi bagaimana semua sumber data baru ini mengubah permainan? Kami akan mengetahui tentang itu. Kami akan mengetahui bagaimana anda boleh berada di atas perkara dengan cara yang tangkas. Dan tentu saja, itulah perkataan tahun ini.

Robin Bloor bersama kami, penganalisis ketua kami, Dez Blanchfield memanggil dari Sydney, Australia dan Ron Huizenga, Pengurus Produk Kanan dari IDERA - kawan lama saya, penceramah yang sangat baik di ruang ini, tahu perkaranya, jadi jangan malu, tanya dia soalan keras, orang-orang, yang sukar. Dengan itu, saya akan membuat penyampai Robin, dan mengambilnya.

Dr. Robin Bloor: Baiklah. Baiklah terima kasih untuk itu, Eric. Saya perlu katakan tentang pemodelan yang saya fikir, saya sebenarnya berada di dunia IT sebelum ia wujud, dalam erti yang saya ingat di syarikat insurans yang saya bekerja, bahawa kita mempunyai seorang lelaki yang masuk dan memberi kita semua yang baik bengkel tentang cara memodelkan data. Oleh itu, kita melihat kira-kira 30 tahun, adakah ia 30 tahun? Mungkin lebih lama dari itu, mungkin 35 tahun yang lalu. Pemodelan yang panjang dan panjang sebenarnya telah menjadi sebahagian daripada industri dan sudah tentu ia tidak ada kaitan dengan wanita di catwalks.

Perkara yang saya ingin katakan, kerana apa yang biasanya kita lakukan, adalah saya dan Dez bercakap tentang perkara yang berbeza dan saya fikir saya akan memberikan gambaran umum untuk pemodelan, tetapi ada realiti untuk ini, yang kini menjadi jelas.

Kami mempunyai, anda tahu, realiti data besar, kami mempunyai lebih banyak data, lebih banyak sumber data, kami mempunyai aliran data yang telah memasuki persamaan dalam tiga atau empat tahun terakhir dan mula mendapat bahagian yang lebih besar daripadanya, dan terdapat keperluan yang lebih besar untuk memahami data dan peningkatan kadar perubahan yang lebih banyak data ditambah dan juga lebih banyak struktur data yang digunakan.

Ia adalah dunia yang sukar. Berikut adalah gambarnya, yang sebenarnya adalah sesuatu yang kami menarik kira-kira tiga tahun yang lalu tetapi pada dasarnya, apabila anda memasukkan streaming ke dalam campuran dan anda mendapat idea tentang penapisan data, hab data, pautan data atau apa sahaja, anda melihat bahawa terdapat data yang benar-benar rehat, dalam erti kata bahawa ia tidak bergerak banyak. Dan kemudian ada data, aliran dan anda mempunyai semua aplikasi transaksional, dan pada masa kini anda mempunyai acara, aliran data acara yang berlaku dalam aplikasi dan mungkin perlu, dan pada masa kini dengan arsitektur lambda semua orang bercakap tentang, adalah benar-benar mempunyai kesan ke atas seluruh bidang data.

Dan pada masa kini berfikir dari segi lapisan data. Lapisan data wujud dalam cara yang maya, dalam erti kata bahawa sekeping yang baik boleh berada di awan dan ia boleh tersebar di seluruh pusat data, ia boleh wujud di stesen kerja. Lapisan data adalah, sejauh mana, di mana-mana dan dalam erti kata itu, terdapat proses di mana-mana yang cuba dalam satu cara atau lain untuk memproses data dan memindahkan data tentang. Tetapi juga mengetahui apa yang berlaku ketika anda bergerak, adalah masalah besar.

Jika kita melihat pemodelan data dalam erti kata yang paling umum, di bahagian bawah timbunan jenis ini anda mempunyai fail dan pangkalan data. Anda mempunyai elemen data, yang mempunyai kekunci, takrifan unsur, alias, sinonim, format fizikal tertentu dan kemudian kami mempunyai lapisan metadata ini.

Perkara menarik tentang metadata ialah metadata adalah sepenuhnya bagaimana data mendapat makna. Sekiranya anda tidak mempunyai metadata, maka anda boleh meneka makna data, tetapi anda akan mengalami banyak masalah. Metadata perlu berada di sana, tetapi makna mempunyai struktur. Saya tidak mahu pergi ke falsafah makna, tetapi walaupun dalam cara kita berurusan dengan data, terdapat banyak kecanggihan dalam pemikiran manusia dan bahasa manusia, yang tidak dengan mudah mengekspresikan dirinya dalam data. Tetapi dari segi data yang kita sebenarnya proses di dunia, metadata mempunyai makna dan struktur metadata - satu bahagian data berhubung dengan yang lain dan apa yang dimaksudkan ketika mereka disatukan dan apa yang dimaksudkan ketika mereka ' bergabung dengan data lain, menuntut kita memodelinya. Ia tidak cukup baik untuk merekodkan tag metadata kepada sesuatu, sebenarnya anda perlu merakamkan makna setiap struktur dan hubungan antara struktur.

Kemudian kita ada di lapisan atas, definisi perniagaan, yang biasanya merupakan lapisan yang cuba memindahkan maksud antara metadata, yang merupakan bentuk definisi data yang mengakomodasi cara data diorganisasikan pada komputer dan makna manusia. Oleh itu, anda mempunyai istilah perniagaan, definisi, hubungan, konsep peringkat entiti yang wujud di lapisan itu. Dan jika kita akan mempunyai ketidaksamaan antara lapisan ini, maka kita perlu mempunyai pemodelan data. Ia bukan pilihan. Semakin banyak anda boleh melakukannya dari segi mengautomasikannya, lebih baik. Tetapi kerana ia berkaitan dengan makna, ia sungguh sukar diganti. Ia cukup mudah untuk menangkap metadata dalam rekod dan dapat memperolehnya dari satu siri makna, tetapi ia tidak memberitahu anda struktur rekod atau apa yang dimaksudkan oleh rekod atau konteks rekod.

Jadi, inilah yang model pemodelan, pada pendapat saya, adalah mengenai. Mata untuk dicatat: semakin rumit alam semesta data menjadi, semakin banyak yang anda perlukan untuk memodelinya. Dalam erti kata lain, ia agak seperti kita menambah bukan hanya lebih banyak contoh perkara di dunia, yang akan sesuai dengan rekod data, tetapi kita sebenarnya menambah lebih banyak makna kepada dunia dengan menangkap data pada lebih banyak perkara. Ia menjadi perasaan yang lebih kompleks dan perlu kita fahami.

Secara teorinya terdapat data alam semesta dan kita perlu melihatnya. Dalam praktiknya, metadata sebenar adalah sebahagian daripada alam semesta data. Jadi, ini bukan keadaan mudah. Permulaan pemodelan adalah top-down dan bottom-up. Anda perlu membina kedua-dua arah dan sebabnya, data mempunyai makna kepada komputer dan prosesnya, yang perlu memprosesnya, tetapi ia mempunyai makna yang tersendiri. Jadi, anda memerlukan makna bawah, yang memenuhi perisian yang perlu mengakses data dan anda memerlukan makna teratas supaya manusia dapat memahaminya. Pembentukan model metadata tidak dan tidak boleh menjadi projek; ia adalah aktiviti yang berterusan - harus menjadi aktiviti yang berterusan di setiap lingkungan yang ada. Nasib baik, terdapat banyak persekitaran, di mana sebenarnya tidak berlaku dan perkara-perkara yang tidak dapat dikawal.

Melangkah ke hadapan, pemodelan meningkat dengan kepentingan sebagai teknologi bergerak ke hadapan. Itu pendapat saya. Tetapi jika anda melihat IoT kita boleh memahami mudah alih lebih daripada yang kita gunakan, walaupun ia memperkenalkan dimensi baru: dimensi lokasi dengan mudah alih. Sebaik sahaja anda sampai ke IoT, kami melihat masalah data luar biasa yang tidak pernah kami lakukan sebelum ini dan kami perlu, satu cara atau yang lain, untuk memahami dengan betul apa yang kami ada, betul-betul bagaimana kami boleh agregat, apa yang boleh kita lakukan dari segi mendapatkan makna dari agregasi, dan tentu saja, apa yang boleh kita lakukan dengannya, apabila kita telah memprosesnya.

Saya fikir itu saya telah berkata cukup. Saya akan pergi ke Dez Blanchfield, yang akan mengatakan sesuatu yang lain sepenuhnya.

Dez Blanchfield: Terima kasih. Sentiasa perbuatan yang sukar untuk diikuti, tetapi ini adalah topik yang kami persetujui dan bercakap mengenai perkara ini dalam masa singkat, dan jika anda didail pada awal, anda mungkin akan mendapat banyak permata yang hebat. Salah satu pengambilan, dan saya tidak mahu mencuri guntingan yang khusus ini, tetapi salah satu daripada takeaways dari bantahan kami yang saya ingin kongsi, sekiranya anda tidak menangkapnya, hanya sekadar topik perjalanan data, dan ia menyerang saya untuk benar-benar menulisnya memikirkan perjalanan data mengambil dalam konteks yang berbeza di sekitar hayat generasi - tahun, bulan, minggu, hari, jam, minit, kedua - dan konteks di sekitar data diletakkan dalam konteks itu. Sama ada saya seorang pemaju yang menjalankan kod, atau sama ada saya pakar data dan saya memikirkan struktur dan format dan metadata di sekeliling setiap unsur, atau cara sistem dan perniagaan berinteraksi dengannya.

Ia adalah satu takeaway kecil yang menarik hanya untuk diperhatikan, tetapi bagaimanapun juga, biar saya menyelam. Reka bentuk data, khususnya, adalah frasa yang saya gunakan untuk membincangkan semua perkara data dan khususnya pembangunan sama ada aplikasi atau infrastruktur pangkalan data. Saya fikir reka bentuk data adalah istilah yang hanya menangkap semuanya dengan baik dalam fikiran saya. Hari-hari ini apabila kita bercakap tentang reka bentuk data, kita bercakap tentang reka bentuk data tangkas moden, dan pandangan saya adalah tidak lama dahulu bahawa pemaju dan pakar data bekerja sendiri; mereka berada dalam silo mereka sendiri dan kepingan-kepingan reka bentuk pergi dari satu silo ke yang lain. Tetapi saya sangat berpandangan hari ini, bukan sahaja kes itu berubah, tetapi ia perlu berubah; ia adalah satu keperluan dan itulah aplikasi - pemaju dan apa sahaja yang perlu dilakukan di sekitar pembangunan yang berkaitan dengan data, pereka yang melakukan elemen reka bentuk yang berkaitan dengan skema dan bidang serta rekod dan sistem dan infrastruktur lokasi dan pangkalan data, pemodelan dan keseluruhan pengurusan cabaran di sekelilingnya. Itulah sukan pasukan sekarang dan karenanya gambar saya sekumpulan orang melompat keluar dari pesawat yang bertindak sebagai satu pasukan untuk memainkan imej visual menarik orang-orang yang jatuh melalui langit.

Ketiga, apa yang berlaku untuk membawa perkara ini? Ada artikel pada tahun 1986 yang ditulis oleh beberapa tuan-tuan yang namanya saya berusaha keras untuk melakukan keadilan, Hirotaka Takeuchi dan Ikujiro Nonaka, saya fikir ia diucapkan, menghasilkan sebuah artikel yang berjudul "Menggerakkan Downfield Scrum". Mereka memperkenalkan gagasan tentang metodologi untuk memenangi permainan ragbi dari aktiviti scrum ini, di mana setiap orang mendapat sekitar satu tempat dan dua pasukan pada dasarnya mengunci kepala dalam sesuatu yang disebut scrum untuk mencuba dan menguasai bola dan memainkannya ke lapangan sampai ke garisan cuba dan sentuh tanah dengan bola dan dapatkan titik, dipanggil trine, dan anda mengulangi proses ini dan anda mendapat lebih banyak mata untuk pasukan.

Artikel ini diterbitkan pada tahun 1986 dalam Kajian Perniagaan Harvard, dan ingin tahu ia benar-benar mendapat banyak perhatian. Ia mendapat banyak perhatian kerana ia memperkenalkan konsep baru yang menakjubkan dan di sini adalah tangkapan skrin di hadapannya. Jadi mereka mengambil konsep ini scrum daripada ragbi permainan dan mereka membawanya ke dalam perniagaan dan terutamanya dalam permainan reka bentuk dan penghantaran projek, khususnya penghantaran projek.

Apa scrum yang dilakukan memberikan metodologi baru berbanding dengan PRINCE2 atau PMBOK yang sebelum ini kita gunakan dalam metodologi air terjun, anda tahu, lakukan perkara ini dan benda ini dan ikuti perkara ini dan jujukannya semua titik di sekitar, yang bergantung pada apa yang anda ada, atau jangan lakukan bahagian kedua sehingga anda telah melakukan bahagian pertama kerana ia bergantung pada bahagian pertama. Apa yang diberikan kepada kami adalah metodologi baru untuk menjadi lebih tangkas, yang mana istilahnya berasal, mengenai bagaimana kami menyampaikan sesuatu, dan khususnya mengenai penyampaian projek akar umbi dalam reka bentuk dan pembangunan.

Beberapa penyewa utama - hanya jadi saya meneruskan dengan ini - adalah sekitar penyewa utama scrum. Ia memperkenalkan idea ketidakstabilan bangunan, yang berkesan jika anda berfikir tentang ketakutan kekacauan, dunia wujud dalam keadaan kekacauan, tetapi planet terbentuk, yang menarik, sehingga ketidakstabilan bangunan, keupayaan untuk melantun sedikit dan masih benar-benar membuat kerja-kerja, pasukan projek sendiri mengendalikan, pertindihan nikmat melalui pembangunan yang sangat bertanggungjawab, pelbagai jenis pembelajaran dan kawalan melalui perjalanan penyampaian projek, pemindahan pembelajaran organisasi. Jadi bagaimana kita mengambil maklumat dari satu bahagian perniagaan dan memindahkannya kepada yang lain dari orang yang mempunyai idea tetapi tidak membangunkan kod atau tidak mengembangkan pangkalan data dan infrastruktur, tetapi data kepada orang-orang itu? Dan secara khususnya hasil kotak-kotak. Dengan kata lain, mari kita lakukan ini untuk tempoh masa, sama ada sehari seperti dalam 24 jam, atau seminggu atau beberapa minggu dan melihat apa yang boleh kita lakukan dan kemudian melangkah mundur dan melihatnya.

Jadi, jika anda mengampuni pun, ini benar-benar satu permainan baru dalam penghantaran projek dan tiga komponen teras kepadanya yang akan masuk akal kerana kami mendapat sedikit lagi di sini - ada produk: semua orang ini mempunyai idea dan mempunyai keperluan untuk mendapatkan sesuatu yang dilakukan dan cerita yang mengelilingi mereka. Pemaju yang beroperasi dalam model tangkas untuk mendapatkan kisah mereka dan melalui stand daily menggunakan kaedah scrum untuk membincangkannya dan memahami apa yang perlu mereka lakukan, dan kemudian pergi dan teruskan dan lakukannya. Kemudian orang-orang, kami telah mendengar tuan-tuan scrum yang menyelia perkara ini dan memahami metodologi dengan cukup baik untuk memandu. Kita semua melihat imej-imej ini yang saya dapat di sebelah kanan di sini dinding dan papan putih yang penuh dengan nota Post-It dan mereka berkhidmat sebagai dinding Kanban. Jika anda tidak tahu siapa Kanban, saya menjemput anda ke Google yang Encik Kanban dan mengapa ia adalah perubahan dalam cara kita memindahkan sesuatu dari satu pihak ke satu lagi di dinding secara literal tetapi dalam projek.

Sepintas lalu, aliran kerja scrum melakukan ini: ia mengambil senarai perkara yang ingin dilakukan oleh organisasi, menjalankannya melalui satu siri perkara yang kita panggil sprint yang dipecah menjadi tempoh 24 jam, tempoh sebulan, dan kita dapatkan siri output tambahan ini. Ia adalah satu perubahan yang ketara ke arah projek-projek yang dihantar, diserahkan kepada peringkat itu kerana sebahagian daripadanya mengalir seperti tentera Amerika Syarikat yang mempunyai sebahagian besar dari membangun sesuatu yang disebut PMBOK, seperti gagasan yang tidak membawa tangki ke lapangan sehingga anda meletakkan peluru ke dalam perkara itu kerana jika tangki di lapangan tidak mempunyai peluru, ia tidak berguna. Jadi oleh itu sebahagiannya diletakkan peluru di dalam tangki, bahagian kedua meletakkan tangki di lapangan. Malangnya, apa yang berlaku dengan pemaju di dunia pembangunan entah bagaimana mendapat metodologi tangkas ini dan lari dengannya, jika anda mengampuni pun, pada pecut.

Selalunya yang berlaku adalah, apabila kita berfikir secara lincah kita biasanya berfikir tentang pemaju dan bukan pangkalan data dan apa-apa kaitan dengan dunia pangkalan data. Ia adalah hasil yang tidak disengajakan kerana realitinya adalah bahawa tangkas tidak terhad kepada pemaju. Sebenarnya istilah yang tangkas dalam pandangan saya sering salah secara eksklusif dikaitkan dengan pemaju perisian dan bukan pereka pangkalan data dan arkitek. Selalunya cabaran yang sama yang anda hadapi dalam perisian dan pembangunan aplikasi dihadapi dalam semua perkara berkaitan dengan reka bentuk dan pembangunan dan operasi dan penyelenggaraan dan oleh itu infrastruktur data dan terutamanya pangkalan data. Pelakon-pelakon dalam data data tertentu termasuk orang-orang seperti arkitek data, pencetak, pentadbir, pengurus prasarana pangkalan data dan pangkalan data sebenarnya sendiri sepanjang jalan ke penganalisis dan perniagaan dan arsitek, orang yang duduk dan berfikir tentang bagaimana sistem dan perniagaan beroperasi dan bagaimana kami dapat mengalirkan data melalui ini.

Ia adalah satu topik yang sering saya bawa kerana ia adalah kekecewaan berterusan saya kerana saya sangat berpendapat bahawa pakar data mesti - tidak harus - kini perlu terlibat dalam setiap komponen penyampaian projek, terutama sekali pembangunan. Bagi kami tidak, kami sebenarnya tidak memberikan peluang terbaik untuk mendapatkan hasil yang baik. Kita sering perlu mengelilingi dan berfikir sejenak tentang perkara ini kerana terdapat senario, kita dapat membuat aplikasi dibina dan kita mendapati pemaju tidak selalu pakar data. Bekerja dengan pangkalan data memerlukan kemahiran yang sangat khusus, terutamanya di sekitar data, dan membina pengalaman. Anda tidak sekadar menjadi guru pangkalan data atau pakar pengetahuan data semalaman; ini sering kali sesuatu yang datang dari pengalaman seumur hidup dan pastinya dengan orang-orang seperti Dr Robin Bloor pada Kod Hari ini, yang agak kaya menulis buku itu.

Dalam banyak kes - dan ia adalah malang tetapi ia adalah realiti - bahawa terdapat dua bahagian duit syiling ini, iaitu pemaju perisian mempunyai pemadaman sendiri tentang pakar pangkalan data dan membina kemahiran yang anda perlukan dalam model pangkalan data pangkalan data, pembangunan model hanya asas untuk kejuruteraan guru tentang bagaimana data masuk dan bagaimana organisasi perjalanan yang diperlukan dan apa yang sepatutnya atau tidak sepatutnya, atau tidak pasti yang menelan dan memahami bahawa ia biasanya mendapat kemahiran asli untuk pemaju perisian. Dan beberapa cabaran yang sering kita hadapi, hanya untuk memasukkannya dalam konteks, termasuk seperti penciptaan asas dan penyelenggaraan dan pengurusan pangkalan data asas teras itu sendiri, mendokumenkan data dan infrastruktur pangkalan data dan kemudian menggunakan semula aset data, reka bentuk skema, generasi skema, pentadbiran dan penyelenggaraan skema dan penggunaannya, berkongsi pengetahuan tentang mengapa skema ini direka dengan cara tertentu dan kekuatan dan kelemahan yang datang dengan sebab itu menyebabkan perubahan data dari masa ke masa, pemodelan data dan jenis model yang kita gunakan untuk sistem dan data yang kita mengalir melalui mereka. Penjanaan kod pangkalan data dan ia menyatukan dan kemudian memodelkan data di sekelilingnya dan kemudian akses yang lebih pantas untuk mengawal keselamatan di sekeliling data, integriti data kami memindahkan data sekitar kerana kami mengekalkan integritinya, terdapat metadata yang cukup di sekeliling, adakah jualan melihat semua rekod di dalam jadual atau sekiranya mereka hanya melihat alamat, nama pertama, nama akhir yang menghantar barangan kepada anda di pos? Dan kemudian tentu saja cabaran terbesar dari semua adalah platform pangkalan data pemodelan yang sepenuhnya perbualan yang berbeza dengan sendirinya.

Saya sangat berpandangan bahawa dengan semua ini dalam fikiran untuk membuat mana-mana nirvana ini mungkin, ia benar-benar kritikal bahawa kedua-dua pakar data dan pemaju mempunyai alat yang sesuai dan bahawa alat-alat itu mampu penyampaian projek yang memberi tumpuan kepada pasukan, reka bentuk, pembangunan dan penyelenggaraan operasi yang berterusan. Anda tahu, perkara-perkara seperti bekerjasama merentas projek antara pakar data dan pemaju perisian, titik tunggal kebenaran atau sumber kebenaran tunggal untuk semua perkara di sekitar dokumentasi pangkalan data itu sendiri, data, skema, di mana rekod berasal, pemilik rekod tersebut . Saya fikir hari ini dan usia ini sangat kritikal, kita akan mendapatkan data nirvana ini sebagai raja, bahawa alat yang betul harus ada kerana cabarannya terlalu besar sekarang bagi kita untuk melakukannya secara manual, dan jika orang bergerak masuk dan keluar dari satu organisasi, terlalu mudah bagi kita untuk tidak mengikuti proses atau metodologi yang sama yang seseorang boleh menetapkan yang baik dan tidak semestinya memindahkan kemahiran dan keupayaan tersebut ke depan.

Dengan itu, saya akan menuju ke rakan baik kami di IDERA dan mendengar tentang alat itu dan bagaimana ia menangani perkara-perkara ini.

Ron Huizenga: Terima kasih banyak dan terima kasih kepada kedua-dua Robin dan Dez kerana benar-benar menetapkan panggung dengan baik, dan anda akan melihat beberapa pertindihan dalam beberapa perkara yang saya telah bicarakan. Tetapi mereka benar-benar menetapkan asas yang sangat kukuh untuk beberapa konsep yang akan saya bicarakan dari perspektif pemodelan data. Dan banyak perkara yang mereka katakan telah mengulangi pengalaman saya sendiri ketika saya seorang perunding yang bekerja dalam pemodelan data dan seni bina data, bersama dengan pasukan - kedua-dua air terjun pada hari-hari awal dan berkembang menjadi produk yang lebih moden dengan projek-projek di mana kita menggunakan tangkas kaedah untuk menyampaikan penyelesaian.

Jadi apa yang akan saya ceritakan hari ini adalah berdasarkan kepada pengalaman dan juga pandangan alat dan beberapa keupayaan dalam alat yang kami gunakan untuk membantu kami sepanjang perjalanan itu. Apa yang akan saya pelajari secara ringkas adalah, saya tidak akan pergi ke scrum dengan banyak terperinci; kami hanya mempunyai gambaran yang sangat baik tentang apa itu. Saya akan membincangkannya dari segi, apakah model data dan apakah maksudnya kepada kami? Dan bagaimanakah kita membolehkan konsep pemodel data tangkas dalam organisasi kita, dari segi, bagaimanakah kita melibatkan pemodelan data, apakah penyertaan pemodel dan arkitek semasa pecut, apakah jenis aktiviti yang mereka mesti terlibat dalam, dan, sebagai latar belakang itu, apakah beberapa keupayaan alat pemodelan yang penting yang kami gunakan untuk membantu membuat kerja itu lebih mudah? Kemudian saya akan pergi ke sedikit bungkus dan hanya bercakap sedikit tentang beberapa nilai perniagaan dan manfaat mempunyai pemodelan data yang terlibat, atau cara saya sebenarnya akan memberitahu cerita itu, masalah yang tidak mempunyai pemodelan data yang terlibat sepenuhnya dalam projek-projek dan saya akan menunjukkan kepada anda bahawa berdasarkan pengalaman dan carta kecacatan sebelum dan selepas imej projek sebenar yang saya terlibat dengan bertahun-tahun yang lalu. Dan kemudian kita akan meringkaskan beberapa mata lagi dan kemudian mempunyai soalan dan jawapan selain itu.

Sangat ringkas, ER Studio adalah suite yang sangat berkuasa yang mempunyai banyak komponen yang berbeza untuknya. Arkitek Data, di mana pemodelan data dan arkitek menghabiskan sebahagian besar masa mereka membuat pemodelan data mereka. Terdapat komponen lain juga yang tidak akan kita bicarakan pada hari ini seperti Arkitek Perniagaan, di mana kita melakukan pemodelan proses dan Arkitek Perisian, untuk beberapa pemodelan UML. Kemudian ada Repository, di mana kami menyemak dan kami berkongsi model dan kami membenarkan pasukan untuk berkolaborasi pada mereka dan menyiarkannya ke server pasukan supaya penonton pelbagai pemangku yang terlibat dalam projek dapat melihat artifak yang kami ' mewujudkan semula dari perspektif data serta perkara-perkara lain yang kami lakukan dalam penghantaran projek itu sendiri.

Apa yang saya fokuskan pada hari ini akan menjadi beberapa perkara yang kita akan lihat daripada Arkitek Data dan kerana itu sangat penting bahawa kita mempunyai kerjasama aspek berasaskan Repositori itu. Terutama apabila kita mula membincangkan tentang konsep seperti pengurusan perubahan yang penting, bukan sahaja projek pembangunan yang tangkas, tetapi apa-apa jenis pembangunan yang akan berlaku.

Oleh itu, mari kita bercakap tentang Pemodel Data Agile untuk seketika. Seperti yang telah kita, jenis, yang telah disebutkan sebelum ini dalam persembahan, adalah penting bahawa kita mempunyai pemodelan data dan / atau arkitek yang terlibat sepenuhnya dalam proses pembangunan tangkas. Sekarang, apa yang berlaku dalam sejarah adalah, ya, kita telah benar-benar berfikir tentang tangkas dari perspektif pembangunan, dan ada beberapa perkara yang telah terjadi yang telah menyebabkan itu berlaku. Sebahagian daripadanya adalah disebabkan oleh sifat perkembangan pembangunan itu sendiri. Apabila perkembangan tangkas dimulakan dan kami memulakan dengan konsep pasukan penganjur diri ini, jika anda minum Kool-Aid sedikit terlalu murni dan anda berada di sisi pengaturcaraan yang melampau, terdapat interpretasi yang sangat harfiah mengenai perkara seperti pasukan penganjur diri, yang banyak diterjemahkan maksudnya, yang kita perlukan adalah sekumpulan pemaju yang boleh membina penyelesaian keseluruhan. Sama ada ia bermaksud membangunkan kod, pangkalan data atau datastore di belakangnya dan semuanya telah diturunkan kepada pemaju. Tetapi apa yang berlaku dengan itu adalah anda kehilangan keupayaan istimewa yang ada. Saya telah mendapati bahawa pasukan terkuat adalah mereka yang terdiri daripada orang dari latar belakang yang berbeza. Seperti gabungan pemaju perisian yang kukuh, arkitek data, pemodelan data, penganalisis perniagaan, dan pihak berkepentingan perniagaan, semua bekerjasama untuk mengeluarkan penyelesaian akhir.

Apa yang saya katakan hari ini ialah, saya akan melakukan ini dalam konteks projek pembangunan di mana kita sedang membangunkan aplikasi yang jelas akan mempunyai komponen data yang berkaitan dengannya juga. Kita perlu mengambil langkah mundur sebelum kita melakukannya, kerana kita perlu menyedari bahawa terdapat banyak projek pembangunan Greenfield di luar sana di mana kita mempunyai tumpuan sepenuhnya pada penciptaan dan penggunaan data yang terhad hanya dalam projek pembangunan itu sendiri . Kita perlu mengambil langkah mundur dan melihat sudut pandang organisasi keseluruhan dari perspektif data dan perspektif proses. Kerana apa yang kita ketahui ialah maklumat yang kita gunakan mungkin sudah ada di suatu tempat dalam organisasi. Sebagai pemodel dan arsitek, kami membawa itu kepada cahaya supaya kami tahu di mana untuk mendapatkan maklumat itu dari dalam projek itu sendiri. Kami juga mengetahui struktur data yang terlibat kerana kami mempunyai corak rekaan seperti pemaju yang mempunyai corak reka bentuk untuk kod mereka. Dan kita juga perlu mengambil perspektif organisasi keseluruhan itu. Kita tidak boleh melihat data dalam konteks aplikasi yang sedang kita bina. Kita perlu memodelkan data itu dan pastikan kita mendokumeninya kerana ia hidup jauh di luar aplikasi itu sendiri. Aplikasi tersebut datang dan pergi, tetapi kita perlu melihat data dan memastikan ia kukuh dan berstruktur, bukan sahaja untuk aplikasi, tetapi juga untuk keputusan yang melaporkan aktiviti, pelaporan BI dan integrasi kepada aplikasi lain, dalaman dan luaran juga organisasi kami. Oleh itu, kita perlu melihat keseluruhan gambaran besar data dan bagaimana kitaran hidup data itu dan memahami perjalanan maklumat di seluruh organisasi dari buaian ke kubur.

Sekarang kembali kepada pasukan sebenar sendiri dan bagaimana sebenarnya kita perlu bekerja adalah, metodologi air terjun dianggap terlalu lambat untuk menyampaikan hasil. Kerana, seperti yang ditunjukkan dengan contoh tangki, ia adalah satu langkah demi langkah dan sering mengambil masa terlalu lama untuk menyampaikan keputusan akhir yang boleh dilaksanakan. Apa yang kita lakukan sekarang adalah kita perlu mempunyai gaya kerja berulang di mana kita sedang mengembangkan komponen-komponen itu dan menjelaskannya menerusi masa di mana kita menghasilkan kod yang boleh digunakan atau artifak yang boleh digunakan, saya akan katakan, untuk setiap pecut. Yang penting ialah kerjasama antara pihak berkepentingan teknikal dalam pasukan dan pihak berkepentingan perniagaan kerana kami bekerjasama untuk mengusir cerita pengguna tersebut ke dalam visi kod yang boleh dilaksanakan dan data yang menyokong kod itu juga. Dan Pemodel Data Agile sendiri sendiri sering mendapati bahawa kami tidak mempunyai pemodelan yang mencukupi dalam organisasi sehingga satu pemodelan data atau arkitek pada masa yang sama dapat menyokong banyak pasukan.

Dan aspek lain itu, walaupun kita mempunyai beberapa pemodel, kita perlu memastikan bahawa kita mempunyai set alat yang kita gunakan yang membolehkan kerjasama pelbagai projek yang dalam penerbangan pada masa yang sama dan perkongsian mereka artifak data dan keupayaan daftar masuk dan daftar keluar. Saya akan pergi ke sini dengan cepat kerana kita sudah membahasnya di bahagian sebelumnya. Premis sebenar lincah adalah bahawa anda meletakkan perkara-perkara yang tidak dapat diselesaikan, cerita atau keperluan. Dalam lelaran kami berkolaborasi sebagai satu kumpulan. Lazimnya dua minggu atau satu pukulan satu bulan, bergantung kepada organisasi, sangat umum. Dan juga kajian harian dan pertemuan standup supaya kami menghapuskan penghalang dan memastikan kami bergerak semua aspek ke hadapan tanpa terhenti di kawasan yang berbeza ketika kami melangkah. Dan dalam sprint, kami ingin memastikan bahawa kami menghasilkan hasil yang boleh digunakan sebagai sebahagian daripada setiap pecut.

Hanya sedikit berbeza dengan itu, memperluaskannya lagi, scrum adalah metodologi yang saya akan bercakap lebih khusus di sini dan pada asasnya kami menambah gambar sebelumnya dengan beberapa aspek lain. Lazimnya ada produk backlog dan kemudian ada backlog pecut. Oleh itu, kita mempunyai tunggakan keseluruhan yang, pada permulaan setiap pengembalian pecut, kita terlepas untuk mengatakan, "Apa yang kita akan membina pecut ini?" Dan itu dilakukan dalam mesyuarat merancang pecut. Kemudian kita memecah tugas-tugas yang dikaitkan dengan itu dan kita melaksanakan dalam satu-ke-sprint empat minggu dengan ulasan harian. Seperti yang kita lakukan, kita menjejaki kemajuan kita melalui carta burn-up dan carta burn-down untuk mengesan pada dasarnya apa yang tersisa untuk membina berbanding apa yang kita sedang bina untuk menubuhkan sesuatu seperti halaju perkembangan kita, apakah kita akan membuat kita jadual, semua jenis perkara. Semua itu diterangkan secara berterusan semasa pecut dan bukannya pergi beberapa bulan ke bawah jalan dan mengetahui bahawa anda akan datang pendek dan anda perlu melanjutkan jadual projek. Dan yang sangat penting, sebagai sebahagian daripadanya, seluruh pasukan, terdapat semakan semula pecut pada akhir dan pukulan berleluasa, jadi sebelum anda memulakan lelaran seterusnya anda sedang meninjau apa yang anda lakukan dan anda sedang mencari cara yang anda boleh memperbaiki masa depan melalui.

Dari segi penyerahan, ini pada dasarnya adalah slaid yang meringkaskan jenis-jenis perkara biasa yang berlaku dalam sprint. Dan ia sangat berpusatkan perkembangan, jadi banyak perkara yang kita lihat di sini, seperti reka bentuk dan penggunaan fungsi, membuat ujian kod reka bentuk, apabila kita melihat kotak-kotak ini di sini, dan saya tidak akan meneruskannya dalam sebarang tahap terperinci, mereka sangat berorientasikan pembangunan. Dan dikebumikan di bawah sini adalah hakikat bahawa kita juga perlu mempunyai data-data yang dapat disampaikan yang bersatu dengan ini untuk menyokong usaha ini. Jadi setiap kali kita melihat perkara-perkara seperti backlog, kehendak dan cerita pengguna, seperti yang kita jalani, kita perlu melihat apa yang menjadi bahagian pembangunan yang perlu kita lakukan, apakah kepingan analisis yang perlu kita lakukan, bagaimana dengan reka bentuk data atau model data, bagaimana dengan perkara-perkara seperti glosari perniagaan supaya kita dapat mengaitkan makna perniagaan kepada semua artifak yang kami hasilkan? Kerana kita perlu menghasilkan barang-barang yang boleh digunakan dalam setiap pecut.

Sesetengah orang akan mengatakan bahawa kita perlu menghasilkan kod yang boleh digunakan pada akhir setiap pecut. Itu tidak semestinya berlaku, iaitu dalam perspektif pembangunan paling murni, tetapi agak kerap - terutamanya pada awalnya - kita mungkin mempunyai sesuatu seperti sifar pecut di mana kita memberi tumpuan semata-mata kepada perkara yang berdiri, melakukan perkara seperti mendapatkan strategi ujian kami dalam tempat. Reka bentuk peringkat tinggi untuk memulakannya sebelum kita mula mengisi butir-butir dan memastikan bahawa kita mempunyai set permulaan cerita atau keperluan yang bersih sebelum kita mula melibatkan penonton lain dan kemudian membina ke hadapan sebagai satu pasukan ketika kita maju. Selalu ada sedikit masa persediaan, jadi agak kerap kita akan mempunyai sifar pecut atau bahkan pecut sifar dan satu. Mungkin sedikit fasa permulaan sebelum kita mencapai penerbangan penuh dalam memberikan penyelesaian.

Mari kita bincangkan model data dalam konteks ini secara ringkas. Apabila orang memikirkan model data, mereka sering memikirkan model data sebagai gambaran bagaimana kepingan maklumat yang berlainan bersatu - itu hanya hujung puncak gunung. Untuk sepenuhnya merangkumi semangat bagaimana anda benar-benar mahu mendekati pemodelan data - sama ada dalam perkembangan tangkas dan lain-lain - adakah anda perlu sedar bahawa model data, jika dilakukan dengan betul, menjadi spesifikasi penuh anda tentang apa yang dimaksudkan dengan data dalam organisasi dan bagaimana ia digunakan dalam pangkalan data belakang. Apabila saya katakan pangkalan data, saya tidak hanya bermaksud pangkalan data hubungan yang mungkin kita gunakan, tetapi dalam seni bina hari ini di mana kita mempunyai data besar atau platform NoSQL, kerana saya lebih suka memanggilnya. Juga kedai data yang besar kerana kami mungkin menggabungkan banyak kedai data yang berbeza dari segi memakan maklumat dan membawanya ke penyelesaian kami serta cara kami menahan atau menyimpan maklumat itu daripada penyelesaian kami juga.

Kami mungkin bekerja dengan pelbagai pangkalan data atau sumber data serentak dalam konteks aplikasi tertentu. Apa yang sangat penting ialah kami ingin dapat mempunyai spesifikasi penuh, jadi spesifikasi logik tentang apa yang dimaksudkan dengan perspektif organisasi sprint, apa yang membina fizikal adalah dari segi bagaimana kita sebenarnya menentukan data, hubungan di antaranya pangkalan data anda, kekangan integriti rujukan anda, kekangan cek, semua potongan pengesahan yang biasanya anda fikirkan. Metadata deskriptif sangat penting. Bagaimana anda tahu cara menggunakan data dalam aplikasi anda? Kecuali anda boleh menentukannya dan tahu apa maksudnya atau tahu dari mana ia datang untuk memastikan anda memakan data yang betul dalam aplikasi tersebut - memastikan bahawa kami mempunyai konvensyen penamaan yang betul, definisi penuh, yang bermaksud kamus data penuh bukan sahaja jadual-jadual tetapi lajur yang terdiri daripada jadual-jadual dan nota penempatan penggunaan tentang cara kami menggunakannya kerana kita perlu membina asas pengetahuan ini kerana walaupun aplikasi ini telah selesai, maklumat ini akan digunakan untuk inisiatif lain supaya kita perlu memastikan bahawa kita mempunyai semua yang didokumentasikan untuk pelaksanaan masa depan.

Sekali lagi, kita turun ke perkara seperti jenis data, kunci, indeks, model data itu sendiri merangkumi banyak peraturan perniagaan yang dimainkan. Hubungan ini bukan sekadar kekangan antara jadual yang berlainan; mereka sering membantu kami untuk menerangkan peraturan perniagaan yang benar adalah bagaimana data itu berfungsi dan bagaimana ia berfungsi bersama sebagai unit yang padu. Dan tentu saja, sekatan nilai sangat penting. Kini, sudah tentu, salah satu perkara yang kita selalu berhadapan dengan, dan ia menjadi semakin banyak, adalah perkara seperti tadbir urus data. Jadi dari perspektif tadbir urus data, kita juga perlu melihat, apa yang kita nyatakan di sini? Kami ingin menentukan perkara seperti klasifikasi keselamatan. Apakah jenis data yang kita hadapi? Apa yang akan dianggap sebagai pengurusan data induk? Apakah kedai-kedai transaksi yang kita buat? Apakah data rujukan yang kami gunakan dalam aplikasi ini? Kita perlu memastikan yang betul ditangkap dalam model kami. Dan juga pertimbangan kualiti data, ada beberapa maklumat tertentu yang lebih penting untuk organisasi daripada yang lain.

Saya telah terlibat dalam projek-projek di mana kami menggantikan sistem sedozen lama dengan proses perniagaan baru dan mereka bentuk aplikasi baru dan kedai data untuk menggantikannya. Kita perlu tahu di mana maklumat itu datang. Yang mana untuk maklumat penting yang paling penting, dari perspektif perniagaan, jika anda memandang slaid model data tertentu yang saya ada di sini, anda akan melihat bahawa kotak bawah di entiti tertentu ini, yang hanya kecil subset, saya 'sebenarnya telah dapat menangkap nilai perniagaan. Sama ada tinggi, sederhana atau rendah untuk jenis perkara ini untuk pembinaan yang berbeza dalam organisasi. Dan saya juga telah menangkap perkara-perkara seperti kelas data induk, sama ada mereka adalah jadual induk, sama ada rujukan, jika mereka transaksional. Jadi, kita dapat memperluas metadata kami dalam model kami untuk memberi kami banyak ciri lain di luar data itu sendiri, yang benar-benar membantu kami dengan inisiatif lain di luar projek asal dan meneruskannya. Sekarang itu banyak dalam satu slaid, saya akan pergi melalui yang lain dengan cepat.

Saya sekarang akan bercakap dengan cepat mengenai apa yang dilakukan pemodelan data seperti yang kita jalankan melalui sprint yang berbeza ini. Pertama sekali, peserta penuh dalam sesi perjumpaan pecut, di mana kita mengambil cerita pengguna, melakukan apa yang akan kita lancarkan dalam pecut itu, dan memikirkan bagaimana kita akan menyusunnya dan menyampaikannya. Apa yang saya lakukan sebagai pemodel data adalah saya tahu saya akan bekerja di kawasan berasingan dengan pemaju yang berbeza atau dengan orang yang berbeza. Jadi, salah satu ciri penting yang boleh kita miliki adalah apabila kita melakukan model data, kita boleh membahagikan model data ke dalam pandangan yang berbeza, sama ada anda memanggilnya subjek atau sub-model, adalah istilah kami. Oleh kerana kita membina model kita juga menunjukkannya dalam perspektif sub-model yang berbeza ini supaya khalayak yang berbeza hanya melihat apa yang relevan dengannya supaya mereka boleh menumpukan perhatian kepada apa yang mereka sedang berkembang dan maju. Jadi saya mungkin ada orang yang bekerja di bahagian penjadualan sesuatu permohonan, saya mungkin ada orang lain yang bekerja pada kemasukan pesanan di mana kita melakukan semua perkara ini dalam satu pecut, tetapi saya dapat memberi mereka pandangan melalui sub-model yang hanya memohon kepada kawasan yang mereka sedang kerjakan. Dan kemudian mereka melancarkan model keseluruhan dan keseluruhan struktur sub-model untuk memberi pandangan khalayak yang berbeza yang mereka perlu lihat.

Asas-asalan dari perspektif pemodelan data yang kita mahu ada, sentiasa mempunyai asas yang kita boleh kembali kerana salah satu perkara yang perlu kita dapat lakukan adalah, sama ada pada akhir pecut atau pada akhir daripada beberapa sprint, kita ingin tahu di mana kita bermula dan sentiasa mempunyai garis dasar untuk mengetahui apakah delta atau perbezaan dari apa yang kita hasilkan dalam sprint tertentu. Kita juga perlu memastikan bahawa kita boleh mendapat pemulihan yang cepat. Sekiranya anda masuk ke dalamnya sebagai pemodel data tetapi dalam peranan penjaga pintu tradisional berkata "Tidak, tidak, anda tidak boleh berbuat demikian, kita perlu melakukan semua perkara ini terlebih dahulu, " anda akan dikecualikan daripada pasukan apabila anda benar-benar memerlukan untuk menjadi peserta aktif dalam semua pasukan pembangunan yang tangkas. Itu bererti beberapa perkara yang jatuh dari wagon melakukan sprint yang diberikan dan anda mengambilnya dalam sprint kemudian.

Sebagai contoh, anda boleh memberi tumpuan kepada struktur data hanya untuk mendapatkan pembangunan yang akan dikatakan, bahawa sekeping entri pesanan yang saya bicarakan. Dalam pecut kemudian, anda boleh kembali dan mengisi data seperti beberapa dokumentasi untuk kamus data sekitar beberapa artifak yang telah anda buat. Anda tidak akan menyelesaikan definisi itu dalam satu pecut; anda akan terus meneruskan penghantaran anda secara berperingkat kerana akan ada masa yang anda boleh mengisi maklumat yang bekerja dengan penganalisis perniagaan apabila pemaju sibuk membina aplikasi dan kegigihan sekitar kedai data tersebut. Anda mahu memudahkan dan tidak menjadi hambatan. Terdapat pelbagai cara yang kita bekerjasama dengan pemaju. Untuk beberapa perkara, kami mempunyai corak reka bentuk jadi kami adalah peserta penuh di depan, jadi kami mungkin mempunyai corak reka bentuk di mana kami akan mengatakan kami akan memasukkannya ke dalam model, kami akan menolaknya ke pangkalan data kotak pasir pemaju dan kemudian mereka boleh mula bekerja dengannya dan meminta perubahan kepada itu.

Mungkin terdapat bidang-bidang lain yang telah diusahakan oleh para pemaju, mereka telah mendapat sesuatu yang sedang mereka kerjakan dan mereka prototaip beberapa perkara supaya mereka mencuba beberapa perkara dalam persekitaran pembangunan mereka sendiri. Kami mengambil pangkalan data yang mereka bekerjasama, bawa ke dalam alat pemodelan kami, bandingkan dengan model yang kami ada dan kemudian selesaikan dan tolak perubahannya kepada mereka supaya mereka dapat refactor kod mereka supaya mereka mengikuti struktur data yang betul yang kita perlukan. Kerana mereka mungkin telah mencipta beberapa perkara yang sudah kami ada di tempat lain, jadi kami pastikan mereka bekerja dengan sumber data yang betul. Kami hanya terus melangkah melalui jalan ini ke pecut kami supaya kami dapat menyampaikan data lengkap, dokumentasi penuh dan definisi semua struktur data yang kami hasilkan.

Projek-projek tangkas yang paling berjaya yang saya telah terlibat dalam segi penghantaran yang sangat baik adalah, kita mempunyai falsafah, model semua perubahan kepada spesifikasi pangkalan data fizikal sepenuhnya. Pada dasarnya, model data menjadi pangkalan data yang digunakan yang anda bekerjasama untuk apa-apa perkara baru yang kami buat dan mempunyai rujukan penuh dari kedai data lain jika kami memakan dari pangkalan data luar lain. Sebagai sebahagian daripada itu, kami menghasilkan skrip incremental berbanding melakukan generasi penuh setiap kali. Dan kami menggunakan corak reka bentuk kami untuk memberikan kami tumpuan cepat dari segi mendapatkan perkara yang akan berlaku dalam sprint dengan pasukan pembangunan yang berbeza yang kami bekerjasama.

Dalam aktiviti sprint juga, adalah garis dasar untuk membandingkan / bergabung, jadi marilah kita mengambil idea memodelkan setiap perubahan. Setiap kali kita melakukan perubahan, apa yang ingin kita lakukan ialah kita mahu memodelkan perubahan dan apa yang sangat penting, apa yang telah hilang dari pemodelan data sehingga baru-baru ini, sebenarnya, sehingga kita memperkenalkannya, adalah keupayaan untuk mengaitkan pemodelan tugas dan penghantaran anda dengan cerita dan tugas pengguna yang sebenarnya menyebabkan perubahan tersebut berlaku. Kami mahu dapat menyemak perubahan model kami, cara pemaju menyemak kod mereka dengan cara yang sama, merujuk kepada cerita pengguna yang kami miliki sehingga kami tahu mengapa kami membuat perubahan di tempat pertama, itu adalah sesuatu yang kami lakukan. Apabila kita berbuat demikian, kita menghasilkan skrip DDL tambahan dan menyiarkannya supaya mereka boleh dijemput dengan hasil pembangunan lain dan diperiksa ke dalam penyelesaian pembina kami. Sekali lagi, kami mungkin mempunyai satu model atau bekerja dengan pelbagai pasukan. Dan seperti yang saya telah bicarakan, beberapa perkara berasal dari pemodelan data, perkara lain berasal dari pemaju dan kita bertemu di tengah-tengah untuk menghasilkan reka bentuk terbaik keseluruhan dan menolaknya ke hadapan dan memastikan ia direka dengan baik di dalam kita struktur data keseluruhan. Kami perlu mengekalkan disiplin untuk memastikan bahawa kami mempunyai semua pembinaan yang betul dalam model data kami seperti yang kita laksanakan, termasuk perkara-perkara seperti nilai null dan tidak nol, kekangan rujukan, pada dasarnya menyemak kekangan, semua perkara yang biasanya kita fikirkan .

Marilah kita bercakap tentang sekarang hanya beberapa tangkapan skrin beberapa alat yang membantu kita melakukan ini. Apa yang saya fikir penting adalah mempunyai repositori kolaboratif itu, jadi apa yang boleh kita lakukan sebagai pemodelan data - dan ini adalah coretan sebahagian daripada model data di latar belakang - adalah ketika kita sedang mengerjakan hal-hal yang kita ingin memastikan bahawa kita boleh kerja pada objek yang perlu diubah, membuat pengubahsuaian, menghasilkan skrip DDL kami untuk perubahan yang telah kami buat ketika kami menyemak semula perkara. Jadi, apa yang dapat kita lakukan ialah, dalam ER Studio adalah contoh, kita boleh menyemak objek atau kumpulan objek untuk berfungsi, kita tidak perlu menyemak keseluruhan model atau sub-model, kita boleh menyemak perkara-perkara yang menarik minat kita. Apa yang kita mahu selepas itu ialah sama ada check-out atau masa check-in - kami melakukannya dengan kedua-dua cara kerana pasukan pembangunan berbeza bekerja dengan cara yang berbeza. Kami ingin memastikan bahawa kami mengaitkannya dengan cerita atau tugas pengguna yang memacu keperluan untuk ini dan itu akan menjadi kisah atau tugas pengguna yang sama bahawa pemaju akan membangun dan menyemak kod mereka untuk.

Jadi, di sini adalah coretan yang sangat cepat dari beberapa skrin salah satu pusat pengurusan perubahan kami. Apa yang dilakukan ini, saya tidak akan terperinci dengan terperinci di sini, tetapi apa yang anda lihat adalah cerita atau tugas pengguna dan diandaikan di bawah setiap orang yang anda melihat rekod perubahan sebenar - kami telah mencipta rekod perubahan automatik apabila kami melakukan daftar masuk dan daftar keluar dan kami boleh memasukkan lebih banyak keterangan mengenai rekod perubahan itu juga. Ia dikaitkan dengan tugas ini, kita boleh mempunyai banyak perubahan setiap tugas, seperti yang anda harapkan. Dan apabila kita pergi ke rekod perubahan itu kita dapat melihatnya dan yang lebih penting melihat, apa yang sebenarnya kita berubah? Untuk yang khusus ini, cerita yang diserlahkan di sana saya mempunyai satu jenis perubahan yang dibuat dan apabila saya melihat rekod perubahan sebenar itu sendiri, ia telah mengenal pasti potongan individu dalam model yang telah berubah. Saya mengubah beberapa atribut di sini, menyesuaikan diri dengannya dan ia dibawa bersama untuk menunggang pandangan yang perlu diubah yang bergantung kepada mereka juga supaya mereka dijana dalam DLL incremental. Ia bukan hanya pemodelan pada objek asas, tetapi alat pemodelan berkuasa tinggi seperti ini juga mengesan perubahan yang perlu meresap melalui objek bergantung dalam pangkalan data atau model data juga.

Jika kita bekerja dengan pemaju, dan kita melakukan ini dalam beberapa perkara yang berbeza, yang melakukan sesuatu di dalam kotak pasir mereka dan kita mahu membandingkan dan melihat di mana perbezaannya, kita menggunakan kemampuan membandingkan / menggabungkan di mana di sebelah kanan dan kiri sebelah. Kita boleh mengatakan, "Inilah model kami di sebelah kiri, di sini adalah pangkalan data mereka di sebelah kanan, tunjukkan perbezaan saya." Kemudian kita dapat memilih dan memilih bagaimana kita menyelesaikan perbezaan tersebut, sama ada kita menolak sesuatu ke pangkalan data atau jika terdapat beberapa perkara yang mereka ada dalam pangkalan data yang kami bawa semula ke dalam model. Kita boleh pergi dua hala supaya kita boleh pergi kedua-dua arah serentak mengemas kini kedua-dua sumber dan sasaran dan kemudian menghasilkan skrip DDL tambahan untuk menggunakan perubahan tersebut kepada persekitaran pangkalan data itu sendiri, yang sangat penting. Apa yang boleh kita lakukan ialah kita juga boleh menggunakan kemampuan membandingkan dan menggabungkan kemampuan ini pada bila-bila masa, jika kita mengambil gambar di jalan, kita boleh selalu membandingkan permulaan satu pecut untuk memulakan atau menamatkan pecut lain supaya kita dapat melihat perubahan tambahan sepenuhnya mengenai apa yang telah dilakukan dalam pecut perkembangan tertentu atau lebih daripada satu siri sprint.

Ini adalah contoh yang sangat cepat dari skrip yang berubah, mana-mana di antara kamu yang telah bekerja dengan pangkalan data akan melihat jenis perkara ini, inilah yang kita dapat menolak dari kod sebagai skrip mengubah sehingga kita memastikan bahawa kita menyimpan perkara di sini. Apa yang saya tarik keluar dari sini, hanya untuk mengurangkan kekacauan, kita juga menganggap bahawa terdapat juga data dalam jadual tersebut, jadi kita juga akan menghasilkan DML yang akan menarik maklumat jadual sementara dan tolakkannya semula ke dalam struktur data baru juga supaya kita melihat tidak hanya struktur tetapi data yang kita mungkin sudah terkandung dalam struktur tersebut juga.

Akan bercakap dengan cepat tentang sistem pembina automatik kerana apabila kita melakukan projek tangkas agak kerap kita sedang bekerjasama dengan sistem pembina automatik di mana kita perlu menyemak dalam penghantaran yang berbeza bersama-sama untuk memastikan bahawa kita tidak memecahkan binaan kita. Maksudnya ialah kita menyegerakkan penyerahan, skrip perubahan yang saya bicarakan dengan skrip DDL perlu diperiksa, kod permohonan yang sepadan perlu diperiksa pada masa yang sama dan banyak pembangunan pemaju kini sudah tentu tidak dilakukan dengan SQL langsung terhadap pangkalan data dan jenis perkara itu. Seringkali kami menggunakan kerangka gigih atau perkhidmatan data bangunan. Kita perlu memastikan bahawa perubahan bagi kerangka kerja atau perkhidmatan tersebut diperiksa pada masa yang sama. Mereka masuk ke dalam sistem bina automatik di sesetengah organisasi dan jika binaan pecah, dalam metodologi tangkas, semua tangan di atas dek penetapan yang dibina sebelum kita bergerak ke depan supaya kita tahu bahawa kita mempunyai penyelesaian kerja sebelum kita pergi lebih jauh. Dan salah satu projek yang saya terlibat dengannya, kami mengambil ini dengan melampau - jika binaan pecah sebenarnya kami telah melekat pada beberapa komputer di kawasan kami di mana kami telah dicap dengan pengguna perniagaan, kami mempunyai lampu kilat merah sahaja seperti bahagian atas kereta polis. Dan jika binaan itu pecah, lampu-lampu kilat merah mula melepaskan dan kami tahu itu semua tangan di dek: membaiki binaan dan kemudian meneruskan apa yang kami lakukan.

Saya ingin bercakap tentang perkara-perkara lain, dan ini adalah keupayaan unik untuk ER Studio, ia benar-benar membantu apabila kita cuba membina artifak ini sebagai pemaju untuk batasan ketekunan ini, kita mempunyai konsep yang dikenali sebagai objek data perniagaan dan apa yang membolehkan kita lakukan adalah jika anda melihat model data yang sangat sederhana ini sebagai contoh, ia membolehkan kita untuk merangkum entiti atau kumpulan entiti untuk di mana sempadan ketekunan. Di mana kita sebagai pemodel data mungkin memikirkan sesuatu seperti header pesanan pembelian dan penyelarasan pesanan dan jadual terperinci lain yang akan mengikat bahawa dalam cara kita membina dan pemaju perkhidmatan data kita perlu tahu bagaimana perkara berterusan kepada data yang berbeza struktur. Pemaju kami memikirkan perkara seperti pesanan pembelian sebagai objek secara keseluruhan dan apakah kontrak mereka dengan cara mereka membuat objek tersebut. Kami boleh mendedahkan butiran teknikal supaya orang yang membina pelayan data dapat melihat apa yang di bawahnya dan kami dapat melindungi penonton lain dari kerumitan sehingga mereka hanya melihat objek peringkat tinggi yang berbeza, yang juga berfungsi dengan baik untuk berkomunikasi dengan perniagaan penganalisis dan pemegang kepentingan perniagaan apabila kita bercakap tentang interaksi konsep perniagaan yang berbeza juga.

Perkara yang baik tentang hal itu juga adalah kita membina dan membongkoknya secara mendalam supaya kita dapat mengekalkan hubungan di antara objek pesanan yang lebih tinggi walaupun ia berasal dari pembinaan yang terkandung dalam data perniagaan itu sendiri. Sekarang sebagai pemodel, sampai ke akhir pecut, pada akhir pecut, saya mempunyai banyak perkara yang perlu saya lakukan, yang saya panggil pengemasan saya untuk pecut seterusnya. Setiap pecut saya membuat apa yang saya panggil Release yang Dinamakan - yang memberi saya asas saya untuk apa yang saya miliki sekarang pada akhir pembebasan. Jadi ini bermakna bahawa garis dasar saya ke hadapan, semua asas ini atau Named Releases yang saya buat dan simpan dalam repositori saya boleh gunakan untuk membandingkan / menggabungkan supaya saya selalu dapat membandingkan dengan mana-mana akhir pecut yang diberikan dari mana-mana pecut lain, yang mana sangat penting untuk mengetahui perubahan anda kepada model data anda dalam perjalanan melalui perjalanannya.

Saya juga membuat skrip DDL delta menggunakan membandingkan / menggabung sekali lagi dari awal hingga akhir pecut. Saya mungkin telah memeriksa sejumlah besar skrip incremental, tetapi jika saya memerlukannya, saya kini mempunyai skrip yang boleh saya gunakan untuk mendirikan kotak pasir lain supaya saya dapat mengatakan ini adalah apa yang kita ada pada permulaan satu pecut, tolak ia melalui, membina pangkalan data sebagai kotak pasir untuk memulakan dengan pecut seterusnya dan kita juga boleh menggunakan perkara-perkara itu untuk melakukan perkara-perkara seperti contoh QA standup dan akhirnya sudah tentu kita mahu mendorong perubahan kita kepada pengeluaran sehingga kita mempunyai banyak perkara yang berlaku pada masa yang sama. Sekali lagi, kita mengambil bahagian sepenuhnya dalam perancangan pecut dan retrospektif, retrospektif adalah pelajaran yang dipelajari dan itu sangat penting, kerana anda boleh pergi dengan cepat semasa anda tangkas, anda perlu berhenti dan meraikan kejayaan, seperti sekarang. Perhatikan apa yang salah, menjadikannya lebih baik pada masa yang akan datang, tetapi juga meraikan perkara-perkara yang berjalan dengan lancar dan membina mereka sambil terus bergerak ke hadapan dalam pecut seterusnya ke depan.

Saya sekarang akan dengan cepat bercakap tentang nilai perniagaan. Terdapat satu projek yang saya terlibat dengan bertahun-tahun yang lalu yang bermula sebagai projek yang tangkas, dan ia merupakan projek yang melampau, jadi ia merupakan pasukan penyelenggaraan diri yang murni di mana ia hanya pemaju yang melakukan segala-galanya. Untuk membuat cerita panjang, projek ini terhenti dan mereka mendapati mereka menghabiskan lebih banyak dan lebih banyak masa untuk membetulkan dan membetulkan kecacatan yang dikenalpasti daripada mereka menolak kefungsian dan, pada hakikatnya, apabila mereka melihatnya berdasarkan pada carta bakar yang mereka akan perlu melanjutkan projek enam bulan dengan kos yang besar. Dan apabila kita melihatnya, cara untuk mengatasi masalah ini ialah menggunakan alat pemodelan data yang betul dengan pemodelan data yang mahir terlibat dalam projek itu sendiri.

Sekiranya anda melihat bar menegak ini pada carta tertentu ini, ini menunjukkan kecacatan kumulatif berbanding objek kumulatif, dan saya bercakap mengenai objek data atau pembinaan yang dibuat seperti jadual dengan kekangan dan jenis perkara, jika anda melihat sebelum pemodelan data diperkenalkan, bilangan cacat sebenarnya melebihi dan mula membina sedikit jurang ke atas bilangan sebenar objek yang dihasilkan sehingga titik itu dalam masa. Selepas minggu ke-21, ketika pemodelan data masuk, refactored model data berdasarkan apa yang ada untuk memperbaiki beberapa perkara dan kemudian memulakan pemodelan sebagai sebahagian daripada pasukan projek ke depan, perubahan-perubahan sebagai projek itu sedang didorong ke hadapan . Dan anda melihat pemulihan yang sangat pantas dalam tempoh kira-kira satu pukulan dan separuh, kita melihat peningkatan besar dalam bilangan objek dan data yang dibina dan dibina kerana kami menghasilkan alat pemodelan data dan bukannya tongkat pemaju membina mereka di dalam persekitaran, dan mereka betul kerana mereka mempunyai integriti rujukan yang tepat dan yang lain perlu dibina. Tahap kecacatan terhadap mereka yang hampir rata. Dengan mengambil tindakan yang sewajarnya dan memastikan pemodelan data sepenuhnya terlibat, projek itu disampaikan tepat pada waktunya dengan tahap kualiti yang lebih tinggi, dan sebenarnya, ia tidak akan disampaikan sama sekali sekiranya langkah-langkah tersebut tidak berlaku. Terdapat banyak kegagalan tangkas di luar sana, terdapat juga banyak kejayaan yang tangkas jika anda akan mendapat orang yang betul dalam peranan yang betul yang terlibat. Saya seorang penyokong yang besar sebagai satu disiplin operasi, tetapi anda perlu memastikan bahawa anda mempunyai kemahiran dari semua kumpulan yang tepat yang terlibat sebagai pasukan projek anda ketika anda meneruskan usaha jenis yang tangkas.

Untuk merumuskan, arkitek data dan pemodel mesti terlibat dalam semua projek pembangunan; mereka benar-benar adalah gam yang memegang segala-galanya bersama-sama kerana sebagai pemodel data dan arkitek yang kita fahami, bukan sahaja data membina projek pembangunan yang diberikan, tetapi juga di mana data wujud dalam organisasi dan di mana kita boleh sumber data itu dan juga bagaimana ia akan digunakan dan digunakan di luar aplikasi tertentu itu sendiri yang sedang kita kerjakan. Kami memahami hubungan data yang rumit dan sangat penting untuk dapat maju dan juga dari perspektif tadbir urus untuk memetakan dokumen dan memahami apa landskap data penuh anda.

Ia seperti pembuatan; Saya datang dari latar belakang pembuatan. Anda tidak boleh memeriksa kualiti menjadi sesuatu pada akhirnya - anda perlu membina kualiti ke dalam reka bentuk anda terdahulu dan dalam perjalanan anda, dan pemodelan data adalah cara membina kualiti itu ke dalam reka bentuk dengan cara yang cekap dan kos efektif sepanjang jalan . Dan sekali lagi, sesuatu yang perlu diingati - dan ini bukanlah perkara biasa, tetapi ia adalah kebenaran - aplikasi yang datang dan pergi, data adalah aset korporat yang penting dan melangkaui semua batasan permohonan itu. Setiap kali anda memasukkan dalam aplikasi, anda mungkin diminta untuk memelihara data daripada aplikasi lain yang terdahulu, jadi kami hanya perlu ingat bahawa ia adalah aset korporat yang penting yang kami terus mengekalkan dari masa ke masa.

Dan itu sahaja! Dari sini kita akan mengambil lebih banyak soalan.

Eric Kavanagh: Baiklah, baiklah, izinkan saya membuangnya kepada Robin terlebih dahulu. Dan kemudian, Dez, saya pasti anda mempunyai beberapa soalan. Ambilnya, Robin.

Dr. Robin Bloor: Baiklah. Sejujurnya, saya tidak pernah mempunyai sebarang masalah dengan kaedah pembangunan yang lincah dan ia seolah-olah saya apa yang anda lakukan di sini membuat rasa ketara. Saya masih ingat melihat sesuatu yang berlaku pada tahun 1980-an yang menunjukkan bahawa masalah yang sebenarnya anda jalani dari segi projek berputar di luar kawalan, biasanya jika anda membiarkan kesilapan berterusan di luar tahap tertentu. Ia hanya menjadi lebih sukar dan sukar untuk diperbaiki jika anda tidak mendapat peringkat itu, jadi salah satu perkara yang anda lakukan di sini - dan saya fikir ini adalah slaid - tetapi salah satu perkara yang anda lakukan di sini dalam pecutan sifar, pada pendapat saya, adalah sangat penting kerana anda benar-benar cuba untuk mendapatkan penghantaran yang disematkan di sana. Dan jika anda tidak dapat menyerahkan barang yang disematkan, maka barang-barang boleh berubah.

Itulah, macam pendapat saya. Ia juga pendapat saya - saya benar-benar tidak mempunyai apa-apa hujah dengan idea bahawa anda perlu mendapatkan pemodelan data tepat ke tahap terperinci tertentu sebelum anda melangkah. Apa yang saya ingin anda cuba dan lakukan kerana saya tidak mendapat gambaran sepenuhnya, hanya menggambarkan salah satu daripada projek ini dari segi ukurannya, dari segi cara mengalir, dari segi siapa, anda tahu, di mana masalah timbul, adakah mereka dapat diselesaikan? Kerana saya fikir slaid ini cukup banyak hati dan jika anda dapat menguraikan sedikit lebih lanjut mengenai itu, saya akan sangat berterima kasih.

Ron Huizenga: Pastinya, dan saya akan menggunakan beberapa contoh projek. Satu yang, jenisnya, melepaskan landasan yang dibawa kembali dengan sebenarnya mendapatkan orang yang betul yang terlibat dan melakukan pemodelan data dan segala-galanya adalah satu cara untuk memastikan reka bentuk itu difahami dengan lebih baik dan kami jelas mempunyai reka bentuk pelaksanaan yang lebih baik dalam perjalanan melalui model itu. Kerana apabila anda memodelinya, anda tahu, anda boleh menjana DDL dan segala-galanya dari belakang dan keluar dari alat dan bukannya perlu melekat membina seperti orang mungkin biasanya lakukan dengan terus ke persekitaran pangkalan data. Dan perkara biasa yang akan berlaku dengan pemaju adalah mereka akan masuk ke sana dan mereka akan berkata, okay, saya memerlukan jadual ini. Katakan kita sedang melakukan penyertaan pesanan. Jadi mereka mungkin membuat tajuk pesanan dan jadual terperinci pesanan, dan jenis perkara itu. Tetapi mereka akan sering lupa atau mengabaikan untuk memastikan bahawa kekangan ada di sana untuk mewakili hubungan utama asing. Mereka mungkin tidak mempunyai kunci yang betul. Konvensyen penamaan mungkin disyaki juga. Saya tidak tahu berapa kali saya pergi ke persekitaran, contohnya, di mana anda melihat banyak jadual berbeza dengan nama yang berlainan, tetapi kemudian nama lajur dalam jadual tersebut adalah seperti ID, Nama, atau apa sahaja, jadi mereka 'benar-benar kehilangan konteks tanpa jadual tepat apa itu.

Oleh itu, biasanya apabila kami memodelkan data, kami akan memastikan bahawa kami menggunakan konvensyen penamaan yang betul untuk semua artifak yang dihasilkan dalam DDL juga. Tetapi untuk menjadi lebih spesifik tentang sifat projek itu sendiri, pada umumnya, saya bercakap tentang inisiatif yang agak besar. Salah satunya adalah projek transformasi perniagaan bernilai $ 150 juta di mana kami menggantikan sistem sedozen. Kami mempunyai lima pasukan tangkas yang berbeza yang berlaku pada masa yang sama. Saya mempunyai pasukan seni bina data penuh, jadi saya mempunyai pemodelan data dari pasukan saya yang tertanam di setiap satu daripada pasukan aplikasi aplikasi lain, dan kami bekerja dengan gabungan pakar perniagaan dalaman yang mengetahui perkara yang sedang dilakukan cerita pengguna untuk keperluan mereka sendiri. Kami mempunyai penganalisis perniagaan dalam setiap pasukan yang benar-benar memodelkan proses perniagaan, dengan gambar rajah aktiviti atau gambar rajah proses perniagaan, membantu menjana lebih banyak cerita pengguna dengan pengguna sebelum mereka dimakan oleh baki pasukan itu juga.

Dan kemudian, tentu saja, pemaju yang membina kod aplikasi di atas itu. Dan kami juga bekerjasama, saya fikir ia adalah empat vendor integrasi sistem yang berbeza yang membina bahagian-bahagian aplikasi yang berlainan di mana satu pasukan membina perkhidmatan data, yang satu lagi membina logik aplikasi di satu kawasan, satu lagi yang mempunyai kepakaran di kawasan perniagaan lain sedang membina logik aplikasi di kawasan itu. Oleh itu, kami telah menjalin kerjasama dengan semua orang yang sedang menjalankan projek ini. Pada yang tertentu, kami mempunyai 150 orang di pantai di atas pasukan dan satu lagi 150 sumber daya luar pesisir di dalam pasukan yang bekerjasama dengan dua minggu untuk menggerakkan perkara ini. Dan untuk melakukan itu, anda perlu memastikan anda menembak pada semua silinder, dan semua orang disegerakkan dengan baik dari segi apa yang boleh dihantar, dan anda mempunyai reset yang kerap untuk memastikan kami menyelesaikan penghantaran semua artifak yang diperlukan pada akhir setiap pecut.

Dr Robin Bloor: Nah, itu hebat. Dan hanya untuk sedikit lebih terperinci mengenai itu - adakah anda berakhir dengan lengkap, apa yang saya panggil, peta MDM dari keseluruhan bidang data pada akhir projek itu?

Ron Huizenga: Kami mempunyai model data lengkap yang dipecahkan dengan penguraian di kalangan semua bidang perniagaan yang berbeza. Kamus data itu sendiri dari segi definisi penuh jatuh sedikit pendek. Kami mempunyai kebanyakan jadual yang ditakrifkan; kami mempunyai kebanyakan lajur yang ditakrifkan sama seperti apa yang mereka maksudkan. Terdapat beberapa yang tidak ada dan, dengan cukup menarik, banyak daripada mereka adalah kepingan maklumat yang datang dari sistem warisan di mana, selepas berakhirnya skop projek itu sendiri, yang masih didokumenkan sebagai set membawa ke hadapan Artefak, kerana ia, di luar projek itu sendiri, kerana ia adalah sesuatu yang perlu dikekalkan oleh organisasi ke depan. Oleh itu pada masa yang sama organisasi mengambil pandangan yang lebih besar tentang pentingnya tadbir urus data kerana kita melihat banyak kekurangan dalam sistem legasi dan sumber data warisan yang kita cuba gunakan kerana mereka tidak didokumenkan. Dalam banyak keadaan, kami hanya mempunyai pangkalan data yang kami perlu membalikkan jurutera dan cuba mencari tahu apa yang ada dan apa maklumat itu.

Dr. Robin Bloor: Ia tidak mengejutkan saya, aspek tertentu itu. Tadbir urus data adalah, mari kita panggilnya, kebimbangan yang sangat moden dan saya fikir, sebenarnya, ada banyak kerja yang, katakan, sepatutnya dilakukan secara historis mengenai tadbir urus data. Ia tidak pernah kerana anda boleh, jenis, lari dengan tidak melakukannya. Tetapi kerana sumber data hanya tumbuh dan berkembang, akhirnya anda tidak dapat.

Bagaimanapun, saya akan berpindah ke Dez kerana saya fikir saya mempunyai masa yang saya peruntukkan. Dez?

Dez Blanchfield: Ya, terima kasih. Melalui perkara ini saya menonton dan berfikir pada diri sendiri bahawa kita bercakap tentang melihat tangkas yang digunakan dalam kemarahan dalam pelbagai cara. Walaupun itu ada konotasi negatif; Saya maksudkan bahawa dengan cara yang positif. Bolehkah anda hanya memberi kita satu senario, maksud saya, ada dua tempat yang saya dapat melihat ini menjadi satu set yang sempurna: satu adalah projek baru yang perlu dilakukan dari hari pertama, tetapi saya fikir selalu, dalam pengalaman saya, sering kes apabila projek-projek mendapat cukup besar bahawa ini perlu dalam pelbagai cara, ada cabaran yang menarik antara merekatkan kedua dunia, bukan? Bolehkah anda memberi kami gambaran tentang beberapa kisah kejayaan yang telah anda lihat di mana anda telah masuk ke dalam organisasi, sudah jelas bahawa mereka telah mendapat pertembungan kecil dari dua dunia dan anda telah dapat berjaya meletakkan ini di tempat dan membawa projek-projek besar bersama-sama di mana mereka mungkin telah pergi ke rel? Saya tahu ia adalah soalan yang sangat luas tetapi saya hanya tertanya-tanya jika ada kajian kes tertentu yang anda boleh, semacam, tunjukkan ke mana anda berkata, anda tahu, kami meletakkan semua ini di tempat dan ia membawa semua pasukan pembangunan bersama-sama pasukan data dan kami, semacam, menangani sesuatu yang mungkin telah menenggelamkan bot?

Ron Huizenga: Sudah tentu, dan sebenarnya satu projek yang menjadi projek saluran paip adalah yang saya sebutkan di mana saya menunjukkan carta dengan kecacatan sebelum dan selepas modeler data terlibat. Sering kali, dan ada tanggapan yang dipertimbangkan, terutamanya jika perkara diputar di mana ia dilakukan dari perspektif pembangunan semata-mata, ia hanya pemaju yang terlibat dalam projek-projek ini untuk menyampaikan permohonan. Jadi, apa yang terjadi di sana, sudah tentu mereka keluar dari rel dan artifak data mereka khususnya, atau data-data yang dihasilkan yang dihasilkan oleh mereka, tidak mencukupi dari segi kualiti dan benar-benar menangani perkara secara keseluruhan. Dan sering kali salah faham ini bahawa pemodelan data akan memperlahankan projek-projek ke bawah, dan mereka akan jika pemodelan data tidak mempunyai sikap yang betul. Seperti yang saya katakan, anda perlu kehilangan - kadang-kadang terdapat pemodelan data yang mempunyai sikap penjaga pintu tradisional di mana, "Kami berada di sini untuk mengawal apa bentuk struktur data, " dan mentaliti itu harus hilang. Sesiapa sahaja yang terlibat dalam pembangunan tangkas, dan terutamanya pemodelan data, perlu mengambil peranan sebagai fasilitator untuk membantu pasukan bergerak ke hadapan. Dan cara terbaik untuk menggambarkan bahawa dengan cepat menunjukkan pasukan bagaimana produktif mereka boleh dengan memodelkan perubahan terlebih dahulu. Dan sekali lagi, itulah sebabnya saya bercakap mengenai kerjasama.

Terdapat beberapa perkara yang boleh kita model terlebih dahulu dan menghasilkan DDL untuk menolak kepada pemaju. Kami juga ingin memastikan bahawa mereka tidak merasa seperti mereka terhad. Jadi, jika ada perkara yang mereka kerjakan, biarkan mereka terus bekerja di kotak pasir pembangunan mereka, kerana di sinilah pemaju sedang mengusahakan komputer mereka sendiri atau pangkalan data lain untuk membuat beberapa perubahan di mana mereka sedang menguji perkara. Dan bekerjasama dengan mereka dan berkata, "Baiklah, bekerjasama dengan itu." Kami akan membawanya ke alat itu, kami akan menyelesaikannya dan kemudian kami akan menolaknya dan memberikan skrip yang anda boleh gunakan untuk mengemas kini pangkalan data untuk menaik taraf mereka kepada apa pandangan pengeluaran benar sebenar yang disandarkan akan menjadi seperti kita terus bergerak ke hadapan. Dan anda boleh mengubahnya dengan cara yang sangat cepat. Saya mendapati bahawa hari-hari saya penuh di mana saya hanya akan pergi berulang-ulang dengan pasukan pembangunan yang berbeza, melihat perubahan, membandingkan, menghasilkan skrip, membuat mereka pergi, dan saya dapat mengekalkan diri saya dengan empat pasukan pembangunan agak mudah sekali kita mencapai momentum.

Dez Blanchfield: Salah satu perkara yang perlu difikirkan dari itu ialah, anda tahu, banyak perbualan yang saya perolehi setiap hari adalah tentang tren pengangkutan ini yang datang kepada kami, semacam, mesin ke -machine dan IoT. Dan jika kami fikir kami mempunyai banyak data sekarang mengenai persekitaran semasa kami dalam perusahaan, anda tahu, jika kami mengambil unicorns untuk seketika di mana kita tahu bahawa Googles dan Facebook dan Ubers mempunyai petabytes data, tetapi dalam perusahaan tradisional kita bercakap tentang beratus-ratus terabyte dan banyak data. Tetapi ada tren kereta api ini yang datang pada organisasi, pada pandangan saya, dan Dr. Robin Bloor menyinggungnya sebelumnya, dari IoT. Anda tahu, kami mempunyai banyak lalu lintas web, kami mendapat trafik sosial, kami kini mempunyai pergerakan dan peranti mudah alih, awan mempunyai, semacam, meletup, tetapi kini kami mempunyai infrastruktur pintar, bandar pintar dan ada seluruh dunia data yang baru meletup.

Untuk organisasi sehari-hari, pertubuhan sederhana dan besar yang duduk di sana dan melihat dunia kesakitan ini datang kepada mereka dan tidak mempunyai rancangan segera dalam fikiran, apa yang beberapa mengambil, hanya beberapa ayat, yang anda akan meletakkan kepada mereka tentang kapan dan di mana mereka perlu mula berfikir secara perbualan mengenai meletakkan beberapa metodologi ini. Berapa awalnya mereka perlu mula merancang untuk hampir duduk dan memberi perhatian dan mengatakan ini adalah masa yang tepat untuk mendapatkan beberapa alat di tempat dan mendapatkan pasukan terlatih dan mendapatkan perbualan vocab yang berlaku di sekitar cabaran ini? Bagaimana terlambat dalam cerita terlambat atau ketika terlalu awal? Apa yang kelihatan seperti itu untuk sesetengah organisasi yang anda lihat?

Ron Huizenga: Saya akan mengatakan kepada kebanyakan organisasi bahawa jika mereka belum melakukannya dan menyesuaikan pemodelan data dan senibina data dengan alat yang berkuasa seperti ini, masa yang mereka perlu lakukan adalah semalam. Kerana itulah menarik, walaupun hari ini, apabila anda melihat data dalam organisasi, kami mempunyai banyak data dalam organisasi kami dan pada umumnya, berdasarkan beberapa tinjauan yang kami lihat, kami menggunakan kurang daripada lima peratus data tersebut dengan berkesan apabila kita melihat organisasi. Dan dengan IoT atau bahkan NoSQL, data besar - walaupun ia bukan hanya IoT, tetapi hanya data besar secara umum - di mana kita sekarang mulai mengambil lebih banyak maklumat yang berasal dari luar organisasi kita, cabaran itu semakin besar dan lebih besar setiap masa. Dan satu-satunya cara kita mempunyai peluang untuk dapat menangani itu ialah untuk membantu kita memahami apa data itu.

Oleh itu, kes penggunaan sedikit berbeza. Apa yang kita lakukan adalah ketika kita melihat data itu, kita menangkapnya, kita perlu membalikkan juruteranya, melihat apa yang ada di dalamnya, sama ada di dalam tasik data kita atau di dalam pangkalan data dalaman kita, mensintesis apa yang data adalah, gunakan maknanya dan takrif kepadanya supaya kita dapat memahami apa data itu. Kerana sehingga kita memahami apa itu, kita tidak boleh memastikan bahawa kita menggunakannya dengan betul atau secukupnya. Oleh itu, kita benar-benar perlu mengendalikan apa data itu. Dan bahagian lain itu, jangan lakukannya kerana anda boleh, dari segi memakan semua data luaran ini, pastikan anda mempunyai kes penggunaan yang menyokong memakan data luaran ini. Fokus pada perkara-perkara yang anda perlukan bukan sekadar cuba menarik dan menggunakan perkara-perkara yang mungkin anda perlukan nanti. Tumpukan perhatian kepada perkara-perkara penting terlebih dahulu dan semasa anda bekerja dengan cara itu, maka anda akan dapat memakan dan cuba memahami maklumat lain dari luar.

Satu contoh yang sempurna ialah, saya tahu kita sedang bercakap IOT dan sensor, tetapi jenis masalah yang sama sebenarnya telah ada dalam banyak organisasi selama bertahun-tahun, bahkan sebelum IoT. Sesiapa sahaja yang mempunyai sistem kawalan pengeluaran, sama ada syarikat saluran paip, pembuatan, mana-mana syarikat berasaskan proses yang mempunyai perkara-perkara di mana mereka melakukan banyak automasi dengan kawalan dan mereka menggunakan aliran data dan perkara-perkara seperti itu, firehoses data yang mereka cuba untuk minum keluar untuk memikirkan, apakah peristiwa-peristiwa yang telah berlaku dalam peralatan pengeluaran saya untuk memberi isyarat - apa yang berlaku dan kapan? Dan di antara aliran data yang besar ini hanya terdapat maklumat atau tag khusus yang mereka minat yang mereka perlukan untuk menyaring, mensintesis, memodelkan dan memahami. Dan mereka boleh mengabaikan selebihnya sehingga tiba masanya untuk benar-benar memahaminya, dan kemudian mereka dapat mengembangkan ruang lingkup mereka untuk menarik lebih banyak ke dalam skop, jika itu masuk akal.

Dez Blanchfield: Memang benar. Terdapat satu soalan yang saya akan memimpin yang datang dari seorang lelaki bernama Eric, dan kami telah bercakap mengenainya secara peribadi. Saya baru saja meminta izinnya, yang dia berikan, untuk memintanya. Kerana ia membawa dengan baik untuk ini, hanya untuk membungkus, kerana kita akan sedikit masa kini, dan saya akan kembali kepada Eric. Tetapi persoalan dari Eric yang lain, adalah munasabah untuk menganggap bahawa pemilik permulaan mengenali dan memahami cabaran-cabaran yang unik di sekitar istilah pemodelan dan sebagainya, atau patut diserahkan kepada orang lain untuk tafsirannya? Oleh itu, dalam erti kata lain, harus permulaan yang mampu dan bersedia dan bersedia dan dapat memberi tumpuan dan menyampaikannya? Atau adakah sesuatu yang mereka mungkin perlu membeli dan membawa pakar dalam perjalanan dengan?

Ron Huizenga: Saya rasa jawapan pendek adalah sangat bergantung. Jika ia merupakan permulaan yang tidak mempunyai seseorang di dalam rumah yang merupakan arkitek atau pemodelan data yang benar-benar memahami pangkalan data, maka cara paling cepat untuk memulakan adalah membawa seseorang dengan latar belakang perundingan yang sangat berpengalaman dalam ruang ini dan boleh mendapatkan mereka pergi. Kerana apa yang anda akan dapati - dan sebenarnya, saya melakukan ini dengan banyak perbualan yang saya lakukan sebelum saya datang ke sisi gelap dalam pengurusan produk - adakah saya akan pergi ke organisasi sebagai perunding, memimpin pasukan seni bina data mereka, supaya mereka dapat, sebaliknya, memfokuskan semula diri mereka dan melatih orang-orang mereka tentang bagaimana melakukan perkara-perkara seperti ini supaya mereka dapat menampung dan membawa misi ke depan. Dan kemudian saya akan pergi ke pertunangan seterusnya, jika itu masuk akal. Terdapat banyak orang di luar sana yang melakukan itu, yang mempunyai pengalaman data yang sangat baik yang boleh membawa mereka pergi.

Dez Blanchfield: Itulah titik perbatasan yang hebat dan saya setuju dengannya dan saya pasti Dr Robin Bloor juga akan. Terutama dalam permulaan, anda memberi tumpuan kepada menjadi PKS mengenai nilai proposisi tertentu yang anda cari untuk membina sebagai sebahagian daripada perniagaan permulaan anda sendiri dan anda mungkin tidak perlu menjadi pakar mengenai segala-galanya, nasihat yang begitu baik. Tetapi terima kasih banyak, persembahan hebat. Jawapan dan pertanyaan yang benar-benar hebat. Eric, saya akan menyerahkan kepada anda kerana saya tahu kami telah pergi sepuluh minit dari masa ke masa dan saya tahu anda ingin melekat pada tetingkap masa kami.

Eric Kavanagh: Tidak apa-apa. Kami mempunyai sekurang-kurangnya beberapa soalan yang baik. Biarkan saya membuang satu kepada anda. Saya rasa anda telah menjawab beberapa yang lain. Tetapi pemerhatian dan persoalan yang sangat menarik dari seorang peserta yang menulis, kadang-kadang projek tangkas mempunyai pemodelan data yang tidak mempunyai keseluruhan gambar jangka panjang dan sehingga mereka membuat reka bentuk sesuatu dalam satu pecut dan kemudian perlu mengubah reka bentuk dalam pecut tiga atau empat. Tidakkah ini kelihatan tidak produktif? Bagaimanakah anda dapat mengelakkan perkara semacam itu?

Ron Huizenga: Ia hanya sifat tangkas bahawa anda tidak akan mendapat segala-galanya betul-betul betul dalam pecut tertentu. Dan itu sebenarnya sebahagian daripada semangat tangkas, adalah: bekerjasama dengannya - anda akan melakukan prototaip di mana anda sedang bekerja pada kod dalam pecut tertentu, dan anda akan membuat perbaikan untuk itu. Dan sebahagian daripada proses itu adalah seperti yang anda sampaikan kepada pengguna akhir melihatnya dan berkata, "Ya itu sudah dekat, tetapi saya benar-benar perlu melakukannya sedikit tambahan ini juga." Maka itu bukan sahaja memberi impak kepada reka bentuk fungsional daripada kod itu sendiri tetapi agak kerap kita perlu mengubah suai atau menambah lebih banyak struktur data di bawah perkara-perkara tertentu untuk memberikan apa yang pengguna kehendaki. Dan itulah semua permainan yang adil dan itulah sebabnya anda benar-benar ingin menggunakan alat berkuasa tinggi kerana anda dapat dengan cepat membuat model dan membuat perubahan dalam alat pemodelan dan kemudian menghasilkan DDL untuk pangkalan data yang kemudiannya dapat dilakukan oleh pemaju untuk menyampaikannya berubah lebih cepat. Anda menyimpan mereka daripada melakukan pengekodan tangan itu, seperti struktur data dan membiarkan mereka menumpukan pada pengaturcaraan atau logik aplikasi yang mereka paling mahir.

Eric Kavanagh: Itu masuk akal sepenuhnya. Kami mempunyai beberapa orang lain yang hanya bertanya soalan khusus tentang bagaimana semua ini kembali kepada alat itu. Saya tahu anda meluangkan sedikit masa melalui contoh dan anda telah menunjukkan beberapa tangkapan skrin mengenai bagaimana anda benar-benar melancarkan beberapa perkara ini. Dari segi keseluruhan proses pecut ini, berapa kerapkah anda melihat bahawa dalam pertandingan di organisasi berbanding berapa kerap anda melihat lebih banyak proses tradisional di mana perkara-perkara semata-mata, semacam, memakan dan mengambil lebih banyak masa? Betapa lazimnya pendekatan gaya pecut dari perspektif anda?

Ron Huizenga: Saya fikir kita melihatnya lebih dan lebih. Saya tahu bahawa, saya akan mengatakan, mungkin dalam tempoh 15 tahun yang lalu khususnya, saya telah melihat lebih banyak penggunaan orang mengiktiraf bahawa mereka benar-benar perlu untuk menerima lebih cepat penghantaran. Jadi saya telah melihat organisasi yang semakin banyak melompat pada kereta muzik yang tangkas. Tidak semestinya sepenuhnya; mereka boleh memulakan dengan beberapa projek perintis untuk membuktikan bahawa ia berfungsi, tetapi ada beberapa yang masih sangat tradisional dan mereka berpegang dengan kaedah air terjun. Sekarang, berita baiknya, tentu saja, alat itu berfungsi dengan sangat baik dalam organisasi tersebut dan juga untuk jenis metodologi tersebut, tetapi kita mempunyai kesesuaian dalam alat itu sehingga mereka yang melompat di papan memiliki alat di kotak peralatan di hujung jari mereka. Perkara-perkara seperti membandingkan dan bergabung, seperti keupayaan kejuruteraan terbalik, supaya mereka dapat melihat apa sumber data yang sedia ada, sehingga mereka sebenarnya dapat membandingkan dan menjana skrip DDL tambahan dengan cepat. Dan apabila mereka mula memeluknya dan melihat bahawa mereka boleh mempunyai produktiviti, kecenderungan mereka untuk merangkul tangkas lebih banyak.

Eric Kavanagh: Baiklah, ini adalah barangan yang hebat. Saya hanya menyiarkan pautan ke slaid di dalam tetingkap sembang, jadi semak keluarnya; ia sedikit sedikit di sana untuk anda. Kami mempunyai semua webcast ini untuk tontonan kemudian. Jangan ragu untuk berkongsi dengan kawan-kawan dan rakan-rakan anda. Dan Ron, terima kasih banyak untuk masa anda hari ini, anda sentiasa bersenang-senang dalam pameran itu - pakar sebenar di lapangan dan jelas bahawa anda tahu barangan anda. Oleh itu, terima kasih kepada anda dan terima kasih kepada IDERA dan, sudah tentu, kepada Dez dan Robin Bloor kami sendiri.

Dan dengan itu kami akan membida perpisahan anda, orang-orang. Terima kasih lagi untuk masa dan perhatian anda. Kami menghargai anda melekat selama 75 minit, itu tanda yang baik. Orang lelaki yang baik, kami akan bercakap dengan anda pada masa akan datang. Selamat tinggal.

Pemodelan data dalam persekitaran yang tangkas