U3F1ZWV6ZTQ2NzUxODY0ODA1MTI3X0ZyZWUyOTQ5NTExODk5MzE1NA==

ما هى الsoftware development models ومتى نقوم بعملية التيستينج فى كل model | تعرف على الsoftware development models




software development models



ما هى الsoftware development models ومتى نقوم بعملية التيستينج فى كل model  | تعرف على الsoftware development models



ان شاء الله اليوم سوف نتحدث عن الsoftware development models ومتى نقوم بعملية التيستينج فى كل model  , عرفنا من قبل فى المقدمة الخاصة بالsoftware testing ان التيستينج عبارة عن مرحلة من مراحل تطوير البرمجيات  , فأى سوفتوير بيتم تطويره بيمر بعدة مراحل وهى الplanning وال analysis وال design وال implementation وال testing ثم ال deployment , وعرفنا أيضا فى الموضوع الخاص بال software testing principles انه يفضل اننا نعمل تيستيج للسوفتوير بدرى على قد مانقدر , السؤال الآن هل التيسينج بنعمله من أول ما أبدأ المشروع ولا هو عبارة عن مرحلة بنمر بيها لها دورها ووقتها , الجواب على هذا السؤال هو ان وقت القيام بالتيستينج للسوفتوير بيتم طبقا للمودل اللى شغالة به الشركة ,فأشهرال software development models هم ال sequential models وهو بيشمل (ال waterfall وال v-model) , ال iterative models , ال incremental model.



ما هى الsoftware development models


أشهر الsoftware development models هم الsequential models والiterative models و الincremental model

1- الsequential models : من الsoftware development models الsequential models وهو بيشمل نوعين هم الwaterfall والv-model.

الwaterfall : فى هذة الطريقة بننهى كل مرحلة  من مراحل تطوير السوفتوير ثم ننتقل الى المرحلة الثانية وهكذا حتى نصل لمرحلة الكود وبعد انتهاءها نبدأ فى عملية التيستينج , من مزايا هذة الطريقة انها سهلة وبسيطة  وبتكون مناسبة للمشاريع الصغيرة  وان كل مرحلة من السهل مراجعتها وتسليم الريكويرمنت الخاصة بها , ومن عيوب هذة الطريقة  انه لايمكن لنا ان نقوم بأى تعديلات  وأن التعقيدات فى كل مرحلة ينتج عنها risk عالى جدا لأننا مش بنقدر نعرف ان البرنامج شغال ولا لأ إلا فى الأخر.

الv-model : وفيه بنقسم المشروع الى ثلاثة أقسام  technical requirements وwork product و testing activities  , وفى كل مرحلة بنجهز لها testing requirements علشان وقت التيستينج كل حاجة تكون جاهزة وننفذ على طول , ففى مرحلة ال user requirements بنبدأ نجهز ال plan الخاصة بال acceptance testing, وفى مرحلة ال software specification بنبدأ نجهز الplan الخاصة بال system testing ,وفى مرحلة ال high level design بنبدأ نجهز الplan الخاصة بال integration testing, وفى مرحلة ال low level design بنبدأ نجهز الplan الخاصة بالunit testing ثم بعد ذلك نبدأ فى الcoding , من مزايا الv-model  سهولة الإستخدام خاصة فى المشاريع الصغيرة  وتوفير الوقت لأنى بعد ماكنت بعمل تيستينج فى الأخر خالص  احنا دلوقتى بنجهز للتيستينج من الأول خالص وبالتالى بيتم اكتشاف الأخطاء بدرى وبالتالى نسبة الأخطاء بتكون قليلة , من عيوب الv-model ان لو اطلب أى تغيير هنضطر اننا نغير فى كل الديكيومنتس لأن التغيير فى أى حاجة  بيأثر على باقى المشروع  وبيفتقد المرونة لأننا بننتظر الى ان نصل لمرحلة الimplementation  علشان نبدأ فى كتابة الكود وهذا لايسمح لنا بأن نأخذ prototype لكى يتم عرضه على العميل قبل التسليم لكى نأخذ منه feedback.

2- الiterative models : وفيه بنقسم المشروع الى عدة دورات صغيرة بننفذها وبنعمل عليها تيستينج ثم بيتم عرضها على العميل علشان لو فيه أى تعديل نعدل , ومش لازم تكون الريكويرمنت  كاملة فى البداية , مثال على ذلك لوتم طلب منا رسم صورة للوحة الموناليزا فإننا سنرسمها فى البداية بصورة مشوهة ثم يتم عرضها على العميل فيخبرنا بتفاصيل أكثر فهيتم رسمها بصورة متوسطة الوضوح ثم يتم عرضها على العميل فيخبرنا بتفاصيل أدق فيتم رسمها بصورة واضحة , وبيتم تطبيق الiterative models فى ال rapid app وال agile prog.




3-الincremental model :بيكون عبارة عن مزيج من الiterative والsequential, وبيكون عندى ريكويرمنت بنقسمها لأجزاء وبنشتغل على كل جزء ننفذه وبعدين نعمل له تيستينج ثم نبدأ فى جزء أخر ونضيفه للجزء السابق وهكذا , فعند تطبيق هذة الطريقة على صورة الموناليزيا فسوف نقوم بتقسيم الصورة فنبدأ بالوجه ثم بأحد الجوانب للصورة ثم بالجانب الأخر حتى تكتمل الصورة , وبيتم تطبيق الincremental model فى كل من ال prototyping وال RAD وال rational unified process.


وفى كل هذة الsoftware development models وخاصة الv-model بنقوم بعمل verification testing وvalidation testing , والمقصود بالverification testing هل السوفتوير بيحقق الموجود فى الريكويرمنت ولا لأ , والمقصود بالvalidation testing بعد ما أتأكدنا من ان السوفتوير بيحقق الريكويرمنت هل بيحقق احتياجات العميل ولا لأ.

وهذا فيديو بيشرح الsoftware development models..



موضوعات قد تهمك


مقدمة عن الsoftware  testing.

الsoftware testing principles.

العمليات الأساسية التى تمر بها الtesting process .


المستويين الأول والثانى من الtesting levels وهم ال unit testing والintegration testing.
المستويين الثالث والرابع من الtesting levels وهم ال system testing والacceptance testing.
 


تعديل المشاركة Reactions:
author-img

المهندسة / فاطمة الزهراء نصر

المهندسة فاطمة الزهراء نصر السيد بدير مصرية الجنسية درست هندسة النظم والحاسبات فى كلية الهندسة جامعة الأزهر مهتمة بمجال اختبار البرمجيات ومؤسسة مدونة جودة-تك.
تعليقات
الاسمبريد إلكترونيرسالة