منتدى الاحباب والاصدقاء اطيب ناس
 
الرئيسيةالبوابةبحـثالتسجيلدخول

شاطر | 
 

 الدرس الثاني: دورة حياة تطوير المشروع

استعرض الموضوع السابق استعرض الموضوع التالي اذهب الى الأسفل 
كاتب الموضوعرسالة
DaTaBaSe
مدير
مدير
avatar

عدد المساهمات : 305
السٌّمعَة : 3
تاريخ التسجيل : 02/03/2013
العمر : 30
الموقع : www.atyab-nass.com

مُساهمةموضوع: الدرس الثاني: دورة حياة تطوير المشروع   الإثنين مارس 04, 2013 5:44 pm

كما رأينا في الدرس الاول فإن هندسة البرمجيات هو عمل إبداعي يتم إداءه خطوة بخطوة، ويتعاون فيه عدد من الاشخاص لكل منهم مهمة محددة. في هذا الدرس سوف نناقش الخطوات التي يتم اتباعها عند تطوير مشروع برمجي بمزيد من التفاصيل ونبحث في الطرق المستخدمة لتنظيم هذا العمل (صناعة البرمجيات)

مقدمة:

عملية بناء أي منتج تمر بعدة مراحل يطلق عليها عادة "دورة الحياة" Life Cycle، ومما تعلمنا في الدرس السابق فإن دروة حياة تطوير أي نظام برمجي Software development life cycle تتضمن المراحل التالية:

1. تحديد وتعريف المتطلبات Requirements analysis and definition
2. تصميم النظام System design
3. تصميم البرنامج Program design
4. كتابة البرنامج (تطويره) Program implementation
5. أختبار وحدات البرنامج Unit testing
6. أختبار النظام system testing
7. تسليم النظام system delivery
8. الصيانة maintenance

كل مرحلة من تلك المراحل تتضمن العديد من الخطوات أو النشاطات ولكل منها مدخلاتها ومخرجاتها وتأثرها على جودة المنتج النهائي (البرنامج).

دورة حياة أي منتج تبدأ بأول خطوة وهي تحديد المتطلبات وتتدرج إلى باقي الخطوات كما هي مرتبة حتى الوصول إلى آخر خطوة وهي تسليم البرنامج وصيانته (إن دعت الحاجة)، إلا أن التجارب العملية تظهر أن هذا ليس ضروريا وأن دورة حياة تطوير البرامج قد تأخذ أشكال (أو أنماط) مختلفة. وفي هذا الدرس سوف نتعرف إلى هذه الأنماط



أنماط دورة الحياة Lifecycle Models:


النموذج الانحداري Waterfall Model

في هذا النموذج تسير دورة الحياة بشكل تدريجي بدأ من الخطوة (1) وحتى الخطوة (Cool، وكما يظهر بالشكل (1) فإن كل مرحلة تبدأ بعد الأنتهاء من المرحلة التي تسبقها مباشرة.




شكل (1)


يتميز النموذج الانحداري بالبساطة، ولذا فإنه يسّهل على المطور توضيح كيفية سير العمل بالمشروع للعميل (الذي عادة لا يعرف الكثير عن صنع البرمجيات) والمراحل المتبقية من العمل. وقد كان هذا النموذج أساس عمل كثير من المؤسسات لفترة طويلة مثل وزارة الدفاع الامريكية، واستنبط منه العديد من النماذج الاكثر تعقيدا.

إلا أن لهذا النموذج العديد من العيوب، أهمها أنه لا يعكس الطريقة التي يعمل بها المطورون في الواقع. فباستثناء المشاريع الصغيرة والبسيطة (أي أنها مفهومة بشكل جيد للمطور) فإن البرمجيات عادة ما تنتج بعد قدر هائل من التكرار والاعادة.

في حين أن هذا النموذج يفترض أن يكون الحل واضح ومفهوم وسبق تحليله بالكامل قبل مباشرة مرحلة التصميم وهو أمر يكاد يكون شبه مستحيل مع الانظمة الضخمة. وحتى إن كان ممكن فإنه يأخذ وقت طويل جدا (ربما سنوات)!

باختصار،النموذج الانحداري سهل الفهم و بسيط في إدارته. لكن مميزاته تبدأ في التداعي بمجرد أن يزداد تعقيد المشروع.


التطوير على مراحل Phased Development

حسب النموذج الانحداري فإنه يجب على المطورين إنهاء مرحلة تحليل المشروع بشكل تام قبل البدأ في التصميم، وكما وضحنا فإن هذه المرحلة قد تتطلب وقت طويل في بعض المشاريع وقد تمر عدة سنوات قبل أن يرى البرنامج النهائي النور، ولكن هل يمكن لسوق العمل الانتظار كل هذا الوقت؟!

الاجابة بالطبع لا.

لذا كان لابد من ايجاد طرق آخرى لتقليل زمن تطوير المشروع Cycle time.
أحد هذه الطرق هي التطوير على مراحل Phased Development حيث يتم تطوير النظام على عدة مراحل، بتقديم إصدار من البرنامج به بعض الوظائف للعميل والعمل على تطوير الاصدار الاحق الذي سوف يقدم له بقية الوظائف.

يوجد عدة طرق يمكن بها تنظيم عملية تطوير إصدارات البرنامج، ومن اشهرها:

· النموذج التزايدي Incremental model

حيث يتم تقسيم النظام المطلوب تطويره إلى عدة اجزاء حسب الوظائف التي يعتين عليه القيام بها، يبدأ أول إصدار بأحد تلك الاجزاء ومع الوقت يتم إضافة المزيد من الاجزاء (الوظائف) حتى يتم الانتهاء من تطوير النظام بشكل تام وحسب متطلبات العميل.




· النموذج التكراري Iterative model

هذه المرة يتم تسليم برنامج بكامل الوظائف من أول مرة، ولكن يتم تعديل وتغيير بعض تلك الوظائف مع كل إصدار من البرنامج.




من مميزات هذا الأسلوب أنه يمكن المطورين من الحصول على ملاحظات وتقييم الزبون مبكرا و بصورة منتظمة، ورصد الصعوبات المحتملة قبل التمادي بعيدا في عمليات التطوير.كم أنه يمّكن من اكتشاف مدى حجم و تعقيد العمل مبكرا.


النموذج اللولبي Spiral Model

وهو شبيه لدرجة كبيرة إلى النموذج التزايدي والتكراري، ولكن فيه يتم دمج فعاليات التطوير مع إدارة المخاطر risk من إجل التحكم بها وتقليلها.

يبدأ النموذج اللولبي بمتطلبات العميل مع خطة العمل المبدئية (الميزانية، قيود النظام، والبدائل المتاحة). ثم يتقدم خطوة إلى الامام بتقدير المخاطر وتمثيل البدائل المتاحة قبل تقديم ما يعرف بـ "وثيقة العمليات" Concept of Operations التي تصف وبشكل عام (بدون الدخول في التفاصيل) كيف يجب على النظام أن يعمل. بعدها يتم تحديد وتدقيق المتطلبات للتأكد من أنها تامة ودقيقة إلى أقصى حد ممكن.

بذلك تكون وثيقة العمليات هي المنتج من الطور الأول، و المتطلبات هي المنتج الاساسي من الطور الثاني. وفي الطور الثالث تتم عملية التصميم، أما الاختبار فيتم خلال الطور الرابع.

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


sorce: شروحات ودروس في هندسة البرمجيات
الرجوع الى أعلى الصفحة اذهب الى الأسفل
http://www.atyab-nass.com
D o 3 a 2
مدير
مدير
avatar

عدد المساهمات : 511
السٌّمعَة : 5
تاريخ التسجيل : 02/03/2013
العمر : 30
الموقع : www.atyab-nass.com

مُساهمةموضوع: رد: الدرس الثاني: دورة حياة تطوير المشروع   الخميس مارس 07, 2013 6:04 am

lol! DaTaBaSe ana hadchi makanafham fih walo Basketball
الرجوع الى أعلى الصفحة اذهب الى الأسفل
http://www.atyab-nass.com
ELEINE
مشرف عام
مشرف عام
avatar

عدد المساهمات : 248
السٌّمعَة : -1
تاريخ التسجيل : 04/03/2013
العمر : 25

مُساهمةموضوع: رد: الدرس الثاني: دورة حياة تطوير المشروع   الخميس مارس 07, 2013 6:26 am

chokra, 3la lmawdo3 wakha mafhamt walo pale
الرجوع الى أعلى الصفحة اذهب الى الأسفل
http://www.atyab-nass.com
D o 3 a 2
مدير
مدير
avatar

عدد المساهمات : 511
السٌّمعَة : 5
تاريخ التسجيل : 02/03/2013
العمر : 30
الموقع : www.atyab-nass.com

مُساهمةموضوع: رد: الدرس الثاني: دورة حياة تطوير المشروع   الخميس مارس 07, 2013 5:15 pm

lol! JaNa zidini 3lik
No_Comment
الرجوع الى أعلى الصفحة اذهب الى الأسفل
http://www.atyab-nass.com
D o 3 a 2
مدير
مدير
avatar

عدد المساهمات : 511
السٌّمعَة : 5
تاريخ التسجيل : 02/03/2013
العمر : 30
الموقع : www.atyab-nass.com

مُساهمةموضوع: رد: الدرس الثاني: دورة حياة تطوير المشروع   الخميس مارس 07, 2013 5:17 pm

scratch NiiiiiiiiiiiiCe mawdou3
kaynin s7abo li yfahmoh
hhhhhh
الرجوع الى أعلى الصفحة اذهب الى الأسفل
http://www.atyab-nass.com
DaTaBaSe
مدير
مدير
avatar

عدد المساهمات : 305
السٌّمعَة : 3
تاريخ التسجيل : 02/03/2013
العمر : 30
الموقع : www.atyab-nass.com

مُساهمةموضوع: رد: الدرس الثاني: دورة حياة تطوير المشروع   الخميس مارس 07, 2013 5:25 pm

khaskom tfahmo rah howa li mafhamkomch 7it ntoma ma baghinch tfahmoh ama howa sahal mkaynchi li tzad m3alam ba raghba oul irada insan kaywsal
الرجوع الى أعلى الصفحة اذهب الى الأسفل
http://www.atyab-nass.com
DaTaBaSe
مدير
مدير
avatar

عدد المساهمات : 305
السٌّمعَة : 3
تاريخ التسجيل : 02/03/2013
العمر : 30
الموقع : www.atyab-nass.com

مُساهمةموضوع: رد: الدرس الثاني: دورة حياة تطوير المشروع   الخميس مارس 07, 2013 5:25 pm

مشكورون على المرورررررررررررر
الرجوع الى أعلى الصفحة اذهب الى الأسفل
http://www.atyab-nass.com
 
الدرس الثاني: دورة حياة تطوير المشروع
استعرض الموضوع السابق استعرض الموضوع التالي الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
www.atyab-nass.com :: قسم الكمبيوتر :: قسم البرمجة و التطوير-
انتقل الى: