Кіріспе

Ақпараттық жүйе арқылы деректердің "ағынының" графикалық бейнесі

Деректер ағыны диаграммасы – процесс немесе жүйе (әдетте ақпараттық жүйе) арқылы деректердің ағынын бейнелеу тәсілі. DFD әрбір элементтің кірістері мен шығыстары туралы, сондай-ақ процестің өзі туралы ақпаратты ұсынады. Деректер ағыны диаграммасында бақылау, шешімдер ережелері мен циклдар жоқ. Деректерге негізделген нақты операцияларды блок-схема арқылы көрсетуге болады. Деректер ағыны диаграммаларын бейнелеу үшін бірнеше нотациялар бар. Жоғарыда көрсетілген нотация 1979 жылы Том ДеМарко құрылымдық талдаудың бір бөлігі ретінде сипаттаған. Әрбір дерек ағыны үшін процесте кем дегенде бір соңғы нүкте (көзі және/немесе мақсаты) болуы керек. Процестің нақтырақ бейнесін басқа деректер ағыны диаграммасында көрсетуге болады, ол осы процесті кіші процестерге бөледі. Деректер ағыны диаграммасы – құрылымдық талдау мен деректерді модельдеу құралының бір бөлігі. UML қолданғанда, әдетте белсенділік диаграммасы деректер ағыны диаграммасының орнын басады. Деректер ағыны жоспарының ерекше түрі – нысаналық деректер ағыны жоспары. Деректер ағыны диаграммаларын кері Петри желілері деп қарастыруға болады, себебі мұндай желілердегі орындар деректер сақтаудың семантикасына сәйкес келеді. Сол сияқты, Петри желілерінен өтудің семантикасы және деректер ағыны мен деректер ағыны диаграммаларынан функциялар эквивалентті деп есептелуі керек.

Тарих

DFD белгісі бастапқыда ұйымдардағы жұмыс процесін модельдеу үшін операциялық зерттеулерде, ал компьютер ғылымында есептеулердегі кіріс-шығыс ағынын модельдеу үшін қолданылған граф теориясына негізделген. Оны алғаш Ларри Константин ұсынды, ал Эдвард Юрдон, Том ДеМарко, Крис Гейн және Триш Сарсон оны кеңінен танымал етті. Олар диаграмма жасау техникасын әртүрлі белгілермен және деректер сөздігін пайдалану арқылы байытты. DFD негізгі деректер ағынын құжаттауға немесе дерек ағыны тұрғысынан жаңа, жоғары деңгейдегі дизайнды зерттеуге көмектесті.

DFD құру ережесі

Субъектінің атауы қосымша түсіндірмелерсіз түсінікті болуы керек. DFD – жүйе пайдаланушыларымен сұхбаттасу негізінде талдаушылар құратын жүйе. Ол бір жағынан жүйе әзірлеушілер, екінші жағынан жоба мердігерлері үшін жасалғандықтан, субъектілердің атаулары модельдік салаға немесе кәсіби немесе жаңадан бастаған пайдаланушыларға сәйкес болуы тиіс. Субъектінің атауы жалпылама (нақты тұлғалар сияқты, қызметті орындайтын адамдардан тәуелсіз) болуы керек, бірақ субъектіні нақты анықтауы тиіс. Процестерді жеңілдетіп картаға түсіру және нақты процестерге сілтеме жасау үшін нөмірленуі керек. Нөмірлеу ретсіз болғанымен, DFD-нің барлық деңгейлерінде дәйектілік сақталуы қажет (DFD иерархиясын қараңыз). DFD түсінікті болуы керек, сондықтан бір DFD-дегі процестердің максималды саны 6-дан 9-ға дейін, ал ең аз саны 3 болуы ұсынылады. Бірақ контекстуалдық диаграмма деп аталатын ерекше жағдай бар, онда бір ғана процесс модельдік жүйені және жүйе байланысатын барлық терминаторларды көрсетеді.

DFD сәйкестігі

DFD жүйелік-тұлғалық қатынас диаграммасы, күйлер ауысу диаграммасы, деректер сөздігі және процесс спецификациясы модельдері сияқты жүйенің басқа модельдерімен үйлесімді болуы керек. Әрбір процесс атауға, кіріске және шығысқа ие болуы тиіс. Әрбір ағынның атауы болуы керек (Ағын ерекшелігін қараңыз). Әрбір деректер қоймасында кіріс және шығыс ағындары болуы керек. Кіріс және шығыс ағындары бір DFD-де көрсетілмеуі мүмкін, бірақ олар бірдей жүйені сипаттайтын басқа DFD-де болуы керек. Жүйемен байланысатын жүйеден тыс (сыртқы сақтау) қойма – ерекше жағдай.

DFD иерархиясы

DFD-ны түсінікті ету үшін (яғни, тым көп процестер болмауы үшін) көп деңгейлі DFD-тар құруға болады. Жоғары деңгейдегі DFD-тар аз егжей-тегжейлі болады (төменгі деңгейлердегі егжей-тегжейлі DFD-тарды жиынтықтайды). Контексттік DFD иерархиядағы ең жоғары деңгейде орналасады (DFD құру ережелерін қараңыз). «0-деңгей» деп аталатын DFD 0 процестерді нөмірлеуден басталады (мысалы, 1-процесс, 2-процесс). Одан кейін, «1-деңгей» деп аталатын DFD 1 нөмірлеуді жалғастырады. Мысалы, 1-процесс DFD-ның алғашқы үш деңгейіне бөлінеді, олар 1.1, 1.2 және 1.3 деп нөмірленеді. Сол сияқты, 2-деңгейдегі (DFD 2) процестер 2.1.1, 2.1.2, 2.1.3 және 2.1.4 деп нөмірленеді. Деңгейлердің саны модельдік жүйенің мөлшеріне байланысты. DFD 0 процестерінің ыдырау деңгейлерінің саны бірдей болуы міндетті емес. DFD 0 жүйенің ең маңызды (жинақталған) функцияларын қамтиды. Ең төменгі деңгейге шамамен бір А4 беттік процесс спецификациясын жасауға мүмкіндік беретін процестер кіруі керек. Егер мини спецификация көлемді болса, онда оны бірнеше процеске бөлу үшін қосымша деңгей құру орынды. DFD-ның бүкіл иерархиясын анық көрсету үшін тік (қима) диаграмма жасауға болады. Деректер қоймасы алғаш пайдаланылған ең жоғары деңгейде де, барлық төменгі деңгейлерде де көрсетіледі.