You are currently viewing معمارية البرمجيات ما هى؟

معمارية البرمجيات ما هى؟

المعمارية البرمجية هي مجموعة الهيكليات التي نحتاجها لنستوعب آلية عمل وبناء النظام،

وتتضمن الأجزاء البرمجية والعلاقات التي تربط هذه الأجزاء ببعضها، إضافة لخصائص هذه الأجزاء والعلاقات، ويستعمل المصطلح لوصف عملية توثيق “معمارية البرمجيات”، فتوثيقها يسهل التحاور والتفاهم بين كل أصحاب الشأن، وتبين القرارات التى اتخذت فى مراحل تطوير النظام الأولى النظرة العامة لمعماريته، وتسهل عملية إعادة استخدام النماذج والمكونات بين المشاريع،

نظرة عامة

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

لماذا معمارية البرمجيات مهمة

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

عند تصميم البرمجيات يجب أحذ المجالات الثلاث بشكل متوازن على سبيل المثال تجربة المستخدم للبرمجيات هي الحل في كثير من الأحيان مع الأخذ بالاعتبار طبيعة العمل فى المنشأة والبنية التحتية للنظام وأى تغير فى أحد هذه المكونات تؤثر بشكل كبير فى المخرجات

بالمثل يمكن للتغير في متطلبات المستخدم يكون لها تأثير كبير على الأعمال فمثلا المسؤول عن النظام أو المنشأة قد لا يكون قادرا على تأمين المعدات اللازمة لتحقيق هذا الهدف بنسبة 100 %  فعدم القدرة على تامين المعدات اللازمة سيخفض نسبة تحقيق الهدف إلى 80 بالمئة على سبيل المثال

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

الهدف من معمارية البرمجيات

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

وأيضا الهدف من المعمارية هو تحديد المتطلبات التي تؤثر على بنية البرمجيات ومعماريه البرمجيات الجيدة تقلل من المخاطر من خلال بناء حل تقني برمجي جيد، والتصميم الجيد والمرن قادر على التعامل مع التغيرات التى تحدث على مر الزمن فى تكنولوجيا الأجهزة والبرمجيات وكذلك فى سيناريوهات المستخدم ومتطلباته،

يجب على مصمم معمارية البرمجيات الإهتمام بالقرارات المتعلقة بالتصميم والأمور المتعلقة بجودة البرمجيات وطرق حمايتها ومتطلبات المستخدم،

نضع في اعتبارنا أنه ينبغي لمعمارية البرمجيات:

التركيز على هيكل النظام مع إخفاء تفاصيل التنفيذ للبرمجيات،

التركيز على حالات الإستخدام والسيناريوهات،

المتطلبات المختلفة لأصحاب المصلحة،

التعامل مع متطلبات الوظيفية والنوعية على حد سواء،

معمارية البرمجيات ما هى؟

 

اترك رد