Кіріспе

Жүйенің тұжырымдамалық моделі

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

Тарих

Жүйелік архитектура мыңдаған жылдар бойы көптеген басқа салаларда дамыған тәжірибелер мен әдістерге күшті тәуелді, мүмкін ең маңыздысы – азаматтық архитектура. Цифрлық компьютерлер пайда болғанға дейін электроника және басқа да инженерлік салалар «жүйе» терминін қазіргі күні де кеңінен қолданылатын мағынасында қолданған. Алайда, цифрлық компьютерлердің пайда болуымен және бағдарламалық жасақтаманы жеке сала ретінде дамытумен, жасалған аппараттық құралдарды, бағдарламалық құралдарды және олардың біріктірілген түрлерін ажырату қажет болды. Бағдарламаланатын аппараттық құрал немесе компьютерлік бағдарламасы жоқ есептеу машинасы әрекетсіз; тіпті бағдарламалық құрал немесе бағдарлама да, егер ол тиісті (аппараттық) машинаның күйлерін өзгертуге қолданылмаса, әрекетсіз болады. Дегенмен, аппараттық машина мен оның бағдарламалауы шексізге жуық абстрактілі және физикалық міндеттерді орындау үшін құрастырылуы мүмкін. Осылайша, компьютерлік және бағдарламалық жасақтамалық инженерияда (сондай-ақ, байланыс сияқты басқа инженерлік салаларда) «жүйе» термині пайдалы функцияны орындау үшін қажетті барлық элементтерді (әдетте аппараттық және бағдарламалық қамтамасыз етуді) қамтитын ретінде анықталды. Сәйкесінше, осы инженерлік салаларда жүйе әдетте бағдарламаланатын аппараттық машинаны және оның құрамындағы бағдарламаны білдіреді. Жүйелік инженер – бұл толық құрылғымен, аппараттық және бағдарламалық қамтамасыз етумен, сондай-ақ құрылғының барлық интерфейстерімен, оның ішінде аппараттық және бағдарламалық қамтамасыз ету арасындағы, әсіресе толық құрылғы мен оның пайдаланушысы (АІТ) арасындағы байланыспен айналысатын маман. Аппараттық инженер көбінесе тек аппараттық құрылғымен, ал бағдарламалық инженер көбінесе тек компьютерлік бағдарламамен айналысады. Ал жүйелік инженер бағдарламаның аппараттық құрылғыда дұрыс жұмыс істей алатынын, және екі құралдан тұратын жүйенің сыртқы ортамен, әсіресе пайдаланушымен дұрыс өзара әрекеттесе алатынын және оның мақсатына сәйкес функциясын орындай алатынын қамтамасыз етуге жауапты. Жүйелік архитектура бағдарламалық және аппараттық құралдардың элементтерін пайдаланады және мұндай біріктірілген жүйені жобалауға мүмкіндік береді. Жақсы архитектураны «бөлу схемасы» немесе алгоритм ретінде қарастыруға болады, ол жүйенің қазіргі және болашақтағы барлық талаптарын жұмыс істейтін, анық шектелген қосалқы жүйелерге бөледі, ештеңе артық қалмайды. Яғни, бұл бөлу схемасы эксклюзивті, инклюзивті және толыққанды болады. Бөлудің басты мақсаты – жүйедегі элементтерді олардың арасындағы өзара байланыстың ең аз болуын қамтамасыз ету үшін орналастыру. Бағдарламалық және аппараттық жағынан жақсы қосалқы жүйе мағыналы «объект» ретінде қарастырылады. Сонымен қатар, жақсы архитектура пайдаланушының талаптарына оңай сәйкестендіруді және пайдаланушының талаптарын тексеру сынақтарын жүргізуді қамтамасыз етеді. Идеалды жағдайда, әрбір ең кішкентай элементтен әрбір талап пен сынаққа дейін сәйкестік болуы керек.