Software Architecture and Design Patterns Course
الخيارات المتاحة
التسجيل في الدورة
استعلم عن دورة
طلب دورة تعاقدية
الجدول الزمني والرسوم
الجداول الحضورية
| التاريخ | المكان | الرسوم | |
|---|---|---|---|
| 21 يونيو-09 يوليو 2026 | القاهرة | $3000 | |
| 30-12 يوليو 2026 | القاهرة | $3000 |
الجداول الأونلاين
تزداد أهمية هندسة البرمجيات مع اتساع الأنظمة الرقمية، وتعقّد التكاملات، وارتفاع الحاجة إلى حلول قابلة للتوسع والصيانة والتطوير المستمر. ولم تعد جودة البرمجيات مرتبطة بالكود فقط، بل أصبحت تعتمد على القرارات المعمارية التي تحدد شكل النظام، وحدود المكونات، وأنماط الاتصال، وآليات التعامل مع الأداء والأمان والموثوقية.
يركز هذا البرنامج التدريبي من AINFCT على تمكين المشاركين من فهم العمارة البرمجية بوصفها إطاراً عملياً لاتخاذ قرارات تصميمية مؤثرة. ويغطي البرنامج مبادئ تصميم الأنظمة، وتحليل المتطلبات غير الوظيفية، واختيار الأنماط المعمارية، وتطبيق أنماط التصميم، وتقييم المقايضات التقنية، وتوثيق القرارات المعمارية بصورة احترافية.
يوفر البرنامج قيمة تطبيقية متقدمة من خلال ربط المفاهيم المعمارية بسيناريوهات واقعية تساعد الفرق التقنية على بناء أنظمة أكثر وضوحاً واستقراراً وقابلية للتطور داخل بيئات العمل الحديثة.
فيما يلي الأهداف الرئيسية لهذا البرنامج التدريبي:
- تحليل القرارات المعمارية المؤثرة في جودة البرمجيات.
- اختيار الأنماط المعمارية المناسبة للأنظمة المعقدة.
- تطبيق أنماط التصميم لحل مشكلات بنيوية متكررة.
- تقييم المقايضات بين الأداء والمرونة والقابلية للصيانة.
- توثيق القرارات المعمارية بلغة مهنية واضحة.
- ربط التصميم البرمجي بمتطلبات الأمن والتوسع.
- عروض تفاعلية تربط المفاهيم المعمارية بسيناريوهات عملية.
- تمارين تصميم وتحليل قرارات معمارية فردية وجماعية.
- مناقشات موجهة حول المقايضات والديون التقنية.
- دراسات حالة لتقييم أنماط التصميم والعمارة.
- مراجعات قصيرة لترسيخ المفاهيم بعد كل محور.
يمكن تحسين نضج هندسة البرمجيات المؤسسية من خلال:
- رفع جودة القرارات التقنية بعيدة المدى.
- تقليل التعقيد المعماري داخل الأنظمة.
- تحسين قابلية الصيانة والتوسع المستقبلي.
- تعزيز اتساق التصميم بين فرق التطوير.
يساعد البرنامج المشاركين على:
- فهم العمارة البرمجية بمنظور تطبيقي متقدم.
- تحويل المتطلبات إلى قرارات تصميمية واضحة.
- استخدام الأنماط التصميمية بوعي مهني.
- مناقشة المقايضات التقنية بثقة.
يناسب هذا البرنامج المهنيين التقنيين الذين يشاركون في تصميم الأنظمة البرمجية أو تطويرها أو مراجعتها. كما يفيد الفرق التي تسعى إلى تحسين جودة القرارات المعمارية وتقليل التعقيد في المنتجات الرقمية.
- مطورو البرمجيات ذوو الخبرة المتوسطة والمتقدمة.
- قادة الفرق التقنية ومهندسو الحلول.
- معماريو البرمجيات ومهندسو النظم.
- مختصو DevOps والتكاملات التقنية.
- مديرو التطوير التقني والمنتجات الرقمية.
اليوم الأول: مدخل إلى العمارة البرمجية ودورها المؤسسي
- مفهوم العمارة البرمجية وعلاقتها بتصميم النظام.
- الفروق بين التصميم التفصيلي والقرارات المعمارية.
- تأثير العمارة على الجودة والتكلفة والتطوير المستقبلي.
- أدوار المعماري البرمجي ضمن فرق التطوير الحديثة.
- مخاطر القرارات المعمارية غير الموثقة.
اليوم الثاني: المتطلبات المعمارية والسمات النوعية
- تحليل المتطلبات الوظيفية وغير الوظيفية.
- سمات الجودة مثل الأداء والموثوقية والصيانة.
- تحويل احتياجات أصحاب المصلحة إلى سيناريوهات جودة.
- ترتيب الأولويات وفق القيمة والمخاطر الفنية.
- استخدام ISO/IEC 25010 كمرجع للخصائص النوعية.
اليوم الثالث: مبادئ التصميم المعماري
- مبادئ الفصل بين الاهتمامات وتقليل الاعتمادية.
- التماسك والاقتران وتأثيرهما على مرونة النظام.
- حدود المكونات والمسؤوليات المعمارية.
- مبادئ التجريد والتغليف وإخفاء التفاصيل.
- إدارة التعقيد في الأنظمة كبيرة الحجم.
اليوم الرابع: توثيق العمارة ووجهات النظر
- مفهوم وجهات النظر والمنظورات المعمارية.
- توثيق مكونات النظام وعلاقاتها الأساسية.
- تمثيل تدفقات البيانات والتكاملات والواجهات.
- كتابة قرارات العمارة Architecture Decision Records.
- استخدام ISO/IEC/IEEE 42010 في وصف العمارة.
اليوم الخامس: الأنماط المعمارية الأساسية
- النمط الطبقي Layered Architecture وتطبيقاته.
- نمط العميل والخادم وحدوده العملية.
- النمط القائم على المكونات Component-Based Architecture.
- نمط Model-View-Controller وتطبيقاته الواجهية.
- مقارنة الأنماط وفق التعقيد وقابلية الصيانة.
اليوم السادس: العمارة الموجهة للخدمات والواجهات
- مبادئ Service-Oriented Architecture وحدود الخدمات.
- تصميم الواجهات البرمجية والعقود التقنية.
- الاقتران الضعيف والتكامل بين الأنظمة.
- إدارة الإصدارات والتوافق الخلفي للواجهات.
- مخاطر الاعتماد المفرط بين الخدمات.
اليوم السابع: بنية الخدمات المصغرة Microservices
- خصائص الخدمات المصغرة ومبررات استخدامها.
- تحديد حدود الخدمة وفق المجال والمسؤولية.
- التواصل المتزامن وغير المتزامن بين الخدمات.
- إدارة البيانات والمعاملات في البيئات الموزعة.
- تحديات التشغيل والمراقبة والاختبار.
اليوم الثامن: الأنماط الحدثية والمعمارية الموزعة
- مفهوم Event-Driven Architecture وحالات الاستخدام.
- الرسائل والطوابير والناشر والمشترك.
- التعامل مع الاتساق النهائي وتكرار الأحداث.
- تقليل الاعتمادية الزمنية بين المكونات.
- مخاطر التعقيد الخفي في الأنظمة الحدثية.
اليوم التاسع: أنماط التصميم الإنشائية
- مبادئ أنماط التصميم ودورها في إعادة الاستخدام.
- نمط Factory Method واستخدامه في إنشاء الكائنات.
- نمط Abstract Factory للمنتجات المتوافقة.
- نمط Builder لبناء الكائنات المعقدة.
- نمط Singleton وحدوده ومخاطره التصميمية.
اليوم العاشر: أنماط التصميم الهيكلية
- نمط Adapter لدمج الواجهات غير المتوافقة.
- نمط Facade لتبسيط التعامل مع الأنظمة المعقدة.
- نمط Decorator لتوسيع السلوك دون تعديل مباشر.
- نمط Proxy للتحكم في الوصول والاستهلاك.
- اختيار النمط وفق مشكلة التصميم الفعلية.
اليوم الحادي عشر: أنماط التصميم السلوكية
- نمط Strategy لعزل الخوارزميات المتغيرة.
- نمط Observer لمعالجة الإشعارات والتغيرات.
- نمط Command لفصل الطلب عن التنفيذ.
- نمط Template Method لتوحيد خطوات التنفيذ.
- تقييم أثر الأنماط السلوكية على الاختبار.
اليوم الثاني عشر: أمن العمارة والاعتمادية
- دمج متطلبات الأمن ضمن القرارات المعمارية.
- التحكم في الثقة والحدود بين المكونات.
- أنماط الحماية في الواجهات والخدمات.
- التصميم للتعافي من الأعطال والمرونة.
- التعامل مع نقاط الفشل المشتركة.
اليوم الثالث عشر: الأداء والقابلية للتوسع
- تصميم الأنظمة وفق أحمال الاستخدام المتوقعة.
- التخزين المؤقت وتقليل زمن الاستجابة.
- التوسع الأفقي والرأسي ومحددات الاختيار.
- إدارة الاختناقات في قواعد البيانات والتكاملات.
- مقايضات الأداء مقابل التعقيد التشغيلي.
اليوم الرابع عشر: تقييم العمارة وإدارة المقايضات
- مراجعة العمارة وفق المخاطر والسمات النوعية.
- تحليل المقايضات بين الخيارات التصميمية.
- استخدام السيناريوهات لتقييم القرارات المعمارية.
- مؤشرات ضعف العمارة والديون التقنية.
- بناء خارطة تحسين معماري قابلة للتنفيذ.
اليوم الخامس عشر: تطبيق تكاملي ومراجعة مهنية
- تحليل حالة تطبيقية لنظام برمجي متعدد المكونات.
- اختيار الأنماط المناسبة وفق المتطلبات.
- صياغة قرارات معمارية وتبريرها مهنياً.
- مراجعة التكامل بين العمارة وأنماط التصميم.
- بناء خطة تطوير معماري بعد البرنامج.
يمتد البرنامج لمدة 15 يوماً تدريبياً، بواقع 4 ساعات تدريبية يومياً. يبدأ كل يوم بمراجعة موجزة للمفاهيم السابقة، ثم عرض للمحور الرئيسي، يتبعه تمرين تصميمي أو نقاش تطبيقي، وينتهي اليوم بخلاصة مركزة تربط الموضوع بالقرارات المعمارية داخل بيئات العمل. يتم توزيع الوقت بما يوازن بين الشرح، والتحليل، والتطبيق، والمراجعة.
يعتمد التقييم على المشاركة الفعالة، وتمارين التصميم، وتحليل دراسات الحالة، ومراجعة القرارات المعمارية التي ينتجها المشاركون أثناء البرنامج. يحصل المشاركون في نهاية البرنامج على شهادة حضور/إتمام من AINFCT وفق متطلبات الحضور والمشاركة المعتمدة.
- التفكير المعماري.
- تحليل سمات الجودة.
- اختيار الأنماط التصميمية.
- توثيق القرارات التقنية.
- تقييم المقايضات المعمارية.
- إدارة التعقيد البرمجي.
مقدمي الخدمات و الشراكات
مقدمي الخدمات و الشراكات
