مدل‌سازی معنایی داده‌ها

Jul 20, 2024

مدل‌سازی معنایی داده‌ها

مقدمه

  • هدف: معرفی مدل‌سازی معنایی داده‌ها و دو مدل مطرح در طراحی دیتابیس
  • مدل‌های مطرح:
    • ER (Entity Relationship): مدل پایه در مهندسی نرم‌افزار
    • EER (Enhanced Entity-Relationship): نسخه پیشرفته تر مدل ER
  • اهمیت: مهندسان نرم‌افزار باید بتوانند مدل معنایی داده‌ها را تولید کنند.

مدل‌سازی معنایی

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

مدل ER (Entity Relationship)

  • تعریف: یک نمودار گرافیکی برای مدل‌سازی داده‌ها
  • عناصر اصلی:
    • Entity (موجودیت): هر شیء یا پدیده‌ای که در سیستم اطلاعاتی مورد استفاده قرار می‌گیرد.
    • Attribute (صفت): ویژگی‌های موجودیت‌ها که آن‌ها را توصیف می‌کنند.
    • Relationship (ارتباط): تعاملات بین موجودیت‌ها

انواع موجودیت‌ها

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

انواع صفات

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

نمودار ER

  • نمودار ER: نمایش گرافیکی ارتباطات بین موجودیت‌ها و صفات آن‌ها.
  • مثال: موجودیت‌های درس و دانشجو با صفات و روابط بین آن‌ها.
  • نحوه نمایش:
    • بیزی خدچین: صفات مشتق
    • بیزی خط کامل: صفات واقعی

مفهوم ارتباط (Relationship)

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

مثال‌ها

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

نتیجه‌گیری

  • مدل‌سازی معنایی کمک می‌کند تا دید کلی و منسجمی از سیستم قبل از پیاده‌سازی داشته باشیم
  • نمودار ER ابزار قدرتمندی برای این مدل‌سازی است، که از جمله مفاهیم اصلی آن، موجودیت، صفت و ارتباط هستند.