​​​

معمارية البرمجيات Software Architecture

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


خدمات معمارية البرمجيات

خدمة Archideal لتحسين معمارية البرمجيات

ما هي خدمة Archideal؟

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

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


لماذا قد تختار خدمة Archideal من مركز SECC؟

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

ماذا يقدم مركز SECC؟

يقدم مركز SECC هذه الخدمة كحزمة واحدة مقسمة إلى مرحلتين:

  • التدريب على معمارية البرمجيات – وفي هذا الجزء من خدمة Archideal يتعرف مُهندسي البرمجيات ومُديري تطوير البرمجيات على أحدث أساليب واتجاهات وتقنيات معمارية البرمجيات مثل معمارية البرمجيات خدمية التوجه (SOA)، ومعمارية البرمجيات الموجهه بالحدث (EDA)*، والتخطيط ذو العلاقات الكائنية (ORM)**. ويتم تقديم هذا الجزء على مدار 3 أيام من التدريب العملي عبر سلسلة محاضرات وورش عمل.
  • خدمات استشارية تتم في مقر عمل العميل - وفي هذا الجزء، يساعدك خبراء مركز SECC المؤهلون على تقييم وتقدير بنية/معمارية البرمجيات الحالية لديك، وصياغة مسار لتحسينها، وترجمتها إلى خطة عمل لنقل وتنفيذ المعرفة المكتسبة. وعادة ما يتم تقديم الجزء الثاني من خلال زيارات لمقر العميل.

* معمارية البرمجيات الموجهة بالحدث أو التي يوجهها الحدث والمعروفة اختصارًا باسم EDA هي نموذج معمارية البرمجيات الذي يدعم إنتاج واكتشاف واستهلاك والتفاعل مع الأحداث (ومفردها حدث). وفي الحوسبة، يشير مصطلح الحدث event إلى حدوث أو إجراء ما يتعرف عليه البرنامج (البرمجية software) وغالبًا ما ينشأ من البيئة الخارجية له وبشكل غير متزامن وقد يتعامل معه البرنامج.


** التخطيط ذو العلاقات الكائنية أو دليل الخرائط المُتسم بالعلائقية (معروف بالمختصر ORM، أو O/RM وأحيانًا أداة التخطيط O/R) وهي تقنية البرمجة التي تهدف إلى تحويل البيانات بين أنظمة الأنواع type systems غير المؤتلفة incompatible باستخدام لغات البرمجة كائنية التوجه. والبرمجة كائنية التوجه (OOP) هي نموذج برمجي يستند إلى مفهوم الكائنات (مفردها "كائن object" والذي قد يكون مُتغير أو بنية بيانات أو دالة أو نظام وبحد ذاته قيمة في ذاكرة الحاسوب يُشار إليها بواسطة الرمز المخصص لتحديد هويته identifier). وذلك من شأنه تأسيس قاعدة بيانات افتراضية يُمكن استخدامها من داخل لغة البرمجة.


خدمة معمارية البرمجيات خدمية التوجه SOA

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


ما هي خدمة معمارية البرمجيات خدمية التوجه SOA؟

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


لماذا تختار خدمة SOA؟

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

 ​

ماذا يقدم مركز SECC؟

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

  • خدمات التدريب على معمارية البرمجيات خدمية التوجه SOA للمؤسسات الصغيرة والمتوسطة - مجموعة دورات تدريبية تهدف إلى سد الفجوة التكنولوجية بين الشركات الصغيرة والمتوسطة وسوق الأعمال. ويتيح التدريب استيعاب الفوائد والحصول على المعرفة بمعمارية SOA لبناء خدمات وحلول مبتكرة.
  • خدمات معمارية البرمجيات خدمية التوجه SOA الاستشارية – يوفر مركز SECC خدمات استشارية للشركات الصغيرة والمتوسطة لتبني تقنيات معمارية البرمجيات خدمية التوجه SOA في بيئة عملها والاستفادة من حلولها مفتوحة المصدر جنبًا إلى جنب مع التقنيات الناشئة (مثل الحوسبة السحابية والهواتف النقالة وغيرها).

خدمة تطوير البرمجيات المعتمد على النماذج (MDD)

تطوير البرمجيات المعتمد على النماذج (MDD): هو منهج يمثل تطوير دورة حياة البرمجيات كنشاطات النمذجة وتحويل النماذج. وتوفر النمذجة ذات المجال المحدد (DSM) مزيدًا من التعبير من خلال التعبير بشكل بصري عن العناصر باستخدام لغات المجال المحدد (DSL) يتم التقاطها عادةً بواسطة خبراء المجال.


ما هو تطوير البرمجيات المعتمد على النماذج؟

تطوير البرمجيات المعتمد على النماذج (MDD)*: هو منهج يُمثل تطور دورة حياة البرمجيات كنشاطات نمذجة (محاكاة) وتحويل النماذج. وتوفر النمذجة ذات المجال المحدد (DSM)** مزيدًا من التعبير عن معاني مكونات البرمجية من خلال التعبير بشكل بصري عن العناصر باستخدام لغات المجال المحدد (DSL)*** ويتم التقاطها وتوجيهها عادةً بواسطة خبراء المجال.


لماذا تختار خدمة تطوير البرمجيات المعتمد على النماذج (MDD)؟

إن تبني تقنيات تطوير البرمجيات المعتمد على النماذج (MDD) يُحول تركيز المطورين من الترميز (العمل بكود البرمجيات) إلى التحليل الذي يقلل من الأخطاء والفترة التي يستغرقها المنتج للدخول إلى السوق. وهذا يرجع إلى ما يلي:

  • يرتقي تطوير البرمجيات المعتمد على النماذج (MDD) والنمذجة ذات المجال المحدد (DSM) بمستوى التجريد إلى أبعد من لغات البرمجة الحالية باستخدام نفس المفاهيم الخاصة بمجال المشكلة
  • تحويل النماذج هي الوسيلة التي يمكن من خلالها تحويلها من مستوى من التجريد والمعرفة التقنية للمنصة إلى مستوى آخر، مع إدخال معلومات جديدة في كل خطوة على الطريق
 ​

ماذا يقدم مركز SECC؟

توفر خدمات تطوير البرمجيات المعتمد على النماذج (MDD) الخاصة بمركز SECC دعمًا متخصصًا لتبني وتطبيق أحدث تقنيات النمذجة وتحويل النماذج في مؤسستك. وخبراء مركز SECC المؤهلون على أتم الاستعداد لمساعدتك عبر مجموعة الخدمات التالية:

  • خدمات التدريب على تطوير البرمجيات المعتمد على النماذج (MDD) – يساعد مركز SECC مؤسستك على بناء القدرات المطلوبة من خلال تعلم المفاهيم الأساسية الخاصة بتطوير البرمجيات بالاعتماد على النماذج وكذلك الحصول على الخبرة العملية على التقنيات الأساسية لتطبيقها في مؤسستك.
  • خدمات تطوير البرمجيات المعتمد على النماذج الاستشارية - يقوم مستشارونا بتدريبك أثناء اعتماد مؤسستك لتقنيات MDD وبناء لغة (لغات) المجال المحدد DSL للنمذجة وتحويل النماذج.

* تطوير البرمجيات المُعتمد على النماذج MDD هو منهج خاص بهندسة البرمجيات التي تستخدم نموذج model لتطوير منتج برمجي. وتستخدم هذه المنهجية في بعض الأحيان بشكل متبادل مع مصطلح هندسة (البرمجيات) المعتمدة على المحاكاة أو النماذج وقد تشير إلى أدوات بعينها وموارد محددة أو نهج قائم على المحاكاة/النموذج. وتُعد منهجية MDD جزء من الاتجاه نحو الأساليب الأكثر تنوعًا لتطوير منتجات تكنولوجيا المعلومات.

** النمذجة/المحاكاة ذات المجال المحدد DSM هي إحدى منهجيات هندسة البرمجيات لتصميم وتطوير النظم مثل برامج الكمبيوتر وتنطوي على استخدام منهجي للغة خاصة بمجال معين لتمثيل الأوجه المختلفة لهذا النظام.

*** اللغة محددة المجال DSL هي لغة كمبيوتر مُتخصصة في مجال تطبيق مُحدد. وتتناقض هذه اللغة مع اللغة متعددة الاستخدامات أو الصالحة للأغراض العامة GPL والتي تنطبق على نطاق واسع من المجالات. وهناك مجموعة كبيرة ومتنوعة من اللغات محددة المجال، تتراوح بين اللغات المستخدمة على نطاق واسع للمجالات الشائعة، مثل HTML لتصميم صفحات الويب، وصولاً إلى اللغات المستخدمة بواسطة برمجية واحدة أو عدة أجزاء من البرمجية، مثل MUSH soft code الخاصة بألعاب الفيديو الجماعية. ​