Кіріспе

Бағдарламалық инженерия тұжырымдамасы
Құралдардың өзара әрекеттесуі – бағдарламалық инженерия тұжырымдамасы. Бұл екі құралдың біріктірілуі бір немесе екі құралдың әрекетін өзгертетін кезде пайда болады. "Құрал" термині бағдарламалық қосымшаның функционалдық бірлігін білдіру үшін қолданылады. Компьютер ғылымындағы көптеген тұжырымдар сияқты, бұл термин абстракцияның әртүрлі деңгейлерінде қолданылуы мүмкін. Мысалы, қарапайым ескі телефон қызметі (POTS) – бұл бір деңгейдегі телефондық қосымшаның құралы, бірақ өзі бастау және аяқтау құралдарынан тұрады. Бастау құралдарына, өз кезегінде, диал тоны беру құралы, сандарды жинақтау құралы және т.б. кіруі мүмкін. Бұл құралдардың өзара әрекеттесуінің анықтамасы, біріне өзара әрекеттесетін құралдардың белгілі бір әрекеттеріне назар аударуға мүмкіндік береді, мысалы, біріктірілген кезде олардың жауап беру уақыты қалай өзгеруі мүмкін. Бұл саладағы көптеген зерттеушілер өзара әрекеттесетін құралдардың орындалу әрекетіндегі өзгерістерге байланысты туындайтын мәселелерді қарастырады. Бұл жағдайда құралдың әрекеті берілген деректер үшін оның орындалу ағыны және нәтижесімен анықталады. Басқаша айтқанда, өзара әрекеттесу берілген деректер үшін өзара әрекеттесетін құралдардың орындалу ағыны мен нәтижесін өзгертеді.

Мысал

Телефония саласында телефон желісі (жүйе) әдетте шақыруды бағыттау және шақыруды күту сияқты мүмкіндіктер жиынтығын ұсынады. Шақыруды күту бір шақыру тоқтатылып, екінші шақыруға жауап беруге мүмкіндік береді, ал шақыруды бағыттау абонентке қосымша телефон нөмірін көрсетуге мүмкіндік береді, егер абонент телефонды қолданып жатса, келесі шақырулар сол нөмірге бағытталады. Мысал ретінде, біз абонентке берілген телефон желісін қарастырайық және желіде шақыруды бағыттау және шақыруды күту мүмкіндіктері қосылған деп есептейік. Алғашқы шақыру келгенде телефон соғып, жауап беріледі. Бірінші шақыру ешқандай мүмкіндікті іске қоспағандықтан, ешқандай көзге көрінетін мәселе туындамайды. Бірінші шақыру аяқталмас бұрын екінші шақыру келсе, телефон жүйесі шешім қабылдауы керек: шақыру екінші нөмірге бағытталуы керек пе (шақыруды бағыттау) әлде бірінші шақыруға жауап берген адамға басқа шақыру келгені туралы хабарлама жіберілуі керек пе (шақыруды күту). Бұл шешімге анық дұрыс жауап болмағандықтан, ең тиімді жауап абоненттің қажеттіліктеріне байланысты. Бұл мүмкіндіктердің өзара әрекеттесуі – жүйе күрделілігінің артуына байланысты кең таралған жалпы мәселенің нақты мысалы. Мұндай жағдайда жүйенің шешімі, жарыс жағдайлары және басқа да жобалау факторларына байланысты детерминистік емес болуы мүмкін. Мүмкіндіктердің өзара әрекеттесуінің салдары шағын ыңғайсыздықтан бастап, өмірге қауіп төндіретін бағдарламалық қателерге дейін жетеді, сондықтан мүмкіндіктердің өзара әрекеттесуін анықтау және шешу жолдарын табуға бағытталған зерттеулер жүргізілуде.

Қағаздар

Памела Заведің "Feature Interaction" (Ерекшеліктердің өзара әрекеттесуі) туралы жиі қойылатын сұрақтар жинағы. Агенттер және олардың қызметтері: Ерекшеліктердің өзара әрекеттесуіне онтологиялық тәсіл. Б. Коэн, Сити университеті. IN және одан әрі үшін Ерекшеліктердің өзара әрекеттесуінің өлшемшарты. Е. Джейн Кэмерон, Нэнси Д. Гриффит, Йоу Цзянь Лин, Маргарет Э. Нильсон, Уильям К. Шнур, Беллкор және Х. Велтхуййсен, PTT Research, Нидерланды. FIW және ICFI конференцияларының материалдары, IOS Press баспасы. Ерекшеліктердің өзара әрекеттесуі: сынды қарастыру және болжамды бағалау. М. Кальдер, М. Колберг, Э. Х. Магилл және С. Рейф Марганец. Компьютерлік желілер 41, 115–141 беттер (2002). Ерекшеліктердің өзара әрекеттесуі – Контексті бөлісу мәселесі ретінде. Армстронг Нхлабатси, Робин Лэни және Башар Нусейбе. Ерекшеліктердің өзара әрекеттесуі жөніндегі халықаралық конференция, 11-12 маусым, Лиссабон университеті, Португалия, 133–148 беттер (2009).