Кіріспе

Графикалық пайдаланушы интерфейстеріндегі жиі кездесетін анти-үлгі

"Сиқырлы батырма" графикалық пайдаланушы интерфейстеріндегі жиі кездесетін анти-үлгі болып табылады. Бұл анти-үлгінің мәні – екі бөлікке бөлінген жүйе: пайдаланушы интерфейсі және бизнес-логика, олар бір ғана нүкте арқылы байланыстырылады, яғни "сиқырлы батырманы" басу немесе деректерді жіберу арқылы. Бұл бір нүктелік интерфейс болғандықтан, оны жүзеге асыру тым күрделі болады. Бұл бірліктердің уақыт бойынша байланысы үлкен мәселе тудырады: пайдаланушы интерфейсіндегі кез келген әрекет батырманы басудан бұрын орындалуы керек, ал бизнес-логика тек батырма басылғаннан кейін ғана қолданылады. Әрбір бірліктің өзара байланыстылығы да нашар болуы мүмкін: мүмкіндіктер, оларға қажеттілік болса да болмаса да, бірге топтастырылады, себебі оларды орналастыруға басқа ешқандай құрылымды орын жоқ.

Пайдаланушылар үшін

Пайдаланушы үшін «сиқырлы батырма» жүйесі ұқыпсыз және қолдануға қиын болып көрінеді. Бизнес-логика батырманы басу алдында қолжетімді болмайды, сондықтан пайдаланушы интерфейсі қарапайым форманы толтырумен айналысатын сияқты көрінеді. Өрістерді толтыруға көмектесу мүмкіндігі немесе қабылданатын мәндердің тізімін ұсыну жоқ. Әсіресе, бұрынғы өрістерге енгізілген деректерге сүйене отырып, кейінгі өрістерді толтыруға көмектесу мүмкін емес. Мысалы, өте кең сақтандыру талаптары кодтарының тізімінен таңдау, егер пайдаланушы үй, көлік немесе үй жануарларын сақтандыруды таңдаса, немесе олар өздерінің жеке басын анықтаса және жүйе оларға қатысты тәуекелдерді анықтай алса, әлдеқайда тар тізімге дейін қысқартылуы мүмкін, соның салдарынан бұл мәміле үшін қазіргі уақытта маңызсыз болып табылатын ескі саясаттарды жоюға болады. «Сиқырлы батырманың» ең жағымсыз тұсы – пайдаланушының өзара әрекеттесуі көп көлемде деректерді енгізуден басталып, кейін күтпеген себептермен қабылдамауы мүмкін. Бұл, әсіресе, ескі жүйелердің «Бастапқы күйге қайтару» хабарламаларымен біріктірілгенде, нашар дизайн болып табылады. Тіпті, егер форма енгізілген деректермен сақталса және қателігі бар өріс белгіленсе де, пайдаланушылар бірнеше минут бұрын толтырған өріске қайта оралуға мәжбүр болуынан алаңдайды. Бұл мүмкіндіктердің болмауы, әсіресе, қате жасауға бейім жаңа пайдаланушылар үшін маңызды, ал сарапшыларға немесе жүйенің өзінің бағдарламашыларына олардың маңызы аз. Бұл типтегі интерфейстің кемшіліктері интернетте көрсетілді, сондай-ақ дәстүрлі кеңсе қызметкерлерінен гөрі, көптеген пайдаланушыларды қолдау қажеттігі де айқындалды, олар бір жүйеде бірдей тапсырмаларды қайта-қайта орындайды. Жүйені жақсы білетін және деректерді бірден дұрыс енгізе алатын әзірлеуші оны тиімді пайдалана білсе де, бұл жүйенің нақты пайдаланушылар үшін қолайлы екенін көрсете бермейді.

Орындау үшін

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

Баламалар

Қазіргі заманғы жүйеде (яғни, өңдеу арзан және бәсекелес интерфейс стандарттары жоғары болғанда) пайдаланушылар ұзақ уақыт бойы деректерді енгізумен жалғыз қалдырылуы тиіс емес. Оларға басшылық ету, деректерді тексеру немесе енгізілген деректердің жай-күйіне қарай жүйені бейімдеу үшін автоматты өзара әрекеттесу қажет. Оларды "жұмысты жалғастыра беріңіз" деп қалдырып, содан кейін барлығын соңында тексеру, түзетулерді деректер енгізілгеннен кейін де, соғып бара жатқанда анықтауға әкеледі. Принцип бойынша, қажетті түзетулер деректер енгізілген немесе алғаш рет анықталған кезде мүмкіндігінше ерте және жақын арада көрсетілуі керек. Оқиғаларға негізделген интерфейсте, өріс "толықтырылғаннан" кейін туындайтын көптеген оқиғалар осы өрісті тексеруге немесе келесі өріске енгізу үшін таңдауды бағыттауға мүмкіндік береді. Олар тіпті пайдаланушының келесі қай өріске өтетінін де анықтай алады: форманың бөлімдері ертерек енгізілген мәндерге байланысты маңызды немесе маңызсыз болуы мүмкін, сондықтан пайдаланушылар оларды қолмен өткізіп жіберуге міндетті емес, егер бұл автоматты түрде жасалса. Осы сценарийде бағдарламашы алдымен пайдаланушы интерфейсін жасайды, содан кейін бизнес-логиканы автоматты түрде құрылған әдістерде жазады.