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