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


نحن لا ندعى التميز ولكن نسعى لنكون المتميزون
 
الرئيسيةأحدث الصورالتسجيلدخول
أفضل 10 أعضاء في هذا المنتدى
Admin - 946
 دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_rcap دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Voting_bar دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_lcap 
احمد محمد العتعوتى - 450
 دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_rcap دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Voting_bar دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_lcap 
الاسيوطى - 411
 دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_rcap دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Voting_bar دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_lcap 
محمد مراد عبدالحفيظ - 367
 دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_rcap دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Voting_bar دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_lcap 
ميادة - 219
 دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_rcap دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Voting_bar دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_lcap 
الكابتن ميدو - 180
 دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_rcap دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Voting_bar دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_lcap 
بنت الاسلام - 148
 دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_rcap دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Voting_bar دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_lcap 
الفرعون - 135
 دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_rcap دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Voting_bar دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_lcap 
مى - 128
 دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_rcap دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Voting_bar دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_lcap 
الملك - 106
 دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_rcap دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Voting_bar دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Vote_lcap 
مواضيع مماثلة
بحـث
 
 

نتائج البحث
 
Rechercher بحث متقدم
المواضيع الأخيرة
التبادل الاعلاني
 
 
 

 

  دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع

اذهب الى الأسفل 
كاتب الموضوعرسالة
احمد محمد العتعوتى
وسام الابداع
وسام الابداع
احمد محمد العتعوتى


ما رايك فى المنتدى ما رايك فى المنتدى : منتدى السراطنية
عدد المساهمات : 450
نقاط : 1190
السٌّمعَة : 51
تاريخ التسجيل : 12/11/2010
العمر : 31

 دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Empty
مُساهمةموضوع: دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع     دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Icon_minitime12011-06-21, 03:07

[font=Arial]
 دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Introfv1



 دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  201527448mw2qg2


 دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  V8C00599

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

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


مقدمة:


عملية بناء أي منتج تمر بعدة مراحل يطلق عليها عادة "دورة الحياة" 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) وحتى الخطوة (8)، وكما يظهر بالشكل (1) فإن كل مرحلة تبدأ بعد الأنتهاء من المرحلة التي تسبقها مباشرة.






 دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Img2_1

شكل (1)


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


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




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




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


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




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


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



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


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


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




 دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Img2_2



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


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




 دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Img2_3

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


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

 دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع  Img2_4

•·.·´¯`·.·• (نهاية الدرس الثاني) •·.·´¯`·.·•



الرجوع الى أعلى الصفحة اذهب الى الأسفل
 
دورة هندسة البرمجيات» [الدرس الثاني]:» دورة حياة تطوير المشروع
الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1
 مواضيع مماثلة
-
»  دورة هندسة البرمجيات » الدرس الخامس الجزء الثاني كتابة البرنامج واختباره
»  دورة هندسة البرمجيات » [الدرس الثالث]:» دراسة المتطلبات
»  دورة هندسة البرمجيات » [الدرس الخامس]:» كتابة البرنامج واختباره

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