حلول تطبيقات الجوال
تطبيق الجوال ليس نسخة مصغّرة من واجهة سطح مكتب. بل يُتوقع منه العمل في ظروف انقطاع الاتصال ونفاد البطارية وانشغال اليدين.
غالباً ما لا يكون تصميم الشاشة هو ما يحدد قابلية استخدام التطبيق ميدانياً في الجوال. بل الأكثر حسماً هو ماذا يحدث عند انقطاع الاتصال، ومتى تُزامَن البيانات، وأي جهاز يُعتمد عند تعديل جهازين للسجل نفسه.
يُحدَّد اختيار المنصة والتقنية وفق سيناريو الاستخدام. فالإجابة الصحيحة لتطبيق ميداني يتطلب وصولاً عميقاً إلى عتاد الجهاز تختلف عنها لتطبيق يعرض البيانات بشكل أساسي.
التطبيقات التي تفترض الاتصال شرطاً مسبقاً تصبح غير قابلة للاستخدام ميدانياً بعد فترة.
هل نحن الجهة المناسبة؟
تطبيق الجوال ليس إجابة لكل احتياج. فإذا كان المستخدم جالساً إلى مكتبه والعمل يجري عبر المتصفح، يضيف تطبيق منفصل عبء صيانة وإصدارات دون أي مقابل.
نعم، لنتحدث
- يُنفَّذ العمل ميدانياً، واقفاً، وغالباً بيد واحدة
- يلزم الوصول إلى عتاد الجهاز كالكاميرا والموقع والباركود وNFC
- يجب إمكانية إدخال البيانات حتى في أماكن انقطاع الاتصال
لا، هناك من ينفّذها بشكل أفضل
- سيقتصر التطبيق على تصغير واجهة ويب قائمة
- عدد المستخدمين وتكرار الاستخدام لا يبرران عبء المتجر والإصدارات
- الاحتياج الفعلي هو إعداد التقارير — وغالباً ما يُحل هذا بتكلفة أقل عبر الويب
ماذا نفعل
- اختيار المنصة والتقنية وفق سيناريو الاستخدام
- العمل دون اتصال والتخزين المحلي للبيانات
- مزامنة البيانات وحل التعارضات
- تصميم واجهة API لجانب الخادم
- الوصول إلى عتاد الجهاز — الكاميرا، الموقع، الباركود، NFC، البلوتوث
- بنية تحتية للإشعارات الفورية
- تصميم قابلية الاستخدام في الظروف الميدانية
- عمليات النشر في المتاجر وإدارة الإصدارات
كيف نمضي قدماً
سيناريوهات الاستخدام
نستخرج مكان استخدام التطبيق وظروفه وتكراره. وتحدد الظروف الميدانية معظم قرارات الواجهة منذ البداية.
تصميم تدفق البيانات
هنا نقرر أي البيانات يبقى على الجهاز، ومتى تُزامَن، وكيف تُحل التعارضات.
عقد API
نكتب واجهة جانب الخادم قبل بدء تطوير التطبيق. وهكذا يتقدم الطرفان بالتوازي.
التطوير والاختبار الميداني
نختبر التطبيق على أجهزة حقيقية وفي ظروف استخدام فعلية. ولا نعتبر اختبار المحاكي وحده كافياً.
النشر والإصدار
نتولى عمليات المتجر، ونحدد سياسة الإصدارات معاً. ونحافظ على توافق الإصدارات القديمة مع الخادم طوال فترة انتقالية.
خياراتنا التقنية
- يُصمَّم التطبيق ليعمل بمعنى حتى دون اتصال بالشبكة. فيستطيع موظف الميدان إدخال البيانات في مكان بلا اتصال، وتُزامَن عند عودته. والتطبيقات التي تفترض الاتصال شرطاً مسبقاً تصبح غير قابلة للاستخدام ميدانياً بعد فترة.
- يُحسَم في مرحلة التصميم ماذا يحدث عند تعديل جهازين للسجل نفسه. وحين تُوضع هذه القاعدة لاحقاً، يكون جزء من البيانات المتراكمة قد أصبح غير متسق بالفعل.
- لا يحدّث جميع المستخدمين التطبيق في الوقت نفسه. وتُطوَّر واجهة الخادم بحيث تُبقي الإصدارات القديمة عاملة؛ وإلا بقي المستخدمون الذين لم يحدّثوا خارج النظام.
- يُضبَط تتبع الموقع والمزامنة الخلفية وتكرار الإشعارات مع مراعاة عمر البطارية. فالتطبيق الذي يستنزف البطارية بسرعة يُغلقه المستخدم حتى لو كان يعمل بشكل صحيح تقنياً.