Кіріспе
Интерактивті дизайн үлгілері – графикалық пайдаланушы интерфейстерінің жиі кездесетін дизайнын сипаттайтын, адам-компьютерлік өзара әрекеттесу контекстінде қолданылатын дизайн үлгілері. Дизайн үлгісі – жиі кездесетін дизайн мәселесіне деген шешімді ресми түрде құжаттаудың бір жолы. Бұл идеяны архитектор Кристофер Александр қала құрылысы және ғимараттар архитектурасында қолдану үшін ұсынды, содан кейін оқыту және педагогика, даму ұйымы мен процесі, бағдарламалық қамтамасыз ету архитектурасы және дизайны сияқты басқа да салаларға бейімделді. Осылайша, интерактивті дизайн үлгілері – нақты жағдайда жиі кездесетін пайдаланушылық немесе қолжетімділік мәселелеріне шешімдерді сипаттау тәсілі болып табылады. Олар пайдаланушыларға интерфейсті түсінуді және тапсырмаларын орындауды жеңілдететін өзара әрекеттесу модельдерін құжаттайды.
Тарих
Үлгілер Кристофер Александрдың сәулеттік тұжырымдамасы ретінде туындады. Үлгілер – ең жақсы тәжірибелерді сипаттау, жақсы дизайнды түсіндіру және басқа адамдар осы шешімдерді қайта қолдана алуы үшін тәжірибені жинақтау тәсілдері. Компьютер ғылымындағы дизайн үлгілерін бағдарламалық жасақтама инженерлері нақты жобалау процесінде және жобаны басқаларға түсіндірген кезде пайдаланады. "Дизайн үлгілері: қайта пайдаланатын объектіге бағытталған бағдарламалық жасақтама элементтері" кітабы жарық көргеннен кейін дизайн үлгілері компьютер ғылымында кең танымал болды. Содан бері үлгілер қауымдастығы құрылды, ол архитектуралық стильдер мен объектіге бағытталған құрылымдарды қоса алғанда, мәселелік салалар үшін үлгілерді анықтайды. Бағдарламалау тілдерінің үлгілері конференциясының (жыл сайынғы, 1994 жылдан бастап) материалдарында салалық үлгілердің көптеген мысалдары келтірілген. Интерактивтік дизайнға үлгілік тілдік тәсілді қолдану алғаш рет Норман мен Дрейпердің "Пайдаланушыға бағытталған жүйелік дизайн" (1986) кітабында ұсынылды. Apple Computer Macintosh Human Interface Guidelines-де де Кристофер Александртың еңбектері ұсынылған оқу материалдарының тізімінде келтірілген.
Кітапханалар
Александр үлгілік тілді құрылымды жүйе ретінде көріп тұрды, онда үлгілер арасындағы семантикалық байланыстар бөліктерінің жиынтысынан артық тұтас нәрсені құрайды, дәл сол сияқты сөздер арасындағы грамматикалық байланыстар тілді мағыналы етеді. Кейбір үлгілер жинағы тілді құруға қажетті құрылымдық байланыстарды жасауға тырысса, көптеген басқалары үлгілердің ғана жиынтығы болып табылады (сондықтан оларды үлгілер кітапханасы деп атау дұрыс).
Элементтер
Дизайнерлер мен әзірлеушілерге пайдалы болуы үшін, үлгілерді іздеуге және оқуға оңай болуы керек.
Факультативтік элементтер
Үлгі кітапханалары оларды пайдаланатын команданың қажеттіліктеріне қарай, қосымша элементтерді де қамтуы мүмкін. Оларға мыналар жатуы мүмкін:
Іске асыру ережелері: Әзірлеушілерге көмектесу үшін шрифт өлшемдері, пиксельдік өлшемдер, түстер және хабарламалар мен жазбалар туралы толық ақпаратты қамтитын стильдік нұсқаулық пайдалы болуы мүмкін. Пайдаланушылық зерттеулер: Пайдаланушылық сынақтардан немесе басқа пайдаланушылар пікірлерінен алынған барлық қолдау материалдары сақталуы керек. Бұл әзірлеушілер, клиенттерге қызмет көрсету немесе сату тобынан алынған пікірлерді де қамтуы мүмкін. Қатысты үлгілер: Үлгі кітапханасында ұқсас үлгілер болуы мүмкін, немесе ол ата-аналық және балама үлгілердің иерархиялық құрылымымен ұйымдастырылуы мүмкін. Ұқсас тәсілдер: Бұл мәселенің көптеген шешімдері болуы мүмкін болғандықтан, командалар ұқсас баламаларды сақтауға арналған орынды қалауы мүмкін. Бастапқы код: Егер код қайта пайдалануға жететіндей модульдік болса, оны кітапханаға қосуға болады.
Implementation Specifications: A style guide with detailed information about font sizes, pixel dimensions, colors, and wording for messages and labels can be helpful for developers. Usability Research: Any supporting research from usability tests or other user feedback should be captured. This can also include feedback from developers, customer service, or the sales team. Related Patterns: The pattern library may include similar patterns, or it may be organized into a hierarchy of parent and child patterns. Similar Approaches: Since there are likely to be many possible solutions to this problem, teams may want a place to capture similar alternatives. Source Code: If the code is modular enough to be reused, then it can be included in the library as well.
Жобалау нұсқауларына қарағанда артықшылықтары
Талдамалар әдетте талаптарды сипаттау үшін тиімдірек, ал үлгілер талаптарды нақты бағдарламалық шешімдерге аудару қажеттіліктері барлар үшін пайдалы құралдар болып табылады. Кейбір мамандар дизайн талдамаларын интерактивті дизайн үлгісінің бір түрі деп санайды, себебі олар интерактивті дизайндағы тәжірибені жинақтаудың кең таралған тәсілі болып табылады. Дегенмен, интерактивті дизайн үлгілері дизайн талдамаларымен салыстырғанда көбінесе мынадай артықшылықтарға ие: Шнайдерманның «Интерфейс дизайнының алтын ережелері» сияқты абстрактілі талдамалар көптеген интерактивті дизайн үлгілері сияқты мәселені қалай шешу керектігін көрсетпейді және салааралық байланыс үшін қолданылмайды. Сонымен қатар, талдамаларда нақты шешімнің неге жұмыс істейтіні түсіндірілмейді. «Macintosh Human Interface Guidelines» сияқты нақты талдамалар нақты бір интерфейске қатысты жасалған, сондықтан оларды басқа интерфейстерге (әсіресе Macintosh емес интерфейстерге) қолданғанда тиімділіктері төмендейді. Талдамалармен байланысты басқа да мәселелер бар: олардың тым көп болуы дизайнерлерге дұрыс талдаманы таңдауды қиындатады. Сондай-ақ, талдамалар абсолютті дұрыстыққа ие деп есептеледі, бірақ оларды көбінесе тек белгілі бір жағдайда қолдануға болады. Осының салдарынан талдамалар көбінесе контексттің сипаттамасы болмағандықтан қайшылыққа түседі. Талдамалар мен үлгілер міндетті түрде қарама-қайшы емес, оларды проблеманы анықтау және одан кейін дұрыс шешімді жасау үшін бірлесіп қолдануға болады.
Abstract guidelines, like the Eight Golden Rules of Interface Design by Shneiderman, do not suggest how to solve a problem like many interaction design pattern, and cannot be used for interdisciplinary communication. Furthermore, guidelines do not provide an explanation as to why a particular solution works. Concrete guidelines, like Macintosh Human Interface Guidelines, are too tailored to a specific interface, and therefore are not as effective when applied to other interfaces (especially non Macintosh interfaces). Other problems with guidelines are that they tend to be too numerous which makes it difficult for designers to apply the right guidelines. Also guidelines assume an absolute validity while usually they can only be applied in a particular context. A result of that is also that guidelines often tend to conflict just because they lack describing a context. Guidelines and patterns are not necessarily conflicting, and both can be used in conjunction to identify the problem and then create a valid solution.