التخطيط المعماري للنظام

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

مكونات التخطيط المعماري للنظام

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

Architecture of a System - GeeksforGeeks

منصة الأجهزة Hardware Platform

تتضمن منصة الأجهزة جميع المكونات المادية التي يحتاجها النظام لكي يعمل بشكل صحيح، وتتضمن الخوادم (Servers)، وأجهزة التخزين (Storage Devices)، والبنية التحتيتة للشبكة (Network Infrastructure)، ولابد من اختيار هذه المكونات المادية بناء على متطلبات العميل والتي تحتوي على بعض المتطلبات الوظيفية، مثل: كمية التخزين المطلوبة ابتداءا، وكمية الطاقة المطلوبة للتشغيل، وكل المتطلبات التقنية الاخرى.

منصة البرمجيات Software Platform

من أهم مكونات التخطيط المعماري للنظام حيث تحتوي على نظام التشغيل (Operating System)، وخوادم البرنامج (Application Servers)، وباقي المكونات البرمجية الأخرى التي تساهم في تشغيل الأجزاء المادية، كما يتم اختيار لغات البرمجية وإطار العمل المطلوب بناء على معايير محددة، وتختلف أنواع التطبيقات واللغات المستخدمة بناء على متطلبات العملاء.

واجهات النظام System Interfaces

Interfaces - The Most Important Software Engineering Concept

تتكون الواجهات الأمامية في التخطيط المعماري للنظام من واجات برمجة التطبيقات (APIs)، وواجهات المستخدم (User Interfaces) التي تساهم في تجربة فريدة من نوعها للمستخدم والتفاعل مع وظائف البرنامج، ويتم تصميم هذه الواجهات بناء على معايير تجربة المستخدم، والتأقلم على التغييرات المستمرة، وتنفيذ طلبات المستخدمين بكفاءة عالية.

هيكلية النظام System Structure

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

الأمان Security

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

أنواع التخطيط المعماري للنظام

يوجد عدة أنواع لمعماية النظام، وكل منها يستخدم في مجالات محددة ومشاكل مختلفة، ومن ضمن هذه الأنواع:

التخطيط المعماري المتجانس Monolithic Architecture

Architecture of Operating System - Naukri Code 360

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

معمارية العميل والخادم Client-Server Architecture

What Is Client-Server Architecture? | Liquid Web

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

التخطيط المعماري الخدمي التوجه Service-Oriented Architecture (SOA)

What Is Service-Oriented Architecture? | by Software Development Community | Medium

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

التخطيط المعماري للخدمات المصغرة Microservices Architecture

Explain microservice architecture - Stack Overflow

من أعم أنواع التخطيط المعماري للنظام، ويعتبر امتدادا للتخطيط المعماري الخدمي التوجه (SOA)، حيث يتم تقسيم النظام إلى مكونات صغيرة، أو خدمات مستقلة بذاتها، وكل خدمة لها وظيفة خاصة بها، وطريقة للتواصل مع الخدمات الأخرى باستخدام بروتوكولات خفيفة، مثل: HTTP, REST، وتم تصميم هذا النوع لتوفير القابلية للتوسعة والأداء المنفردة، وسهولة النشر، وعزل الأخطاء الموجودة في الخدمات الأخرى.

التخطيط المعماري الحدثي التوجه Event-Driven Architecture (EDA)

What is an Event Driven Architecture? Definition & FAQs | ScyllaDB

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

التخطيط المعماري الطبقي Layered Architecture

Operating System Structure and its Types

يقوم على تنظيم النظام في شكل طبقات، حيث تعرض كل طبقة مستوى مختلف من التجريد أو العمليات الوظيفية، وتتضمن 3 طبقات أساسية: طبقة العرض (Presentation Layer)، وطبقة منطق الأعمال (Business Logic Layer)، وطبقة الوصول إلى البيانات (Data Access Layer)، ويروج هذا النوع لقابلية الصيانة، والتصميم القائم على الوحدات، وفصل المخاوف.

مثال على التخطيط المعماري للنظام

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

الواجهة الأمامية Front End

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

الواجهة الخلفية Back End

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

قاعدة البيانات Database

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

واجهة برمجة التطبيقات API

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

الأمان Security

يساهم في التأكد أنه يتم حماية الموقع من هجمات الأمنية المختلفة، وعمليات الوصول الغير مصرح بها، وتتضمن عدة مقاييس لقياس مدى أمان الموقع، مثل: تشفير SSL، وجدران الحماية، ومصادقة المستخدم.

الرصد والتحليل Monitoring and Analytics

من أهم عمليات التخطيط المعماري للنظام، حيث تساهم في قياس أداء الموقع، وتتبع سلوك المستخدمين في الموقع، وتوفير بيانات صحيحة لعمل التحليلات والتقارير المختلفة.

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

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

زر الذهاب إلى الأعلى
Translate »
error: ان المحتوى محمي

أنت تستخدم إضافة Adblock

برجاء دعمنا عن طريق تعطيل إضافة Adblock