Кіріспе

Джексон жүйелік дамуы (JSD) — Майкл А. Джексон және Джон Кэмерон 1980-ші жылдары әзірлеген сызықтық бағдарламалық құралды дамыту әдістемесі.

Тарих

JSD алғаш рет 1982 жылы Майкл А. Джексонның «Жүйелік даму әдісі» атты мақаласында ұсынылды, ал 1983 жылы – «Жүйелік даму» еңбегінде. Джексон жүйелік дамуы (JSD) – бағдарламалық қамтамасыздандыру өмірлік циклын тікелей немесе арнайы техникаларға сыйымды болатын ая жасау арқылы қамтитын жүйелік даму әдісі. Jackson System Development жобада тек жалпы талаптардың айтылуынан басталуы мүмкін. Дегенмен, Джексон жүйелік дамуын қолданған көптеген жобалар өмірлік циклда сәл кейінірек басталды, алғашқы қадамдарды негізінен қолданыстағы құжаттар негізінде жасады, тікелей пайдаланушылармен емес. JSD-нің кейінгі қадамдары соңғы жүйенің кодын құрастырады. Джексонның алғашқы әдісі, Джексонның құрылымдық бағдарламалауы (JSP), соңғы кодты жасау үшін қолданылады. JSD-нің бастапқы қадамдарының нәтижесі – бағдарламалық жобалау мәселелерінің жиынтығы, олардың жобалануы JSP-нің пәні болып табылады. Техникалық қолдау үшін алдыңғы қадамдардың тиіс келіп, қайта өңдеу жүргізіледі. JSD дамуын жалғастырды және әдіске бірнеше жаңа мүмкіндіктер енгізілді. Бұл туралы Джон Кэмеронның 1989 жылғы «JSP және JSD» мақалалар жинағында және 1992 жылғы LBMS JSD нұсқаулығының 2-ші нұсқасында сипатталған. JSD әдісін дамыту 1990-шы жылдардың басында Джексонның ой-өрісі «Бағдарламалық талаптар мен сипаттамалар» (1995) және «Проблемалық кадрлар: Бағдарламалық жасақтаманы дамыту мәселелерін талдау және құрылымдау» (2000) кітаптарын жариялау арқылы Проблемалық кадрларға көшуімен аяқталды.

Модельдеу кезеңі

Модельдеу кезеңінде дизайнер нысандық құрылымдардың жиынтығын жасайды және жүйедегі нысандарды, олардың атқаратын әрекеттерін, нысандардың өмірлік цикліндегі әрекеттердің уақыт ретін, сондай-ақ әрекеттер мен нысандардың атрибуттарын анықтайды. Нысандық құрылымдар диаграммалары Джексонның құрылымдық бағдарламалау құрылымдары диаграммаларының графикалық белгілеуін пайдаланады. Осы диаграммалардың мақсаты – жүйе мен ұйымның барлық аспектілерін толық сипаттау. Әзірлеушілердің қайсысы маңызды, ал қайсысы емес екенін шешуі қажет. Жаңа жүйенің әзірлеушілері мен пайдаланушылары арасындағы жақсы байланыс өте маңызды. Бұл кезең – бұрынғы нысан/әрекет кезеңі мен нысандық құрылымдар кезеңінің біріктірілген түрі.

Желілік кезең

Желілік кезеңде жүйеге жалпы модель әзірленеді және жүйелік сипаттама диаграммасы (SSD) (сонымен қатар желілік диаграмма деп те аталады) түрінде бейнеленеді. Желілік диаграммалар процестерді (төртбұрыштар) және олардың бір-бірімен қалай байланысатынын көрсетеді, яғни күй векторы байланыстары (алмаздар) немесе дерек ағыны байланыстары (шеңберлер) арқылы. Осы кезеңде жүйенің функционалдығы анықталады. Әрбір элемент желілік диаграммада процесс немесе бағдарлама болып өзгереді. Сыртқы бағдарламалар кейіннен желілік диаграммаларға қосылады. Бұл бағдарламалардың мақсаты – кіріс деректерді өңдеу, нәтижені есептеу және жүйе процестерін жаңарту. Жүйенің толық сипаттамасы осы желілік диаграммалармен жасалады және процестер мен бағдарламалар арасындағы деректер мен байланыстар туралы толық ақпарат қосылады. Бастапқы модельдеу кезеңі нақты әлемді модельдеуді анықтайды. Функциялық кезең осы модельдеуге жүйенің нәтижесін алу үшін қажетті қосымша орындалатын операциялар мен процестерді қосады. Жүйелік уақыт кезеңі процестердің синхрондалуын қамтамасыз етеді және шектеулер енгізеді. Бұл кезең бұрынғы «Бастапқы модельдеу», «Функциялық» және «Жүйелік уақыт» кезеңдерінің біріктірілген түрі болып табылады.

Орындау кезеңі

Іске асыру кезеңінде шешімнің абстрактілі желілік моделі физикалық жүйеге айналады, ол жүйелік іске асыру диаграммасы (SID) ретінде көрсетіледі. SID жүйені процестерді іске асыратын модульдерді шақыратын жоспарлаушы процесс ретінде бейнелейді. Деректер ағындары кері процестерге шақырулар арқылы көрсетіледі. Деректер қорының символдары объектілердің күй векторларының жиынтығын білдіреді, сондай-ақ файлдық буферлер үшін арнайы символдар бар (процестер әртүрлі уақыт интервалдарымен орындалуы жоспарланған жағдайда олар іске асырылуы тиіс). Іске асыру кезеңінің басты мәселесі – жүйені оңтайландыру. Процестердің санын азайту қажет, себебі спецификациядағы әрбір процесске жеке виртуалды процессорды қосу мүмкін емес. Трансформация арқылы процестер біріктіріледі, осылайша олардың санын процессорлар санына дейін шектеуге болады.