Neama Ahmad🌱
Neama Ahmad🌱

@noom_pc

11 تغريدة 27 قراءة Sep 21, 2021
نسمع كثير في عالم الويب أو في مجال هندسة البرمجيات هذا المصطلحين
- Verification
- Validation
أيش المقصود فيهم وأيش الفرق بينهم..
تابعوا الثريد 🧶
أولاً المقصود بمصطلح verification ..
أتأكد إن التطبيق اتنفذ بشكل ممتاز ويحقق جميع المتطلبات المذكورة..
وتسمى ب static testing لإنه يتم بشكل يدوي عن طريقنا ك developers
أما المقصود بvalidation..
أتأكد إن التطبيق اللي نفذته هو التطبيق الصحيح أو التطبيق المطلوب واللي يحل المشكلة المطروحة وأيضاً يحقق متطلبات العميل..
وتسمى ب dynamic testing لإنه يتم بشكل دينامكي عن طريق الكمبيوتر..
الverification مرحلة تسبق الvalidation والتحقق فيها يكون في ال documents والdesign لكن مانعمل execution للكود..لذلك هي low-level practice ..
أما الvalidation بطبيعة الحال مرحلة متقدمة تأتي في نهاية تنفيذ البرنامج..والتحقق يكون في الproduct نفسه..
هنا في المرحلة هذه نعمل اختبار لكامل البرنامج وتتضمن code execution هذه المرحلة هي high-level practice اللي تحقق الbusiness needs..
لما نعمل validation قد نحتاج لtesters ينفذوا طرق الاختبار المعروفة لإختبار البرنامج واللي تتضمنها مرحلة الvalidation وهي
Unit testing
Whitebox testing
Graybox testing
Blackbox testing
أما في الverification نستخدم الطرق التقليدية للاختبار مثل التتبع والمراجعة والتوقع..
وبالنسبة للcost في حال وجود خطأ..إصلاح الخطأ في مرحلة الverification أقل تكلفة من مرحلة validation..
وهذا هو التعريف المختصر للمصطلحين 👇🏾
مثال لتطبيق الverification والvalidation..
مثلاً لو عندي برنامج بسيط لتحضير الطلاب ..
متطلبات هذا البرنامج..
١) التحضير يومي
٢) يحسب الغيابات كل شهر إذا زاد على ٥ غيابات حرمان
بطبيعة الحال أنا أجهز document أذكر فيها جميع التفاصيل وأخطط لكل شئ..
يتبع👇🏾
الverification تجي هنا بعد ما كملت الdocument احتاج أراجع وأتأكد إني سويت document تحقق متطلبات البرنامج..هذه المرحلة مهمه جداً وتقلل من الأخطاء الكبيرة اللي تصير بعد مرحلة الcoding..
بعدين تجي الcoding ومن ثم الvalidation بحيث أتحقق إنه البرنامج ممتاز ومافيه أخطاء وبالضبط مثل ماطلبه العميل ..يعني هي الفكرة اللي برأسه بالضبط 🥳🎉

جاري تحميل الاقتراحات...