Кіріспе
Деректер элементтерін және олардың бір-бірімен, сондай-ақ нақты әлемдегі нысандармен қалай байланысқанын ұйымдастыратын модель. Деректер моделі – деректер элементтерін ұйымдастырып, олардың бір-бірімен және нақты әлемдегі нысандардың қасиеттерімен байланысын стандарттаушы абстрактілі модель. Мысалы, деректер моделі автомобильді бейнелейтін деректер элементі автомобильдің түсі мен көлемін көрсететін және оның иесін анықтайтын басқа элементтерден тұруы мүмкін. Осыған қатысты кәсіби қызмет әдетте деректерді модельдеу немесе, нақтырақ айтқанда, деректер базасын жобалау деп аталады. Деректер модельдерін әдетте деректер сарапшысы, деректер маманы, деректер ғалымы, деректер кітапханашысы немесе деректер зерттеушісі анықтайды. Деректерді модельдеу тілі мен белгілеуі көбінесе графикалық түрде диаграммалар арқылы бейнеленеді. Деректер моделі кейде, әсіресе бағдарламалау тілдері контекстінде, деректер құрылымы деп те аталуы мүмкін. Деректер модельдері көбінесе функциялық модельдермен толықтырылады, әсіресе кәсіпорын модельдері контекстінде. Деректер моделі деректердің құрылымын нақты анықтайды; керісінше, құрылымдалған деректер – бұл нақты деректер моделі немесе деректер құрылымы бойынша ұйымдастырылған деректер. Құрылымдалған деректер құрылымдалмаған және жартылай құрылымдалған деректерден өзгеше.
Шолу
Деректер моделі термині екі түрлі, бірақ өте байланысты ұғымды білдіре алады. Кейде ол белгілі бір қолдану саласында кездесетін нысандар мен қарым-қатынастардың абстрактілі формальдануын білдіреді: мысалы, өндіріс ұйымындағы клиенттер, өнімдер және тапсырыстар. Ал, басқа жағдайларда ол мұндай формальдануларды анықтау үшін қолданылатын ұғымдар жиынтығын білдіреді: мысалы, объектілер, атрибуттар, қатынастар немесе кестелер сияқты ұғымдар. Сондықтан, банк қолданбасының "дерек моделі" объектілер мен қатынастар "дерек моделі" арқылы анықталуы мүмкін. Бұл мақалада бұл термин екі мағынада да қолданылады. Ақпараттық жүйелердің басты функциясы – құрылымдалған және құрылымдалмаған деректердің үлкен көлемін басқару. Деректер модельдері деректерді басқару жүйелерінде, мысалы, реляциялық деректер базаларында сақталатын деректердің құрылымын, өңдеуін және тұтастығын сипаттайды. Олар сондай-ақ, мәтін редакторы құжаттары, электрондық хаттар, суреттер, цифрлық аудио және бейне сияқты еркін құрылымдағы деректерді де сипаттауы мүмкін: мысалы, XDM XML құжаттары үшін дерек моделін ұсынады.
Деректер моделінің рөлі
Деректер моделінің басты мақсаты – деректердің анықтамасы мен форматын ұсыну арқылы ақпараттық жүйелерді дамытуға көмектесу. West және Fowler (1999) пікірінше, “егер бұл жүйелерде тұрақты түрде орындалса, деректердің үйлесімділігіне қол жеткізуге болады. Егер деректерді сақтау және оларға қол жеткізу үшін бірдей дерек құрылымдары қолданылса, әртүрлі қолданбалар деректермен бөлісе алады. Бұл нәтижелер жоғарыда көрсетілген. Дегенмен, жүйелер мен интерфейстерді құру, пайдалану және күтіп ұстау жиі қажеттіден артық шығынға түседі. Олар бизнесті қолдаудың орнына керісінше, оны шектеуі мүмкін. Мұның басты себебі – жүйелер мен интерфейстерде іске асырылған деректер модельдерінің төмен сапасы”. Тұжырымдық деректер моделі: модельдің ауқымы болып табылатын саланың семантикасын сипаттайды. Мысалы, бұл ұйымның немесе индустрияның қызығушылықтарын көрсететін модель болуы мүмкін. Ол домендегі маңызды нәрселерді көрсететін нысан кластарынан және нысан кластарының жұптары арасындағы қатынастар туралы мәлімдемелерден тұрады. Тұжырымдық схема модельді пайдалану арқылы білдірілетін фактілер немесе тұжырымдардың түрлерін анықтайды. Осы тұрғыдан алғанда, ол модельдің ауқымымен шектелген жасанды “тілде” рұқсат етілген өрнектерді анықтайды. Логикалық деректер моделі: деректерді өңдеудің нақты технологиясымен ұсынылған семантиканы сипаттайды. Ол кестелер мен бағандардың сипаттамаларынан, объектіге бағытталған кластардан және XML тегтерінен және тағы басқалардан тұрады. Физикалық деректер моделі: деректер сақталатын физикалық тәсілдерді сипаттайды. Бұл бөлімдерге, процессорларға, кесте кеңістіктеріне және т.б. қатысты. ANSI-ге сәйкес, бұл тәсілдің маңыздылығы – үш көзқарасқа бір-бірінен салыстырмалы түрде тәуелсіз болуға мүмкіндік беруі. Сақтау технологиясы логикалық немесе тұжырымдық модельге әсер етпей өзгертілуі мүмкін. Кесте/баған құрылымы (қажет болмаған жағдайда) тұжырымдық модельге әсер етпей өзгертілуі мүмкін. Әрине, әр жағдайда құрылымдар басқа модельмен үйлесімді болуы керек. Кесте/баған құрылымы нысан кластары мен атрибуттарының тікелей аудармасынан өзгеше болуы мүмкін, бірақ ол ақыр соңында тұжырымдық нысан кластық құрылымының мақсаттарын орындауы тиіс. Көптеген бағдарламалық жасақтаманы әзірлеу жобаларының бастапқы кезеңдерінде тұжырымдық деректер моделінің дизайнына ерекше мән беріледі. Мұндай дизайн логикалық деректер моделіне толықтырылуы мүмкін. Кейінірек бұл модель физикалық деректер моделіне аударылуы мүмкін. Алайда, тұжырымдық модельді тікелей іске асыру да мүмкін.
Тарих
Ақпараттық жүйелерді модельдеудегі алғашқы ізашарлық жұмыстардың бірін Янг пен Кент (1958) жасады, олар "деректерді өңдеу мәселесінің ақпараттық және уақыт сипаттамаларын нақтылаудың дәл және абстрактілік тәсілі" туралы пікір білдірді. Олар "талдаушыға кез келген аппараттық құралдың негізінде мәселені ұйымдастыруға мүмкіндік беретін белгілеуді" жасағысы келді. Олардың жұмысы – әртүрлі аппараттық компоненттерді пайдалана отырып, әртүрлі баламалы іске асыруларды жобалау үшін абстрактілік сипаттама мен өзгермейтін негізді құруға жасалған алғашқы әрекет болды. ИС-ны модельдеудегі келесі қадамды 1959 жылы құрылған IT-индустрия консорциумы CODASYL жасады, оның мақсаты негізінен Янг пен Кенттің мақсатына ұқсас: "деректерді өңдеудің жүйелік деңгейінде машинаға тәуелсіз мәселені анықтау тілі үшін тиісті құрылымды" әзірлеу. Бұл белгілі бір ИС ақпараттық алгебрасының дамуына әкелді. 1960 жылдардың соңында Эдгар Ф. Кодд деректерді ұйымдастыру теориясын әзірледі және бірінші реттік предикаттық логикаға негізделген дерекқорды басқарудың реляциялық моделін ұсынды. 1970 жылдары құрылымдық-байланыс модельдеуі – тұжырымдамалық деректерді модельдеудің жаңа түрі ретінде пайда болды, оны алғаш рет 1976 жылы Питер Чен ресмилендірді. Құрылымдық-байланыс модельдері ақпараттық жүйелерді жобалаудың алғашқы кезеңінде, талаптарды талдау кезінде мәліметтер базасында сақталуға тиіс ақпараттың түрін немесе ақпаратқа қажеттіліктерін сипаттау үшін қолданылды. Бұл әдіс кез келген онтологияны, яғни белгілі бір қызығушылық саласы үшін ұғымдар мен олардың қарым-қатынастарының шолуын және жіктелуін сипаттай алады. 1970 жылдары Г. М. Нийсен "Табиғи тілдегі ақпаратты талдау әдісін" (NIAM) әзірледі және оны 1980 жылдары Терри Халпинмен бірлесіп Объект-Рөлдік Модельдеуге (ORM) енгізді. Алайда, Терри Халпиннің 1989 жылғы докторлық диссертациясы Объект-Рөлдік Модельдеудің формальды негізін қалады. Билл Кент 1978 жылы жарық көрген "Деректер және шындық" атты кітабында деректерді аумақтың картасына теңеді. Басқа зерттеушілер математикалық тұрғыдан таза және әдемі модельдерді жасауға тырысқаннан өзгеше, Кент нақты әлемнің күрделілігіне және деректерді модельдеушінің міндетіне – шындықты тым бұрмаламай, хаостан тәртіп құруға баса назар аударды. 1980 жылдары Ян Л. Харрингтонның (2000) айтуынша, "объектіге бағытталған парадигманың дамуы деректерге және деректермен жұмыс істейтін процедураларға қарастыру тәсілінде түбірінен өзгеріс әкелді. Дәстүрлі түрде деректер мен процедуралар бөлек сақталады: деректер мен олардың байланысы деректер базасында, ал процедуралар қолданбалы бағдарламада. Объектіге бағытталған тәсіл, алайда, объектінің процедурасын оның деректерімен біріктірді". 1990 жылдардың басында Г. М. Нийсеннің жұмысын үш голланд математигі – Гвидо Бакема, Харм ван дер Лек және ЯнПитер Зварт жалғастырды. Олар семантиканың коммуникациялық бөлігіне көбірек назар бөлді. 1997 жылы олар FCO IM – толық коммуникацияға бағытталған ақпараттық модельдеу әдісін ресмилендірді.
Деректер құрылымының диаграммасы
Деректер құрылымы диаграммасы (DSD) – деректердің тұжырымдамалық модельдерін сипаттауға қолданылатын диаграмма және дерек моделі. Ол деректер құрылымдарын, олардың байланыстарын және оларды байланыстыратын шектеулерді көрсететін графикалық белгілерді ұсынады. DSD-нің негізгі графикалық элементтері – құрылымдарды бейнелейтін тіктөртбұрыштар және қатынастарды бейнелейтін жебелер. Деректер құрылымы диаграммалары күрделі деректерді құжаттау үшін ең тиімді. Деректер құрылымы диаграммалары – субъектілер арасындағы қатынастар моделінің (ER моделінің) кеңейтілген түрі. DSD-де атрибуттар тіктөртбұрыштардың ішінде, сыртында емес көрсетіледі, ал қатынастар атрибуттардан тұратын тіктөртбұрыштар түрінде бейнеленеді, олар құрылымдарды байланыстыратын шектеулерді анықтайды. DSD, ER моделінен өзгешелігі, ER моделі әртүрлі құрылымдар арасындағы қатынастарға баса назар береді, ал DSD бір құрылым ішіндегі элементтердің қатынастарын көрсетеді және пайдаланушыларға әр құрылым арасындағы байланыстарды толық көруге мүмкіндік береді. Деректер құрылымы диаграммаларын бейнелеудің бірнеше стилі бар, олардың арасындағы ерекшелік – кардиналдылықты анықтау тәсілі. Таңдау жебе бастары, кері жебе бастары (қараудың аяғы) немесе кардиналдылықтың сандық көрсетілуі арасында жасалады.
Субъектінің қатынас моделі
Субъектінің қатынас моделі (ERM), кейде субъектінің қатынас диаграммасы (ERD) деп аталады, бағдарламалық жасақтауда құрылымдалған деректерді көрсету үшін қолданылатын абстрактілі түсінік деректер моделін (немесе семантикалық деректер моделін немесе физикалық деректер моделін) бейнелеуге мүмкіндік береді. ERM үшін бірнеше нотациялар қолданылады. DSD-ге ұқсас, атрибуттар субъектінің тіктөртбұрышының ішінде, сыртында емес көрсетіледі, ал қатынастар сызықтармен бейнеленеді, ал қатынас шектеулері сол сызықтағы сипаттамалар түрінде жазылады. E R моделі берік болғанымен, көптеген атрибуты бар субъектілерді көрсету кезінде көруге қиын болуы мүмкін. Деректер құрылымы диаграммаларын бейнелеудің әртүрлі стильлері бар, олардың арасындағы ерекшелік – кардиналдылықты анықтау тәсілі. Таңдау жебе бастары, кері жебе бастары (қарғаның аяқтары) немесе кардиналдылықтың сандық көрсетілуі арасында жасалады.
Деректер ағыны диаграммасы
Деректер ағыны диаграммасы (ДАД) – ақпараттық жүйе арқылы деректердің "қозғалысын" графикалық түрде бейнелеу. Ол блок-схемадан өзгешелігі – бағдарламаның басқару ағыны емес, дерек ағынын көрсетеді. Деректер ағыны диаграммасын деректерді өңдеуді визуализациялау үшін де пайдалануға болады (құрылымдық жобалау). Деректер ағыны диаграммаларын Мартин мен Эстриннің "деректер ағыны графигі" есептеу моделіне негізделген құрылымдық жобалаудың бастапқы әзірлеушісі Ларри Константин ойлап тапты. Әдетте, жүйе мен сыртқы ұйымдар арасындағы өзара әрекеттесуді көрсететін контексттік деңгейдегі деректер ағыны диаграммасын бірінші кезекте салу қалыпты жағдай. ДАД жүйенің кішігірім бөліктерге қалай бөлінгенін көрсетуге және осы бөліктер арасындағы деректердің қозғалысын нақтылауға арналған. Бұл контексттік деңгейдегі деректер ағыны диаграммасы модельделетін жүйенің толыққанды мәліметтерін көрсету үшін "толықтырылады".
Ақпараттық модель
Ақпараттық модель деректер моделінің түрі емес, көбінесе балама модель болып табылады. Бағдарламалық жасақтама инженерлігі саласында деректер моделі де, ақпараттық модель де олардың қасиеттерін, қатынастарын және олармен орындалатын операцияларды қамтитын нысан түрлерінің абстрактілі, формалды бейнелемесі болуы мүмкін. Модельдегі нысан түрлері желідегі құрылғылар сияқты нақты әлемдегі нысандардың түрлері болуы мүмкін, немесе олар өздері абстрактілі болуы мүмкін, мысалы, есеп айыру жүйесінде қолданылатын нысандар үшін. Әдетте, олар нысан түрлерінің, қасиеттерінің, қатынастарының және операцияларының жабық жиынтығымен сипатталатын шектеулі доменді модельдеу үшін қолданылады. Ли (1999) мәліметінше, жалпы алғанда, ақпараттық модель термині жекелеген нысандардың модельдері үшін қолданылады, мысалы, объектілер, ғимараттар, өндіріс орналастырулары және т.б. Мұндай жағдайларда бұл тұжырымдама Объектінің ақпараттық моделіне, ғимараттың ақпараттық моделіне, өндіріс орналастыруының ақпараттық моделіне және т.б. қатысты қолданылады. Мұндай ақпараттық модель – нысанның моделі мен нысан туралы деректер мен құжаттардың біріктірілген түрі. Ақпараттық модель проблемалық доменді сипаттауға формализмді қамтамасыз етеді, сонымен бірге бағдарламалық жасақтамада нақты іске асырылуға сипаттаманың қалай сәйкестендірілетінін шектемейді. Ақпараттық модельдің көптеген сәйкестендірулері болуы мүмкін. Мұндай сәйкестендірулер деректер модельдері деп аталады, олар объектілік модельдер (мысалы, UML), нысандар арасындағы қатынас модельдері немесе XML схемалары болсын.
Нысанның үлгісі
Компьютерлік ғылымда объектілік модель – бағдарламаның өзінің әлемінің белгілі бір бөліктерін қарастырып, манипуляциялай алатын объектілер немесе кластар жиынтығы. Яғни, қандай да бір қызмет немесе жүйеге объектіге бағытталған интерфейс. Мұндай интерфейс сол қызмет немесе жүйенің объектілік моделі деп аталады. Мысалы, Document Object Model (DOM) – веб-браузердегі бетті көрсететін объектілер жиынтығы, оны скрипт бағдарламалары бетті тексеру және динамикалық өзгерту үшін пайдаланады. Microsoft Excel-ді басқа бағдарламадан басқару үшін Microsoft Excel нысандық моделі бар, ал ASCOM телескоп драйвері – астрономиялық телескопты басқаруға арналған объектілік модель. Компьютерлік есептеулерде объектілік модель термині, белгілі бір компьютерлік бағдарламалау тіліндегі, технологиядағы, нотациядағы немесе оларды қолданатын әдістемелердегі объектілердің жалпы қасиеттерін білдіретін ерекше екінші мағынаға ие. Мысалы, Java нысандық моделі, COM нысандық моделі немесе OMT нысандық моделі. Мұндай объектілік модельдер әдетте сынып, хабарлама, мұрагерлік, полиморфизм және инкапсуляция сияқты түсініктерді қолдана отырып анықталады. Бағдарламалау тілдерінің формалды семантикасының бір бөлігі ретінде формалды объектілік модельдер туралы көптеген әдебиеттер бар.
Нысанды рөлдік модельдеу
Объектілік-рольдік модельдеу (ОРМ) – тұжырымдамалық модельдеу әдісі және ақпаратты және ережелерді талдау құралы ретінде қолданылуы мүмкін. Объектілік-рольдік модельдеу – тұжырымдамалық деңгейде жүйелерді талдауды жүзеге асыруға бағытталған деректерге негізделген әдіс. Деректер базасы қолданбасының сапасы оның жобалануына тікелей байланысты. Дұрыстық, түсініктілік, бейімделу қабілеті және өнімділікті қамтамасыз ету үшін ақпараттық жүйелерді алдымен тұжырымдамалық деңгейде, адамдар оңай түсіне алатын ұғымдар мен тілді пайдалану арқылы анықтаған жөн. Тұжырымдамалық жобалау деректер, процестер және мінез-құлқылық аспектілерді қамтуы мүмкін, ал жобаны іске асыру үшін қолданылатын нақты ДБС (Деректерді басқару жүйесі) көптеген логикалық деректер модельдерінің біріне (реляциялық, иерархиялық, желілік, объектіге бағытталған және т.б.) негізделуі мүмкін.