هندسة البرمجيات المجال الذي يهتم بتطوير، وتصميم البرمجيات، عالية الجودة آخذة بعين الاعتبار تخصيصات المستخدم، ومتطلباته على جميع المستويات.
تهتم هندسة البرمجيات بتكوين البرنامج منذ مراحله الأولى أثناء تحليل المشكلة، ومن ثم التصميم، وكتابة البرنامج حتى القيام بتجريبه، واختباره، وتنصيبه على الأجهزة، والقيام بعملية صيانته.
وهي حديثاً يمكن أن تنقسم لقسمين الحوسبة اللينة والحوسبة الصلبة.
تاريخ هندسة البرمجيات.
استخدمت هندسة البرمجيات كمفهوم نظري من حين لآخر في أواخر الخمسينات وبداية الستينات من القرن العشرين. أما الاستخدام الرسمي الأول لهذا المصطلح فكان في مؤتمر عقد من قبل اللجنة العلمية في منظمة حلف شمال الأطلسي 1968 حول البرمجيات، وقد أخذ هذا المصطلح بالانتشار منذ ذلك الحين ولاقى اهتماماً متزايداً في نواح مختلفة. عقد المؤتمر لمعالجة مايعرف «أزمة البرمجيات» والتي ظهرت بسبب عدم استخدام منهجية في التفكير (Software Development Process) عند بناء البرمجيات، مما أدى إلى ظهور أخطاء كثيرة خلال عملية بناء وصيانة البرمجيات، وبالتالي أصبحت البرمجيات تحتاج وقت كبير لتطويرها ولصيانتها، وكلفة مالية عالية أكثر مما هو مخمن لها، وبعد تحمل التأخر في الوقت وتجاوز الميزانية كانت البرمجيات ذات كفاءة ضعيفة في إنجاز الوظائف المطلوبة، وقلة في الفعالية كذلك بعدم تلبية كافة المتطلبات بالشكل الكامل.
مفهوم هندسة البرمجيات.
البرمجية شيء غير ملموس إلى حد ما بالمقارنة مع المنتجات الأخرى، وهي سلسلة من آلاف أو ملايين الأوامر التي تطلب من الحاسوب إجراء عمليات معينة مثل عرض المعلومات، أو إجراء الحسابات، أو تخزين البيانات. هذه البرمجيات هي بمثابة الروح من الجسد في النظام الحاسوبي وهي في توسع دائم وازدياد في التعقيد 
والمتطلبات والمهام التي تقوم بتنفيذها. أما هندسة البرمجيات فهي فرع من فروع الهندسة يقوم على مجموعة أسس وقواعد تهدف إلى تصميم وتطوير البرامج بوفرة ونوعية عالية تلبي احتياجات المستخدمين، هذا الفرع من الهندسة يتميز بأنه لا يحتاج إلى رأس مال كبير وبالتالي الخسارة فيه قليلة على عـكس بقية الفروع الأخرى من الهندسة، كما لا يكفي لإيجاد البرمجية المتكاملة والجيدة عمل شخص واحد وإنما يتطلب ذلك فريقاً من المهندسين الجيدين. وقد كان ضروريا إيجاد علم يعني بهندسة البرمجيات لوضع الأسس والمعايير التي تصون هذه المهنة من المتطفلين بحيث يصبح بالإمكان تمييز البرنامج الجيد من غير الجيد.
مراحل بناء النظام البرمجي.
في هندسة البرمجيات، بناء النظام البرمجي ليس مجرد كتابة شفرة، وإنما هي عملية إنتاجية لها عدة مراحل أساسية وضرورية للحصول على المنتج، وهو البرنامج بأقل كلفة ممكنة وأفضل أداء محتمل. يطلق على هذه المراحل اسم دورة حياة النظام البرمجي(Software Lifecycle) التي قد يبدو بعضها ليس له علاقة بالبرمجة. وهناك الكثير من التصورات والنماذج في هندسة البرمجيات تصف عملية إنتاج برنامج والخطوات اللازمة لذلك. كما أن هذه الدورة خاضعة للتطوير دائما، حيث بالإضافة للدورات الكلاسيكية، ظهر مفهوم المنظومة المرنة (Agile Process) والتي تتخلي عن النموذج الثابت للمنظومة الكلاسيكية في سبيل المزيد من حرية الحركة للمشروع.

 المجال الذي يهتم بتطوير، وتصميم البرمجيات، عالية الجودة آخذة بعين الاعتبار تخصيصات المستخدم
ما هي هندسة البرمجيات؟

تهتم هندسة البرمجيات بتكوين البرنامج منذ مراحله الأولى أثناء تحليل المشكلة، ومن ثم التصميم، وكتابة البرنامج حتى القيام بتجريبه، واختباره، وتنصيبه على الأجهزة، 
ما هي المراحل التي تشملها هندسة البرمجيات؟

 الحوسبة اللينة والحوسبة الصلبة
ما هي الاقسام التي انقسمت اليها هندسة البرمجيات ؟

.
ما هي أهمية هندسة البرمجيات في تطوير البرمجيات ذات الجودة العالية؟

.
ما هي الفروق بين الحوسبة اللينة والحوسبة الصلبة في هندسة البرمجيات؟

استخدمت هندسة البرمجيات كمفهوم نظري من حين لآخر في أواخر الخمسينات وبداية الستينات من القرن العشرين
ما هو تاريخ هندسة البرمجيات؟

التي ظهرت بسبب عدم استخدام منهجية في التفكير
ما هي "أزمة البرمجيات" التي ظهرت في الستينات؟

.
ما هي التحديات التي تواجه هندسة البرمجيات في الوقت الحالي؟




شيء غير ملموس إلى حد ما بالمقارنة مع المنتجات الأخرى، وهي سلسلة من آلاف أو ملايين الأوامر التي تطلب من الحاسوب إجراء عمليات معينة مثل عرض المعلومات،
ما هي البرمجية؟

هذه البرمجيات هي بمثابة الروح من الجسد في النظام الحاسوبي وهي في توسع دائم وازدياد في التعقيد 
ما هي أهمية البرمجية في النظام الحاسوبي؟

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

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

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



