‏إظهار الرسائل ذات التسميات Software Engineering هندسة البرمجيات#. إظهار كافة الرسائل
‏إظهار الرسائل ذات التسميات Software Engineering هندسة البرمجيات#. إظهار كافة الرسائل

أدوات التصميم وتحليل البرمجيات في هندسة البرمجيات Software Analysis & Design Tools Software Engineering #

أدوات التصميم وتحليل البرمجيات في هندسة البرمجيات Software Analysis & Design Tools Software Engineering #

أدوات التصميم وتحليل البرمجيات في هندسة البرمجيات Software Analysis & Design Tools Software Engineering #

أساسيات تصميم البرمجيات #Software Design Basics Software Engineering

أساسيات تصميم البرمجيات #Software Design Basics Software Engineering 


أساسيات تصميم البرمجيات 
Software Design Basics Software #Engineering

ما هي متطلبات البرمجيات في هندسة البرمجيات what are the Software Engineering Software Requirements#

ما هي متطلبات البرمجيات في هندسة البرمجيات Software  Engineering Software Requirements# 

متطلبات البرمجيات في هندسة البرمجيات Software  Engineering Software Requirements#

ما هي متطلبات البرمجيات في هندسة البرمجيات Software  Engineering Software Requirements# 

إعدادات بيئة تطوير برمجيات الأندرويد Android Environment Setup#

إعدادات بيئة تطوير  برمجيات الأندرويد Android  Environment Setup#

إعدادات بيئة تطوير  برمجيات الأندرويد Android  Environment Setup#
سيسعدك أن تعرف أنه يمكنك بدء تطوير تطبيق Android على أي من أنظمة التشغيل التالية -

 نظام التشغيل Microsoft Windows XP أو الأحدث.

 إصدار Mac OS X 10.5.8 أو إصدار أحدث مع شريحة Intel.

 Linux بما في ذلك GNU C Library 2.7 أو الأحدث.

 النقطة الثانية هي أن جميع الأدوات اللازمة لتطوير تطبيقات أندرويد متوفرة مجانًا ويمكن تنزيلها من الويب.  فيما يلي قائمة البرامج التي ستحتاجها قبل بدء برمجة تطبيقات Android.

 جافا JDK5 أو الإصدار الأحدث

 أندرويد ستوديو

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

مجموعة تطوير Java (JDK)
 يمكنك تنزيل أحدث إصدار من Java JDK من موقع Oracle's Java - Java SE Downloads.  ستجد تعليمات لتثبيت JDK في الملفات التي تم تنزيلها ، اتبع الإرشادات المعطاة لتثبيت وتكوين الإعداد.  أخيرًا ، عيّن PATH و JAVA_HOME متغيرات البيئة للإشارة إلى الدليل الذي يحتوي على java و javac ، وعادةً java_install_dir / bin و java_install_dir على التوالي.

 إذا كنت تقوم بتشغيل Windows وتثبيت JDK في C: \ jdk1.8.0_102 ، فسيتعين عليك وضع السطر التالي في ملف C: \ autoexec.bat.

set PATH=C:\jdk1.8.0_102\bin;%PATH%
set JAVA_HOME=C:\jdk1.8.0_102

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

 على نظام Linux ، إذا تم تثبيت SDK في /usr/local/jdk1.8.0_102 وكنت تستخدم C shell ، فإنك تضع الكود التالي في ملف .cshrc الخاص بك.

setenv PATH /usr/local/jdk1.8.0_102/bin:$PATH
setenv JAVA_HOME /usr/local/jdk1.8.0_102




بدلاً من ذلك ، إذا كنت تستخدم Android studio ، فسوف يعرف تلقائيًا مكان تثبيت جافا.

 IDEs الروبوت
 هناك الكثير من التقنيات المتطورة المتاحة لتطوير تطبيقات أندرويد ، والتقنيات المألوفة ، والتي تستخدم في الغالب الأدوات على النحو التالي

 أندرويد ستوديو

  الكسوف eclipse بيئة تطوير متكاملة IDE (مهمة)








نماذج تطوير الأنظمة النظم نموذج الإنفجار الكبير هندسة البرمجيات software Engineering big bang Model#

نماذج تطوير الأنظمة النظم نموذج الإنفجار الكبير هندسة البرمجيات software Engineering big bang Model# 

نموذج الانفجار الكبير
 هذا النموذج هو أبسط نموذج في شكله.  يتطلب القليل من التخطيط والكثير من البرمجة والكثير من الأموال.  يتم تصور هذا النموذج حول الانفجار الكبير للكون.  كما يقول العلماء أنه بعد الانفجار الكبير ، تطورت الكثير من المجرات والكواكب والنجوم كحدث.  وبالمثل ، إذا جمعنا الكثير من البرمجة والأموال ، فقد تحقق أفضل منتج للبرامج.
نماذج تطوير الأنظمة النظم نموذج الإنفجار الكبير هندسة البرمجيات software Engineering big bang Model#
لهذا النموذج ، هناك حاجة إلى كمية صغيرة جدا من التخطيط.  لا يتبع أي عملية أو في بعض الأحيان العميل غير متأكد من المتطلبات والاحتياجات المستقبلية.  وبالتالي فإن متطلبات الإدخال تعسفية.

 هذا النموذج غير مناسب لمشاريع البرامج الكبيرة ولكنه جيد للتعلم والتجريب.

 لقراءة متعمقة على SDLC ونماذجها المختلفة ،

نماذج تطوير الأنظمة النظم نموذج الشكل V هندسة البرمجيات Software Engineering V Model #

نماذج تطوير الأنظمة النظم نموذج الشكل V هندسة البرمجيات Software Engineering V Model #

نموذج V
 العيب الرئيسي لنموذج الشلال هو أننا ننتقل إلى المرحلة التالية فقط عند الانتهاء من المرحلة السابقة ولم تكن هناك فرصة للعودة إذا وجد خطأ ما في مراحل لاحقة.  يوفر V-Model وسائل اختبار البرمجيات في كل مرحلة بطريقة عكسية.
نماذج تطوير الأنظمة النظم نموذج الشكل V هندسة البرمجيات Software Engineering V Model #

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

 هذا يجعل كل من التحقق والتحقق من الصحة يسيران بشكل متوازٍ.  يُعرف هذا النموذج أيضًا باسم نموذج التحقق والتحقق.






نماذج تطوير الأنظمة النظم نموذج الحلزوني الدوامة هندسة البرمجيات Software Engineering Spiral Model#

نماذج تطوير الأنظمة النظم نموذج الحلزوني الدوامة هندسة البرمجيات Software Engineering Spiral Model# 



نموذج الحلزوني دوامة
 نموذج حلزوني هو مزيج من كلا ، نموذج تكراري واحد من نموذج SDLC.  يمكن رؤية ما إذا اخترت أحد نماذج SDLC ودمجه مع العملية الدورية (النموذج التكراري).
نماذج تطوير الأنظمة النظم نموذج الحلزوني الدوامة هندسة البرمجيات Software Engineering Spiral Model#

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


نماذج تطوير الأنظمة النموذج التكراري هندسة البرمجيات Software Engineering Iteration Model#

نماذج تطوير الأنظمة النموذج التكراري هندسة البرمجيات Software Engineering Iteration Model# 

نموذج تكراري

 هذا النموذج يقود عملية تطوير البرمجيات في التكرار.  انها تتوقع عملية التنمية بطريقة دورية تكرر كل خطوة بعد كل دورة من عملية SDLC.

نماذج تطوير الأنظمة النموذج التكراري هندسة البرمجيات Software Engineering Iteration Model#
تم تطوير البرنامج لأول مرة على نطاق صغير للغاية ويتم اتباع جميع الخطوات التي تؤخذ بعين الاعتبار.  ثم ، في كل تكرار تالي ، يتم تصميم المزيد من الميزات والوحدات النمطية وترميزها واختبارها وإضافتها إلى البرنامج.  تنتج كل دورة برنامجًا مكتملًا بحد ذاته وله ميزات وقدرات أكثر من سابقتها.

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







مخططات تطوير النظم نموذج الشلال هندسة برمجياتSoftwar Engineering Waterfall Model Software Development Paradigm #

مخططات تطوير النظم نموذج الشلال هندسة برمجيات Softwar Engineering  Waterfall  Model  Software Development Paradigm #

مخططات تطوير النظم نموذج الشلال هندسة برمجياتSoftwar Engineering  Waterfall  Model  Software Development Paradigm #

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

 نموذج الشلال
 نموذج الشلال هو أبسط نموذج لنموذج تطوير البرمجيات.  تقول أن جميع مراحل SDLC ستعمل واحدة تلو الأخرى بطريقة خطية.  وهذا هو ، عند الانتهاء من المرحلة الأولى ثم تبدأ المرحلة الثانية فقط وهلم جرا.
مخططات تطوير النظم نموذج الشلال هندسة برمجياتSoftwar Engineering  Waterfall  Model  Software Development Paradigm #


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

 يكون هذا النموذج أكثر ملاءمة عندما يكون المطورون قد قاموا بالفعل بتصميم وتطوير برامج مماثلة في الماضي وهم على دراية بجميع مجالاته.









دورة حياة تطوير النظام هندسة البرمجيات Software Development Life Cycle#

دورة حياة تطوير النظام هندسة البرمجيات Software Development Life Cycle#

دورة حياة تطوير النظام هندسة البرمجيات Software Development Life Cycle#


دورة حياة تطوير البرمجيات ، SDLC لفترة قصيرة ، عبارة عن تسلسل منظم ومُحدد جيدًا للمراحل في هندسة البرمجيات لتطوير منتج البرنامج المقصود.   أنشطة SDLC  توفر SDLC سلسلة من الخطوات الواجب اتباعها لتصميم وتطوير منتج برمجي بكفاءة.  يتضمن إطار عمل SDLC الخطوات التالية:

دورة حياة تطوير البرمجيات ، SDLC لفترة قصيرة ، عبارة عن تسلسل منظم ومُحدد جيدًا للمراحل في هندسة البرمجيات لتطوير منتج البرنامج المقصود.

 أنشطة SDLC
 توفر SDLC سلسلة من الخطوات الواجب اتباعها لتصميم وتطوير منتج برمجي بكفاءة.  يتضمن إطار عمل SDLC الخطوات التالية:

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

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

 دراسة النظام الحالي أو البرامج القديمة ،
 إجراء مقابلات مع المستخدمين والمطورين ،
 في اشارة الى قاعدة البيانات أو
 جمع الإجابات من الاستبيانات.

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

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

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

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

تجريب او الاختبار
 يقول أحد التقديرات إنه يجب اختبار 50٪ من عملية تطوير البرمجيات بالكامل.  قد تدمر الأخطاء البرنامج من المستوى الحرج إلى إزالته.  يتم اختبار البرنامج أثناء إجراء الترميز بواسطة المطورين ويتم إجراء اختبار شامل بواسطة خبراء اختبار على مستويات مختلفة من التعليمات البرمجية مثل اختبار الوحدة النمطية واختبار البرنامج واختبار المنتج والاختبار الداخلي واختبار المنتج في نهاية المستخدم.  الكشف المبكر عن الأخطاء وعلاجها هو مفتاح البرامج الموثوقة.

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


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

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

التالي نماذج هندسة البرمجيات






نظرة عامة على هندسة البرمجيات Software Engineering Overview#

نظرة عامة على هندسة البرمجيات Software Engineering Overview#

نظرة عامة على هندسة البرمجيات Software Engineering Overview#

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

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

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

هندسة البرمجيات هي فرع هندسي مرتبط بتطوير منتجات البرمجيات باستخدام مبادئ وأساليب وإجراءات علمية واضحة المعالم.  نتائج هندسة البرمجيات هي منتج برامج فعال وموثوق.

 التعاريف
 يعرّف IEEE هندسة البرمجيات بأنها:

 (1) تطبيق نهج منهجي ومنضبط وقابل للقياس لتطوير البرمجيات وتشغيلها وصيانتها ؛  وهذا هو ، تطبيق الهندسة على البرمجيات.

 (2) دراسة النهج كما في البيان أعلاه.

 يعرف فريتز باور ، عالم الكمبيوتر الألماني ، هندسة البرمجيات بأنها:

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

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

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

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

 قوانين تطور البرمجيات
 أعطى ليمان قوانين لتطوير البرمجيات.  قام بتقسيم البرنامج إلى ثلاث فئات مختلفة:
S-type (نوع ثابت) - هذا برنامج يعمل بدقة وفقًا للمواصفات والحلول المحددة.  الحل وطريقة تحقيقه ، يتم فهمهما على الفور قبل الترميز.  البرنامج الأقل نوعًا عرضة للتغييرات ، وهذا هو أبسط شيء على الإطلاق.  على سبيل المثال ، برنامج آلة حاسبة لحساب الرياضية.
 نوع P (نوع عملي) - هذا برنامج يحتوي على مجموعة من الإجراءات.  يتم تعريف هذا بالضبط ما يمكن أن تفعله الإجراءات.  في هذا البرنامج ، يمكن وصف المواصفات ولكن الحل ليس واضحًا على الفور.  على سبيل المثال ، برامج الألعاب.
 E-type (نوع مضمن) - يعمل هذا البرنامج عن كثب كشرط لبيئة العالم الحقيقي.  يحتوي هذا البرنامج على درجة عالية من التطور حيث توجد تغييرات مختلفة في القوانين والضرائب وما إلى ذلك في مواقف العالم الحقيقي.  على سبيل المثال ، برنامج التداول عبر الإنترنت.
 تطور البرمجيات من النوع E


تطور البرمجيات من النوع E
 أعطى ليمان ثمانية قوانين لتطوير البرمجيات من النوع E -

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

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

نموذج البرمجة هو مجموعة فرعية من نموذج تصميم البرمجيات والذي يعد أيضًا مجموعة فرعية من نموذج تطوير البرامج.

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

 جمع المتطلبات
 تصميم البرمجيات
 برمجة

 نموذج تصميم البرمجيات

هذا النموذج هو جزء من تطوير البرمجيات ويشمل -

 تصميم
 صيانة
 برمجة
 نموذج البرمجة
 يرتبط هذا النموذج ارتباطًا وثيقًا بالجانب البرمجي لتطوير البرامج.  وهذا يشمل -

 الترميز
 تجريب او الإختبار 
 التكامل


الحاجة إلى هندسة البرمجيات

 تنشأ الحاجة إلى هندسة البرمجيات بسبب ارتفاع معدل التغير في متطلبات المستخدم والبيئة التي يعمل عليها البرنامج.

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

 تشغيل
 انتقالي
 صيانة
 من المتوقع أن يكون للبرنامج الذي تم تصميمه جيدًا وصياغة الخصائص التالية:

 تشغيل

هذا يخبرنا كيف يعمل البرنامج بشكل جيد في العمليات.  يمكن قياسه على:

 الميزانيات
 الاستخدام
 كفاءة
 صحة
 وظائف
 الجدارة
 أمن
 سلامة
 انتقالي
 هذا الجانب مهم عندما يتم نقل البرنامج من منصة إلى أخرى:

 قابلية
 التوافقية
 إعادة استخدام
 تكيف




صيانة
 يشرح هذا الجانب مدى قدرة البرنامج على الحفاظ على نفسه في بيئة دائمة التغير:

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







دروس هندسة البرمجيات Software Engineering Tutorial#

دروس هندسة البرمجيات Software Engineering Tutorial#

دروس هندسة البرمجيات Software Engineering Tutorial#

هندسة البرمجيات هي فرع هندسي مرتبط بتطوير منتجات البرمجيات باستخدام مبادئ وأساليب وإجراءات علمية واضحة المعالم.  نتائج هندسة البرمجيات هي منتج برامج فعال وموثوق.

 إدارة مشاريع البرامج لها مجال أوسع من عملية هندسة البرمجيات حيث أنها تنطوي على التواصل ودعم ما قبل وما بعد التسليم ، إلخ.

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

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

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

تابع التالي