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




http://www.alriyadh.com/1955811]إضغط هنا لقراءة المزيد...[/url]