PDA

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



Brave Heart
15-04-2004, 02:32 AM
بسم الله الرحمن الرحيم



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



بينما الهندسة لها أقسام عديدة أخرى إلى جانب الهندسة المدنية و المعمارية، فهناك هندسة الكمبيوتر و هندسة كهربائية، هندسة صناعية، كيميائية، بترول و غيرها من الأقسام.



كذلك بالنسبة لهندسة البرمجيات، فالاعتقاد الشائع أن هندسة البرمجيات أو الـSoftware Engineering عبارة عن كتابة برامج الكمبيوتر أو البرمجة. بينما البرمجة هي إحدى مكونات هندسة البرمجيات. و هذه المكونات هي:



- Project Managment: إدارة مشاريع



- User Documentation: إعداد ملفات المستخدمين



-Software Design: تصميم البرنامج



-Software Specification: تحديد متطلبات البرنامج



-User Interface Design: تصميم واجهة المستخدم



-Hardware Consideration: تحديد المستلزمات من المكونات الصلبة التي تتناسب مع عمل البرنامج



-Programing: كتابة البرنامج و هو عبارة عن كود يتكون من عدد من الأوامر



-Testing: مرحلة اختبار البرنامج و التأكد من صحة تشغيله و خلوه من الأخطاء



إن هندسة البرمجيات تقارب إلى حد كبير هندسة إدارة النظم، حيث تتم العمليات في هندسة البرمجيات على عدد من الخطوات و المراحل:



1- المرحلة الأولى تبدأ بمكالمة هاتفية:
حيث يتصل العميل و يبدأ بعرض مشكلته، فمثلا يحتاج نظام حماية لشركته، أو نظام صرف آلي لبنك، أو ممكن أن يكون صاحب مكتبة أو متجر و يريد تغير نظام البيع و الشراء أو العرض ليتم بشكل آلي.



2-Requirments Analysis:
في هذه المرحلة يتقابل العميل مع المهندس لمعرفة تفاصيل أكثر عن البرنامج الذي يريده و الشروط التي يجب توافرها، في هذه الحالة يمكن لمهندس البرمجيات معرفة كل تلك التفاصيل من خلال طرح مجموعة من الأسئلة المتخصصة لمعرفة كافة احتياجات المشروع.



3-Specifications:
في هذه المرحلة يعقد اجتماع مع فريق العمل، حيث يتم شرح المشكلة من جميع جوانبها لفهمها فهما تاما، و فتح مجال النقاش و تحديد الطريقة المثلى لإعداده بحيث تتناسب مع الميزانية المحددة و فترة الإعداد. كذلك يتم في هذه المرحلة كتابة العقد بين شركة البرمجيات و العميل.



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



5-Implementation:
أو التطبيق، حيث يتم ترجمة التصميم في المرحلة السابقة إلى عمل فعال و منتج باستخدام إحدى لغات البرمجة المناسبة لبرمجة النظام على أيدي مبرمجين، و اختباره قبل التسليم.