ما هي هندسة البرمجيات؟ – مقدمة

مدرج تحت قسم: مقالات
4 مارس 2007

هي نوع من الهندسة يهتم بتطوير و بناء البرامج و تحسينها بطرق هندسية على عدة مراحل محددة هي:

  1. تحليل متطلبات و مواصفات البرنامج
  2. تصميم البرنامج
  3. برمجة البرنامج
  4. اختبار البرنامج
  5. صيانة البرنامج

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

بصورة مختصرة، تعريف لكل مرحلة من التطوير و ما ينتج عنها:

  1. تحليل متطلبات و مواصفات البرنامج
    وفيها يتم جمع مواصفات البرنامج من الزبون، ثم دراستها و تحليلها و بيان الغامض و المتعارض منها، الناتج من هذه المرحلة: سرد المواصفات بتحليلاتها في مستند خاص يسمى (SRS (Software Requirements Specification – مستند مواصفات متطلبات البرنامج.
  2. تصميم البرنامج
    ولا يقصد فيها تصميم الشكل المظهري للبرنامج فقط، بل تصميم البرنامج كبنية و كلاسات و كائنات و تحليله من هذه النواحي. وتعتبر هذه المرحلة من أهم المراحل حيث تحدد فيها جودة البرنامج و تركيبه، و تستخدم اللغة الرسومية UML لهذا الغرض.  توفر الـ UML العديد من التصاميم و الرسوم البيانية، كتصميم حالة الاستخدام Use Case Diagram و تصميم تسلسل الأحداث Sequence Diagram.
    الناتج من هذه المرحلة عرض التصاميم و تحليلاتها مع مواصفات البرنامج في مستند باسم (SDD (Software Design Description – مستند وصف تصميم البرنامج.
  3. برمجة البرنامج
    وفيها يتم كتابة كود البرنامج. يعتمد المبرمج على مستند الـ SDD “فقط”، لذا، يجب كتابة مستند الـ SDD بتفصيل و عرض التصاميم بوضوح لمساعدة المبرمج على البرمجة.
    النتيجة: الكود المصدري أو Source Code للبرنامج.
  4. اختبار البرنامج
    أولاً تُحدد الأساليب المناسب لاختبار البرنامج و تدرس بعناية، ثم تحدد مجموعة من حالات الاختبار أو Test Cases لتطبيقها على البرنامج و دراسة القيم الناتجة منها.  في حالة وجود أخطاء و عيوب، يُعاد البرنامج إلى المختصصين في المراحل السابقة لفهم المشكلة و إصلاحها.
    النتيجة: إصلاح عيوب البرنامج.
  5. صيانة البرنامج
    وهذه المرحلة تطبق بعد تسليم البرنامج إلى الزبون، حيث تهتم بصاينة المشاكل التي لم تكتشف في مرحلة الاختبار و تحديث البرنامج باستمرار لمواكبة التغييرات التقنية.  و يوجد العديد من المراحل الأخرى كمرحلة توثيق معلومات التطوير في مستندات ، تسويق البرنامج ، التدريب، و غيرها.

للاستزادة من ويكيبيديا العربية.

للكاتب صالح الزيد

  • Share/Bookmark

التعقيبات

التعليقات (61) على ”ما هي هندسة البرمجيات؟ – مقدمة“

  1. لوووووووسمحتم اخوتي افيدوني ارجوكم

  2. ارجوكم ان تزودوني بمعلومات عن هندسة البرمجيات

  3. ارجوكبمعلومات عن هندسة البرمجياتم ان تزودوني

  4. محمد عبد الرحمن

    السلام عليكم
    يمكن اول مرة بزور الموقع فيها
    بس عن جد انا مش عارف شو هي هندسة البرمجيات بالنسة لسوق العمل

  5. السلام عليكم و الرحمة

    http://learning-math.net/
    http://www.mathramz.com/math/

    اسال الله لكم التوفيق
    حسن – المغرب

  6. هندسة البرمجيات لها تعريفات عديدة ومختلفة وتحتاج متطلبات اكبر من كل النواحي

  7. ود الجنة بره :
    انا عايز اقرا هندسة برمجيات كلية المشرق الخرطوم بحري عايز منكم خدمة كيف اصمم برامج او كل شئ يفيدني مع العلم اني درست هندسة حاسوب نظام ثلاثة سنوات في جامعة وادي النيل ولقد وفقني الله وجدت فرصة دراسة بكلية المشرق هندسة يعني ابدا بالمستوي الرابع اريد كل مايفيدني في ذلك المجال وهل هذه الدراسة لها مستقبل وفرص عمل في السودان مع العلم اكره جدا الهجرة الي اي دول لوجود فرصة عمل ولم مني جزيل الشكر والتقدير
    حسين عبد الله القضارف الجنة بره جنوب القضارف علي بعد 16 كيلو متر

  8. عاجل عايز معلومات عن كلية المشرق ببحري بالتحديد عن هندسة البرمجيات

  9. ادريسعبد الله يبات

    اريد استفسارا كاملاً عن هندسة البرمجيات

  10. ادريس عبد الله يبات

    لانو باذن الله اريد عمل ماستر

  11. مساء الخير احبابي الكرام
    موضعي عن هندسة البرمجيات
    كيف يصبح المهندس مبرمجي ناجحا في مجال هندسة البرمجيات
    القواعد والاسس التي تجعل المهندسي البرمجي متفوقاً علي غيره
    انا احب البرمجيات احس اني سوف اكون مبرمجا بارعاً
    اريد كل الوسائل التي تجعل المبرمجي متفوقاً في هذا المجال
    ابحث عن كل شي يفيدني في عمل البرمجيا
    مع العلم اني علي وشك بداية الدراسة
    لدي دبلوم هندسة حاسوب نظام ثلاثة سنوات
    اجيد الصيانة والشبكات وقليل من البرمجيات

  12. كابوس في هندسة البرمجيات
    عايز منكم حلول متكاملة في هذا المجال

  13. محمد مقدادي

    هل هندسة البرمجيات معترف بها في نقابة المهندسين في الاردن ويعتبر عضو في النقابه……… شكرالكم

  14. علا_عراق

    كيف اعرف انني سأنجح في مجال هندسة الرمجيات ؟ وما الحالات التي سوف تكون عدوه لهذا النجاح؟

  15. طارق

    اذا تعلم هندسة البرمجيات يمدني اصير خبير بل الهكر ؟!

  16. فطوم

    انا طالبة بالتانوين من قطاع غزة و ارجوا انكم اتساعدونى انى اعمل بحت عن البرمجيات و البرامج

  17. اسامه الزوي

    انا طلبه في السنه الاخير بكالوريوس واريد معلومات عن هندسة البرمجيات

  18. بسم الله الرحمن الرحيم
    انا طالبة في الجامعة ادرس في هندسة البرمجيات وهي مادة سلسة ومفيدة في الدراسة كااهرام معتمدة على بعض المواد

  19. السلام عليكم ورحمته الله
    هندسة البرمجيات وتسمى (Software engineering) هي فرع من فروع المعلوماتية تهدف إلى تطوير مجموعة أسس وقواعد تؤدي إلى تحسين طرق تصميم وتطوير البرمجيات على جميع المستويات؛ وذلك بطريقة تلبي احتياجات المستخدمين. هندسة البرمجيات لا تهتم بكتابة البرنامج نفسه أي بكتابة شفرته، بل تحاول تحسين عملية تطوير، وصنع البرنامج ابتدائا من المواصفات التي يضع الحريف، وانتهاء عند مشكلة صيانة البرنامج أو توسيعه. وهي تقوم على دراسة احتياجات المستخدم وتصميم البرنامج المناسب لها قبل كتابة شيفرته، والأخذ بعين الاعتبار العديد من الجوانب كالقدرة على تطوير البرنامج بسهولة لاحقا، أو السرعة، أو إمكانية إضافة ملحقات له بشكل ديناميكي.

  20. انا ادرس في هندسة البرمجيات وهي مادة سلسة :
    هندسة البرمجيات هي مع نظريات والاساليب والادوات اللازمة لالمهنية تطوير البرمجيات
    الانفاق على البرمجيات يمثل جزء كبير من الناتج القومي الاجمالي في جميع البلدان المتقدمة
    اي شخص يبي او يريد اي شي في هندسة البرمجيات يتفضل

أضف تعليقك




يمكنك استخدام الوسوم التالية في التعليق: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>


* حقول مطلوبة