زبان مدلسازی یکپارچه (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 تنها یک زبان گرافیکی نیست. در پشت هر عنصر گرافیکی، نماد آن قرار دارد مشخصات A که شامل نمایش متنی ساختار زبان مربوطه است. به عنوان مثال، یک نماد کلاس دارای مشخصاتی است که ویژگی ها، عملیات و رفتار آن را توصیف می کند، اگرچه به صورت بصری، در یک نمودار، نماد اغلب تنها بخش کوچکی از این اطلاعات را منعکس می کند. علاوه بر این، مدل ممکن است نمایش دیگری از این کلاس داشته باشد که جنبه های کاملاً متفاوتی از آن را منعکس کند، اما با این وجود، مطابق با مشخصات است. بنابراین، از نماد گرافیکی UML برای تجسم سیستم استفاده می شود و با کمک مشخصات، جزئیات آن را توصیف می کند.

        تقریبا هر عنصر UML دارای یک گرافیک منحصر به فرد است که نمایشی بصری از مهمترین ویژگی های آن را ارائه می دهد. نماد نهاد "کلاس" شامل نام، ویژگی ها و عملیات آن است. مشخصات کلاس ممکن است شامل جزئیات دیگری مانند قابل مشاهده بودن ویژگی ها و عملیات، نظرات یا نشانه ای از انتزاعی بودن کلاس باشد. بسیاری از این جزئیات را می توان به صورت گرافیک یا متن تجسم کرد. اضافاتبه مستطیل استاندارد که نشان دهنده کلاس است.

        هنگام مدل‌سازی سیستم‌های شی گرا، یک تقسیمنهادهای نمایندگی

        ابتدا یک تقسیم بندی به کلاس ها و اشیاء وجود دارد. یک کلاس یک انتزاع است و یک شیء اجرای عینی آن انتزاع است. در این راستا، تقریباً تمام ساختارهای زبانی با دوگانگی «کلاس/ابژه» مشخص می‌شوند. بنابراین، موارد استفاده و موارد استفاده، مؤلفه‌ها و نمونه‌های مؤلفه‌ها، گره‌ها و نمونه‌هایی از گره‌ها وجود دارد. در نمایش گرافیکی، مرسوم است که برای یک شیء از همان علامت کلاس استفاده می شود و زیر نام آن خط می کشد.

        در مرحله دوم، یک تقسیم به یک رابط و اجرای آن وجود دارد. رابط تعهدات را اعلام می‌کند و پیاده‌سازی اجرای عینی این تعهدات را نشان می‌دهد و تضمین می‌کند که معنایی اعلام شده دقیقاً دنبال می‌شود. به این ترتیب، تقریباً تمام ساختارهای UML با دوگانگی رابط/پیاده‌سازی مشخص می‌شوند. به عنوان مثال، موارد استفاده با همکاری ها پیاده سازی می شوند، در حالی که عملیات ها با روش ها اجرا می شوند.

        UML یک زبان باز است، به این معنی که به برنامه های افزودنی کنترل شده اجازه می دهد تا ویژگی های مدل های دامنه را منعکس کنند.

مکانیسم‌های پسوند UML         عبارتند از:

  • کلیشه ها (کلیشه) - واژگان UML را گسترش دهید، به شما این امکان را می دهد که بر اساس عناصر موجود زبان، با تمرکز بر حل یک مشکل خاص، موارد جدید ایجاد کنید.
  • مقادیر برچسب گذاری شده - ویژگی های ساختارهای UML اصلی را گسترش می دهد و به شما امکان می دهد اطلاعات اضافی را در مشخصات عنصر قرار دهید.
  • محدودیت‌ها (محدودیت‌ها) - معنای ساختارهای UML را گسترش می‌دهد و به شما امکان می‌دهد قوانین جدید ایجاد کنید و قوانین موجود را لغو کنید.

        با هم، این سه مکانیسم توسعه زبان به شما امکان می‌دهند آن را مطابق با نیازهای پروژه یا ویژگی‌های فناوری توسعه تغییر دهید.

از نمودار موردی استفاده کنید

        این نوع نمودار به شما امکان می دهد لیستی از عملیاتی که سیستم انجام می دهد ایجاد کنید. اغلب این نوع نمودار را نمودار تابع می نامند، زیرا بر اساس مجموعه ای از این نمودارها، فهرستی از نیازهای سیستم ایجاد می شود و مجموعه ای از توابع انجام شده توسط سیستم تعیین می شود.


شکل - 1. از نمودار موردی استفاده کنید

        نمودارهای مورد استفاده عملکرد سیستم یا آنچه را که سیستم باید انجام دهد را توصیف می کند. توسعه نمودار دارای اهداف زیر است:

  • تعیین مرزهای کلی و زمینه حوزه موضوعی مدل شده؛
  • تدوین الزامات عمومی برای رفتار عملکردی سیستم طراحی شده؛
  • توسعه یک مدل مفهومی اولیه از سیستم برای جزئیات بعدی آن در قالب مدل های منطقی و فیزیکی؛
  • مستندات اولیه را برای تعامل توسعه دهندگان سیستم با مشتریان و کاربران خود آماده می کند.

        ماهیت نمودار استفاده به شرح زیر است. سیستم در حال طراحی به عنوان مجموعه ای از موجودیت ها یا بازیگرانی که با استفاده از موارد استفاده با سیستم در تعامل هستند نشان داده می شود. در این حالت، کنشگر (بازیگر) یا کنشگر هر موجودی است که از بیرون با سیستم در تعامل باشد. این می تواند یک شخص، یک دستگاه فنی، یک برنامه یا هر سیستم دیگری باشد که می تواند به عنوان منبع تأثیر بر سیستم شبیه سازی شده به روشی که خود توسعه دهنده تعیین می کند، باشد. مورد استفادهدر خدمت توصیف خدماتی است که سیستم به بازیگر ارائه می دهد.

        هدف یک مورد استفاده تعریف یک جنبه کامل یا بخشی از رفتار یک موجودیت بدون افشای ساختار داخلی آن است. چنین موجودی می تواند یک سیستم یا هر عنصری از مدل باشد که رفتار خاص خود را دارد.

        هر مورد استفاده مربوط به سرویس جداگانه‌ای است که موجودیت مدل‌سازی شده به درخواست بازیگر ارائه می‌کند، یعنی نحوه استفاده از موجودیت را تعیین می‌کند. سرویسی که به درخواست یک بازیگر مقدار دهی اولیه می شود، یک توالی کامل و غیر قابل تقسیم از اقدامات است. به این معنی که پس از اتمام پردازش یک درخواست، سیستم باید به حالت اولیه خود بازگردد تا برای درخواست های بعدی آماده شود.

        موارد استفاده را می توان هم برای تعیین الزامات خارجی برای یک سیستم در حال طراحی و هم برای مشخص کردن رفتار عملکردی یک سیستم موجود استفاده کرد. مجموعه موارد استفاده به عنوان یک کل باید تمام جنبه های ممکن رفتار مورد انتظار سیستم را تعریف کند. علاوه بر این، موارد استفاده به طور ضمنی الزاماتی را ایجاد می کند که تعیین می کند بازیگران چگونه باید با سیستم تعامل داشته باشند تا بتوانند به درستی با خدمات ارائه شده کار کنند. برای راحتی، بسیاری از موارد استفاده را می توان به عنوان یک بسته جداگانه در نظر گرفت.

        نمونه هایی از موارد استفاده می تواند اقدامات زیر باشد: بررسی وضعیت حساب جاری مشتری، ثبت سفارش برای خرید کالا، کسب اطلاعات اضافی در مورد اعتبار مشتری، نمایش فرم گرافیکی بر روی صفحه نمایشگر، و اقدامات دیگر.

نمودار کلاس (نمودار کلاس)

        مرکز برنامه نویسی شی گرا توسعه یک مدل منطقی از یک سیستم در قالب یک نمودار کلاس است. نمودار کلاس (نمودار کلاس) برای نشان دادن ساختار استاتیک مدل سیستم در اصطلاح کلاس های برنامه نویسی شی گرا عمل می کند. یک نمودار کلاس می تواند به طور خاص روابط مختلف بین موجودیت های منفرد حوزه موضوعی، مانند اشیا و زیرسیستم ها را منعکس کند، و همچنین ساختار داخلی و انواع روابط را توصیف کند.


شکل - 2. نمودار کلاس

        نمادهای نمودار به شما امکان می دهد سلسله مراتب پیچیده ای از سیستم ها، روابط بین کلاس ها (کلاس ها) و رابط ها (اینترفیس ها) را نمایش دهید. این نوع نمودار از نظر محتوا در مقابل نمودار Collaboration است که اشیاء سیستم را نمایش می دهد. Rational Rose به شما امکان می دهد کلاس هایی را با استفاده از این نوع نمودار در نمادهای مختلف ایجاد کنید. ابر مانند بنابراین، یک کلاس فقط یک الگو است که بر اساس آن یک شی خاص در آینده ایجاد می شود.

        نمودار کلاس نموداری است که رئوس آن عناصری از نوع "طبقه بندی" هستند که توسط انواع مختلفی از روابط ساختاری به هم متصل شده اند. یک نمودار کلاس همچنین می تواند شامل رابط ها، بسته ها، روابط و حتی نمونه های فردی مانند اشیا و روابط باشد.

        کلاسدر UML، برای نشان دادن مجموعه ای از اشیاء استفاده می شود که ساختار، رفتار و روابط یکسانی با اشیاء کلاس های دیگر دارند. از نظر گرافیکی، کلاس به صورت یک مستطیل به تصویر کشیده می شود که علاوه بر این، می تواند با خطوط افقی به بخش ها یا بخش ها تقسیم شود. این بخش ها می توانند شامل نام کلاس، ویژگی ها (متغیرها) و عملیات (روش ها) باشند.

نمودار حالت (نمودار statechart)

        هر نمودار حالت در UML تمام حالت های ممکن یک نمونه از یک کلاس خاص و دنباله های احتمالی انتقال آن از یک حالت به حالت دیگر را توصیف می کند، یعنی تمام تغییرات در وضعیت یک شی را به عنوان واکنش آن به خارجی مدل می کند. تاثیر می گذارد.

نمودارهای وضعیتی         بیشتر برای توصیف رفتار تک تک اشیاء استفاده می شود، اما همچنین می تواند برای مشخص کردن عملکرد سایر اجزای مدل مانند موارد استفاده، بازیگران، زیرسیستم ها، عملیات و روش ها استفاده شود.



شکل - 2. نمودار حالت

        نمودار حالت یک نمودار از نوع خاصی است که مقداری خودکار را نشان می دهد. رئوس نمودار حالت های ممکن خودکار است که با نمادهای گرافیکی مربوطه نشان داده می شود و کمان ها انتقال آن از حالتی به حالت دیگر را نشان می دهند. نمودارهای وضعیتی را می توان برای ارائه نمایش دقیق تری از عناصر مدل تکی تودرتو کرد.

        در متامدل UML دستگاهبسته ای است که مجموعه ای از مفاهیم لازم را برای نمایش رفتار موجودیت مدل شده به عنوان یک فضای گسسته با تعداد محدودی از حالت ها و انتقال ها تعریف می کند.

        مدت زمان سیستم در هر یک از حالت های ممکن به طور قابل توجهی از زمان صرف شده برای انتقال از یک حالت به حالت دیگر بیشتر است. فرض بر این است که در حد، زمان انتقال می تواند برابر با صفر باشد (مگر اینکه در غیر این صورت مشخص شده باشد)، یعنی تغییر حالت های شی می تواند فورا رخ دهد.

        رفتار خودکار به عنوان یک حرکت متوالی در امتداد نمودار از راس به رأس، با در نظر گرفتن جهت قوس‌هایی که آنها را به هم متصل می‌کنند، مدل‌سازی می‌شود.

        شرایط اجباری زیر برای ماشین فروش باید رعایت شود:

  • حالتی که یک شی می تواند به آن برود فقط با وضعیت فعلی آن تعیین می شود و به تاریخچه آن بستگی ندارد.
  • در هر زمان، خودکار فقط می تواند در یکی از حالت های خود باشد. در عین حال، اگر هیچ رویدادی اتفاق نیفتد، خودکار می تواند برای مدت طولانی خودسرانه در یک حالت جداگانه باشد.
  • مدت زمان صرف شده توسط خودکار در یک حالت یا حالت دیگر و همچنین زمان لازم برای رسیدن به یک وضعیت یا حالت دیگر به هیچ وجه مشخص نشده است.
  • تعداد حالت های خودکار باید محدود باشد و همه آنها باید به صراحت مشخص شوند. شبه حالت های فردی ممکن است مشخصات (حالت های اولیه و نهایی) نداشته باشند. در این صورت، هدف و معناشناسی آنها کاملاً از بافت مدل و نمودار حالت مورد نظر مشخص می شود.
  • نمودار خودکار نباید شامل حالات و انتقال های جدا شده باشد. برای هر حالت، به جز حالت اولیه، باید حالت قبلی تعریف شود و هر انتقال باید دو حالت خودکار را به هم متصل کند.
  • هنگامی که شی می تواند به طور همزمان به دو یا چند حالت بعدی برود (به استثنای مورد زیر اتوماتای ​​موازی) خودکار نباید دارای انتقال متضاد باشد. در زبان UML، حذف تضاد بر اساس معرفی شرایط نگهبان امکان پذیر است.

حالتنه تنها در متامدل UML، بلکه در تحلیل سیستم های کاربردی نیز اساسی است. کل مفهوم یک سیستم پویا مبتنی بر مفهوم حالت است. معناشناسی حالت در زبان UML دارای تعدادی ویژگی خاص است.

        در UML، یک حالت یک متاکلاس انتزاعی است که برای مدلسازی یک موقعیت خاص استفاده می شود که در طی آن شرایط خاصی درست است. حالت را می توان به عنوان مجموعه ای از مقادیر خاص از ویژگی های کلاس یا شی مشخص کرد. تغییرات در مقادیر مشخصه منفرد منعکس کننده تغییر در وضعیت کلاس یا شی مدل شده است.

نمودار فعالیت

        هنگام مدل‌سازی رفتار یک سیستم طراحی‌شده یا تحلیل‌شده، نه تنها ارائه فرآیند تغییر حالت‌های آن ضروری است، بلکه جزئیات اجرای الگوریتمی و منطقی عملیات انجام شده توسط سیستم نیز ضروری است.

        در واقع از این نوع نمودار می توان برای انعکاس حالات شی مورد مدل سازی نیز استفاده کرد، با این حال، هدف اصلی نمودار Activity منعکس کردن فرآیندهای تجاری شی است. این نوع نمودار به شما این امکان را می دهد که نه تنها توالی فرآیندها، بلکه انشعاب و حتی هماهنگ سازی فرآیندها را نیز نشان دهید.

        این نوع نمودار به شما امکان می دهد الگوریتم هایی را برای رفتار اشیاء با هر پیچیدگی طراحی کنید و همچنین می توان از آن برای ایجاد نمودارهای بلوکی استفاده کرد.

        UML از نمودارهای فعالیت برای مدلسازی فرآیند انجام عملیات استفاده می کند. نمادهای گرافیکی آنها از بسیاری جهات شبیه به نمودار حالت است، زیرا این نمودارها دارای نمادهای حالت و انتقال نیز هستند. هر حالت در نمودار فعالیت مربوط به اجرای برخی عملیات ابتدایی است و انتقال به حالت بعدی تنها زمانی انجام می شود که این عملیات تکمیل شود.

        بنابراین، نمودارهای فعالیت را می توان مورد خاصی از نمودارهای حالت در نظر گرفت. آنها به شما امکان می دهند ویژگی های کنترل رویه ای و همزمان را به دلیل تکمیل فعالیت ها و اقدامات داخلی در UML پیاده سازی کنید. جهت اصلی استفاده از نمودارهای فعالیت، تجسم ویژگی های اجرای عملیات کلاس است، زمانی که لازم است الگوریتم هایی برای اجرای آنها ارائه شود.

        در زمینه UML فعالیتمجموعه ای از محاسبات فردی است که توسط خودکار انجام می شود که منجر به نتیجه یا عمل (عمل) می شود. نمودار فعالیت منطق و توالی انتقال از یک فعالیت به فعالیت دیگر را نشان می دهد و توجه تحلیلگر بر روی نتایج متمرکز است. نتیجه یک فعالیت ممکن است منجر به تغییر در وضعیت سیستم یا بازگشت مقداری شود.

        حالت عملیک مورد خاص از یک حالت با مقداری اقدام ورودی و حداقل یک انتقال خروجی حالت است. این انتقال به طور ضمنی فرض می کند که عملکرد ورودی قبلاً تکمیل شده است. حالت عمل نمی تواند انتقال داخلی داشته باشد زیرا ابتدایی است. استفاده متداول از یک حالت عمل مدل سازی یک مرحله واحد در اجرای یک الگوریتم (رویه) یا جریان کنترل است.

نمودار توالی

        هنگام در نظر گرفتن نمودارهای وضعیت و فعالیت، به این نکته اشاره شد که اگرچه این نمودارها برای مشخص کردن پویایی رفتار سیستم ها استفاده می شوند، اما زمان به صراحت در آنها وجود ندارد. جنبه زمانی رفتار می تواند هنگام مدل سازی فرآیندهای همزمان که تعاملات اشیاء را توصیف می کنند، از اهمیت قابل توجهی برخوردار باشد. نمودارهای توالی برای مدل سازی تعامل اشیاء در زمان در زبان UML استفاده می شود.

        نمودارهای دنباله ای فقط آن موارد را نشان می دهند اشیاءکه مستقیماً در تعامل دخالت دارند. نکته کلیدی برای نمودارهای توالی، پویایی تعامل اشیاء در طول زمان است.

        در UML، نمودار توالی، همانطور که بود، دو بعد دارد. اولین مورد از چپ به راست به عنوان خطوط عمودی، که هر کدام خط حیات یک شی منفرد را نشان می دهد که در تعامل شرکت می کند. سمت چپ ترین شی در نمودار، شیئی است که آغازگر تعامل است. در سمت راست، شی دیگری به تصویر کشیده شده است که به طور مستقیم با اولی در تعامل است. بنابراین، تمام اشیاء در نمودار توالی، نظم خاصی را تشکیل می دهند که با ترتیب یا درجه فعالیت اشیاء در هنگام تعامل با یکدیگر تعیین می شود.

        از نظر گرافیکی، هر شی با یک مستطیل نشان داده می شود و در بالای خط حیات خود قرار دارد. در داخل مستطیل، نام شی و نام کلاس نوشته شده است که با دو نقطه از هم جدا شده اند. در این حالت کل رکورد زیر خط کشیده می شود که نشانه ای از شی است.

        بعد دوم نمودار توالی، محور زمانی عمودی، از بالا به پایین است. بالاترین قسمت نمودار مربوط به لحظه اولیه زمان است. فعل و انفعالات شی از طریق پیام هایی که توسط یک شی به شی دیگر ارسال می شود، تحقق می یابد. پیام ها به صورت فلش های افقی با نام پیام نمایش داده می شوند و ترتیب آنها بر اساس زمان وقوع آنها مشخص می شود. یعنی پیام‌های بالاتر در نمودار توالی قبل از پیام‌های پایین‌تر آغاز می‌شوند. مقیاس بر روی محور زمان نشان داده نشده است، زیرا نمودار توالی فقط ترتیب زمانی تعاملات اولیه و دیرتر را مدل می کند.

نمودار همکاری

        ویژگی اصلی نمودار همکاری، توانایی نمایش گرافیکی نه تنها توالی تعامل، بلکه همچنین تمام روابط ساختاری بین اشیاء درگیر در این تعامل است.


شکل - 3. نمودار همکاری

        این نوع نمودار به شما امکان می دهد تا تعامل اشیاء را توصیف کنید و از دنباله ارسال پیام انتزاع کنید. این نوع نمودار تمام پیام های دریافتی و ارسالی یک شی خاص و انواع این پیام ها را به صورت فشرده منعکس می کند.

        اول از همه، در نمودار همکاری، اشیاء شرکت کننده در تعامل به شکل مستطیل نشان داده می شوند که حاوی نام شی، کلاس آن و احتمالاً مقادیر ویژگی است. علاوه بر این، همانطور که در نمودار کلاس، ارتباط بین اشیاء در قالب خطوط اتصال مختلف نشان داده شده است. در این صورت می توانید به صراحت نام انجمن و نقش هایی که اشیا در این انجمن ایفا می کنند را مشخص کنید. علاوه بر این، پیوندهای پویا را می توان نمایش داد - جریان پیام. آنها همچنین به عنوان خطوط اتصال بین اشیا نشان داده می شوند، که در بالای آنها یک فلش وجود دارد که جهت، نام پیام و شماره سریال را در توالی کلی اولیه سازی پیام نشان می دهد.

        برخلاف نمودار توالی، یک نمودار همکاری فقط روابط بین اشیایی را نشان می دهد که نقش های خاصی را در یک تعامل ایفا می کنند. این نمودار زمان را به عنوان یک بعد جداگانه نشان نمی دهد. بنابراین، توالی برهمکنش ها و جریان های موازی را می توان با استفاده از اعداد دنباله ای تعریف کرد. بنابراین، اگر لازم است به طور صریح روابط بین اشیاء در زمان واقعی مشخص شود، بهتر است این کار در نمودار توالی انجام شود.

مفهوم         مشارکتیکی از مفاهیم اساسی در UML است. این برای تعیین مجموعه ای از اشیاء در تعامل با یک هدف خاص در زمینه کلی سیستم در حال مدل سازی است. هدف از همکاری خود مشخص کردن ویژگی های اجرای مهم ترین عملیات فردی در سیستم است. همکاری ساختار رفتار سیستم را بر اساس تعامل شرکت کنندگان در این همکاری تعریف می کند.

        همکاری را می توان در دو سطح نشان داد:

  • سطح مشخصات - نقش طبقه بندی کننده ها و نقش انجمن ها را در تعامل در نظر گرفته نشان می دهد.
  • سطح نمونه - موارد و روابطی را نشان می دهد که نقش های فردی را در همکاری تشکیل می دهند.

        نمودار همکاری در سطح مشخصات نقش‌هایی را که عناصر درگیر در تعامل بازی می‌کنند نشان می‌دهد. عناصر همکاری در این سطح، طبقات و انجمن ها هستند که نشان دهنده نقش های جداگانه طبقه بندی کننده ها و انجمن ها بین شرکت کنندگان در همکاری هستند.

        نمودار همکاری در سطح نمونه با مجموعه ای از اشیا (نمونه های کلاس) و روابط (نمونه های ارتباطی) نشان داده می شود. در همان زمان، پیوندها با فلش های پیام تکمیل می شوند. در این سطح فقط اشیایی که مستقیماً با اجرای عملیات یا طبقه بندی کننده مرتبط هستند نشان داده می شوند. در این مورد، به هیچ وجه لازم نیست که همه ویژگی ها یا همه تداعی ها را به تصویر بکشیم، زیرا فقط نقش های طبقه بندی کننده در نمودار همکاری وجود دارد، اما نه خود طبقه بندی کننده ها. بنابراین، در حالی که طبقه‌بندی‌کننده نیاز به توصیف کاملی از تمام موارد خود دارد، نقش طبقه‌بندی‌کننده فقط مستلزم توصیف آن دسته از ویژگی‌ها و انجمن‌هایی است که برای مشارکت در یک همکاری خاص ضروری هستند.

        نتیجه مهمی از این نتیجه می گیرد. مجموعه یکسانی از اشیاء می تواند در همکاری های مختلف شرکت کند. بسته به همکاری مورد بررسی، هم خصوصیات اشیاء منفرد و هم پیوندهای بین آنها می توانند تغییر کنند. این همان چیزی است که یک نمودار همکاری را از یک نمودار کلاس متمایز می کند، که باید تمام ویژگی ها و ارتباط بین عناصر نمودار را نشان دهد.

نمودار مؤلفه

        این نوع نمودار برای تخصیص کلاسها و اشیاء به اجزاء در طراحی فیزیکی سیستم استفاده می شود. این نوع نمودار اغلب به عنوان نمودارهای ماژول شناخته می شود.



شکل - 4. نمودار اجزاء

        طراحی کامل سیستم نرم افزاری مجموعه ای از مدل های سطوح منطقی و فیزیکی است که باید با یکدیگر هماهنگ شوند. در زبان UML برای نمایش فیزیکی مدل های سیستم از نمودارهای پیاده سازی (نمودار پیاده سازی) استفاده می شود که شامل نمودار جزءو نمودار استقرار.

        یک نمودار جزء، بر خلاف نمودارهای قبلاً بحث شده، ویژگی های نمایش فیزیکی سیستم را توصیف می کند. این به شما امکان می دهد معماری سیستم در حال توسعه را با ایجاد وابستگی بین اجزای نرم افزار، که می تواند کد منبع و اجرایی باشد، تعیین کنید. عناصر گرافیکی اصلی نمودار کامپوننت، اجزا، واسط ها و وابستگی های بین آنها هستند.

        نمودار مؤلفه برای اهداف زیر ایجاد شده است:

  • تجسم ساختار کلی کد منبع سیستم نرم افزار؛
  • مشخصات نسخه اجرایی سیستم نرم افزار؛
  • اطمینان از استفاده مجدد از تک تک قطعات کد برنامه؛
  • نمایش طرحواره های مفهومی و فیزیکی پایگاه های داده.

        هم تحلیلگران سیستم و هم معماران و برنامه نویسان در توسعه نمودارهای کامپوننت مشارکت دارند. نمودار مؤلفه یک انتقال ثابت از نمایش منطقی به اجرای خاص پروژه را در قالب کد برنامه ارائه می دهد. برخی از مؤلفه ها فقط در مرحله کامپایل کد برنامه می توانند وجود داشته باشند، برخی دیگر در مرحله اجرای آن. نمودار مؤلفه وابستگی های کلی بین مؤلفه ها را منعکس می کند و دومی را به عنوان طبقه بندی کننده در نظر می گیرد.

        UML از یک اصطلاح خاص برای نشان دادن موجودیت های فیزیکی استفاده می کند - جزء. مؤلفه مجموعه معینی از رابط ها را پیاده سازی می کند و به عنوان یک تعیین کلی از عناصر نمایش فیزیکی مدل عمل می کند. برای نمایش گرافیکی مولفه، از نماد خاصی استفاده می شود - یک مستطیل با دو مستطیل کوچکتر در سمت چپ قرار داده شده است. داخل مستطیل بزرگ نام جزء و در صورت لزوم مقداری اطلاعات اضافی وجود دارد. ممکن است تصویر این نماد بسته به ماهیت اطلاعات مرتبط با جزء کمی متفاوت باشد.

نمودار استقرار

        این نوع نمودار برای تجزیه و تحلیل سخت افزار سیستم، یعنی سخت افزار، نه نرم افزار طراحی شده است. در ترجمه مستقیم از انگلیسی، Deployment به معنای "استقرار" است، اما اصطلاح "توپولوژی" با دقت بیشتری ماهیت این نوع نمودار را منعکس می کند.


شکل - 5. نمودار استقرار

        نمایش فیزیکی یک سیستم نرم افزاری نمی تواند کامل باشد اگر اطلاعاتی در مورد اینکه چه پلتفرمی و به چه معنی محاسباتی پیاده سازی شده است وجود نداشته باشد. اگر برنامه ای در حال توسعه است که به صورت محلی بر روی رایانه کاربر اجرا می شود و از دستگاه ها و منابع جانبی استفاده نمی کند، دیگر نیازی به توسعه نمودارهای اضافی نیست. هنگام توسعه برنامه های کاربردی شرکتی، وجود چنین نمودارهایی می تواند برای حل مشکلات قرار دادن منطقی اجزاء به منظور استفاده مؤثر از منابع شبکه محاسباتی و ارتباطی توزیع شده، اطمینان از امنیت و موارد دیگر بسیار مفید باشد.

        UML از نمودارهای استقرار برای نمایش پیکربندی و توپولوژی کلی یک سیستم نرم افزاری توزیع شده استفاده می کند.

        نمودار استقرار برای تجسم عناصر و اجزای برنامه که فقط در مرحله اجرا وجود دارند طراحی شده است. در این مورد، فقط اجزای نمونه برنامه که فایل های اجرایی یا کتابخانه های پویا هستند ارائه می شوند. اجزایی که در زمان اجرا استفاده نمی شوند در نمودار استقرار نشان داده نشده اند. بنابراین، اجزای دارای کد منبع برنامه فقط می توانند در نمودار مؤلفه وجود داشته باشند. آنها در نمودار استقرار نشان داده نشده اند.

        یک نمودار استقرار شامل نمایش گرافیکی پردازنده‌ها، دستگاه‌ها، فرآیندها و روابط آنهاست. برخلاف نمودارهای نمایش منطقی، نمودار استقرار برای کل سیستم یکسان است، زیرا باید به طور کامل ویژگی های پیاده سازی آن را منعکس کند. توسعه یک نمودار استقرار معمولاً آخرین مرحله در مشخصات یک مدل سیستم نرم افزاری است.

        هنگام طراحی یک نمودار استقرار، اهداف عبارتند از:

  • تعیین توزیع اجزای سیستم بر روی گره های فیزیکی آن؛
  • نشان دادن اتصالات فیزیکی بین تمام گره های اجرای سیستم در مرحله اجرای آن؛
  • شناسایی تنگناهای سیستم و پیکربندی مجدد توپولوژی آن برای دستیابی به عملکرد مورد نیاز.

        نمودارهای استقرار به طور مشترک توسط تحلیلگران سیستم، مهندسان شبکه و مهندسان سیستم توسعه داده می شوند.

ویژگی های رابط دسکتاپ Rational Rose

        ابزار Rational Rose CASE استانداردهای عمومی پذیرفته شده را برای رابط عملیاتی برنامه، شبیه به محیط های برنامه نویسی بصری معروف، پیاده سازی می کند. پس از نصب Rational Rose بر روی رایانه کاربر، که تقریباً هیچ مشکلی را حتی برای مبتدیان ایجاد نمی کند، اجرای این برنامه در MS Windows 95/98 منجر به ظاهر شدن یک رابط کار بر روی صفحه می شود (شکل 6).


شکل - 6.نمای کلی رابط کاربری برنامه Rational Rose

        رابط کاری Rational Rose از عناصر مختلفی تشکیل شده است که مهمترین آنها عبارتند از:

  • منوی اصلی برنامه
  • پنجره نمودار
  • پنجره مستندات
  • پنجره مرورگر
  • پنجره ورود

اجازه دهید به طور خلاصه به هدف و کارکردهای اصلی هر یک از این عناصر بپردازیم.

منوی اصلی برنامه

منوی اصلی برنامه در استاندارد عمومی پذیرفته شده ساخته شده و دارای فرم زیر است (شکل 7).

آیتم های منوی جداگانه، که هدف آنها از نام آنها مشخص است، عملیات مشابه مربوط به کل پروژه را به عنوان یک کل ترکیب می کنند. برخی از آیتم های منو شامل عملکردهای شناخته شده ای هستند (باز کردن پروژه، چاپ نمودارها، کپی کردن در کلیپ بورد و چسباندن عناصر مختلف نمودار از کلیپ بورد). برخی دیگر آنقدر خاص هستند که ممکن است به تلاش بیشتری برای یادگیری نیاز داشته باشند (گزینه هایی برای تولید کد برنامه، بررسی سازگاری مدل ها، اتصال ماژول های اضافی).

شکل - 7.ظاهر منوی اصلی برنامه

نوار ابزار استاندارد

نوار ابزار استاندارد در زیر منوی اصلی برنامه قرار دارد و به شکل زیر است (شکل 8). برخی از ابزارها در دسترس نیستند (پروژه جدید هیچ موردی ندارد). نوار ابزار استاندارد دسترسی سریع به دستورات منو را که اغلب توسط توسعه دهندگان استفاده می شود، فراهم می کند.

شکل 8.ظاهر نوار ابزار استاندارد

کاربر می تواند به صلاحدید خود ظاهر این پنل را سفارشی کند. برای انجام این کار، آیتم منو Tools -> Options (Tools -> Options) را انتخاب کنید و برگه Toolbars (Toolbars) را باز کنید. به این ترتیب می توانید دکمه های ابزار مختلف را نشان داده یا مخفی کنید و همچنین اندازه آنها را تغییر دهید.

پنجره مرورگر

پنجره پیش فرض مرورگر در سمت چپ رابط کار در زیر نوار ابزار استاندارد قرار دارد (شکل 9).

مرورگر نماهای مدل را در یک ساختار سلسله مراتبی سازماندهی می کند که پیمایش و یافتن هر عنصر مدل را در پروژه آسان تر می کند. در این حالت، هر عنصری که توسعه دهنده به مدل اضافه می کند، بلافاصله در پنجره مرورگر نمایش داده می شود. بر این اساس، با انتخاب یک عنصر در پنجره مرورگر، می توانیم آن را در پنجره نمودار تجسم کنیم یا مشخصات آن را تغییر دهیم. مرورگر همچنین به شما امکان می دهد عناصر مدل را در بسته ها سازماندهی کنید و عناصر را بین نماهای مختلف مدل منتقل کنید. در صورت تمایل، پنجره مرورگر را می توان با استفاده از آیتم منو View (View) در مکان دیگری از رابط کاری قرار داد، یا به طور کلی پنهان کرد. همچنین می توانید اندازه مرورگر را با کشیدن حاشیه قاب بیرونی آن با ماوس تغییر دهید.

شکل - 9.ظاهر مرورگر

نوار ابزار ویژه

یک نوار ابزار ویژه بین پنجره مرورگر و پنجره نمودار در قسمت میانی رابط کاری قرار دارد. به طور پیش فرض، یک نوار ابزار برای ساخت یک نمودار کلاس مدل ارائه می شود (شکل 10).

شکل - 10.ظاهر یک نوار ابزار ویژه برای نمودار کلاس

با حرکت دادن قاب نوار ابزار به محل مورد نظر می توانید مکان نوار ابزار سفارشی را تغییر دهید. همچنین می‌توانید ترکیب پانل را با افزودن یا حذف دکمه‌های جداگانه مربوط به ابزارهای خاص سفارشی کنید. تخصیص دکمه‌ها را می‌توان در راهنمایی‌های ابزاری که پس از قرار دادن نشانگر ماوس روی دکمه مربوطه ظاهر می‌شوند، یافت.

پنجره نمودار

پنجره نمودار، منطقه کاری اصلی رابط آن است که در آن نمایش های مختلفی از مدل پروژه تجسم می شود. به طور پیش فرض، پنجره نمودار در سمت راست رابط کار قرار دارد، اما مکان و اندازه آن نیز قابل تغییر است. هنگام توسعه یک پروژه جدید، اگر از ویزارد پروژه استفاده نشده باشد، پنجره نمودار یک ناحیه خالی است که حاوی هیچ عنصر مدل نیست (شکل 11).

نام نموداری که در این پنجره قرار دارد در نوار عنوان برنامه (بالاترین خط برنامه) یا اگر پنجره به حالت تمام صفحه حداکثر نشده است، در نوار عنوان پنجره نمودار نشان داده شده است. چندین نمودار می تواند همزمان در پنجره نمودار وجود داشته باشد، اما تنها یکی از آنها می تواند فعال باشد. به عنوان مثال، در شکل. 11 نمودار استقرار، نمودار فعال است، اگرچه نمودارهای دیگری نیز وجود دارد. جابجایی بین نمودارها را می توان با انتخاب نمای مورد نظر در نوار ابزار استاندارد یا از طریق آیتم منو Window (Window) انجام داد. هنگامی که یک نمای نمودار فردی فعال می شود، ظاهر یک نوار ابزار خاص تغییر می کند که برای یک نمای نمودار خاص سفارشی شده است.


شکل - 11.ظاهر پنجره نمودار با نماهای مختلف از مدل

پنجره مستندات

پنجره اسناد پیش فرض ممکن است روی صفحه نمایش وجود نداشته باشد. در این حالت، می توان آن را از طریق آیتم منو View -> Documentation (View-> Documentation) فعال کرد، پس از آن در زیر مرورگر ظاهر می شود (شکل 12).

پنجره مستندات همانطور که از نامش پیداست برای مستندسازی عناصر نمای مدل در نظر گرفته شده است. این می تواند انواع اطلاعات را ضبط کند، و آنچه مهم است - به زبان روسی. این اطلاعات متعاقباً به نظرات تبدیل می شوند و به هیچ وجه بر منطق اجرای کد برنامه تأثیر نمی گذارند.

پنجره مستندسازی اطلاعات مربوط به یک عنصر انتخاب شده از نمودار را فعال می کند. در این حالت، می توانید یک عنصر را در پنجره مرورگر یا در پنجره نمودار انتخاب کنید. هنگامی که یک عنصر جدید به نمودار اضافه می شود (مثلاً یک کلاس)، مستندات مربوط به آن به طور خودکار ایجاد می شود که خالی است (بدون مستندات). متعاقباً ، توسعه دهنده به طور مستقل اطلاعات توضیحی لازم را وارد می کند که در طول کار روی پروژه به خاطر سپرده می شود و می توان آن را تغییر داد.

درست مانند سایر پنجره های رابط کاری، می توانید اندازه و موقعیت پنجره اسناد را تغییر دهید.

شکل - 12.ظاهر پنجره اسناد

پنجره ورود

پنجره log (Log) برای ضبط خودکار اطلاعات خدمات مختلف تولید شده در حین کار با برنامه در نظر گرفته شده است. گزارش زمان و ماهیت اقدامات انجام شده توسط توسعه دهنده را ثبت می کند، مانند به روز رسانی مدل، سفارشی کردن منوها و نوار ابزار، و همچنین پیام های خطایی که در طول تولید کد رخ می دهد.

پنجره گزارش همیشه در رابط کاری در ناحیه پنجره نمودار وجود دارد (شکل 13). با این حال، ممکن است توسط پنجره های نمودار دیگر پنهان شود یا به حداقل برسد. شما می توانید پنجره گزارش را از طریق منوی Window-> Log (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 در رز گویا" سرگئی تروفیموف
  14. "تحلیل و طراحی. مدلسازی بصری (UML) Rational Rose" Konstantin Domolego
  15. کتابخانه گنادی ورنیکوف. توضیحات کامل استانداردهای طراحی و مدلسازی.
  16. "نمونه ای از توصیف حوزه موضوعی با استفاده از UML در توسعه سیستم های نرم افزاری" E.B. زولوتوخینا، R.V. آلفیموف. این مقاله یک رویکرد ممکن برای مدل‌سازی دامنه را بر اساس استفاده از زبان مدل‌سازی یکپارچه (UML) با استفاده از یک مثال خاص نشان می‌دهد.

       

نشان دادن رفتار یک شی در طول عمر آن، از ایجاد شیء تا نابودی آن. هر نمودار وضعیت نشان دهنده مقداری خودکار است.

برنامه عملیاتی

در بخش توضیحات، با مجموعه کاراکترهای نمودار حالت اولیه مورد نیاز برای خواندن نمودارها آشنا شوید.

پس از خواندن سایر بخش ها ("مثال"، "استفاده")، می توانید دست خود را در ایجاد نمودارهای حالت به تنهایی امتحان کنید.

یادداشت ها (توضیحات)

در اینجا مجموعه شخصیت های اصلی است نمودارهای حالتبرای خواندن نمودار لازم است. پس از خواندن سایر بخش ها («مثال»، «کاربرد»)، قادر به نوشتن خواهید بود نمودارهای حالتبدون کمک دیگری!

مدت، اصطلاح تصویر شرح
شبه دولت اولیه وضعیت اولیه سیستم
انتقال انتقال یعنی حرکت از حالتی به حالت دیگر.
دولت نشان دهنده اقدامات انجام شده توسط سیستم (ممکن است شامل گزینه های احتمالی باشد) که منجر به نتایج مشاهده شده توسط بازیگران می شود.
دولت
وضعیت فعالیت
یک مرحله دشوار در یک مورد استفاده را می توان با استفاده دیگر نشان داد.
در اصطلاح UML، می گوییم که مورد استفاده اول شامل مورد دوم نیز می شود.
وضعیت نهایی به شما امکان می دهد مرزهای سیستم ها یا زیرسیستم ها را مشخص کنید.
فعالیت های داخلی حالتی که در آن حالت ها می توانند بدون انجام انتقال به رویدادها پاسخ دهند، در این صورت رویداد، نگهبان و فعالیت در داخل مستطیل حالت قرار می گیرند.
فعالیت ورودی فعالیت ورودی هر زمان که وارد وضعیت شوید اجرا می شود
فعالیت خروجی فعالیت خروج - هر زمان که ایالت را ترک کنید اجرا می شود.
ابر دولت
اغلب اتفاق می افتد که چندین دولت دارای انتقال و فعالیت های داخلی مشترک هستند. در چنین مواردی، می توانید آنها را به حالت های فرعی (Substate) تبدیل کنید و رفتار کلی را به یک ابر دولت (ابر دولت) منتقل کنید.
کشورهای موازی
حالت ها را می توان به چندین حالت همزمان تقسیم کرد که همزمان اجرا می شوند.

چگونه از تکنیک خلاقیت استفاده کنیم

نمودارهای حالت UML برای توصیف رفتار یک شی واحد در موارد استفاده چندگانه خوب هستند. اما آنها برای توصیف رفتاری که با تعامل بسیاری از اشیاء مشخص می شود بسیار مناسب نیستند. بنابراین، منطقی است که از سایر فناوری ها در ارتباط با نمودارهای حالت استفاده کنیم. به عنوان مثال، نمودارهای تعامل (فصل 4) در توصیف رفتار چندین شی در یک مورد استفاده عالی هستند، در حالی که نمودارهای فعالیت UML برای نشان دادن توالی اصلی اعمال چندین شی در چندین مورد استفاده خوب هستند.

همه نمودارهای حالت را طبیعی نمی دانند. مراقب نحوه کار کارشناسان با آنها باشید. این امکان وجود دارد که اعضای تیم شما فکر نمی کنند که نمودارهای حالت برای روش کار آنها مناسب است. این بزرگترین مشکل نیست. شما باید به یاد داشته باشید که روش های مختلف کار را به اشتراک بگذارید.

اگر از نمودارهای وضعیتی استفاده می کنید، سعی نکنید آنها را برای هر کلاس در سیستم ترسیم کنید. این رویکرد اغلب به خاطر کامل بودن کاملاً دقیق استفاده می شود، اما تقریباً همیشه هدر دادن تلاش است. از نمودارهای حالت فقط برای کلاس هایی استفاده کنید که رفتار جالبی از خود نشان می دهند، جایی که رسم نمودار وضعیت به شما کمک می کند تا بفهمید اوضاع چگونه پیش می رود.

بسیاری از کارشناسان معتقدند که ویرایشگر و اشیاء کنترلی رابط کاربری زمانی که با نمودار وضعیت نمایش داده می شوند عملکرد مفیدی دارند.

چگونه یاد بگیریم

در اینجا سعی شده است ساده ترین راه برای یادگیری ارائه شود نمودارهای وضعیت UML.

مانند بسیاری از زبان های دیگر، از مجموعه ای از کاراکترها برای توصیف استفاده می کند. معنی این نمادها را می توان در جدول در قسمت "یادداشت ها (توضیحات)" مشاهده کرد. هر علامت نام (اصطلاح) و املای خود را دارد. همچنین، هر اصطلاح با توضیح مختصری برای درک سریع ماهیت اصلی آن ارائه شده است.

در مرحله بعد، توصیه می کنیم به بخش "نمونه ها" بروید نمودارهای حالتتا دست خود را در خواندن نمودارهای مختلف امتحان کنید. سپس باید بخش "استفاده" را مطالعه کنید، زیرا اگرچه تعداد انواع نمودارها در UML کم است، اما تنها در صورت استفاده از نمودارهای مناسب برای هدف مورد نظر می توانید حداکثر سود را از استفاده از آنها ببرید.

مثال استفاده

نمودارهای ماشین حالتیک تکنیک شناخته شده برای توصیف رفتار یک سیستم است. نمودارهای حالت به هر شکلی از دهه 1960 وجود داشته است، و در روزهای اولیه برنامه نویسی شی گرا، برای نمایش رفتار یک سیستم استفاده می شد. در رویکردهای شی گرا، شما یک نمودار حالت از یک کلاس را ترسیم می کنید تا رفتار یک شی منفرد را در طول عمر آن نشان دهید.

هرگاه در مورد ماشین‌های حالت محدود نوشته می‌شود، سیستم‌های کنترل کروز یا ماشین‌های فروش خودکار به‌طور اجتناب‌ناپذیر به عنوان مثال ذکر می‌شوند.
تصمیم گرفتیم از کنترلر کنترل پنل مخفی در قلعه گوتیک استفاده کنیم. در این قلعه می خواهیم گنج های خود را پنهان کنیم تا به سختی پیدا شوند. برای دسترسی به قفل گاوصندوق، باید یک شمع استراتژیک از شمعدان بیرون بیاوریم، اما قفل فقط در صورت بسته بودن در ظاهر می شود. بعد از ظاهر شدن قفل، می توانیم کلید را داخل آن قرار داده و گاوصندوق را باز کنیم. برای امنیت بیشتر، ما آن را طوری ساخته‌ایم که گاوصندوق را فقط پس از برداشتن شمع می‌توان باز کرد. اگر دزد به این احتیاط توجه نکند، هیولای شنیع را آزاد می کنیم که دزد را می بلعد.

روی انجیر 10.1 نشان داده شده است نمودار حالتکلاس کنترلی که سیستم امنیتی غیرمعمول من را مدیریت می کند. نمودار حالت با وضعیت شی کنترلر در حال ایجاد شروع می شود: حالات صبر کن. این در نمودار با نشان داده شده است شبه دولت اولیه، که یک حالت نیست، اما دارای یک فلش است که به حالت اولیه اشاره می کند.
نمودار نشان می دهد که کنترل کننده می تواند در یکی از سه حالت باشد: صبر کنید (در انتظار)، قفل (قفل) و باز (باز). این نمودار همچنین قوانینی را نشان می دهد که بر اساس آن کنترل کننده از یک حالت به حالت دیگر منتقل می شود. این قوانین به عنوان انتقال - خطوط اتصال حالت ها نشان داده می شوند.

انتقال یعنی حرکت از حالتی به حالت دیگر. هر انتقال دارای برچسب مخصوص به خود است که از سه بخش تشکیل شده است:
trigger-identifier [محافظت]/فعالیت (trigger-signature /activity). همه آنها اختیاری هستند. معمولا، trigger-idتنها رویدادی است که می تواند باعث تغییر حالت شود.

نگهبان، اگر مشخص شود، شرط منطقی است که باید برای انتقال انجام شود. فعالیت برخی از رفتارهای سیستم در طول انتقال است. این می تواند هر نوع بیان رفتاری باشد. شکل کامل یک ماشه شناسه می‌تواند شامل چندین رویداد و پارامتر باشد. انتقال از حالت انتظار (شکل 10.1) به حالت دیگر را می توان به صورت "در حالت انتظار، اگر شمع برداشته شود، یک قفل می بینید و به حالت قفل می روید."

هر سه بخش از توضیحات انتقال اختیاری هستند. رد شدن از فعالیت به این معنی است که در طول انتقال هیچ اتفاقی نمی افتد. Skip guards به این معنی است که در صورت وقوع رویداد محرک، انتقال همیشه اجرا می شود. شناسه ماشه به ندرت گم می شود، اما این اتفاق می افتد. این بدان معنی است که انتقال بلافاصله رخ می دهد، که عمدتاً در حالت های فعال قابل مشاهده است.

هنگامی که یک رویداد در یک حالت خاص رخ می دهد، تنها یک انتقال می تواند از این حالت انجام شود، برای مثال، در حالت قفل (شکل 10.1)، حفاظت ها باید متقابلاً منحصر به فرد باشند. اگر رویدادی رخ دهد و هیچ انتقال مجاز وجود نداشته باشد - برای مثال، بستن گاوصندوق در حالت انتظار، یا برداشتن شمع در حالی که در باز است - رویداد نادیده گرفته می‌شود.

وضعیت نهایی ( حالت نهایی) به این معنی است که ماشین حالت به پایان رسیده است که باعث می شود شی کنترلر حذف شود. بنابراین، برای کسانی از شما که به اندازه کافی مراقب نبودند که به دام بیفتند، چون شی کنترلر وجود ندارد، ما مجبور هستیم خرگوش را دوباره در قفسش بگذاریم، کف را تمیز کنیم و سیستم را دوباره راه اندازی کنیم.

به یاد داشته باشید که ماشین های حالت فقط می توانند اشیایی را نشان دهند که مستقیماً مشاهده می شوند یا روی آنها عمل می شود. بنابراین، در حالی که ممکن است انتظار داشته باشید وقتی در باز است، چیزی را داخل گاوصندوق بگذاریم یا چیزی را بیرون بیاوریم، ما آن را روی نمودار علامت گذاری نکردیم زیرا کنترلر نمی تواند چیزی در مورد آن به ما بگوید.

هنگامی که توسعه دهندگان در مورد اشیا صحبت می کنند، اغلب به وضعیت اشیا اشاره می کنند، به این معنی که ترکیبی از تمام داده های موجود در فیلدهای شی است. با این حال، حالت در نمودار ماشین حالت یک مفهوم انتزاعی تر از حالت است. نکته این است که حالت های مختلف متضمن روش های متفاوتی برای واکنش به رویدادها هستند.

فعالیت های داخلی در نمودار حالت

دولت ها می توانند بدون استفاده از انتقال به رویدادها پاسخ دهند فعالیت های داخلی (فعالیت های داخلی)، در این صورت رویداد، نگهبان و فعالیت در داخل مستطیل حالت قرار می گیرند.

روی انجیر شکل 10.2 وضعیت فعالیت های نماد داخلی و رویدادهای کمکی سیستم را نشان می دهد که می توانید در قسمت های متنی ویرایشگر مشاهده کنید. UI. یک فعالیت درونی مانند یک خود گذار است - انتقالی که به همان حالت باز می گردد. نحو فعالیت های داخلی بر اساس همان طرح منطقی رویدادها، حفاظت ها و رویه ها ساخته شده است.

روی انجیر 10.2 همچنین فعالیت های ویژه را نشان می دهد: فعالیت های ورودی و خروجی. فعالیت ورودیهر زمان که وارد وضعیت شوید اجرا می شود. فعالیت خروجی- هر زمان که ایالت را ترک کردید. با این حال، فعالیت های داخلی آغاز نمی شود فعالیت ورودی و خروجی; این تفاوت بین فعالیت های داخلی وخود انتقالی ها .

وضعیت فعالیت در نمودار وضعیت

در حالت هایی که تاکنون توضیح دادیم، شی ساکت است و قبل از انجام هر کاری منتظر رویداد بعدی است. با این حال، حالت هایی ممکن است که در آنها شیء فعالیتی از خود نشان می دهد.

دولت جستجوکردندر شکل 10.3 چنین حالتی است وضعیت فعالیت: فعالیت در حال انجام با نماد نشان داده می شود انجام دادن/; از این رو اصطلاح انجام فعالیت (فعال باش). پس از تکمیل جستجو، انتقال بدون فعالیت انجام می شود، مانند نمایش تجهیزات جدید (نمایش سخت افزار جدید). اگر یک رویداد لغو در طول فعالیت رخ دهد ( لغو)، سپس انجام فعالیتبه سادگی قطع می شود و ما به حالت برمی گردیم به روز رسانی پنجره سخت افزار.

هم انجام فعالیت ها و هم فعالیت های عادی نشان دهنده تجلی برخی رفتارها هستند. تفاوت اساسی بین این دو این است که فعالیت‌های عادی "فورا" اتفاق می‌افتند و نمی‌توان آنها را با رویدادهای عادی قطع کرد، در حالی که فعالیت‌های do می‌توانند برای مدت محدودی اجرا شوند و می‌توانند قطع شوند، همانطور که در شکل 2 نشان داده شده است. 10.3. لحظه ای بودن برای سیستم های مختلف متفاوت تفسیر می شود. برای سیستم‌های بلادرنگ، این می‌تواند چندین دستورالعمل ماشین طول بکشد، و برای نرم‌افزار دسکتاپ، ممکن است چندین ثانیه طول بکشد.

AT UML 1فعالیت های معمولی با این اصطلاح مشخص می شد عمل(عمل) و اصطلاح فعالیت(فعالیت) فقط برای استفاده شد انجام فعالیت ها.

ابر دولت ها

اغلب اتفاق می افتد که چندین دولت دارای انتقال و فعالیت های داخلی مشترک هستند. در چنین مواردی، می‌توانید آن‌ها را به حالت‌های فرعی تبدیل کنید و رفتار کلی را به یک ابرحالت (ابر حالت) منتقل کنید، همانطور که در شکل نشان داده شده است. 10.4. بدون ابردولت، ما باید انتقال را ترسیم کنیم لغو(لغو) برای هر سه ایالت در یک ایالت جزئیات اتصال را وارد کنید.

کشورهای موازی

حالت ها را می توان به چندین حالت همزمان تقسیم کرد که همزمان اجرا می شوند. روی انجیر شکل 10.5 یک ساعت زنگ دار ساده را نشان می دهد که می تواند سی دی یا رادیو را روشن کند و زمان فعلی یا زمان سیگنال را نشان دهد.

گزینه های CD/رادیو و زمان فعلی/زمان زنگ هشدار موازی هستند. اگر می‌خواهید این را با یک نمودار حالت غیر موازی نشان دهید، در نهایت با یک نمودار درهم و برهم مواجه می‌شوید زیرا حالت‌ها باید اضافه شوند. تقسیم این دو رفتار به دو نمودار حالت، آن را بسیار واضح تر می کند.

برنج. 10.5 نیز شامل می شود حالت پیش از تاریخ(دولت کاذب تاریخی). این بدان معناست که وقتی ساعت روشن می شود، گزینه رادیو/CD به حالتی تغییر می کند که ساعت در زمان خاموش شدن در آن قرار داشت. پیکانی که از تاریخ بیرون می‌آید نشان می‌دهد که کدام دولت در ابتدا وجود داشته است، زمانی که تاریخ وجود نداشته است.

اجرای نمودارهای وضعیتی

نمودار حالت را می توان به سه روش اصلی پیاده سازی کرد: با استفاده از دستور سوئیچ تودرتو، الگوی حالت و جدول وضعیت. مستقیم ترین رویکرد برای کار با نمودارهای حالت، عبارت سوئیچ تودرتو است، مانند آنچه در شکل 1 است. 10.6.

اگرچه این روش ساده است، اما حتی برای این مورد ساده بسیار طولانی است. علاوه بر این، با این رویکرد از دست دادن کنترل بسیار آسان است، بنابراین استفاده از آن را حتی در شرایط ابتدایی توصیه نمی کنیم.
الگوی State نشان دهنده سلسله مراتبی از کلاس های حالت برای مدیریت رفتار حالت است. هر ایالت در نمودار حالت دارای زیر کلاس حالت خاص خود است. کنترل کننده برای هر رویداد متدهایی دارد که به سادگی به کلاس state هدایت می شوند. نمودار وضعیت نشان داده شده در شکل. 10.1 را می توان با استفاده از کلاس های نشان داده شده در شکل پیاده سازی کرد. 10.7.

بالای سلسله مراتب یک کلاس انتزاعی است که شامل توصیفی از تمام متدهایی است که رویدادها را مدیریت می کنند، اما هیچ پیاده سازی ندارند.
برای هر حالت خاص، کافی است روش کنترل کننده یک رویداد خاص که انتقال از حالت را آغاز می کند، بازنویسی کنید.
جدول حالت، نمودار حالت را به عنوان داده نشان می دهد.

بنابراین، نمودار در شکل. 10.1 را می توان در قالب یک جدول ارائه کرد. 10.1.
سپس یک مفسر می سازیم که از جدول حالت در حین اجرای برنامه استفاده می کند، یا یک تولید کننده کد که کلاس هایی را بر اساس این جدول تولید می کند.

بدیهی است که بیشتر کار روی جدول حالت یک بار انجام می شود، اما پس از آن می توان هر زمان که برای حل یک مشکل مربوط به حالت نیاز داشتید از آن استفاده کرد. جدول حالت زمان اجرا را می توان بدون کامپایل مجدد تغییر داد که تا حدودی راحت است. قالب حالت ساده‌تر جمع‌آوری می‌شود، و اگرچه هر حالت به یک کلاس جداگانه نیاز دارد، مقدار کدی که باید نوشته شود بسیار کم است.

پیاده سازی های ارائه شده تقریباً حداقل هستند، اما ایده ای از نحوه اعمال می کنند نمودارهای حالت. در هر مورد، پیاده‌سازی مدل‌های حالت منجر به یک برنامه نسبتاً کلیشه‌ای می‌شود، بنابراین معمولاً بهتر است از نوعی تولید کد برای این کار استفاده کنید.

با عضویت در اخبار سایت می توانید فرم اشتراک را در ستون سمت راست سایت پیدا کنید.

اگر می خواهید به صورت حرفه ای فریلنسری را بیاموزید، شما را به دوره "" دعوت می کنیم.

UML یک زبان مدل سازی گرافیکی یکپارچه برای توصیف، تجسم، طراحی و مستندسازی سیستم های OO است. UML برای پشتیبانی از فرآیند مدل‌سازی PS بر اساس رویکرد OO، سازمان‌دهی رابطه بین مفاهیم مفهومی و برنامه، و منعکس‌کننده مشکلات مقیاس‌گذاری سیستم‌های پیچیده طراحی شده است. مدل های UML در تمام مراحل چرخه عمر نرم افزار، از تجزیه و تحلیل کسب و کار گرفته تا تعمیر و نگهداری سیستم، استفاده می شوند. سازمان‌های مختلف بسته به حوزه‌های مشکل‌شان و فناوری‌های مورد استفاده، می‌توانند از UML به روش خود استفاده کنند.

تاریخچه مختصری از UML

در اواسط دهه 1990، چندین ده روش مدلسازی OO توسط نویسندگان مختلف پیشنهاد شد که هر کدام از نمادهای گرافیکی خود استفاده می کردند. در عین حال، هر یک از این روش ها نقاط قوت خود را داشت، اما اجازه ساخت یک مدل PS به اندازه کافی کامل را نمی داد تا آن را "از همه طرف" نشان دهد، یعنی تمام پیش بینی های لازم را (به مقاله 1 مراجعه کنید). علاوه بر این، فقدان استاندارد مدل سازی OO، انتخاب مناسب ترین روش را برای توسعه دهندگان دشوار می کرد، که مانع از استفاده گسترده از رویکرد OO برای توسعه نرم افزار شد.

به درخواست گروه مدیریت شی (OMG) - سازمانی که مسئول پذیرش استانداردها در زمینه فناوری های شی و پایگاه داده است، مشکل فوری یکسان سازی و استانداردسازی توسط نویسندگان سه روش محبوب OO - G. Booch حل شد. ، D. Rambo و A. Jacobson که تلاش ها را ترکیب کردند UML نسخه 1.1 را ایجاد کردند که توسط OMG در سال 1997 به عنوان یک استاندارد تأیید شد.

UML یک زبان است

هر زبانی از یک فرهنگ لغت و قوانینی برای ترکیب کلمات برای ساختن ساختارهای معنادار تشکیل شده است. بنابراین، به طور خاص، زبان های برنامه نویسی مرتب شده اند، مانند UML. ویژگی بارز آن این است که واژگان زبان توسط عناصر گرافیکی شکل می گیرد. هر نماد گرافیکی معنای خاصی دارد، بنابراین یک مدل ایجاد شده توسط یک توسعه‌دهنده می‌تواند توسط دیگری و همچنین توسط ابزاری که UML را تفسیر می‌کند، بدون ابهام درک کند. از این، به ویژه، نتیجه می شود که یک مدل PS ارائه شده در UML می تواند به طور خودکار به یک زبان برنامه نویسی OO (مانند Java، C ++، VisualBasic) ترجمه شود، یعنی با یک ابزار مدل سازی بصری خوب که از UML پشتیبانی می کند، توسط با ساخت یک مدل، کد برنامه مربوط به این مدل را نیز خالی خواهیم داشت.

باید تاکید کرد که UML یک زبان است نه یک روش. توضیح می‌دهد که از چه عناصری باید مدل‌ها را ایجاد کرد و چگونه آنها را خواند، اما در مورد اینکه کدام مدل‌ها و در چه مواردی باید توسعه یابند چیزی نمی‌گوید. برای ایجاد یک روش مبتنی بر UML، لازم است آن را با شرحی از فرآیند توسعه PS تکمیل کنید. نمونه ای از چنین فرآیندی فرآیند یکپارچه منطقی است که در مقالات بعدی مورد بحث قرار خواهد گرفت.

واژگان UML

مدل در قالب موجودیت ها و روابط بین آنها نشان داده شده است که در نمودارها نشان داده شده است.

اسانس هاانتزاعاتی هستند که عناصر اصلی مدل ها هستند. چهار نوع موجودیت وجود دارد - ساختاری (کلاس، رابط، جزء، مورد استفاده، همکاری، گره)، رفتاری (تعامل، حالت)، گروه‌بندی (بسته‌ها) و توضیحی (نظر). هر نوع موجودیت نمایش گرافیکی خود را دارد. هنگام مطالعه نمودارها، نهادها به تفصیل مورد بحث قرار خواهند گرفت.

روابطروابط مختلف بین موجودیت ها را نشان می دهد. انواع روابط زیر در UML تعریف شده است:

  • اعتیادچنین رابطه‌ای را بین دو موجود نشان می‌دهد، زمانی که تغییر در یکی از آنها - مستقل - می‌تواند بر معناشناسی دیگری - وابسته تأثیر بگذارد. یک وابستگی با یک فلش نقطه‌دار نشان داده می‌شود که از موجودیت وابسته به موجودیت مستقل اشاره می‌کند.
  • اتحادیهیک رابطه ساختاری است که نشان می دهد اشیاء یک موجود با اشیاء موجودی دیگر مرتبط هستند. از نظر گرافیکی، یک ارتباط به عنوان خطی نشان داده می شود که موجودیت های مرتبط را به هم متصل می کند. انجمن ها برای حرکت بین اشیا استفاده می شوند. برای مثال، ارتباط بین کلاس‌های «سفارش» و «محصول» می‌تواند برای یافتن تمام محصولات مشخص‌شده در یک سفارش خاص - از یک طرف، یا یافتن همه سفارش‌هایی که حاوی این محصول هستند - از سوی دیگر استفاده شود. واضح است که برنامه های مربوطه باید مکانیزمی را اجرا کنند که چنین ناوبری را فراهم کند. اگر پیمایش فقط در یک جهت مورد نیاز باشد، با یک فلش در انتهای ارتباط نشان داده می شود. یک مورد خاص از تداعی تجمع است - رابطه ای به شکل "کل" - "جزء". از نظر گرافیکی، با یک لوزی در انتها در نزدیکی موجودیت-کل برجسته شده است.
  • تعمیمیک رابطه بین یک موجودیت اصلی و یک موجودیت فرزند است. اساساً، این رابطه منعکس کننده خاصیت وراثت برای کلاس ها و اشیا است. تعمیم به صورت خطی نشان داده می شود که با مثلثی که به سمت موجودیت والد اشاره دارد، ختم می شود. کودک ساختار (ویژگی ها) و رفتار (روش) والدین را به ارث می برد، اما در عین حال می تواند دارای عناصر ساختاری جدید و روش های جدید باشد. زمانی که یک موجودیت به بیش از یک موجودیت اصلی مرتبط باشد، UML اجازه ارث بری چندگانه را می دهد.
  • پیاده سازی- رابطه بین موجودی که مشخصات رفتار (رابط) را تعریف می کند با نهادی که اجرای این رفتار را تعریف می کند (کلاس، جزء). این رابطه معمولاً در مدلسازی مولفه استفاده می شود و در مقالات بعدی با جزئیات بیشتر توضیح داده خواهد شد.

نمودارها UML نمودارهای زیر را ارائه می دهد:

  • نمودارهایی که رفتار سیستم را توصیف می کنند:
    • نمودارهای حالت (نمودار حالت)،
    • نمودارهای فعالیت،
    • نمودارهای اشیاء،
    • نمودارهای توالی،
    • نمودارهای همکاری؛
  • نمودارهایی که پیاده سازی فیزیکی سیستم را توصیف می کنند:
    • نمودارهای اجزاء؛
    • نمودارهای استقرار

نمای کنترل مدل بسته ها

قبلاً گفتیم که برای اینکه یک مدل توسط شخص به خوبی درک شود، باید آن را به صورت سلسله مراتبی سازماندهی کرد و تعداد کمی موجودیت در هر سطح از سلسله مراتب باقی ماند. UML شامل ابزاری برای سازماندهی نمایش سلسله مراتبی یک مدل - بسته ها است. هر مدلی شامل مجموعه‌ای از بسته‌ها است که ممکن است شامل کلاس‌ها، موارد استفاده و سایر موجودیت‌ها و نمودارها باشد. یک بسته می تواند شامل بسته های دیگری نیز باشد که به شما امکان می دهد سلسله مراتبی ایجاد کنید. UML نمودارهای بسته جداگانه ارائه نمی دهد، اما ممکن است در نمودارهای دیگر ظاهر شوند. بسته به صورت یک مستطیل با یک زبانه نمایش داده می شود.

آنچه UML ارائه می دهد.

  • توصیف سلسله مراتبی یک سیستم پیچیده با برجسته کردن بسته ها.
  • رسمی کردن الزامات عملکردی برای سیستم با استفاده از دستگاه موارد استفاده؛
  • جزئیات الزامات سیستم با ساختن نمودارهای فعالیت ها و سناریوها؛
  • انتخاب کلاس های داده و ساخت یک مدل داده مفهومی در قالب نمودارهای کلاس.
  • انتخاب کلاس هایی که رابط کاربری را توصیف می کنند و ایجاد یک طرح ناوبری صفحه نمایش.
  • شرح فرآیندهای تعامل اشیاء در اجرای عملکردهای سیستم؛
  • توصیف رفتار اشیاء در قالب نمودارهای فعالیت ها و حالات.
  • شرح اجزای نرم افزار و تعامل آنها از طریق رابط.
  • شرح معماری فیزیکی سیستم

و آخرین…

با وجود تمام جذابیت های UML، استفاده از آن در مدل سازی PS واقعی بدون ابزارهای مدل سازی بصری دشوار خواهد بود. چنین ابزارهایی به شما امکان می دهند نمودارها را به سرعت بر روی صفحه نمایش ارائه دهید، آنها را مستند کنید، کدهای خالی برنامه را در زبان های مختلف برنامه نویسی OO ایجاد کنید و طرحواره های پایگاه داده ایجاد کنید. اکثر آنها شامل امکان مهندسی مجدد کدهای برنامه هستند - بازیابی برخی از پیش بینی های مدل PS با تجزیه و تحلیل خودکار کدهای منبع برنامه ها، که برای اطمینان از مطابقت مدل و کدها و هنگام طراحی سیستم هایی که عملکرد سیستم های قبلی را به ارث می برند بسیار مهم است. .

UML یا Unified Modeling Language یک زبان توصیفی گرافیکی برای مدل‌سازی شی در زمینه توسعه نرم‌افزار است. اما استفاده از UML به فناوری اطلاعات محدود نمی شود، یکی دیگر از حوزه های بزرگ کاربرد عملی UML مدل سازی فرآیند کسب و کار، طراحی سیستم و نقشه برداری از ساختارهای سازمانی است. UML توسعه دهندگان نرم افزار را قادر می سازد تا بر روی قراردادهای گرافیکی برای نمایش مفاهیم مشترک و تمرکز بر طراحی و توسعه به توافق برسند.

مزایای UML

  • UML از نمادهای گرافیکی برای عناصر سیستم در حال مدل‌سازی استفاده می‌کند و نمودارهای UML نسبتاً آسان است.
  • UML با در نظر گرفتن جنبه های مختلف، تقریباً از هر نقطه نظر ممکن، سیستم ها را توصیف می کند.
  • UML شی گرا است: روش های تحلیل و ساخت آن از نظر معنایی به روش های برنامه نویسی مورد استفاده در زبان های OOP مدرن نزدیک است.
  • UML یک استاندارد باز است. این استاندارد از نسخه ای به نسخه دیگر توسعه یافته و تکامل می یابد و مدرن ترین الزامات را برای توصیف سیستم ها برآورده می کند.
  • دارای مکانیزم توسعه ای است که به شما امکان می دهد انواع متن و گرافیک اضافی را معرفی کنید که استفاده از UML را نه تنها در زمینه IT امکان پذیر می کند.

انواع نمودارهای UML

14 نوع نمودار در UML وجود دارد. آنها را می توان به 2 دسته تقسیم کرد:

  • ساختاری، نمایانگر ساختار اطلاعاتی؛
  • رفتاری، نشان دهنده رفتار سیستم و جنبه های مختلف تعاملات است. زیرگونه جداگانه ای از نمودارهای رفتار هستند نمودارهای تعامل.

سلسله مراتب انواع نمودار UML، با یک نمودار کلاس نشان داده شده است

نمودارهای ساختاری

  1. نمودار کلاسیک عنصر کلیدی در مدل سازی شی گرا است. با کمک این نمودار (در واقع، از طریق کلاس ها، آنها ویژگی های, مواد و روش هاو وابستگی بین کلاس ها) مدل دامنه و ساختار سیستم مدل شده را توصیف می کند.
  2. نمودار مؤلفهتقسیم کد برنامه را به بلوک های بزرگ (اجزای ساختاری) نمایش می دهد و نشان می دهد وابستگی هابین آنها. کامپوننت ها می توانند بسته ها، ماژول ها، کتابخانه ها، فایل ها و غیره باشند.
  3. نمودار شییک برش کامل یا جزئی از سیستم شبیه سازی شده را در یک نقطه زمانی معین نشان می دهد. نمونه هایی از کلاس ها (اشیاء)، وضعیت آنها (مقادیر ویژگی فعلی) و روابط بین آنها را نشان می دهد.
  4. نمودار ساختار مرکبساختار داخلی کلاس ها و در صورت امکان تعامل بین عناصر این ساختار را نشان می دهد.
  5. نمودار بستهبسته ها و روابط بین آنها را نشان می دهد. این نوع نمودار برای ساده سازی ساختار مدل (و بر این اساس، کار با آن) از طریق ترکیب عناصر مدل در گروه ها بر اساس معیارهای خاص استفاده می کند.
  6. نمودار استقرارمدل سازی استقرار اجزای نرم افزار ( مصنوعات) در مورد منابع محاسباتی / اجزای سخت افزاری ( گره ها).
  7. نمودار پروفایلمکانیزم توسعه‌پذیری را توصیف می‌کند که به UML اجازه می‌دهد تا با حوزه‌های موضوعی و زمینه‌های مختلف فعالیت سازگار شود.

مثال نمودار کلاس UML

نمودارهای رفتار

  1. نمودار فعالیتاعمال را نشان می دهد ( اقدامات) که برخی از فعالیت ها ( فعالیت). نمودارهای فعالیت برای مدل‌سازی فرآیندهای تجاری، فرآیندهای فناوری، محاسبات سریال و موازی استفاده می‌شوند.
  2. از نمودار موردی استفاده کنید(یا نمودار مورد استفاده) رابطه بین بازیگران (بازیگران) و موارد استفاده از سیستم شبیه سازی شده (قابلیت های آن) را توصیف می کند. هدف اصلی نمودار این است که یک ابزار جهانی برای مشتریان، توسعه دهندگان و کاربران نهایی باشد که با کمک آن می توان به طور مشترک درباره سیستم - قابلیت ها و رفتار آن بحث کرد.
  3. نمودار حالترفتار پویای یک موجود را به تصویر می‌کشد و نشان می‌دهد که این موجودیت بسته به وضعیت فعلی خود، چگونه به رویدادهای مختلف واکنش نشان می‌دهد. در واقع، این یک نمودار حالت از تئوری اتم ها است.
  4. نمودار ارتباطی(در نسخه های قبلی نمودار همکاری) فعل و انفعالات بین اجزای ساختار ترکیبی و نقش های همکاری را نشان می دهد. نمودار به صراحت رابطه بین عناصر (اشیاء) را نشان می دهد.
  5. نمودار توالیبرای تجسم دنباله ای از تعاملات اشیاء استفاده می شود. چرخه زندگی یک شی معین و تعامل بازیگران (بازیگران) در برخی موارد استفاده، دنباله پیام هایی که آنها مبادله می کنند را نشان می دهد.
  6. نمودار نمای کلی تعاملشامل بخشی از نمودار توالی و ساختار جریان کنترل است. به در نظر گرفتن تعامل اشیاء از دیدگاه های مختلف کمک می کند.
  7. نمودار زمان بندی- یک زیرگونه جداگانه از نمودارهای تعامل، متخصص در زمان بندی. از این نوع نمودارها برای مطالعه رفتار اجسام در یک بازه زمانی معین استفاده می شود.
11.1. ساختار زبان مدلسازی یکپارچه

زبان مدلسازی یکپارچه (UML) در حال حاضر استاندارد عملی برای توصیف (مستندسازی) نتایج طراحی و توسعه سیستم های شی گرا است. توسعه UML در سال 1994 توسط Grady Booch و James Rumbaugh در Rational Software آغاز شد. در پاییز 1995، ایوار جاکوبسون به آنها پیوست و در اکتبر همان سال، نسخه اولیه 0.8 Unified Method منتشر شد. از آن زمان، چندین نسخه از مشخصات UML منتشر شده است که دو مورد از آنها دارای وضعیت استاندارد بین المللی هستند:

UML 1.4.2 - "ISO/IEC 19501:2005. فناوری اطلاعات. پردازش توزیع شده باز. زبان مدل سازی یکپارچه (UML). نسخه 1.4.2");

UML 2.4.1 - "ISO / IEC 19505-1: 2012. فناوری اطلاعات. زبان مدل سازی گروه مدیریت شی واحد (OMG UML). بخش 1. زیرساخت" (eng. "فناوری اطلاعات -- گروه مدیریت شیء یکپارچه زبان مدل سازی (OMG) UML) - Part 1: Infrastructure) و "ISO / IEC 19505-2: 2012. فناوری اطلاعات. زبان مدل سازی گروه مدیریت شی واحد (OMG UML). قسمت 2. Superstructure" (eng. "Information Technology - Object Management Group Unified زبان مدلسازی (OMG UML) - قسمت 2: روبنا").

آخرین مشخصات زبان رسمی را می توان در www.omg.org یافت.

ساختار کلی UML در شکل زیر نشان داده شده است.

برنج. 11.1. ساختار UML

11.2. معناشناسی و نحو UML

مفاهیم - بخشی از زبان شناسی که معنای واحدهای یک زبان، در درجه اول کلمات و عبارات آن را مطالعه می کند.

نحو - راه هایی برای اتصال کلمات و اشکال آنها به عبارات و جملات، اتصال جملات به جملات پیچیده، راه هایی برای ایجاد عبارات به عنوان بخشی از متن.

بنابراین، در رابطه با UML، معناشناسی و نحو، سبک ارائه (مدل‌های ساختمانی) را تعیین می‌کند که زبان‌های طبیعی و رسمی را برای نمایش مفاهیم اساسی (عناصر مدل) و مکانیسم‌های گسترش آنها ترکیب می‌کند.

11.3. نماد UML

نشانه گذاری یک تفسیر گرافیکی از معناشناسی برای نمایش بصری آن است.

UML سه تعریف می کند نوع موجودیت :

ساختاری - انتزاعی که بازتابی از یک شی مفهومی یا فیزیکی است.

گروه بندی - عنصری که برای برخی ارتباط معنایی عناصر نمودار استفاده می شود.

توضیحی (تشخیصی) - یک نظر برای یک عنصر نمودار.

جدول زیر شرح مختصری از موجودیت های اصلی مورد استفاده در نمادهای گرافیکی و راه های اصلی نمایش آنها را ارائه می دهد.

جدول 11.1. اسانس ها

نوعی از نام تعیین تعریف (معناشناسی)
ساختاری
(کلاس)
مجموعه ای از اشیاء که ساختار و رفتار مشترکی دارند

(هدف - شی)
انتزاعی از یک موجود واقعی یا خیالی با مرزهای مفهومی، فردیت (هویت)، حالت و رفتار کاملاً مشخص. از نقطه نظر UML، اشیاء نمونه های کلاس هستند (نمونه های موجودیت)

(بازیگر)

مهندس
خدمات مسیر
موجودی خارج از سیستم که با سیستم تعامل دارد و از عملکرد آن برای دستیابی به اهداف خاص یا حل مشکلات خاص استفاده می کند. بنابراین، یک کنشگر منبع یا گیرنده خارجی اطلاعات است.

(مورد استفاده)
شرح اقدامات انجام شده توسط سیستم، که منجر به نتیجه ای می شود که برای بازیگر قابل توجه است

(حالت)
شرح لحظه ای از زندگی یک موجودیت که شرایطی را برآورده می کند، فعالیتی را انجام می دهد یا منتظر وقوع رویدادی است.
مشارکت
(همکاری)
شرح مجموعه ای از نمونه های بازیگران، اشیا و تعامل آنها در فرآیند حل یک مشکل خاص

(جزء)
بخش فیزیکی سیستم (فایل)، از جمله ماژول های سیستم که اجرای مجموعه ای از رابط ها را ارائه می دهد

(رابط)

iCalculation
مجموعه ای از عملیات که یک سرویس (مجموعه خدمات) ارائه شده توسط یک کلاس یا جزء را تعریف می کند

(گره)
بخش فیزیکی سیستم (کامپیوتر، چاپگر و غیره) که منابعی را برای حل یک مشکل فراهم می کند
گروه بندی
(بسته)
مکانیزم کلی برای گروه بندی عناصر
بر خلاف یک جزء، یک بسته یک مفهوم کاملا مفهومی (انتزاعی) است. موارد خاص یک بسته عبارتند از سیستم و مدل

(قطعه)
حوزه تعامل خاص نمونه های کنشگر و شی

(پارتیشن فعالیت)
گروهی از عملیات (حوزه مسئولیت) که توسط یک موجودیت واحد (عملگر، شی، جزء، گره و غیره) انجام می شود.

(منطقه فعالیت غیرقابل وقفه)
گروهی از عملیات که توالی عادی اجرای آنها می تواند در نتیجه یک موقعیت غیرعادی قطع شود.
توضیحی توجه داشته باشید
(اظهار نظر)
نظر عنصر. به عنصر نظر داده شده با خط چین پیوست شده است

برخی منابع، به ویژه [،]، موجودیت های رفتاری را نیز متمایز می کنند فعل و انفعالاتو ماشین های دولتی، اما از نظر منطقی باید آنها را به عنوان نمودار طبقه بندی کرد.

برخی از موجودیت های فوق مطابق با توصیف دقیق آنها در نمودارهای تجزیه دلالت دارند. در نمودار سطح بالا، آنها با یک نماد یا برچسب خاص مشخص شده اند.

جدول زیر هر نوع را توضیح می دهد روابط UML در نمودارها برای نشان دادن روابط بین موجودیت ها استفاده می شود.

جدول 11.3. روابط

نام تعیین تعریف (معناشناسی)
اتحادیه رابطه ای که یک رابطه معنادار بین دو یا چند موجود را توصیف می کند. عمومی ترین نوع رابطه
تجمع یک زیرگروه از یک ارتباط که یک رابطه "جز" - "کل" را توصیف می کند، که در آن "جز" می تواند جدا از "کل" وجود داشته باشد. لوزی از سمت "کل" نشان داده شده است. یک رابطه فقط بین موجودات از همان نوع مشخص می شود
ترکیب بندی زیرگونه ای از تجمع که در آن «قسمت ها» نمی توانند جدا از «کل» وجود داشته باشند. به عنوان یک قاعده، "قطعات" به طور همزمان با "کل" ایجاد و از بین می روند.
وابستگی رابطه ای بین دو نهاد که در آن تغییر در یک موجودیت (مستقل) می تواند بر وضعیت یا رفتار موجودیت دیگر (وابسته) تأثیر بگذارد. یک موجودیت مستقل در کنار فلش نشان داده شده است
تعمیم رابطه بین یک موجود تعمیم یافته (جد، والد) و یک موجود تخصصی (فرزند، دختر). مثلث از سمت والد نشان داده شده است. یک رابطه فقط بین موجودات از همان نوع مشخص می شود
تحقق رابطه بین موجودیت ها که در آن یک موجودیت اقدامی را مشخص می کند که موجودیت دیگر متعهد به انجام آن است. روابط در دو مورد استفاده می شود: بین رابط ها و کلاس ها (یا اجزاء)، بین موارد استفاده و همکاری ها. کنار فلش موجودی را نشان می دهد که عمل را تعریف می کند (رابط یا مورد استفاده)

برای تداعی، تجمیع و ترکیب، می توانید مشخص کنید کثرت (تکثر انگلیسی)، که تعداد کل نمونه های موجودیت های شرکت کننده در رابطه را مشخص می کند. به عنوان یک قاعده، در هر طرف رابطه در نزدیکی موجودیت مربوطه نشان داده می شود. تعدد را می توان به روش های زیر مشخص کرد:

- * - هر تعداد کپی، از جمله هیچ کدام.

عدد صحیح غیر منفی - تعدد به شدت ثابت و برابر با عدد مشخص شده است (به عنوان مثال: 1، 2 یا 5).

محدوده اعداد صحیح غیر منفی "عدد اول.. عدد دوم" (به عنوان مثال: 1..5، 2..10 یا 0..5).

محدوده ای از اعداد از یک مقدار اولیه خاص تا یک "نخستین عدد..*" نهایی دلخواه (به عنوان مثال: 1..*، 5..*، یا 0..*)؛

شمارش اعداد صحیح غیر منفی و محدوده های جدا شده با کاما (به عنوان مثال: 1، 3..5، 10، 15..*).

اگر تعدد مشخص نشده باشد، مقدار آن 1 در نظر گرفته می شود. تعدد نمونه های موجود در وابستگی، تعمیم و اجرا همیشه 1 فرض می شود.

جدول زیر توضیحاتی را ارائه می دهد مکانیسم های گسترش برای اصلاح معنایی موجودیت ها و روابط استفاده می شود. به طور کلی، مکانیسم بسط یک رشته از متن است که در داخل پرانتز یا علامت نقل قول قرار می گیرد.

جدول 11.4. مکانیسم های گسترش

نام تعیین تعریف (معناشناسی)
کلیشه
(کلیشه)
« » عنوانی که معنای عنصر نمادگذاری را مشخص می کند (به عنوان مثال: یک وابستگی با کلیشه "شامل" به عنوان یک رابطه شامل در نظر گرفته می شود، و یک کلاس با کلیشه "مرز" یک کلاس مرزی است)
وضعیت نگهبانی
(شرایط نگهبانی)
شرط بولی (به عنوان مثال: یا [شناسایی انجام شد])
محدودیت
(محدودیت)
{ } قاعده ای که معنای یک عنصر مدل را محدود می کند (به عنوان مثال، (زمان اجرا کمتر از 10 میلی ثانیه))
ارزش مشخص شده
(برچسب ارزش)
{ } یک ویژگی عنصر علامت گذاری جدید یا واجد شرایط (به عنوان مثال: (نسخه = 3.2))

علاوه بر کلیشه هایی که به عنوان رشته ای از متن در علامت نقل قول مشخص شده اند، می توان از کلیشه های گرافیکی در نمودارها استفاده کرد. شکل زیر نمونه هایی از نگاشت استاندارد و کلیشه ای را نشان می دهد.

الف) تعیین استاندارد ب) تعیین استاندارد
با کلیشه متن
ج) کلیشه گرافیکی

برنج. 11.2. نمونه هایی از نقشه برداری کلاس استاندارد و کلیشه ای

نمودار گروه بندی عناصر نشانه گذاری برای نمایش برخی از جنبه های سیستم اطلاعاتی در حال توسعه است. نمودارها معمولاً یک گراف متصل هستند که در آن موجودیت ها رئوس و روابط قوس هستند. در جدول زیر شرح مختصری از نمودارهای UML ارائه شده است.

جدول 11.5. نمودارها

نمودار هدف
با توجه به درجه اجرای فیزیکی با نمایش دینامیک با جنبه نمایش داده شده

(مورد استفاده)
عملکردهای سیستم، تعامل بین بازیگران و عملکردها را نمایش می دهد منطقی ایستا کاربردی

(کلاس)
مجموعه ای از کلاس ها، رابط ها و روابط بین آنها را نمایش می دهد بولی یا
فیزیکی
ایستا اطلاعات عملکردی

(بسته)
مجموعه ای از بسته ها و روابط آنها را نمایش می دهد بولی یا
فیزیکی
ایستا مولفه
رفتار - اخلاق
(رفتار - اخلاق)

(ماشین دولتی)
وضعیت موجودیت و انتقال بین آنها را در طول چرخه عمر خود نشان می دهد منطقی پویا رفتاری

(فعالیت)
نمایش فرآیندهای تجاری در سیستم (توضیح الگوریتم های رفتار)
فعل و انفعالات
(اثر متقابل)

(توالی)
دنباله ای از ارسال پیام بین اشیا و بازیگران را نشان می دهد

(ارتباطات)
شبیه به نمودار توالی، اما تمرکز اصلی بر ساختار تعامل بین اشیاء است
پیاده سازی ها
(پیاده سازی)

(جزء)
اجزای سیستم (برنامه ها، کتابخانه ها، جداول و غیره) و پیوندهای بین آنها را نمایش می دهد فیزیکی ایستا مولفه

(گسترش)
محل قرارگیری اجزاء توسط گره های شبکه و همچنین پیکربندی آن را نمایش می دهد

استاندارد UML 2.x همچنین نمودارهای اضافی و بسیار تخصصی را تعریف می کند:

نمودار شی (نمودار شی) - مشابه است، اما اشیاء به جای کلاس ها نمایش داده می شوند.

نمودار زمان - وضعیت جسم را در طول زمان توصیف می کند.

نمودار ساختار ترکیبی - پورت ها (شامل رابط ها) یک کلاس را برای تعامل با کلاس های دیگر توصیف می کند.

نمودار نمایه (نمودار نمایه) - شبیه به شرح کلاس های موجود در آنها.

نمودار نمای کلی تعامل - مشابه، اما با قطعات تعامل پنهان (قطعه هایی با برچسب ref). این یک زمینه (مفهومی) است که عناصر آن در نمودارهای تجزیه جداگانه مشخص خواهد شد.

به منظور بزرگنمایی نمایش مفهومی معماری داخلی سیستم، بیشتر ساخت و سازها اجازه استفاده از کلیشه های گرافیکی تثبیت شده را برای به اصطلاح می دهد. چنین نموداری 1 نامیده می شود، اما به لیست نمودارهای تعریف شده توسط استاندارد UML تعلق ندارد.

هنگام توسعه یک مدل سیستم جداگانه، انواع مختلفی از نمودارها ساخته می شوند. علاوه بر این، هنگام توسعه یک مدل از یک سیستم پیچیده، به عنوان یک قاعده، چندین نمودار از همان نوع ساخته می شود. در عین حال، در صورت عدم نیاز، نیازی به ایجاد نمای نمودار جداگانه ندارید. به عنوان مثال، نمودارها و قابل تعویض هستند؛ آنها فقط برای اشیاء با رفتار پیچیده ساخته شده اند. جدول زیر توصیه هایی در مورد نیاز به توسعه (تصحیح) نمودارها برای مدل های سیستم ارائه می دهد.

جدول 11.6. پیوند دادن مدل ها و نمودارها

جدول فوق مدل آزمایش را نشان نمی دهد، زیرا در چارچوب ساخت آن، نمودارها توسعه نمی یابند، اما برای کامل بودن و سازگاری بررسی (تست) می شوند.

بخشی از نمودارها پس از ساخت نیاز به توسعه و اصلاح به عنوان بخشی از توسعه مدل بعدی (فرایند تکنولوژیکی) دارند. بنابراین، به عنوان مثال، باید در طول توسعه روشن شود. در مدل ها

4. اصطلاح "" را تعریف کنید.