Кіріспе

Пайдаланушы интерфейсін модельдеу – компьютерлік қолданба бағдарламалаушылары қолданатын әзірлеу әдісі. Қазіргі заманғы пайдаланушы интерфейстері (UI) – бұл күрделі бағдарламалық жасақтама компоненттері, олар қолданбаның қолдануға ыңғайлылығында маңызды рөл атқарады. Сондықтан UI әзірлеу үшін нұсқаулар мен ең жақсы тәжірибелер туралы есептер ғана емес, сонымен қатар визуалды модельдерді жасау және осы визуализация үшін стандартталған белгілерді қамтитын даму процесі қажет. Пайдаланушы интерфейсін модельдеу термині көбінесе ақпараттық технология контекстінде қолданылады. Пайдаланушы интерфейсі моделі – соңғы пайдаланушының компьютерлік бағдарламамен немесе басқа құрылғымен қалай өзара әрекеттесетінін, сондай-ақ жүйенің қалай жауап беретінін көрсетеді. Модельдеу міндеті – [Trætteberg2002] бойынша, "заттың немесе құрылғының тікелей сезілетін аспектілерін" көрсету болып табылады. Пайдаланушы интерфейстерін модельдеу – өзіндік құрылған, жақсы дамыған сала. Мысалы, модельдеу әдістері өзара әрекеттесу объектілерін, тапсырмаларды және пайдаланушы интерфейстеріндегі төменгі деңгейдегі диалогтарды сипаттай алады. Пайдаланушы интерфейсін әзірлеудің бір бөлігі ретінде модельдерді қолдану пайдаланушы талаптарын анықтауға, нақты макеттер мен виджеттерге ерте барудан аулақ болуға және интерфейстің әртүрлі бөліктері мен олардың рөлдері арасындағы байланысты анық көрсетуге көмектеседі [SilvaPaton2003].

МАРИЯ

MARIA XML (Модельге негізделген интерактивті қосымшалар үшін тіл) – кең таралған ортада интерактивті қосымшаларды модельдеуге арналған, XML негізіндегі, универсалды, декларативті, көп деңгейлі абстракцияға ие пайдаланушы интерфейсін сипаттау тілі.

UML

UML-ді қолдану арқылы пайдаланушы интерфейсін модельдеудің кейбір жақтарын жүзеге асыруға болады. Дегенмен, бұл тіл негізінен осы сияқты модельдеу үшін жасалмаған, сондықтан модельдер шамалы жасанды болып көрінуі мүмкін.

ДиаМОДЛ

DiaMODL деректер ағынына бағытталған тілді (Pisa interactor abstraction) мінез-құлыққа бағытталған UML Statecharts-пен үйлестіреді. Ол өзара әрекеттесу объектілерінің деректер ағынын да, мінез-құлқын да модельдеуге мүмкіндік береді. Оны нақты пайдаланушы интерфейстерінің функциясы мен құрылымын құжаттау үшін қолдануға болады.

Хималия

Himalia гипермедиа модельдерін басқару/композиция парадигмасымен үйлестіреді. Бұл толыққанды пайдаланушы интерфейсі тілі, оны сипаттау үшін ғана емес, іске қосу үшін де пайдалануға болады. Осы себепті дизайнерлік құралды жасаушы ретінде қарастыруға болады.

Қадамдар

Пайдаланушы интерфейсін модельдеудің бірнеше әдісі бар.

Пайдалануға бағытталған жобалау

Пайдаланушыға бағытталған жобалауда модельдеу міндеті – жоспарланған жүйенің нақты бейнесін және пайдаланушының осы жүйемен қалай өзара әрекеттесетінін көрсету болып табылады. Бұл, әдетте, ең жоғары бағаланатын тәсіл және ол түрлі шағын және ірі жобаларда сәтті қолданылған. Оның артықшылықтары күрделі мәселелерді шешуде көрінеді.

Модельге негізделген UI-ға баламалы тәсілдер

Модельге негізделген тәсілдердің белгілі мәселелері ақпаратты қайталау және өзара байланысты мәселелерді тиімді шешуге қабілетті механизмдердің жетіспеуі болып табылады [Cerny2013]. Модельге негізделген шешімдер өздерінің өзінде жақсы жұмыс істей алады, бірақ баламалы тәсілдермен интеграциялау дамыту және техникалық қолдау жұмыстарын қиындатады.

Кодты тексеруге негізделген

Бұл тәсілдер қолданыстағы жалпы мақсаттағы тіл (GPL) код базаларына негізделген [Cerny2012]. Олар метапрограммалау арқылы кодты қарастырып, UI-ге түрлендірілетін құрылымдық модельді құрастырады. Бұл тәсіл ақпаратты қайта жазу мәселесін шешеді. Алайда, бұл тәсілдер бейімделмелі және контекстке сезімтал UI-лер үшін қолайлы емес.

Генеративтік бағдарламалау

Бұл тәсілдер домендік әдістерді ЖӨБ [Generative programming] жүйесімен байланыстырады. Жүйелік мәселелер компиляция кезінде шешіледі, бірақ бұл болашақта өзгеріп отыратын интерфейстерге (UI) қажетті орындалу уақытындағы ақпаратты тікелей қамтамасыз етпейді.

Аспектке негізделген UI

[Cerny2013][Cerny2013a][AspectFaces] ұсынған аспектіге негізделген шешім, кодты тексеруге негізделген және генеративтік бағдарламалау тәсілдерінің артықшылықтарын үйлестіреді. Ол қолданыстағы кодты талдайды және көлденең қиылыс мәселелерін шешу үшін аспектіге бағытталған әдістерді қолданады. Бұл жүйе жұмыс істейтін уақытта қолданылады, ақпаратты қайталауды азайтады, сонымен бірге UI мәселелерін бөліп, оларды бір-бірінен тәуелсіз қайта пайдалануға мүмкіндік береді. [Cerny2013] зерттеуінде авторлар өндірістік жүйеде қолданылған аспектіге негізделген UI тәсілі арқылы UI кодын 32%-ға қысқартты. Басты артықшылықтары – презентацияны бейімдеуге арналған шаблонды қолдану, мәселелердің жеке анықтамалары және түрлі деректерге қолданылатын көбінесе жалпы трансформация ережелері.

Мазмұн үлгілері

Мұндай модельдер пайдаланушы интерфейсінің мазмұнын және оның әртүрлі компоненттерін көрсетеді. Бұл модельде эстетикалық ерекшеліктер мен мінез-құлқы туралы мәліметтер қамтылмайды, себебі ол пайдаланушыға бағытталған дизайн моделінің бір түрі.