معمارية برمجيات

من ويكيبيديا، الموسوعة الحرة
اذهب إلى: تصفح، ‏ بحث

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

نظرة عامة [عدل]

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