Professional Documents
Culture Documents
4660
4660
Ch2
صفحة 10
.2عملية البرمجيات
تعريف : 1 :عملية البرمجيات هي مجموعة من األنشطة ذات الصلة التي تؤدي إلى إنتاج منتج البرمجيات.
نموذج عملية البرمجيات هو تمثيل مبسط لعملية البرمجيات التي تبين األنشطة المعنية وتسلسلها .هناك العديد من نماذج
عملية محددة جيدا وال يزال أحدث البحوث الجارية للعثور على نماذج أكثر وأكثر أفضل .في كل نموذج رقم من األنشطة
وترتيبها يختلف ولكن بعض األنشطة المشتركة كما هو مبين أدناه:
2.1.1مواصفات البرمجيات :يجب تحديد وظائف البرنامج والقيود المفروضة على تشغيله.
2.1.3التحقق من صحة البرامج :يجب التحقق من صحة البرنامج للتأكد من أنه يفعل ما يريده العميل.
2.1.4 تطور البرمجيات :يجب أن يتطور البرنامج لتلبية احتياجات العمالء المتغيرة
ال يوجد نموذج العملية المثالية أيضا معظم المنظمات قد وضعت نماذج العملية الخاصة بها .ويتم اختيار نموذج العملية
وفقا لطبيعة البرنامج .كما أنه يعتمد على مدى معرفة العميل عن نظامه ومقدار التفاصيل التي يمكن أن توفر متطلبات
نظامه .بالنسبة لنظم األعمال ،مع التغيرات السريعة نموذج أقل رسمية ومرنة يمكن أن تكون أكثر فعالية .في القسم
سنناقش بعض النماذج العامة التي هي
ويناقش عادة في الكتب .ولكن في الحياة العملية ال تستخدم هذه النماذج العامة كما يتم اتباعها بدال من ذلك نماذج مجردة
لشرح مراحل مختلفة من تطوير البرمجيات
___________________________________________________________________
صفحة :11
وهذا هو النموذج األول الذي ينشر أنشطة العملية األساسية في تتابع كما هو مبين في الشكل .2.1في البداية كان هذا
النموذج يسمى دورة تطوير البرمجيات (سدلك) .نموذج الشالل هو مثال على عملية مدفوعة خطة وهذا يعني منظمة
التنمية يجب تخطيط وجدولة جميع أنشطة العملية قبل البدء في العمل عليها.
تحليل المتطلبات والتعريف :يتم إنشاء خدمات النظام ،والقيود ،واألهداف من خالل التشاور مع مستخدمي النظام .ثم يتم
تعريفها بالتفصيل وتخدم كمواصفات النظام.
تصميم النظام والبرمجيات :تقوم عملية تصميم األنظمة بتخصيص المتطلبات ألي من األجهزة أو أنظمة البرمجيات من
خالل إنشاء بنية عامة للنظام .تصميم البرمجيات
رنا حسين الشهراني
صفحة :12
التنفيذ واختبار الوحدة :خالل هذه المرحلة ،يتم تصميم البرمجيات كمجموعة من البرامج أو وحدات البرامج .يتضمن
اختبار الوحدة التحقق من أن كل وحدة تلبي مواصفاتها.
التكامل واختبار النظام :يتم دمج واختبار وحدات البرامج الفردية أو البرامج كجهاز متكامل لضمان تلبية متطلبات
البرنامج .بعد االختبار ،يتم تسليم نظام البرمجيات إلى العميل .التشغيل والصيانة ::عادة (وإن لم يكن بالضرورة) ،وهذا
هو أطول دورة دورة الحياة .يتم تثبيت النظام ووضعها موضع التنفيذ العملي .وتشمل الصيانة تصحيح األخطاء التي لم
يتم اكتشافها في المراحل األولى من دورة الحياة ،وتحسين تنفيذ وحدات النظام وتعزيز خدمات النظام مع اكتشاف
متطلبات جديدة
نموذج تزايدي استخدام النهج المتسلسل الخطي مع الطبيعة التكرارية للنماذج األولية .وتستند التنمية اإلضافية إلى فكرة
وضع تنفيذ أولي وتقديمه إلى المستعمل للتعليق عليه وتحسينه من خالل عدة نسخ من إصدارات المنتجات إلى أن يتم
تطوير نظام مقبول كما هو مبين في الشكل .2.2
___________________________________________________________________
صفحة :13
___________________________________________________________________
صفحة :14
ويستند هذا النهج إلى وجود عدد كبير من المكونات القابلة إلعادة االستخدام .وتركز عملية تطوير النظام على دمج هذه
المكونات في نظام بدال من تطويرها من الصفر .في معظم مشاريع البرمجيات ،وهناك بعض إعادة استخدام البرمجيات.
وكثيرا ما يحدث ذلك بشكل غير رسمي عندما يعرف األشخاص الذين يعملون في المشروع التصاميم أو الشفرة التي تشبه
ما هو مطلوب.
ويرد في الشكل 2.3نموذج عملي عام للتنمية القائمة على إعادة االستخدام .مراحل "مواصفات المتطلبات" و "التحقق من
صحة النظام" هي نفسها كما في نماذج أخرى ولكن المراحل المتوسطة في هذا النموذج مختلفة .ويمكن تفسيرها بالتفصيل
على النحو التالي:
رنا حسين الشهراني
تحليل المكونات :بعد الحصول على متطلبات المستخدم يتم إجراء بحث عن المكونات التي سيتم تنفيذها والتي تتوفر في
المكتبة كما هو أو مع االختالفات Bالصغيرة .عادة ،ال يوجد تطابق تام والمكونات المتاحة بالفعل توفر سوى بعض
الوظائف المطلوبة.
متطلبات التعديل :خالل هذه المرحلة ،يتم تحليل المتطلبات باستخدام معلومات عن المكونات التي تم اكتشافها .ثم يتم
تعديلها لتعكس المكونات المتاحة .وعندما تكون التعديالت مستحيلة ،يمكن إعادة إدخال نشاط تحليل المكونات للبحث عن
حلول بديلة .تصميم النظام مع إعادة االستخدام :خالل هذه المرحلة ،تم تصميم إطار النظام أو إعادة استخدام إطار القائمة.
ويأخذ المصممون في الحسبان المكونات التي يعاد استخدامها وينظمون اإلطار لتلبية ذلك .قد يكون من الضروري تصميم
بعض البرامج الجديدة إذا لم تكن المكونات القابلة إلعادة االستخدام متاحة.
التطوير والتكامل :يتم تطوير البرمجيات التي ال يمكن شراؤها خارجيا ،والمكونات وأنظمة كوتس متكاملة إلنشاء النظام
الجديد .وقد يكون تكامل النظام ،في هذا النموذج ،جزءا من عملية التطوير بدال من نشاط منفصل
صفحة :15
وقد اقترح بوم إطار عمل برمجيات يحركه المخاطر (النموذج الحلزوني) .هنا ،يتم تمثيل عملية البرمجيات باعتبارها
دوامة ،بدال من سلسلة من األنشطة مع بعض التراجع من نشاط إلى آخر .كل حلقة في دوامة تمثل مرحلة من عملية
البرمجيات .وهكذا ،فإن الحلقة األعمق قد تكون المعنية مع جدوى النظام ،الحلقة القادمة مع تعريف المتطلبات ،الحلقة
التالية مع تصميم النظام ،وهلم جرا .يتم تقييم المخاطر بشكل واضح وحلها طوال العملية.
تحديد األهداف :تحدد أهداف محددة لتلك المرحلة من المشاريع .يتم تحديد القيود على العملية والمنتج ووضع خطة إدارة
مفصلة .يتم تحديد مخاطر المشروع .ويمكن التخطيط الستراتيجيات بديلة ،اعتمادا على هذه المخاطر.
___________________________________________________________________
صفحة :16
تقييم المخاطر والحد منها :يتم إجراء تحليل مفصل لكل من مخاطر المشروع المحددة .وتتخذ خطوات للحد من المخاطر.
على سبيل المثال ،إذا كان هناك خطر من أن المتطلبات غير مالئمة ،قد يتم تطوير نظام النموذج األولي .التطوير
والتصديق :بعد تقييم المخاطر ،يتم اختيار نموذج تطوير للنظام .على سبيل المثال ،قد تكون النماذج األولية المهجورة
أفضل نهج للتنمية إذا كانت مخاطر واجهة المستخدم مهيمنة .وإذا كانت مخاطر السالمة هي االعتبار الرئيسي ،فإن
التنمية القائمة على التحوالت الرسمية قد تكون العملية األنسب ،وما إلى ذلك .إذا كان الخطر الرئيسي المحدد هو تكامل
النظام الفرعي ،قد يكون نموذج الشالل أفضل نموذج للتنمية الستخدامه.
التخطيط :يتم مراجعة المشروع واتخاذ قرار ما إذا كان االستمرار في حلقة أخرى من دوامة .وإذا تقرر االستمرار ،يتم
وضع خطط للمرحلة التالية من المشروع.
2.2.5نموذج رشيق
نموذج رشيق هو مزيج من تكرارية ونماذج عملية تدريجية مع التركيز على عملية التكيف ورضا العمالء عن طريق
التسليم السريع للمنتج البرمجيات Bالعمل .طرق رشيقة كسر المنتج إلى يبني تدريجية صغيرة .يتم توفير هذه البنيات في
التكرارات .ويستمر كل تكرار عادة من أسبوع إلى ثالثة أسابيع .في نهاية كل تكرار يتم عرض منتج العمل للعميل
رنا حسين الشهراني
صفحة :17
األفراد والتفاعالت :في التنمية الرشيقة ،والتنظيم الذاتي والتحفيز مهمة ،وكذلك التفاعالت مثل المشاركة Bفي الموقع
والبرمجة الزوج.
برنامج العمل :يعتبر برنامج العمل التجريبي أفضل وسيلة للتواصل مع العميل لفهم متطلباتهم ،بدال من االعتماد فقط على
الوثائق.
التعاون مع العمالء :كما ال يمكن جمع المتطلبات تماما في بداية المشروع بسبب عوامل مختلفة ،التفاعل المستمر
العمالء مهم جدا للحصول على متطلبات المنتج المناسبة.
االستجابة للتغيير :تركز التنمية الرشيقة على االستجابات السريعة للتغيير والتطوير المستمر.