কাজের অভিজ্ঞতা
অনেক ডেটার ইন্টারফেসকে ব্যবহারযোগ্য করা
enterprise-এর টেবিলভরা screen-এ দেখা, তুলনা, filter আর একই action বারবার করার কাজ সহজ করা এবং performance উন্নত করা।
- আমার ভূমিকা
- interaction-এর গঠন ও ইমপ্লিমেন্টেশনের মানে ফ্রন্টএন্ড নেতৃত্ব
- কাজের প্রেক্ষাপট
- ঘন টেবিল, operational workflow আর বারবার করা action-সহ enterprise প্রোডাক্টের screen।
- ব্যবহৃত প্রযুক্তি
- Angular, TypeScript, RxJS, SCSS, Performance Profiling
সমস্যাটা কী ছিল
ডেটা, filter, permission আর action একসঙ্গে নজর চাইলে ঘন operational screen ধীর আর পড়তে কঠিন হয়। দরকারি তথ্য না লুকিয়ে ইন্টারফেসে ভালো কাঠামো লাগত।
যে সীমাগুলো মাথায় ছিল
- বড় ডেটার সংগ্রহ
- অনেক column আর row action
- role অনুযায়ী কী দেখা যাবে
- ছোট-বড় screen-এর সীমা
- keyboard আর pointer-এ চেনা, ভরসাযোগ্য আচরণ
যেভাবে এগিয়েছি
- page-এর বিষয় থেকে table, filter আর row action-এর দায়িত্ব আলাদা করেছি।
- সাজানোর layout-এর চেয়ে দেখা, তুলনা আর বারবার কাজ করাকে গুরুত্ব দিয়েছি।
- খালি, loading, filter করা আর error state মূল workflow-র মধ্যে রেখেছি।
আর্কিটেকচারের সিদ্ধান্ত
- নির্দিষ্ট view model দিয়ে template পড়ার মতো রেখেছি।
- বারবার render-এর পথ থেকে বেশি খরচের data transformation সরিয়েছি।
- filter আর table state-কে চেনা state transition হিসেবে ডিজাইন করেছি।
যেখানে ছাড় দিতে হয়েছে
- যাঁরা রোজ ব্যবহার করেন, তাঁদের জন্য বেশি প্রকাশভঙ্গির layout-এর চেয়ে শান্ত visual system কাজে লেগেছে।
- কী action করছেন তা মানুষ বুঝতে পারবেন বলে কিছু interaction গুটিয়ে না রেখে স্পষ্ট রেখেছি।
কী বদল এসেছে
- সাড়া দেওয়া আরও দ্রুত লাগছে
- UI-র জটিলতা কমেছে
- রক্ষণাবেক্ষণ সহজ হয়েছে
- ঘন screen-এ চোখ বোলানো সহজ হয়েছে
যা শিখেছি
- enterprise UX-এ সাজসজ্জার চেয়ে সংযম অনেক সময় বেশি দরকার।
- component-এর সীমানা মানুষের workflow-র সঙ্গে মিললে performance-এর কাজ সহজ হয়।