رسم تخطيطي للمكونات للعناصر التي سيتم بناؤها. تصميم البرمجيات. القائمة الرئيسية للبرنامج


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

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

تستخدم هذه المقالة مواد من الكتب: Ivanov D. Yu.، Novikov F. A. لغة النمذجة الموحدة UMLو ليونينكوف. تعليمي UML.

أولا، دعونا نقرر المحرر. في Linux، جربت محررات UML مختلفة، والأهم من ذلك كله أنني أحببت UMLet، على الرغم من أنه مكتوب بلغة Java، إلا أنه يتحرك بسرعة كبيرة ويحتوي على معظم قوالب الكيانات. يوجد أيضًا ArgoUML، وهو محرر UML متعدد المنصات، ومكتوب أيضًا بلغة Java، وهو غني وظيفيًا ولكنه أبطأ أكثر.

توقفت عند UMlet، قم بتثبيته تحت آرتش لينكسو أوبونتو:

# على Arch Linux yaourt -S umlet # على Ubuntu sudo apt-get install umlet

في UML، يمكن تقسيم جميع الكيانات إلى الأنواع التالية:

  • الهيكلي؛
  • سلوكية؛
  • التجمع؛
  • تعليق توضيحي؛

هناك أربعة أنواع رئيسية من العلاقات المستخدمة في UML:

الاعتماد- يشير إلى أن التغيير في كيان مستقل يؤثر بطريقة أو بأخرى على كيان تابع. بيانياً، يتم تصوير علاقة التبعية كخط منقط مع سهم موجه من الكيان التابع إلى الكيان المستقل.

منظمة- يحدث إذا كان أحد الكيانات مرتبطًا بشكل مباشر بآخر (أو بآخرين - لا يمكن أن يكون الارتباط ثنائيًا فقط). بيانياً، يتم تصوير الارتباط كخط متصل مع إضافات مختلفة تربط الكيانات ذات الصلة.

تعميمهي علاقة بين كيانين، أحدهما حالة خاصة (متخصصة) للآخر. بيانياً، يتم تصوير التعميم كخط به سهم مثلثي غير معبأ في النهاية، موجه من الخاص (الفئة الفرعية) إلى العام (الفئة الفائقة).

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

في لغة النمذجة الموحدة 2مُعرف 13 أنواع المخططات. وفقًا للمعايير، يجب أن يحتوي كل مخطط على إطار بمستطيل (الزاوية اليمنى السفلية مشطوف) في الزاوية اليسرى العليا، مما يشير إلى معرف المخطط (العلامة) والعنوان.

الرسوم البيانية لتصوير هيكل النظام:

  • مخطط المكون (العلامة عنصر);
  • مخطط النشر، العلامة تعيين);
  • مخطط الفصل (مخطط الفصل، العلامة فصل);
  • مخطط الكائن (العلامة هدف);
  • مخطط الهيكل المركب، العلامة فصل);

الرسوم البيانية لتصوير سلوك النظام:

  • مخطط التزامن (مخطط التفاعل، العلامة توقيت);
  • مخطط النشاط (العلامة نشاط);
  • مخطط التسلسل، العلامة SD);
  • مخطط الاتصال (العلامة إتصالات);
  • مخطط آلة الدولة، العلامة آلة الدولة);
  • مخطط نظرة عامة على التفاعل، علامة تفاعل);

الرسوم البيانية تبرز:

  • استخدام مخطط الحالة (استخدام مخطط الحالة، استخدام علامة الحالة)؛
  • مخطط الحزمة (مخطط الحزمة، العلامة طَرد);

مخطط الاستخدام

مخطط الاستخدام(مخطط حالة الاستخدام) هو التمثيل الأكثر عمومية للغرض الوظيفي للنظام.

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

يستخدم مخطط الاستخدام نوعين من الكيانات الأساسية: حالات الاستخدام والجهات الفاعلة، والتي يتم من خلالها إنشاء الأنواع الأساسية التالية من العلاقات.

علاقة الرابطة- تحدد هذه العلاقة الدور المحدد الذي يلعبه الممثل عند التفاعل مع مثيل حالة الاستخدام. تتم الإشارة إلى علاقة الارتباط بخط متين بين الممثل وحالة الاستخدام. قد يحتوي هذا السطر على رموز إضافية، مثل الاسم والتعدد.

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

تتم الإشارة إلى علاقة الامتداد بين حالات الاستخدام بخط منقط مع سهم (خيار علاقة التبعية) يشير بعيدًا عن حالة الاستخدام التي تعد امتدادًا لحالة الاستخدام الأصلية.

علاقة التعميميعمل على الإشارة إلى حقيقة أن بعض حالات الاستخدام A يمكن تعميمها لاستخدام حالة B. في هذه الحالة، سيكون الخيار A بمثابة تخصص للخيار B. في هذه الحالة، يُطلق على B اسم سلف أو أب لـ A، والخيار A هو طفل الخيار يستخدم V.

بيانياً، يتم تمثيل هذه العلاقة بخط متصل مع سهم على شكل مثلث مفتوح، مما يدل على حالة الاستخدام الأصل.

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

علاقة الشمولبين حالتي استخدام يشير إلى أن بعض السلوكيات المحددة لحالة استخدام واحدة يتم تضمينها كمكون أساسي في تسلسل سلوكيات حالة الاستخدام الأخرى.

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

بيانياً، تتم الإشارة إلى هذه العلاقة بخط منقط مع سهم (متغير لعلاقة التبعية) موجه من حالة الاستخدام الأساسية إلى الحالة المضمنة.

مخطط الطبقة

مخطط الطبقة(مخطط الفصل) هو الطريقة الرئيسية لوصف البنية الثابتة للنظام.

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

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

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

قد تكون هناك كلمات رئيسية خاصة (صور نمطية) أعلى السهم:

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

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

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

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

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

مخطط الآلة

مخطط الآلة(مخطط آلة الحالة) أو الرسم التخطيطي للدولةفي UML 1 (مخطط مخطط الحالة) هي إحدى الطرق لوصف السلوك بالتفصيل في UML. في جوهرها، الرسوم البيانية للآلة، كما يوحي الاسم، هي رسم بياني للحالات والانتقالات لآلة الحالة المحدودة محملة بالعديد من التفاصيل والتفاصيل الإضافية.

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

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

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

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

الرسم النشاط

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

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

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

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

مخطط تسلسل

مخطط تسلسل(مخطط التسلسل) هو وسيلة لوصف سلوك النظام "باستخدام الأمثلة".

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

يستخدم مخطط التسلسل نوعًا أساسيًا واحدًا من الكيانات - حالات المصنفات المتفاعلة (الفئات والمكونات والجهات الفاعلة بشكل أساسي)، ونوع واحد من العلاقات - الروابط التي يتم من خلالها تبادل الرسائل.

أنواع الرسائل المحتملة (الصورة مأخوذة من larin.in):

مخطط الاتصالات

مخطط الاتصالات(مخطط الاتصال) - طريقة لوصف السلوك المكافئ لغويًا لمخطط التسلسل. في الواقع، هذا هو نفس الوصف لتسلسل تبادل الرسائل للمثيلات المتفاعلة للمصنفات، ويتم التعبير عنه فقط بوسائل رسومية أخرى.

وبالتالي، في مخطط الاتصال، وكذلك في مخطط التسلسل، يتم استخدام نوع رئيسي واحد من الكيان - حالات المصنفات المتفاعلة ونوع واحد من العلاقات - الاتصالات. ومع ذلك، فإن التركيز هنا ليس على الوقت، ولكن على بنية الاتصالات بين حالات محددة.

مخطط المكونات

مخطط المكونات(مخطط المكونات) - يوضح العلاقات بين الوحدات (المنطقية أو المادية) التي تشكل النظام النموذجي.

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

  • عمليات التنفيذ بين المكونات والواجهات (المكون ينفذ واجهة)؛
  • التبعيات بين المكونات والواجهات (يستخدم المكون الواجهة)؛

مخطط التنسيب

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

يضيف مخطط التخطيط، مقارنةً بمخطط المكونات، نوعين من الكيانات: قطعة أثرية، وهي تنفيذ مكون وعقدة (يمكن أن تكون إما مصنفًا يصف نوع العقدة أو مثيلًا محددًا)، وعلاقة اقتران بين العقد، مما يشير إلى أن العقد متصلة فعليًا أثناء التنفيذ.

مخطط الكائن

مخطط الكائن(مخطط الكائن) - هو مثال لمخطط الفصل.

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

مخطط الهيكل الداخلي(مخطط الهيكل المركب) يستخدم لتمثيل أكثر تفصيلا للمصنفات الهيكلية، في المقام الأول الفئات والمكونات.

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

مخطط نظرة عامة على التفاعلمخطط نظرة عامة على التفاعل هو نوع من مخططات النشاط مع بناء جملة موسع: يمكن أن تكون عناصر مخطط نظرة عامة على التفاعل روابط لاستخدامات التفاعل المحددة بواسطة مخططات تسلسلية.

الرسم البياني توقيت

الرسم البياني توقيتمخطط التوقيت هو شكل خاص من أشكال المخططات التسلسلية التي تركز على الحالات المتغيرة لمثيلات المصنف المختلفة وتزامن التوقيت الخاص بها.

مخطط الحزمة

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

العناصر الرئيسية للتدوين هي الحزم والتبعيات ذات الصور النمطية المختلفة.

نموذج العلاقة بين الكيان (نموذج ER)

التناظرية المخططات الصفية(UML) ربما نموذج إيروالذي يستخدم عند تصميم قواعد البيانات (النموذج العلائقي).

نموذج العلاقة بين الكيان (نموذج ER) هو نموذج بيانات يسمح لك بوصف المخططات المفاهيمية لمجال الموضوع. يتم استخدام نموذج ER في تصميم قاعدة بيانات عالية المستوى (المفاهيمية). وبمساعدتها، يمكنك تحديد الكيانات الرئيسية وتحديد الاتصالات التي يمكن إنشاؤها بين هذه الكيانات. ويكيبيديا

يمكن تمثيل أي جزء من مجال الموضوع كمجموعة من الكيانات التي يوجد بينها عدد من الاتصالات.

مفاهيم أساسية:

جوهر(الكيان) هو كائن يمكن التعرف عليه بطريقة ما تميزه عن الكائنات الأخرى، على سبيل المثال، العميل 777. الكيان هو في الواقع مجموعة من السمات.

مجموعة الكيان(مجموعة الكيانات) - مجموعة من الكيانات من نفس النوع (لها نفس الخصائص).

اتصال(العلاقة) هي رابطة تنشأ بين عدة كيانات.

اِختِصاص(المجال) - مجموعة القيم (مجال التعريف) للسمة.

هناك ثلاثة أنواع من الروابط الثنائية:

  • واحد لواحد- يرتبط مثيل واحد لكيان من فئة واحدة بمثيل واحد لكيان من فئة أخرى، على سبيل المثال، HEAD - DEPARTMENT؛
  • 1 إلى نأو واحد لكثير- يرتبط مثيل واحد لكيان من فئة واحدة بالعديد من مثيلات كيان من فئة أخرى، على سبيل المثال، القسم - الموظف؛
  • ن إلى مأو الكثير للكثيرين- ترتبط العديد من مثيلات كيان من فئة واحدة بالعديد من مثيلات كيان من فئة أخرى، على سبيل المثال، EMPLOYEE - PROJECT؛
  • قاموس المفاهيم الأساسية في UML

    هدف- كيان فريد من نوعه ويغلف الحالة والسلوك.

    فصل- وصف مجموعة من الكائنات ذات السمات المشتركة التي تحدد الحالة والعمليات التي تحدد السلوك.

    واجهه المستخدم- مجموعة مسماة من العمليات التي تحدد مجموعة من الخدمات التي يمكن أن يطلبها المستهلك ويقدمها مزود الخدمة.

    تعاون- مجموعة من الأشياء التي تتفاعل لتحقيق هدف ما.

    الممثل- كيان يقع خارج النظام النموذجي ويتفاعل معه بشكل مباشر.

    عنصر- جزء معياري من النظام مع مجموعة محددة بوضوح من الواجهات المطلوبة والمقدمة.

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

    العقدة- مورد حاسوبي توجد عليه القطع الأثرية ويتم تنفيذها إذا لزم الأمر.

    تهدف الكيانات السلوكية إلى وصف السلوك. لا يوجد سوى كيانين سلوكيين رئيسيين: الحالة والفعل.

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

    فعل- الحساب الذري البدائي.

    آلةهي حزمة تحدد العديد من المفاهيم الضرورية لتمثيل سلوك الكيان النموذجي في شكل مساحة منفصلة ذات عدد محدود من الحالات والانتقالات.

    مصنفهو واصف لمجموعة من الكائنات من نفس النوع.

    قراءة إضافية

    • فاولر م. UML. الأساسيات، الطبعة الثالثة
    • Buch G.، Rambo D.، Jacobson I. لغة UML. دليل المستخدم

يهدف هذا النوع من المخططات إلى تصنيف الفئات والكائنات بين المكونات في التصميم المادي للنظام. غالبًا ما يُطلق على هذا النوع من المخططات اسم المخططات النمطية.

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

عنصر(مكون) - جزء موجود فعليًا من النظام يوفر تنفيذ الفئات والعلاقات، بالإضافة إلى السلوك الوظيفي لنظام البرمجيات النموذجي.

للحصول على تمثيل أكثر وضوحًا للمكونات، تم اقتراح الصور النمطية الرسومية التالية وأصبحت مقبولة بشكل عام:

أولاً، الصور النمطية لمكونات النشر التي تمكن النظام بشكل مباشر من أداء وظائفه. يمكن أن تكون هذه المكونات مكتبات مرتبطة ديناميكيًا (الشكل 12، أ)، وصفحات ويب بلغة ترميز النص التشعبي (الشكل 12، ب) وملفات المساعدة (الشكل 12، ج).

ثانياً، الصور النمطية للمكونات في شكل منتجات العمل. كقاعدة عامة، هذه ملفات تحتوي على أكواد مصدر البرامج (الشكل 12، د).


أرز. 12.خيارات لتمثيل المكونات بيانياً في مخطط المكونات.

تسمى هذه العناصر في بعض الأحيان الآثار، مع التركيز على محتوى المعلومات الكامل الخاص بها، اعتمادًا على التقنية المحددة لتنفيذ المكونات المقابلة. علاوة على ذلك، يمكن للمطورين استخدام التدوين الخاص بهم لهذا الغرض، نظرًا لأن لغة UML لا تحتوي على تدوين صارم للتمثيل الرسومي للعناصر.

هناك طريقة أخرى لتحديد أنواع مختلفة من المكونات وهي تحديد الصورة النمطية النصية للمكون قبل اسمه. يحدد UML الصور النمطية التالية للمكونات:

<> (ملف) - يحدد النوع الأكثر شيوعًا من المكونات، والذي يتم تمثيله كملف فعلي عشوائي.

<> (قابل للتنفيذ) - يحدد نوع مكون الملف الذي يكون ملفًا قابلاً للتنفيذ ويمكن تنفيذه على نظام أساسي للكمبيوتر.

<> (المستند) - يحدد نوع مكون الملف، والذي يتم تقديمه في شكل مستند ذي محتوى عشوائي ليس ملفًا قابلاً للتنفيذ أو ملفًا به الكود المصدري للبرنامج.

<> (المكتبة) - يحدد نوع مكون الملف، والذي يتم تقديمه في شكل مكتبة ديناميكية أو ثابتة.

<> (المصدر) - يحدد نوع مكون الملف، وهو ملف يحتوي على النص المصدر للبرنامج، والذي يمكن تحويله بعد التجميع إلى ملف قابل للتنفيذ.

<

> (الجدول) - يحدد نوع المكون، والذي يتم تقديمه في شكل جدول قاعدة البيانات.

واجهات

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

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


أرز.تمثيل رسومي للتبعية بين المكون والفئات.

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

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

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

تم تطوير مخطط المكونات للأغراض التالية:

تصور الهيكل العام للكود المصدر لنظام البرمجيات؛

مواصفات الإصدار القابل للتنفيذ من نظام البرمجيات؛

وضمان إعادة استخدام أجزاء كود البرنامج الفردية؛

تمثيل مخططات قاعدة البيانات المفاهيمية والمادية.

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

عناصر

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

يتبع اسم المكون القواعد العامة لتسمية عناصر النموذج في لغة UML ويمكن أن يتكون من أي عدد من الأحرف والأرقام وبعض علامات الترقيم.

يمكن تمثيل مكون فردي على مستوى النوع أو على مستوى المثيل. التمثيل الرسومي هو نفسه في كلتا الحالتين، لكن قواعد كتابة اسم المكون مختلفة. إذا تم تمثيل مكون على مستوى النوع، فسيتم كتابة اسم النوع الكبير فقط كاسمه. إذا تم تمثيل المكون على مستوى المثيل، فسيتم كتابة اسمه<имя компонента>":"<имя типаХ>. في هذه الحالة، يتم وضع خط تحت سطر الاسم بأكمله.

كأسماء بسيطة، من المعتاد استخدام أسماء الملفات القابلة للتنفيذ (مع الإشارة إلى امتداد exe بعد النقطة الفاصلة)، أو المكتبات الديناميكية (امتداد dll)، أو صفحات الويب (امتداد html)، أو الملفات النصية (امتداد txt أو doc) أو ملفات المساعدة (hip) أو ملفات قاعدة البيانات (DB) أو الملفات التي تحتوي على أكواد مصدر البرنامج (h، cpp Extensions للغة C++، امتداد java للغة Java)، البرامج النصية (pi، asp) وغيرها.

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

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

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

هناك ثلاثة أنواع من المكونات في UML:

عمليات النشر التي تمكن النظام من أداء وظائفه مباشرة. يمكن أن تكون هذه المكونات مكتبات ارتباطات ديناميكية بامتداد dll، وصفحات ويب بلغة ترميز النص التشعبي بامتداد html، وملفات مساعدة بامتداد hlp؛

منتجات العمل. كقاعدة عامة، هذه ملفات تحتوي على الكود المصدري للبرامج، على سبيل المثال، بامتداد h أو cpp للغة C++؛

عمليات الإعدام، وهي وحدات قابلة للتنفيذ - ملفات ذات ملحق exe.

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

هناك طريقة أخرى لتحديد أنواع مختلفة من المكونات وهي الإشارة بوضوح إلى الصورة النمطية للمكونات قبل الاسم. يحدد UML الصور النمطية التالية للمكونات:

المكتبة - تحدد النوع الأول من المكونات، والذي يتم تقديمه في شكل مكتبة ديناميكية أو ثابتة؛

الجدول - يحدد أيضًا النوع الأول من المكونات، والذي يتم تمثيله في شكل جدول قاعدة البيانات؛

ملف (ملف) - يحدد النوع الثاني من المكونات، والذي يتم تقديمه في شكل ملفات مع الكود المصدري للبرامج؛

document - يحدد النوع الثاني من المكونات. والتي يتم تقديمها في شكل وثيقة؛

قابل للتنفيذ - يحدد النوع الثالث من المكونات التي يمكن تنفيذها في العقدة.

واجهات

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

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

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

التبعيات

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

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

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

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

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

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

يتم تصوير الكائنات الموجودة في مكون مثيل منفصل على أنها متداخلة داخل رمز ذلك المكون. يعني هذا التداخل أن تنفيذ المكون يستلزم تنفيذ الكائنات المقابلة.

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

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

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

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

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

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

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

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

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

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

يصف الجدول التالي العناصر التي يمكن استخدامها في مخطط المكونات وخصائصها الأساسية.

شكل

عنصر

الوصف والخصائص الرئيسية

عنصر

عنصر وظيفي قابل لإعادة الاستخدام في النظام. يكشف المكون عن السلوك ويستهلكه من خلال الواجهات ويمكنه استخدام مكونات أخرى.

يمكنك إخفاء أو إظهار الأجزاء الداخلية للمكون باستخدام عنصر التحكم في التوسيع/الطي (9).

المكون هو نوع من الطبقة.

    هو مثيل تم إنشاؤه ضمنيا. إذا كان صحيحًا (الافتراضي)، فإن المكون موجود فقط كعنصر تصميمي. في وقت التشغيل، جزء منه موجود فقط.

منفذ الواجهة المقدمة

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

منفذ الواجهة المطلوبة

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

مدمن

يمكن استخدامه للإشارة إلى أن الواجهة المطلوبة لأحد المكونات يمكن أن تتطابق مع الواجهة المتوفرة لمكون آخر.

يمكن أيضًا استخدام التبعيات بشكل عام عند العمل مع عناصر النموذج لإظهار أن تصميم أحد العناصر يعتمد على تصميم عنصر آخر.

سمة لمكون يكون نوعه عادةً مكونًا آخر. يتم استخدام الجزء في التصميم الداخلي للمكون الأصلي. بيانياً، تظهر الأجزاء على أنها متداخلة داخل المكون الأصلي.

لإنشاء جزء من نوع مكون موجود، اسحب المكون من UML Model Explorer إلى المكون المالك.

لإنشاء نوع جديد من الأجزاء، حدد أداة المكون وانقر فوق المكون المالك.

على سبيل المثال، يحتوي مكون السيارة على أجزاء المحرك:CarEngine، backLeft:Wheel، frontRight:Wheel، إلخ.

يمكن أن تكون الأجزاء المتعددة من نفس النوع، ويمكن أن تحتوي المكونات المختلفة على أجزاء من نفس النوع.

    يكتب. نوع جزء محدد في مكان آخر في النموذج. عادةً ما يكون النوع مكونًا آخر.

    التعدد. القيمة الافتراضية هي 1. يمكنك تعيينها على 0..1 للإشارة إلى أن الجزء يمكن أن يكون خاليًا، أو يمكنك تعيينها على * للإشارة إلى أن الجزء عبارة عن مجموعة من المثيلات من هذا النوع. يمكنك أيضًا تعيين القيمة لأي تعبير يمكن تقييمه في نطاق رقمي.

جزء التجميع

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

وفد

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

(غير ظاهر)

تعميم

يشير إلى أن أحد العناصر يرث من الآخر. الأجزاء والواجهات موروثة.

توسيع/طي التحكم

يسمح لك بإخفاء أو إظهار الأجزاء الداخلية للمكون.

(غير ظاهر)

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

لماذا هو مطلوب؟

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

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

ومن الجدير بالذكر أيضًا أن هناك عدة أنواع من هذه المخططات.

مخطط الطبقة

مخطط فئة UML هو مخطط هيكلي ثابت مصمم لوصف بنية النظام، وكذلك إظهار السمات والأساليب والتبعيات بين عدة فئات مختلفة.

ومن الجدير بالذكر أن هناك عدة وجهات نظر حول بناء مثل هذه المخططات، اعتمادًا على كيفية استخدامها:

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

مخطط المكونات

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

مخطط الهيكل المركب / المركب

يعد مخطط البنية المركبة/المركبة لـ UML أيضًا مخططًا للبنية الثابتة، ولكن يتم استخدامه لإظهار البنية الداخلية للفئات. إذا أمكن، يمكن أن يوضح هذا الرسم البياني أيضًا تفاعل العناصر الموجودة في البنية الداخلية للفئة.

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

تجدر الإشارة إلى أنه يمكن استخدام طرق عرض فئة UML ومخطط الهيكل المركب في وقت واحد.

مخطط النشر

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

يتشكل اعتماد المظهر بين القطعة الأثرية والمكون الذي تنفذه.

مخطط الكائن

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

مخطط الحزمة

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

يتم استخدامها لضمان تنظيم عدة عناصر في مجموعات وفقًا لمعيار معين من أجل تبسيط الهيكل وكذلك تنظيم العمل باستخدام نموذج نظام معين.

الرسم النشاط

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

غالبًا ما تُستخدم مخططات نشاط UML لنمذجة العمليات التجارية المختلفة والحوسبة المتوازية والمتسلسلة. ومن بين أمور أخرى، فإنها تحاكي جميع أنواع الإجراءات التكنولوجية.

مخطط الآلة

يسمى هذا النوع أيضًا بشكل مختلف قليلاً - مخطط حالة UML. يحتوي على آلة حالة محدودة مقدمة مع حالات بسيطة ومركبة، بالإضافة إلى التحولات.

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

يمكن استخدام ما يسمى بمخططات التنين كنظائرها لمثل هذه المخططات.

استخدام الرسوم البيانية الحالة

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

إذا تم استخدام مخطط حالة استخدام UML في عملية نمذجة النظام، فسيقوم المحلل بما يلي:

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

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

مجال الاتصالات

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

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

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

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

مخطط تسلسل

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

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

مخطط التعاون

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

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

الرسوم البيانية نظرة عامة على التفاعل

هذه هي مخططات UML التي تعد نوعًا من مخططات النشاط وتتضمن عناصر التسلسل وبنيات تدفق التحكم.

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

الرسم البياني توقيت

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

ماهي المزايا؟

تجدر الإشارة إلى عدة مزايا تميز مخطط استخدام UML وغيره:

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

عيوب

على الرغم من أن إنشاء مخططات UML له الكثير من المزايا، إلا أنه غالبًا ما يتم انتقاده بسبب العيوب التالية:

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

وبالتالي، فإن استخدام هذه اللغة ليس مناسبًا في جميع المواقف.

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

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

        UML يوفر أدوات معبرة لإنشاء نماذج مرئية:

  • مفهومة بشكل موحد من قبل جميع المطورين المشاركين في المشروع؛
  • هي وسيلة الاتصال داخل المشروع.

        لغة النمذجة الموحدة (UML):

  • لا يعتمد على لغات البرمجة الموجهة للكائنات (OO)؛
  • لا يعتمد على منهجية تطوير المشروع المستخدمة؛
  • يمكن أن يدعم أي لغة برمجة OO.

        UML مفتوح ويحتوي على أدوات لتوسيع النواة الأساسية. يمكن استخدام UML لوصف الفئات والكائنات والمكونات بشكل هادف في مجالات مواضيع مختلفة، وغالبًا ما تكون مختلفة جدًا عن بعضها البعض.

مخططات UML

        توفر Rational Rose الأنواع التالية من المخططات تحت تصرف مصمم النظام، والتي يتيح لك إنشاؤها المتسلسل الحصول على صورة كاملة للنظام المصمم بالكامل ومكوناته الفردية:

  • استخدم الرسم البياني؛
  • مخطط النشر (مخططات الطوبولوجيا) ؛
  • مخطط الحالة؛
  • مخطط التفاعل؛ الرسم النشاط؛
  • مخطط تسلسل؛
  • مخطط التعاون؛
  • مخطط الطبقة؛
  • مخطط المكونات (المخططات المكونة) ؛
  • مخططات السلوك؛
  • الرسم النشاط؛
  • مخططات التنفيذ؛

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

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

        بالنسبة لمخططات UML، هناك ثلاثة أنواع من الرموز المرئية التي تعتبر مهمة من حيث المعلومات التي تحتوي عليها:

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

        عند تصوير المخططات بيانيًا، يوصى بالالتزام بالقواعد التالية:

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

الكيانات في UML

        هناك أربعة أنواع من الكيانات المحددة في UML: الهيكلية والسلوكية والتجميع والشرح. الكيانات هي العناصر الرئيسية الموجهة للكائنات في اللغة التي يتم من خلالها إنشاء النماذج.

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

        الكيانات السلوكيةهي مكونات ديناميكية لنموذج UML. وهي أفعال تصف سلوك النموذج في الزمان والمكان. هناك نوعان رئيسيان من الكيانات السلوكية:

  • التفاعل هو السلوك، وجوهره هو تبادل الرسائل بين الأشياء ضمن سياق محدد لتحقيق هدف محدد؛
  • إنسان آلي - خوارزمية سلوكية تحدد سلسلة من الحالات التي يمر من خلالها كائن أو تفاعل استجابة لأحداث مختلفة.

        كيانات التجميعهي الأجزاء المنظمة لنموذج UML. هذه هي الكتل التي يمكن تقسيم النموذج إليها. يوجد مثل هذا الكيان الأساسي في نسخة واحدة - هذه حزمة.

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

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

العلاقات في UML

        يتم تعريف أنواع العلاقات التالية في لغة UML: التبعية والارتباط والتعميم والتنفيذ. هذه العلاقات هي بنيات الاتصال الرئيسية لـ UML وتستخدم أيضًا ككيانات لبناء النماذج.

        الاعتماد- هذه علاقة دلالية بين كيانين، حيث يمكن أن يؤثر التغيير في أحدهما المستقل على دلالات الآخر التابع.

        منظمة- علاقة بنيوية تصف مجموعة من الروابط الدلالية أو المنطقية بين الأشياء.

        تعميمهي علاقة يمكن من خلالها استبدال كائن عنصر متخصص (سليل) بكائن عنصر عام (سلف). في الوقت نفسه، وفقًا لمبادئ البرمجة الشيئية، يرث السليل (الطفل) بنية وسلوك سلفه (الوالد).

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

  • بين الواجهات والفئات أو المكونات التي تنفذها؛
  • بين السوابق والتعاون الذي ينفذها.

آليات UML المشتركة

        لوصف نظام ما بدقة في UML، يتم استخدام ما يسمى بالآليات العامة:

  • تحديد؛
  • الإضافات (الزينة)؛
  • الانقسامات المشتركة
  • الامتدادات (آليات القابلية للتوسعة).

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

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

        عند نمذجة الأنظمة الموجهة للكائنات، هناك أمر معين قسمالكيانات الممثلة.

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

        ثانيًا، هناك تقسيم إلى الواجهة وتنفيذها. تعلن الواجهة عن الالتزامات، ويمثل التنفيذ التنفيذ الملموس لتلك الالتزامات ويضمن اتباع الدلالات المعلنة بدقة. ولهذا السبب، تتميز جميع بنيات UML تقريبًا بازدواجية الواجهة/التنفيذ. على سبيل المثال، يتم تنفيذ السوابق من خلال التعاون، ويتم تنفيذ العمليات من خلال الأساليب.

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

        تتضمن آليات تمديد UML ما يلي:

  • الصور النمطية (الصورة النمطية) - قم بتوسيع مفردات UML، مما يسمح لك بإنشاء مفردات جديدة بناءً على عناصر اللغة الموجودة، مع التركيز على حل مشكلة معينة؛
  • القيم الموسومة - توسيع خصائص بنيات UML الأساسية، مما يسمح بتضمين معلومات إضافية في مواصفات العنصر؛
  • القيود (القيود) - قم بتوسيع دلالات بنيات UML، مما يسمح لك بإنشاء قواعد جديدة وإلغاء القواعد الحالية.

        تتيح لك آليات تمديد اللغة الثلاث هذه معًا تعديلها وفقًا لاحتياجات المشروع أو ميزات تكنولوجيا التطوير.

استخدم الرسم البياني

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


الشكل - 1. استخدم مخطط الحالة

        مخططات حالة الاستخدام تصف وظيفة النظام أو ما يفترض أن يفعله النظام. يهدف تطوير المخطط إلى الأهداف التالية:

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

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

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

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

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

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

مخطط الطبقة

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


الشكل - 2. مخطط الفصل

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

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

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

مخطط الحالة

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

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



الشكل - 2. مخطط الحالة

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

        في نموذج UML آلةهي حزمة تحدد العديد من المفاهيم الضرورية لتمثيل سلوك الكيان النموذجي في شكل مساحة منفصلة ذات عدد محدود من الحالات والانتقالات.

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

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

        يجب استيفاء الشروط الإلزامية التالية للجهاز:

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

ولايةيعد أمرًا أساسيًا ليس فقط في نموذج لغة UML، ولكن أيضًا في تحليل الأنظمة التطبيقية. يعتمد المفهوم الكامل للنظام الديناميكي على مفهوم الحالة. تحتوي دلالات الحالة في لغة UML على عدد من الميزات المحددة.

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

الرسم النشاط

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

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

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

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

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

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

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

مخطط تسلسل

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

        هؤلاء فقط أشياءوالتي تشارك بشكل مباشر في التفاعل. إن مفتاح المخططات التسلسلية هو ديناميكيات كيفية تفاعل الكائنات مع مرور الوقت.

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

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

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

مخطط التعاون

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


الشكل - 3. مخطط التعاون

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

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

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

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

        يمكن تمثيل التعاون على مستويين:

  • مستوى المواصفات - يوضح أدوار المصنفات وأدوار الارتباطات في التفاعل قيد النظر؛
  • مستوى المثال - يشير إلى الحالات والعلاقات التي تشكل الأدوار الفردية في التعاون.

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

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

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

مخطط المكون

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



الشكل - 4. مخطط المكونات

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

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

        تم تطوير مخطط المكونات للأغراض التالية:

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

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

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

مخطط النشر

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


الشكل - 5. مخطط النشر

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

        تُستخدم مخططات النشر لتمثيل التكوين العام والطوبولوجيا لنظام البرامج الموزع في UML.

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

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

        عند تطوير مخطط النشر، يتم تحقيق الأهداف التالية:

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

        يتم تطوير مخططات النشر بشكل مشترك بواسطة محللي النظام ومهندسي الشبكات وفنيي الأنظمة.

مميزات واجهة عمل Rational Rose

        تطبق أداة Rational Rose CASE المعايير المقبولة عمومًا لواجهة تشغيل البرنامج، على غرار بيئات البرمجة المرئية المعروفة. بعد تثبيت Rational Rose على جهاز الكمبيوتر الخاص بالمستخدم، والذي لا يسبب أي صعوبات تقريبًا حتى للمبتدئين، يؤدي تشغيل هذا البرنامج في MS Windows 95/98 إلى ظهور واجهة عمل على الشاشة (الشكل 6).


الشكل - 6.منظر عام لواجهة العمل لبرنامج Rational Rose

        تتكون واجهة تشغيل Rational Rose من عناصر مختلفة، أهمها:

  • القائمة الرئيسية للبرنامج
  • نافذة الرسم التخطيطي
  • نافذة التوثيق
  • نافذة المتصفح
  • نافذة السجل

دعونا نفكر بإيجاز في الغرض والوظائف الرئيسية لكل عنصر من هذه العناصر.

القائمة الرئيسية للبرنامج

القائمة الرئيسية للبرنامج مصنوعة وفقًا للمعايير المقبولة عمومًا وتبدو هكذا (الشكل 7).

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

الشكل - 7.ظهور القائمة الرئيسية للبرنامج

شريط الأدوات القياسي

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

الشكل - 8.مظهر شريط الأدوات القياسي

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

نافذة المتصفح

توجد نافذة المتصفح الافتراضية على الجانب الأيسر من واجهة العمل أسفل شريط الأدوات القياسي (الشكل 9).

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

الشكل - 9.مظهر المتصفح

شريط أدوات خاص

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

الشكل - 10.ظهور شريط أدوات خاص لمخطط الفصل

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

نافذة الرسم التخطيطي

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

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


الشكل - 11.ظهور نافذة الرسم التخطيطي مع أنواع مختلفة من طرق عرض النموذج

نافذة التوثيق

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

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

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

تمامًا كما هو الحال مع النوافذ الأخرى لواجهة العمل، يمكنك تغيير حجم وموضع نافذة التوثيق.

الشكل - 12.ظهور نافذة التوثيق

نافذة السجل

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

توجد نافذة السجل دائمًا على واجهة العمل في منطقة نافذة الرسم التخطيطي (الشكل 13). ومع ذلك، قد تكون مخفية بواسطة نوافذ الرسم البياني الأخرى أو يتم تصغيرها. يمكنك تنشيط نافذة السجل من خلال قائمة Window->Log. وفي هذه الحالة، يتم عرضه أعلى النوافذ الأخرى في المنطقة اليمنى من واجهة العمل. لا يمكن إزالة هذه النافذة بالكامل، بل يمكن تصغيرها فقط.

الشكل - 13.مظهر نافذة السجل

خاتمة

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

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

توضح هذه المقالة العصر الجديد لتطوير البرامج وتأثيرها على متطلبات UML الجديدة وأفضل الممارسات لتلبية هذه المتطلبات.
  7. "نمذجة البيانات في Rational Rose" سيرغي تروفيموف يصف نمذجة التمثيل المادي للبيانات باستخدام Rational Rose
  8. لغة UML. الفهم العام للغة UML: الهياكل والعناصر الرسومية والرسوم البيانية للغة.
  9. UML العملي. هذه الوثيقة هي ترجمة للمستند "UML العملي. مقدمة عملية للمطورين". مقدمة عملية للمطورين
  10. "لغة النمذجة القياسية الموجهة للكائنات UML" فيندروف ألكسندر ميخائيلوفيتش. تاريخ UML
  11.UML – لغة النمذجة الموحدة. تحتوي هذه المادة على معلومات أولية حول طرق وصف أنظمة البرامج والرموز المستخدمة في UML
  12. لغة UML. دليل المستخدم. المؤلفون: جرادي بوش، جيمس رامبو، إيفار جاكوبسون
  13. "مخططات UML في Rational Rose" سيرجي تروفيموف
  14. "التحليل والتصميم. النمذجة المرئية (UML) Rational Rose" كونستانتين دوموليغو
  15. مكتبة جينادي فيرنيكوف. أوصاف كاملة لمعايير التصميم والنمذجة.
  16. "مثال على وصف مجال الموضوع باستخدام UML عند تطوير أنظمة البرمجيات" E.B. زولوتوخينا، ر.ف. الفيموف. تستخدم المقالة مثالاً محددًا لتوضيح النهج المحتمل لنمذجة المجال بناءً على استخدام لغة النمذجة الموحدة (UML)