مجموعة من الدروس التي تشرح هندسة البرمجيات software engineering و لغة النمذجة الموحدة UML
ما هي هندسة البرمجيات software engineering؟
في الواقع انه من الصعب جدا تحديد معنى هندسة البرمجيات "software engineering". فهي تستخدم كل من الهندسة والعلوم في محاولة لإدخال تحسينات في مجال تكنولوجيا البرمجيات "software technology". مختلف الناس لديهم تعريفات مختلفة لمصطلح هندسة البرمجيات اعتمادا على الميادين التي يعملون فيها.
والمهمة الرئيسية لمهندس البرمجيات هو تغيير وتصميم البرمجيات المعقدة. و يسعى ايضا الى إدخال تحسينات على البرامج في محاولة لجعلها أسهل في الاستخدام.
هندسة البرمجيات هي مجال جديد نسبيا ، و ظهرت بسبب التطور السريع في أجهزة الكمبيوتر. ونتيجة لهذا ، لا يوجد كثير من مقررات هندسة البرمجيات المتاحة فهي محدودة وغالبا ما يختار الناس دراسة تكنولوجيا المعلومات "information technology" أولا. ومع ذلك ، هناك أدلة على أن هذا المجال ينمو وببطء ولكن بثبات ، فقد ظهر المزيد من الدورات المفيدة للغاية ذات الصلة بهندسة البرمجيات. كل ما تحتاجه هو التأكد من أن تجد تكوين جيد ويكون مقبول من طرف أرباب العمل الذين ترغب في العمل لديهم.
يمكن لمهندسي البرامج العمل مع نطاق واسع من الناس والمنظمات المختلفة. بعض الأمثلة على مجموعة من المنظمات التي يمكن ان تعمل على ذلك: الشركات ، الإدارات ، الوكالات الحكومية ، الجمعيات الخيرية والشركات الصحية. فهي مطلوبة من قبل أي منشأة تستخدم أجهزة الكمبيوتر وأنظمته. و مطلوبة في بعض الأحيان لإصلاح المشاكل القائمة أو لوضع تدابير لمنع مزيد من مشاكل البرمجيات في المستقبل.
واحدة من أهم الأشياء التي يجب أن تعرفها في حالة ما إذا كنت تريد أن تصبح مهندس البرمجيات والبرمجة. فحصولك على شهادة في علوم الكمبيوتر يمكن ان يساعد بالتأكيد للحصول على فهم قوي لهذا الموضوع ، و يوفر لك المهارات العملية. ومع ذلك ، فإن أفضل مكان لتعلم البرمجة هو العمل و في الحالات العملية للغاية. وبذلك عليك أن تبدأ كمبتدئ او مساعد فذلك يمكنك من ممارسة مهارات البرمجة و تعمل على هذا المنوال حتى تصل الى مستوى محترف في هندسية البرامج.
ما هي لغة النمذجة الموحدة Unified Modeling Language؟
لغة النمذجة الموحدة "Unified Modeling Language -- UML" هي لغة قياسية لتحديد ، تصور ، بناء ، وتوثيق الأعمال لبرمجيات الأنظمة ، فضلا عن نماذج الأعمال التجارية وغيرها من النظم المختلفة عن البرمجيات. لغة النمذجة الموحدة تمثل مجموعة من أفضل التطبيقات الهندسية التي ثبت نجاحها في نمذجة النظم الضخمة والمعقدة. و لغة النمذجة الموحدة "UML" هي جزء هام لتطوير البرمجة الكائنية التوجه "object oriented software" و عملية تطوير البرمجيات "software development". لغة النمذجة الموحدة تستخدم الرموز الرسومية في الغالب للتعبير عن طريقة تصميم مشاريع البرامج. يساعد فريق العمل في المشروع الذي يستخدم لغة النمذجة الموحدة في التواصل ، استكشاف إمكانات التصاميم ، والتحقق من صحة التصميم الهندسي للبرنامج.
أهداف لغة النمذجة الموحدة UML
الأهداف الرئيسية للغة النمذجة الموحدة هي :
- تزويد المستخدمين بلغة نمذجة بصرية تعبيرية جاهزة للاستعمال بحيث يتمكنون من تطوير وتبادل النماذج التعبيرية.
- توفر قابلية التمدد وآليات التخصيص ، لتوسيع المفاهيم الأساسية للمشروع.
- تكون مستقل عن لغات البرمجة الخاصة وعمليات التطوير.
- توفير مناهج أو القواعد أساسية لفهم لغة النمذجة "modeling language".
- تشجيع نمو كائنية توجه أدوات السوق "object-oriented tools market".
- دعم أعلى مستوى تطوير المفاهيم "development concepts" مثل التعاون "collaborations"، و منصات العمل "frameworks"، و القوالب "patterns" و المركبات "components".
- دمج أفضل الممارسات.
لماذا تستخدم لغة النمذجة الموحدة UML
و بناءا على استراتيجية زيادة اهمية البرامج للعديد من الشركات ، فمجال الصناعة سعى بالبحث عن تقنيات لجعل إنتاج البرمجيات أوتوماتيكي، مع تحسين النوعية والضغط على التكلفة والوقت لزيدة القدرة التنافسية في السوق. وتشمل هذه التقنيات تقنية المركبات "component technology"، والبرمجة المرئية "visual programming"، و القوالب "patterns" ومنصات العمل "frameworks". الشركات تسعى أيضا إلى تقنيات لإدارة تعقيدات الأنظمة لأنها في زيادة من حيث الحجم و المدى. وعلى وجه الخصوص ، فهي تعترف بالحاجة إلى حل المشاكل الهندسية المتكررة ، مثل التوزيع المادي "physical distribution"، التزامن "concurrency"، التكرار "replication"، الأمن ، الموازنة "load balancing" و الاحتمال الخطأ "fault tolerance". بالإضافة إلى ذلك ، قد أدى تطور شبكة الويب العالمية ، مما جعل بعض الأمور أكثر بساطة ، في زيادت المشاكل الهندسية. وقد تم تصميم لغة النمذجة الموحدة "UML" للاستجابة لهذه الاحتياجات.
الدرس ال2
الدرس ال3
الدرس ال4
الدرس ال 5
الدرس ال 6
الدرس ال 7
الدرس ال 8