الأربعاء، 27 أكتوبر 2010

Software Development Life Cycle - Waterfall Model

السلام عليكم ..

دورة حياة تطوير البرمجيات هى الترجمة الحرفية لجملة العنوان Software Development Life Cycle ، وتعنى المراحل التى يمر بها تطوير التطبيقات والانظمة بداية من فكرتها ومتطلبات انشاءها مرورا بتصميمها ثم برمجتها واختبارها وانتهاءا بتشغيلها واجراء عمليات الصيانة والتحديث.

واهم ماتتميز به هذه المراحل هو كونها تتبع ترتيب محدد اى لايمكن تخطى مرحله على حساب اخرى كما لايمكن ايضا اهمال اى مرحلة منهم او تغير ترتيبها ، فترتيب المراحل فى دورة حياة البرمجيات هو ترتيب منطقى البناء والعمل فكل مرحله لها بداية تبدأ عندها ونهاية تنتهى بها لتبدأ بعدها مرحلة جديدة تعتمد فى عملها على سابقاتها وتقود الى المرحلة التى تليها فى تناسق ووصوليه منطقية ، والان لنتعرف على هذه المراحل.

1-  مرحلة تحليل المتطلبات (Analysis user Requirements) : وهى مرحلة اوليه يتم فيها تحليل النظام ومعرفة متطلبات العميل وليس فقط متطلباته ولكن تحديد اوجه القصور فى النظام السابق - ان وجد - وذلك لتلافيها ومعرفة اوجة القوة والمميزات لدعمها فى النظام الجديد ، وتتم هذه المرحلة بدقة وشموليه وبمراجعة كل من لهم صله بالنظام والهدف من هذه المرحلة هى تدقيق وتوثيق النظام البرمجى فيما يعرف باسم نموذج الشروط والمواصفات وهو نموذج يحتوى على كافة نتائج هذه المرحلة.

2- مرحلة التصميم والتخطيط (Program Design) : يتم تصميم النظام بدقة بناءا على نتائج مرحلة تحليل المتطلبات حيث يتم وضع تصميم للنظام طبقا لمستندات الشروط والمواصفات والتى نتجت من مرحلة تحليل المتطلبات ، وفى التصميم يتم انشاء النماذج المبدئية للنظام وتوضع العلاقات والخوارزميات وتصمم الواجهات المرئية للنظام وتحدد المدخلات والمخرجات وطريقة عرضها ، ويتم المراجعة تباعا للوصول للنموذج النهائى للتصميم.

3- مرحلة الكود البرمجة (Coding) : هى مرحلة اضافة الكود البرمجى للنظام وايضا هى مرحلة نقل التصميم من البيئة النظرية الى بيئة عملية لتطويرة وتعرف هذه المرحله بانها مرحلة بث الروح حيث يعتبر الكود البرمجى هو روح التطبيق لكونه يعرف وظيفة كل عنصر ومكون فى النظام المبرمج وايضا دورة ومسارات تنفيذه ، ويتم اختيار لغة من لغات البرمجة فى هذه المرحلة لتطوير النظام.

4- مرحلة التوثيق والاختبار (Documentation and Testing) : وفى هذه المرحلة يتم كتابة وثائق النظام وايضا اختبار مكوناته من قبل المطورين والمختبرين وتحديد مدى تحقيقه لمعايير الجودة والتوسع والتكامل ، واهم النتائج المترتبه على هذه المرحلة هى اخراج الشوائب البرمجية او مايعرف باسم (Bugs) وهى الاخطاء التى تنتج عند تشغيل النظام نتيجة قصور الاكواد البرمجية المستخدمة فى بناءه.
ونجد ان توثيق النظام يتم على اكثر من مستوى فهناك توثيق النظام على مستوى التصميم فيما يعرف باسم نموذج الشروط والمواصفات وايضا المخططات ، وهناك التوثيق على المستوى البرمجى ويقوم به المطورون فيما يعرف بتعليقات الاكواد والتى تتيح ملاحظات لوظيفة الاكواد البرمجية ، وايضا توثيق المختبرين وهى مستندات تحتوى على توثيق لاماكن الخلل فى النظام ليتم تغطيتها ، والتوثيق يحتل اهية كبيرة جدا اذ يساعد على تطوير النظام بسهوله وييسر فى اوقات لاحقة - وقد يكون التطوير من قبل مطورين مختلفين - كما يقلل تكلفة ذلك التطوير.

5- مرحلة الصيانة والتحديث (Operating and Maintenance) : وهذه هى اطول مرحلة فى دورة حياة النظام البرمجى وتبدأ منذ تشغيل النظام واستخدامه ، ويتم فيها اصلاح وصيانة النظام من العيوب والاخطاء البرمجية والتى قد تظهر لاحقا اثناء الاستخدام ، وايضا تزويد النظام بمميزات جديدة او تحديثات لمواكبة التطور وزيادة الكفاءة.

وعندما يقصر اداء النظام عن تحقيق اهدافة ووظائفه نتيجة للتطور المستمر فى الاجهزة وظهور تقنيات جديدة او نتيجة لزيادة المتطلبات وتغيرها وازدياد اعداد المستخدمين او تغير البيئة الملائمة لعمل النظام باستمرار تقودنا الحاجة الى التفكير فى تغير النظام او استبداله باخر وهنا تبدأ دورة حياة التطوير من جديد ، وفيما يلى نموذج يعرف باسم Waterfall Model وهو نموذج يوضح ترتيب المراحل والخطوات التى تمر بها دورة حياة تطوير البرمجيات :
شكل 1 - Waterfall Model

وفيما يلى ايضا شكل توضيحى للدورة حياة التطوير البرمجى للانظمة والتطبيقات :
شكل 2 - Development Life Cycle

وتعتبر هذه المراحل هيكله مفروضة على بناء التطبيقات وتطويرها وذلك للوصول بها لمعياريه قياسية شبه متكامله - حيث انه لاوجود لتطبيق او نظام متكامل بنسبة 100% - وهذه المراحل تمر بها الانظمة فى تعاقب وتتالى حسب ترتيب محدد.

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

دمتم فى رعاية الله ..




ليست هناك تعليقات:

إرسال تعليق

Microsoft Excel VBA – Part 1

سلام الله عليكم ورحمته وبركاته تأتى هذه التدوينة لا لتأصل نظريا لمفهوم VBA ...