Communicating Software Architecture using arc42 Framework with Ashraf Foad - Part 1
Chapters
- مقدمة اللقاء مع أشرف فؤاد وأهمية التوثيق
- توصيل معمارية البرمجيات: الجمهور وأهداف اللقاء
- تعريف معمارية البرمجيات ومبادئ التوثيق الجيد
- فوائد التوثيق: حفظ المعرفة وتقليل التكلفة والأعطال
- تطور أطر التوثيق من IEEE إلى arc42
- تطوير مهارة رسم المخططات وأدوات تحويل النص إلى رسوم
- لماذا arc42؟ مثال CRM ومزايا الإطار
- أسئلة حول C4 وADR وأدوار المعماريين
- أقسام قالب arc42 والمتطلبات المؤثرة في المعمارية
- اختيار أهداف الجودة والمتطلبات غير الوظيفية
- تحديد أصحاب المصلحة وتوقعاتهم من التوثيق
- توثيق قيود المشروع وأثرها في القرارات
- Context and Scope: حدود النظام وتفاعلاته الخارجية
- Solution Strategy: ربط الاستراتيجية بالتقنيات وأهداف الجودة
- أسئلة ختامية: البنية التحتية وتوثيق الأنظمة القائمة
About this episode
كيف تشرح معمارية نظامك لفريقك دون أن تتحول الوثائق إلى عبء؟ في الجزء الأول من هذه السلسلة على بودكاست AskDeveloper، يستضيف محمد الشريف المهندس أشرف فؤاد لاستكشاف إطار arc42 بوصفه وسيلة للتواصل المعماري، لا مجرد قالب للتوثيق. يناقشان كيف يساعد حفظ المعرفة وتوضيح أسباب القرارات على تسهيل انضمام المطورين وتقليل وقت استكشاف الأعطال وإعادة العمل. يستعرض أشرف خلفية أطر التوثيق وعلاقتها بالرسوم متعددة المنظورات، ثم يبدأ بأقسام arc42 الخاصة بالمقدمة والأهداف، والقيود، وسياق النظام ونطاقه، واستراتيجية الحل. يتناول الحوار اختيار أهم أهداف الجودة، وتحديد احتياجات أصحاب المصلحة، ورسم حدود النظام واتجاهات تدفق البيانات بوضوح. وتُختتم الحلقة بنقاش عملي حول فهم الأنظمة القديمة بالهندسة العكسية، والاستفادة من الذكاء الاصطناعي مع التحقق من مخرجاته، تمهيدًا لاستكمال بقية الإطار في الجزء التالي.
Discussion highlights
- التوثيق كوسيلة لحفظ المعرفة وتسريع انضمام المطورين، وتقليل وقت الإرشاد واستكشاف الأعطال وإعادة العمل.
- خلفية عن أطر التوثيق: IEEE 1016 ونموذج 4+1 وViews and Beyond، وأسباب ترشيح arc42 كإطار خفيف ومحايد تقنيًا.
- العلاقة بين arc42 ورسوم C4 وسجلات القرارات المعمارية ADR: أدوات متكاملة لتوضيح البنية وأسباب الاختيارات.
- وثائق قابلة للصيانة والتحكم في الإصدارات، مع مناقشة Markdown وAsciiDoc وأدوات الرسوم النصية مثل PlantUML وMermaid وD2.
- المقدمة والأهداف: تلخيص المتطلبات المؤثرة في المعمارية، واختيار ثلاثة إلى خمسة أهداف جودة ذات أولوية، والاستعانة بنموذج ISO 25010.
More from this conversation
- تحديد أصحاب المصلحة وما يحتاجونه من الوثائق، من المطورين ودعم التطبيقات إلى الأمن السيبراني والتشغيل والتدقيق.
- توثيق قيود الوقت والتكلفة والنطاق، وشرح تأثير استراتيجية المؤسسة واختيارات التقنية والاستعانة بمصادر خارجية على الحل.
- رسم سياق النظام ونطاقه: تمييز المكونات الداخلية والأنظمة الخارجية، وتوضيح البروتوكولات واتجاهات الأسهم وصلتها بنمذجة التهديدات ومراجعات الخصوصية.
- التعامل مع نظام قائم بلا توثيق: الهندسة العكسية من الكود والسجلات، وبناء فهم تدريجي للتفاعلات، واستخدام الذكاء الاصطناعي لإعداد مسودة تُراجع وتُتحقق صحتها.



