في منتصف القرن العشرين قدم نظام إنتاج تويوتا مبادئ وأسس هامة للتصنيع الخالي من الهدر، وقد قامت شركات تقنية المعلومات بتبني تلك المبادئ من أجل تحسين الإنتاج لديها وتطوير البرمجيات.
لقد سمي هذا النوع من التصنيع باسم التصنيع الرشيق أو منهجية اللين Leanويقوم على تحديد العوامل أو المصادر التي تسبب الهدر أثناء أداء المهام، والعمل على التخلص منها.
ونرى أن مجال تقنية المعلومات والبرمجة يعيدنا إلى منهجية Agile والتي تهدف إلى المرونة للتكيف مع المتغيرات بسهولة وسلاسة، فمجال تقنية المعلومات والبرمجة يتطور كل يوم بل كل دقيقة وتوفر منهجية Agile المبادئ التي تساعدنا على التأقلم مع المستجدات والتطور التدريجي، والتسليم في وقت مبكر، والتحسين المستمر، كما تشجع الاستجابة السريعة والمرنة للتغيير.
وبذلك تتمكن فرق تطوير البرمجيات من مواكبة التغييرات والتكيف معها سريعًا، فمثلا المبادئ أو القيم التي تتبناها منهجية Agile هي:
* إعطاء الأولوية والتركيز على الأفراد وتفاعلهم أكثر من العمليات والأدوات
* منح الأهمية للبرمجيات القابلة للعمل والتشغيل
* العمل على رضا العملاء وتلبية متطلباتهم لأنه أهم من التفاوض على العقود
* الاستجابة للمتغيرات والتكيف معها بدلا من الالتزام بالخطة المحددة.
وهنا يتم تطبيق نظام إنتاج تويوتا (التصنيع الخالي من الهدر) في تطوير البرمجيات للقضاء على العوامل المسببة للهدر وهي:
المخزونinventory
الإفراط في الإنتاج over-production
المعالجات الزائدة Over Processing
النقلtransportation
الانتظار waiting
الحركة motion
العيوب Defects
ونجد أن كل من ماري وتوم مهندسا البرمجة يعتمدان الأدوات المرنة والرشيقة في كتابهما “تطوير البرمجيات” من أجل تحقيق الكفاءة والتميز في تصميم الويب وعمليات البرمجة.
سبب تطبيق منهجية اللين Lean في تطوير الانتقال إلى تطوير البرمجيات
لقد أجرى قسم إدارة الأعمال بجامعة توريبا بحثًا أفاد أن حوالي 73% من الشركات شهدت تحسنًا في جودة منتجاتها بعد تطبيق منهجية اللين، وأبرز الأمثلة على ذلك:
*برنامج Timberlineبولاية أوريغون والذي أكد على وجود تحسن في الجودة عام 2002 وذلك بعد اعتماد المنهجية.
* بي بي سي العالميةشهدت زيادة بنسبة 37% في تسليم البرامج سريعًا دون وجود تأثير سلبي على جودة المنتج، فقد انخفضت الأخطاء وعدد العيوب بنسبة 24%.
وقد أكدت الجامعة في نهاية البحث أن تجارب بي بي سي وغيرها من الشركات نجحت بتفوق وحصدت نتائج إيجابية عند تطبيقهم منهجية اللين، كما شهدوا زيادة في إنتاجية الفريق.
الخسائر ومسببات الهدر التي تريد المؤسسات تجنبها في تطوير البرمجيات
المخزونinventory
حيث ينبغي العمل على إدارة المخزون بكفاءة من أجل ضمان الجودة في عملية التطوير، فالمنهجية تؤكد على عدم ترك فرق البرمجة مجموعة تعليمات برمجية غير مكتملة حتى لا تشغل حيزًا أو مساحة، وتتمثل أيضًا عناصر المخزون في:
- ملف أو مستند بلا رمز أو غير مشفر uncoded documentation
- رموز غير متسقة unsynchronized codes
- رموز لم يتم اختبارها untested codes
- رموز لم يتم نشرها لاستفادة المستخدمين منها undeployed codes
- رموز غير موثقة undocumented codes
ونجد أن الالتزام بمبادئ منهجية اللين يسهم في الحد من تعدد المهام التي لا يتم إكمال بعضها فتصبح مخزونًا يشغل مساحة إضافية، كما تنصح تلك المنهجية مطوري البرامج بإدارة المهام وتحديد أي المهام التي يمكن التحكم فيها مع ضمان الانتهاء منها قبل وجود مهام أخرى.
الإفراط في الإنتاجover-production
نحن جميعًا نرى أن بعض الميزات في هواتفنا المحمولة قد تكون عديمة الفائدة، وتلك الميزات الإضافية تسبب هدرًا عند إنتاجها، فنجد أن Galaxy S4 من سامسونج قدم مثالا على ذلك حين قام بتوفير ميزة Air Gesture وعلى الرغم من كونها كانت رائعة في خطة العمل لكن مع إصدار أجهزة جديدة من هواتف سامسونج فلن نجد تلك الميزة وهذا يؤكد على أنها كانت ميزة لا تضيف قيمة للعملاء.
وعند النظر إلى تطوير البرمجيات فإن الأمر له علاقة أكبر بالعملاء المستخدمين لأن في مقدورهم تحديد الميزات التي لا تضيف قيمة لهم ولا يلجئون إلى استخدامها، لذا فهي تمثل لدى الشركات مصدرًا أساسيًا للهدر وتؤدي إلى ضياع الوقت وزيادة التكاليف.
ونرى أن مبدأ باريتو أو قاعدة 80/20 تنص على أن 80٪ من المستخدمين سوف يستفيدون من 20٪ من الميزات، لذا ينبغي أن يقوم مطورو البرامج بإنشاء الحد الأني من ميزات المنتج ثم العمل على التطوير المستمر وفقًا لمتطلبات العملاء واحتياجاتهم، كما يجب أن يكون هذا الفريق على استعداد للتغيير في الميزات أثناء مراحل التطوير.
فالمطورون الاحترافيون للبرامج يأتي تركيزهم الأكبر على تطوير الأشياء ذات التأثير الفعلي والقيمة الحقيقية وليس تطوير الأشياء عديمة النفع.
المعالجات الزائدة Over Processing
يُمثل العمل المتكرر هدرًا للوقت فالتقارير المفصلة التي قد لا يهتم بها الكثيرون والبنود الإضافية في خطة العمل تعتبر إسرافًا في الجهد والطاقة وكذلك في الموارد المستخدمة، فيمكن تسليم تلك التقارير بشكل شفاهي أو عبر رسائل البريد الإلكتروني.
ونجد أنه من الصائب لمطوري البرامج إيجاد وسائل تواصل فعالة تساعد على ترسيخ العمل الجماعي لتبادل المعلومات واكتساب المزيد من الخبرات، لأن ذلك يسهم -بشكل ملحوظ- في تجنب المعالجات الزائدة وإعادة العمل على المنتجات التي تم إنجازها.
ووفقًا Stack Overflow(موقع يقدم العديد من الأسئلة والأجوبة حول البرمجيات) تسهم أماكن تخزين المعلومات والمعارف في التطور الطبيعي للمشروع، لذا ينبغي تداولها بين الفرق واطلاع الجميع عليها لضمان حدوث التطور، ومع زيادة الأقسام في المشروع لابد من نشر المعلومات بصورة أكبر وذلك من خلال كتابتها في وثائق تمكن الفرق من الحصول عليها.
النقلtransportation
والنقل مصدرًا للهدر في تطوير البرمجيات ويكون من خلال نقل البيانات وتسليمها إلى موقع آخر مما يسهم في إضاعة الوقت، ونقل البيانات من فريق إلى فريق آخر يؤدي أيضًا إلى المزيد من هدر الوقت لكون الفريق الآخر بحاجة إلى المعرفة والتدريب على تلك البيانات المحولة إليه.
ووفقًا لكل من توم وماري فإن الشركات تفقد حوالي 50% من المعرفة والخبرة في كل إجراء تسليم، وهذا يعني أن المعرفة المتبقية سوف تصبح 3% فقط وذلك بعد خمسة إجراءات من التسليم.
من الملاحظ أن نقل المعرفة أمر له أهمية كبيرة داخل أي مشروع، لكن يمكننا الحد من آثاره السلبية بوضع استراتيجية فعالة كدمج عدة فرق مختلفة للعمل سويًا وإضافة فرق أخرى لديها وظائف متعددة.
كما يمكن توفير وسائل اتصال مناسبة كرسائل البريد الإلكتروني والمكالمات الصوتية من أجل تسريع عملية المراجعة (Feedback) وبالتالي يتم تحسين النتائج.
الانتظار waiting
ويكون بتوقف مهام المشروع المطلوب إنجازها ويعد ذلك هدرًا للوقت ويطلق عليه Work Delay، ويتمثل في تأخير الموافقات من الإدارة العليا مما يؤدي إلى التوقف عن مواصلة سير العمل لحين الحصول على الموافقات.
وهذا الشكل التالي يوضح مدى تأخر المشروع بسبب التوقف عن أداء المهام التي تنتظر الموافقة عليها:
ومن أجل التخلص من عامل الهدر هذا يمكن للشركة توفير وسائل تواصل فعالة مع الإدارات والأقسام للحصول على الموافقات بصورة سريعة وعدم توقف العمل، كما يمكنها إعداد فرق متخصصة لمتابعة المهام باستمرار وإعطاء تصاريح فورية بالموافقة على أي إجراء يرغب العاملين في القيام به.
الحركة motion
المقصود بها حركة الفرق عند وجود متطلبات أو مهام إضافية يجب القيام بها، فالمبرمج غالبًا ما يطلب منه العمل على مشاريع متعددة والانتقال من مهام إلى أخرى، وهذا يحتاج إلى تغير في حالته العقلية وتركيزه.
ويوضح جيف أتوود المشارك في تأسيس Stack Overflow فيقول: “يسهم إضافة مشروع واحد فقط إلى المبرمج في هدر 20% من وقته، ومع إضافة مشروع ثالث فإن نصف الوقت سوف يتم إضاعته”.
وهذا ما يوضحه الشكل التالي:
وتبديل المهام وإضافة مهام أخرى يؤدي إلى حدوث أمور خطيرة، تؤكدها بي بي سي حيث قالت: “إن الذين تتشتت انتباههم بالبريد الإلكتروني والمكالمات الهاتفية شهدوا انخفاضًا ملحوظًا في معدل ذكائهم”
والحل الأمثل في هذه الحالة للقضاء على عامل الهدر هذا، هو محاولة الحد من كمية أو مقدار العمل، ويعد نموذج كانبان مفيدًا في إدارة المهام بفعالية، لأنه يساعد الأفراد على تحديد أولويات مهامهم.
العيوب Defects
وهي الأخطاء التي تم الوقوع فيها ربما لتحميل العاملين أعباء عمل زائدة، وتتسبب هذه العيوب في القيام بعمل إضافي لتصحيح الأخطاء، مما يتطلب الأمر مزيدًا من الوقت والجهد وربما الحاجة إلى موارد إضافية.
ونلاحظ أنه كلما تم اكتشاف العيوب في مراحل مبكرة ساعد ذلك على إصلاحها سريعًا، بعكس الأخطاء التي يتم اكتشافها أثناء الاختبار أو قبيل موعد التسليم.
والطريقة الفعالة للقضاء على العيوب التي تمثل هدرًا للوقت، هو قيام المؤسسة بتعزيز استراتيجية مراجعة الأقران Peer Review والتي تعمل على تقييم المهام والأجزاء التي إنجازها من قبل أشخاص ذوي كفاءة وخبرة.