هندسة البرمجيات: الفرق بين النسختين
[نسخة منشورة] | [نسخة منشورة] |
تم حذف المحتوى تمت إضافة المحتوى
الرجوع عن تعديل معلق واحد من 41.176.45.249 إلى نسخة 37048205 من شادي. |
ط بوت:الإبلاغ عن رابط معطوب أو مؤرشف V4.2 (تجريبي) |
||
سطر 1:
{{بطاقة تخصص}}
[[ملف:Coding Shots Annual Plan high res-5.jpg|تصغير|300بك]]
'''هندسة البرمجيات''' {{إنج|Software engineering}} المجال الذي يهتم بتطوير، وتصميم [[برمجية|البرمجيات]]، عالية الجودة آخذة بعين الاعتبار تخصيصات المستخدم، ومتطلباته على جميع المستويات.
تهتم هندسة البرمجيات بتكوين البرنامج منذ مراحله الأولى أثناء تحليل المشكلة، ومن ثم التصميم، وكتابة البرنامج حتى القيام بتجريبه، واختباره، وتنصيبه على الأجهزة، والقيام بعملية صيانته.
وهي حديثاً يمكن أن تنقسم لقسمين [[حوسبة لينة|الحوسبة اللينة]] والحوسبة الصلبة.<ref>{{مرجع ويب|الأخير=ACM|
== تاريخ هندسة البرمجيات ==
استخدمت هندسة البرمجيات كمفهوم نظري من حين لآخر في أواخر الخمسينات وبداية الستينات من القرن الماضي. أما الاستخدام الرسمي الأول لهذا المصطلح فكان في مؤتمر عقد من قبل اللجنة العلمية في منظمة [[حلف شمال الأطلسي]] [[1968]] <ref>{{مرجع كتاب|الأخير=Leondes|
== مفهوم هندسة البرمجيات ==
'''البرمجية''' {{إنج|Software}} شيء غير ملموس إلى حد ما بالمقارنة مع المنتجات الأخرى، وهي سلسلة من آلاف أو ملايين الأوامر التي تطلب من [[حاسوب|الحاسوب]] إجراء عمليات معينة مثل عرض المعلومات، أو إجراء الحسابات، أو تخزين البيانات. هذه البرمجيات هي بمثابة الروح من الجسد في النظام الحاسوبي وهي في توسع دائم وازدياد في التعقيد
والمتطلبات والمهام التي تقوم بتنفيذها. أما '''هندسة البرمجيات''' فهي فرع من فروع الهندسة يقوم على مجموعة أسس وقواعد تهدف إلى تصميم وتطوير البرامج بوفرة ونوعية عالية تلبي احتياجات المستخدمين، هذا الفرع من الهندسة يتميز بأنه لا يحتاج إلى رأس مال كبير وبالتالي الخسارة فيه قليلة على عـكس بقية الفروع الأخرى من الهندسة، كما لا يكفي لإيجاد البرمجية المتكاملة والجيدة عمل شخص واحد وإنما يتطلب ذلك فريقاً من المهندسين الجيدين. وقد كان ضروريا إيجاد علم يعني بهندسة البرمجيات لوضع الأسس والمعايير التي تصون هذه المهنة من المتطفلين بحيث يصبح بالإمكان تمييز البرنامج الجيد من غير الجيد.<ref name="swebookv3">{{مرجع ويب|
== مراحل بناء النظام البرمجي ==
سطر 43:
=== الترميز(كتابة الكود) ===
تحول الخوارزميات والمخططات [[
=== الاختبار والتكاملية ===
سطر 63:
== الفرق بين البرمجة وهندسة البرمجيات ==
[[برمجة|البرمجة]] هي كتابة [[شيفرة مصدرية|الكود المصدري]] للبرنامج، وبالتالي تعتبر جزء من مرحلة التنفيذ (Implementation) في هندسة البرمجيات التي تعمل على بناء [[النظام البرمجي]] كمشروع متكامل.
== المجالات المختلفة التي لها علاقة بهندسة البرمجيات ==
* [[رياضيات|الرياضيات]]: يحتوى أغلب البرنامج على عناصر رياضيات مثل (logarithms) لذلك فإن مطوري هذا النوع من البرامج يكونون على اطلاع بالعديد من النواحي الرياضية.
* [[علم|العلوم]]: البرنامج له مواصفات علمية قياسية عديدة، مثل: الأداء وحجم البرنامج وتنوع الأحمال.network speed المعادلات الرياضية الطرق الحديثة لقواعد البيانات
* [[هندسة رياضية|الهندسة]]
* [[تصنيع|التصنيع]]: البرامج عبارة عن مجموعة من الخطوات. كل خطوة يتم تحديدها وتنفذ بدقة. مثل الكثير من الصناعات، لتحسين وتطوير خطوط الآنتاج والوصول إلى مستوى الجودة المطلوب.
* [[إدارة المشاريع|إدارة المشروعات]]: سواء كان تجاريا أو غير تجارى فإنة يحتاج إلى إدارة. مثل: جدول زمني وتكلفة تخصص له. عوامل بشرية للإدارة ومصادر مثل مكتب وأجهزة كمبيوتر.
== مقالات متعلقة بهندسة البرمجيات ==
|