يهدف تطوير البرمجيات عادةً إلى مواءمة المواصفات مع التنفيذ.
لهذا السبب، نقوم بتصميم البرمجيات لتلبية المواصفات، ثم ننفذها بناءً على هذا التصميم. بعد ذلك، نستخدم الاختبارات للتأكد من أن التنفيذ يفي بالمواصفات، فنصحح التنفيذ إذا كانت هناك اختلافات، أو نوضح المواصفات إذا كانت غامضة.
يمكن تسمية هذا "هندسة قائمة على المواصفات والتنفيذ".
في المقابل، عند مناقشة البرمجيات اليوم، أصبحت تجربة المستخدم ذات أهمية متزايدة.
علاوة على ذلك، فإن سلوك البرمجيات، وليس تنفيذها، هو ما يشكل تجربة المستخدم فعليًا.
لذلك، خارج إطار المواصفات والتنفيذ، توجد التجربة والسلوك.
وبناءً عليه، أعتقد أنه من الجدير استكشاف مفهوم "هندسة التجربة والسلوك"، والتي تستند إلى التجربة والسلوك.
البرمجيات السائلة (Liquidware)
تعتبر هندسة التجربة والسلوك نهجاً غير واقعي باستخدام أساليب تطوير البرمجيات التقليدية.
وذلك لأنها تتطلب تحسين تجربة المستخدم دون وجود حدود صارمة أو تقسيمات وظيفية في المواصفات. فطلب بسيط من المستخدم لتحسين تجربته قد يستلزم حتى التخلي عن جميع البرمجيات التي تم تطويرها سابقًا.
من ناحية أخرى، إذا حان الوقت الذي يصبح فيه أتمتة تطوير البرمجيات القائمة على الوكلاء باستخدام الذكاء الاصطناعي التوليدي أمرًا شائعًا، فإن إعادة بناء أنظمة البرمجيات بأكملها ستكون مقبولة.
علاوة على ذلك، في مثل هذا العصر، من خلال تزويد البرمجيات المُصدرة بروبوت دردشة مهندس ذكاء اصطناعي، من المتوقع أن ندخل عصر "البرمجيات السائلة"، حيث يمكن تعديل واجهة المستخدم لتناسب تفضيلات كل مستخدم.
تعني البرمجيات السائلة شيئًا أكثر مرونة من البرمجيات التقليدية، لتناسب كل مستخدم على حدة تمامًا.
عندما يصل عصر التطوير الآلي والبرمجيات السائلة، سيصبح نموذج هندسة المواصفات والتنفيذ قديمًا.
وبدلاً من ذلك، سننتقل إلى نموذج هندسة التجربة والسلوك.
ما هو السلوك؟
ببساطة، السلوك هو حالة تتغير بمرور الوقت.
واختبار السلوك ليس أقل من اختبار هذه الحالة المتغيرة مع مرور الوقت.
علاوة على ذلك، لا يتعلق اختبار السلوك بتأكيد التوافق مع مواصفات تحدد كيفية انتقال الحالات. بدلاً من ذلك، يتم اختبار السلوك بناءً على جودة تجربة المستخدم.
وبالطبع، إذا كانت هناك أخطاء تسبب قيام النظام بعمليات غير مقصودة من قبل المستخدم أو المطور، فإن هذه الأخطاء أيضًا تضر بتجربة المستخدم بشكل كبير. لذلك، يتضمن اختبار السلوك التحقق من المطابقة الوظيفية والصلاحية الوظيفية.
بعد تلبية هذه المتطلبات الوظيفية الأساسية، ينتقل التركيز إلى اختبار السلوك عالي الجودة من منظور تجربة المستخدم.
التجربة القصوى
بالنسبة للبشر، تُعد تجربة المستخدم القصوى هي التحكم في أجسادهم وهم في صحة جيدة.
فكر في الأمر: كل يوم، نتحكم في جسم معقد، ولكنه مقيد ومحدود للغاية، ويزن عشرات الكيلوغرامات، ونستخدمه في أنشطة هادفة.
إذا حاول أحدهم التحكم في نظام ثقيل ومعقد ومقيد للغاية مثل هذا لأداء أنشطة مرغوبة، فستكون التجربة سيئة للغاية عادةً.
ولكن، ما دمنا لا نشعر بتوعك، فإننا نحرك هذا الجسم الثقيل والمعقد والمقيد للغاية وكأنه بلا وزن، ونتحكم فيه بسهولة وكأنه آلية بسيطة، ولا نبالي بقيوده وقيوده وكأنها غير موجودة.
هذه هي التجربة القصوى.
من خلال السعي وراء سلوك عالي الجودة، قد يصبح من الممكن توفير تجربة تضاهي التحكم في جسد المرء.
بمعنى آخر، حتى لو كان النظام بطيئًا في المعالجة، ومعقدًا في الوظائف، وله العديد من القيود والحدود، يمكن تحقيق تجربة برمجيات سائلة خالية تمامًا من التوتر.
في الختام
ستقدم البرمجيات السائلة القصوى تجربة شبيهة بتجربة أجسادنا.
ستصبح هذه البرمجيات السائلة بمثابة جسد لنا.
في كل مرة تتكاثر فيها البرمجيات السائلة القصوى أو تتحسن وظائفها، سيشعر المرء وكأن أجسادنا تتوسع.