ScholarGate
دستیار

مدل‌سازی نرم‌افزار و UML

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

یافتن موضوع با PaperMindبه‌زودیFind papers & topics
Tools & resources
دریافت اسلایدها
Learn & explore
ویدیوبه‌زودی

Definition

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

Scope

این موضوع شامل مدل‌های ساختاری مانند نمودارهای کلاس، مؤلفه و استقرار؛ مدل‌های رفتاری مانند نمودارهای مورد کاربرد، توالی، فعالیت و ماشین حالت؛ نقش مدل‌ها در تحلیل، طراحی و ارتباطات؛ مهندسی مدل‌محور و تولید کد؛ و سطح مناسب دقت مدل‌سازی برای یک پروژه معین می‌شود.

Core questions

  • کدام جنبه‌های یک سیستم توسط مدل‌های ساختاری در مقابل مدل‌های رفتاری به تصویر کشیده می‌شوند؟
  • انواع اصلی نمودارهای UML چگونه یک طراحی را نمایش می‌دهند؟
  • چه میزان دقت مدل‌سازی برای یک پروژه معین مناسب است؟
  • چه زمانی تولید خودکار کد از مدل‌ها ارزشمند است؟

Key theories

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

Clinical relevance

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

Evidence & guidelines

مشخصات OMG UML نماد و معناشناسی استاندارد را تعریف می‌کند و استانداردهای مرتبط OMG مانند SysML و MOF مدل‌سازی را به مهندسی سیستم‌ها و فرامدل‌سازی گسترش می‌دهند.

History

UML در اواسط دهه ۱۹۹۰ از یکپارچه‌سازی روش‌های Booch، OMT و Objectory پدید آمد، در سال ۱۹۹۷ به عنوان یک استاندارد OMG پذیرفته شد و از طریق UML 2 تکامل یافت؛ رویکردهای مدل‌محور و طراحی‌های سبک با بحث‌هایی در مورد میزان سودآوری مدل‌سازی رسمی همزیستی دارند.

Debates

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

Key figures

  • Grady Booch
  • James Rumbaugh
  • Ivar Jacobson
  • Martin Fowler

Related topics

Seminal works

  • booch2005
  • omg2017uml
  • fowler2003

Frequently asked questions

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

Methods for this concept

Related concepts