نمودار er: کاربرد، مراحل ایجاد و همه نکات کاربردی
نمودار ER یا ERD مخفف عبارت Entity-Relationship Diagram به معنای نمودار رابطه-موجودیت است. نمودار ER یک نمایش تصویری از طبقه بندی گروه ها با ویژگی های مشترک و تعریف رابطه بین این گروه ها است. به همین دلیل ساختار آن شامل نمادها و شکل ها مختلف می باشد از آن به عنوان یک مدل برای تصویر کشیدن ساختار داخلی و رابطه ها استفاده شود. این آموزش یک راهنمای جامع درباره نمودار ER می باشد.
نمودار ER در درجه اول در زمینه های زیر استفاده می شود:
1- مدل های ER در طراحی پایگاه داده: برای تصویرسازی جدول های پایگاه داده و روابط بین آنها استفاده می شود. همچنین در عیب یابی پایگاه داده نیز کاربرد دارد.
2- نمودارهای ER در مهندسی نرم افزار: به طور معمول در مراحل برنامه ریزی یک پروژه نرم افزاری استفاده می شود. برای شناسایی عناصر مختلف سیستم و نحوه تعامل آنها با یکدیگر به کار می رود. علاوه بر این به عنوان نمودار جریان داده (DFD) نیز شناخته می شود.
آنچه در این آموزش یاد خواهید گرفت:
- نمودار ER چیست؟
- مدل ER چیست؟
- چرا از نمودارهای ER استفاده می شود؟
- اجزای نمودار ER
- نمادها، شکل ها و اصطلاحات در نمودار ER
- کاردینالیتی
- مراحل ایجاد یک نمودار ER (ERD)
- مزایای ERD
- معایب ERD
- نمودار EER
- نرمال سازی نمودار ER
- لیست ابزارهای آنلاین ER
- نتیجه گیری
نمودار ER چیست؟
نمودار رابطه ای ER یا ERD به عنوان یک راه حل برای مشکل عدم وجود یک روش استاندارد برای مدل سازی پایگاه داده یا فرآیندهای تجاری به وجود آمد. در واقع نوعی نمودار فلوچارت است که به درک ارتباط بین موجودیت ها، اشیا یا مفاهیم مختلف در یک سیستم به ما کمک می کند.
نمودار ER در زمینه های مختلف مانند سیستم اطلاعات کسب و کار، مهندسی نرم افزار، آموزش، تحقیقات و … کاربرد دارد.
نمودار ER توسط برخی از نمادها و شکل ها مانند بیضی، لوزی، مستطیل،… و همچنین خطوط اتصال برای نمایش ارتباط بین آنها تعریف می شود. علاوه بر این نمودارهای ER همراه با نمودارهای جریان داده (DFD) برای نشان دادن جریان اطلاعات در درون فرآیندها یا سیستم ها نیز کاربرد دارد.
مدل ER چیست؟
مدل ER یک مدل داده ای سطح بالا و یک رویکرد گرافیکی برای طراحی پایگاه داده است که عناصر داده و رابطه بین آنها در یک سیستم یا نرم افزار مشخص را تعریف می کند.
– نمودار ER نمایش گرافیکی مدل ER است.
تاریخچه مدل های ER
در دهه 1970 فردی به نام پیتر چن (Peter Chen) مدل ER را برای طراحی پایگاه داده ها توسعه داد و مقاله تاثیرگذار او در سال 1976 با عنوان “مدل رابطه-موجودیت: در راستای دیدگاه یکپارچه از داده” منتشر شد.
در حدود دهه 70-960، چارلز باخمن (Charles Bachman) یک نوع نمودار ساختار داده ایجاد کرد که در توسعه زبان مدل سازی یکپارچه (UML) موثر بود و به طور گسترده در طراحی نرم افزار استفاده می شود.
چرا از نمودارهای ER استفاده می شود؟
نمودارهای ER در بسیار از زمینه ها استفاده می شود و کاربردهای زیادی دارد. موارد زیر جز موارد اصلی محسوب می شوند:
1- سیستم های اطلاعات تجاری
نمودارهای ER به طراحی یا تجزیه و تحلیل پایگاه داده های رابطه ای مورد استفاده در فرآیندهای تجاری کمک می کنند. هر فرآیند تجاری که از داده های میدانی مربوط به موجودیت ها استفاده می کند، می تواند از مزایای یک پایگاه داده رابطه ای نیز سود ببرد. این نمودارها برای ساده سازی فرایندها و کشف راحت تر اطلاعات بسیار مفید هستند در نتیجه باعث بهبود نتایج نیز می شوند.
2- اشکال زدایی پایگاه داده
نمودارهای ER به تجزیه و تحلیل پایگاه داده برای شناسایی و حل مشکلات منطقی پایگاه داده در طول توسعه سیستم کمک می کنند. ایجاد این نمودارها به پیدا کردن نواحی اشتباه یا مشکل ساز کمک می کند.
3- مهندسی مجدد فرآیند کسب و کار (Business Process Reengineering)
نمودارهای ER در تجزیه و تحلیل پایگاه داده های مورد استفاده در مهندسی مجدد فرایندهای کسب و کار (BPR) و همچنین در هنگام مدل سازی راه اندازی پایگاه داده جدید به کار می روند.
4- آموزش
از نمودارهای ER در برنامه ریزی ساختارهای داده برای ذخیره اطلاعات رابطه ای و همچنین بازیابی از پایگاه داده استفاده می شوند.
5- تحقیق
از نمودارهای ER برای راه اندازی پایگاه داده برای تجزیه و تحلیل داده های ساختاریافته استفاده می شود.
اجزای نمودار ER
اجزای این نمودار شامل:
موجودیت (Entity): هر شی که داده در آن ذخیره شده باشد.
رابطه بین موجودیت ها: نحوه ارتباط یا وابستگی موجودیت ها با یکدیگر را تعریف می کند.
صفات موجودیت: ویژگی یا خاصیت یک موجودیت را نشان می دهند.
نمادها، شکل ها و اصطلاحات در نمودار ER
1- موجودیت
موجودیت ها معمولا با مستطیل نشان داده می شود.
نوع موجودیت: گروهی از موجودیت های مشابه که ویژگی های مشابه دارند.
مجموعه موجودیت: زیر گروه خاص از یک نوع موجودیت که زیرمجموعه ای از ویژگی های مشترک دارند.
دسته بندی موجودیت ها: انواع موجودیت ها را می توان به سه دسته تقسیم بندی کرد:
- موجودیت قوی
- موجودیت ضعیف
- موجودیت مشارکتی
تفاوت های بین موجودیت قوی و ضعیف:
موجودیت ضعیف | موجودیت قوی |
---|---|
وجود آن به یک موجودیت قوی وابسته است. | به هیچ موجودیت دیگری وابسته نیست. |
هیچ کلید اصلی ندارد. | همیشه یک کلید اصلی دارد. |
با مستطیل دوتایی نشان داده می شود. | با یک مستطیل نشان داده داده می شود. |
نکته: کلید موجودیت یک صفت یا مجموعه صفاتی است که برای تعریف منحصر به فرد یک موجودیت استفاده می شود. در قسمت بعدی مفهوم صفت را معرفی خواهیم کرد.
2- صفات
هر موجودیت ویژگی هایی مربوط به خودش را دارد، به هر یک از این ویژگی ها صفت گفته می شود. برای مثال برای موجودیت دانش آموز صفت هایی مثل کد ملی، نام، تاریخ تولد و … را می توان تعریف کرد. صفت ها را معمولا با بیضی نشان می دهند.
هر موجودیت باید ویژگی یا ویژگی های منحصر به فردی داشته باشد که آن را از سایر موجودیت ها متمایز کند، بنابراین صفت کلیدی تعریف می شود. همانطور که گفتیم صفت کلیدی موجودیت یک صفت یا مجموعه صفاتی است که برای تعریف و شناسایی منحصر به فرد یک موجودیت استفاده می شود.
تفاوت های بین صفت کلیدی و صفت کلیدی جزئی:
صفت کلیدی جزئی | صفت کلیدی |
---|---|
مجموعه صفاتی که موجودیت ضعیف را به طور منحصر به فرد شناسایی می کند. | با ویژگی های منحصر به فرد موجودیت تعیین می شود. |
تا حدی منحصر به فرد است و با موجودیت قوی دیگری ترکیب شده است. | به ذات منحصر به فرد است. |
با یک بیضی و بدون خط زیر متن نشان داده می شود. | با یک بیضی و خط زیر صفت نشان داده می شود. |
انواع صفات دیگر:
- صفت ساده
صفتی که نمی توان آن را به صفات کوچکتر دیگر تجزیه کرد.
مثال: کد ملی هر فرد.
- صفت مرکب
ترکیبی از چند صفت ساده است.
مثال: نام کامل فرد ترکیبی از نام و نام خانوادگی می باشد.
- صفت مشتق
صفتی که به طور مستقیم در پایگاه داده وجود ندارد اما مقادیر آن براساس نیاز کاربر استخراج می شود.
مثال: سن را می توان به دست آورد.
- صفت تک مقداری
صفتی که فقط حاوی یک مقدار واحد است.
مثال: شماره دانشجویی فرد.
- صفت چند مقداری
صفتی که بیش از یک مقدار دارد.
مثال: فرد ممکنه بیش از یک شماره تلفن یا ایمیل داشته باشد (که لازم است ذخیره شوند.)
انواع صفت های کلیدی دیگر نیز عبارتند از:
- ابر کلید (Super key): صفت یا مجموعه صفاتی است که برای شناسایی یک موجودیت به طور منحصر به فرد استفاده می شود. زیرمجموعه از مجموعه صفات نیز می تواند یک کلید باشند.
- کلید اصلی: صفت یا مجموعه حداقل صفاتی است که برای شناسایی منحصر به فرد موجودیت استفاده می شود. کلید اصلی می تواند ابر کلید باشد اما برعکس آن برقرار نیست.
- کلید خارجی: صفت یا مجموعه صفاتی است که برای برقراری روابط بین موجودیت ها استفاده می شود.
3- رابطه
به طور معمول رابطه بین موجویت ها با شکل لوزی نشان داده می شود.
تفاوت های بین رابطه قوی و ضعیف:
رابطه ضعیف | رابطه قوی |
برای وجود خودش به یک رابطه قوی وابسته است. | رابطه ای که در آن وجود موجودیت به هیچ موجود دیگری وابسته نباشد. |
کلید اصلی از موجودیت دیگری گرفته می شود. | حاوی کلید اصلی والدین است. |
با دو لوزی نشان داده می شود. | با یک لوزی نشان داده می شود. |
کاردینالیتی
کاردینالیتی نشان می دهد که چگونه یک موجودیت با موجودیت دیگری در همان مجموعه یا مجموعه موجودیت دیگری ارتباط دارد.
برخی از انواع روابط اصلی عبارتند از:
1- روابط یک به یک
یک نمونه از موجودیت A حداکثر با یک نمونه از موجودیت B ارتباط دارد و برعکس.
به عنوان مثال در رابطه استاد به درس هر استاد حداکثر یک درس ارائه می دهد و هر درس هم حداکثر توسط یک استاد ارائه می شود.
2- روابط یک به چند
یک نمونه از یک موجودیت A با بیش از یک نمونه از موجودیت B ارتباط دارد اما هر موجودیت B حداکثر با یک نمونه از موجودیت A ارتباط دارد.
به عنوان مثال در رابطه دوره به دانشجو یک دوره می تواند چند دانشجو داشته باشد اما هر دانشجو حداکثر در یک دوره می تواند ثبت نام کند.
3- روابط چند به یک
چند نمونه از موجودیت A حداکثر با یک نمونه از موجودیت B ارتباط دارد و هر نمونه از موجودیت B با چند نمونه از موجودیت A ارتباط دارد.
به عنوان مثال در رابطه دانجو به کلاس درس چند دانشجو می توانند حداکثر در یک کلاس درس حضور داشته باشند و هرکلاس درس می تواند شامل چند دانشجو باشد.
4- روابط چند به چند
هر نمونه از موجودیت A با چند نمونه از موجودیت B ارتباط دارد و هر نمونه از موجودیت B با چند نمونه از موجودیت A ارتباط دارد.
به عنوان مثال رابطه دانشجو به درس هر دانشجو می تواند چند درس داشته باشد و هر درس می تواند توسط چند دانشجو گرفته شود.
مراحل ایجاد یک نمودار ER یا ERD
نمودار ارتباط- موجودیت که معمولاً با نام ERD یا ER Diagram یا مدل ER شناخته می شود، یکی از انواع نمودارهای ساختاری است که در طراحی پایگاه داده مورد استفاده قرار می گیرد. این نمودار شامل نمادها و ارتباطلات مختلف است که به تصویرسازی دو نوع اطلاعات مهم کمک می کند:
1- موجودیت های اصلی موجود در محدوده سیستم
2- روابط بین این موجودیت ها
مراحل اصلی ایجاد یک نمودار ER به صورت زیر است:
مزایای نمودار ER
- یک نمایشی تصویری از ساختار کلی ارائه می دهد.
- به طراحان پایگاه داده برای ایجاد یک طراحی یا معماری کارآمد کمک می کند.
- جریان داده ها و عملکرد کل سیستم را نشان می دهد.
- به عنوان یک نقشه برای پایگاه داده موجود عمل می کند.
- به ارتباط موثر کمک می کند زیرا خوانندگان می توانند روابط بین فیلدهای مختلف را درک کنند.
- انعطاف پذیری در روابط فراهم می کند.
- یک پشتیبانی خوب برای سیستم مدیریت پایگاه داده (DBMS) است.
معایب نمودار ER
- استفاده از بیان محدود شده است.
- گاهی اوقات می تواند مبهم باشد.
- همیشه مختصر و کوتاه نیست.
- هیچ استاندارد تعریف شده صنعتی برای مستندسازی وجود ندارد بنابراین ممکنه گاهی اوقات گیج کننده باشد.
- نمایش کنترل اطلاعات سخت است.
- برخی داده ها ممکنه حذف یا نادیده گرفته شوند.
نمودار EER
نمودار EER مخفف Enhanced Entity Relationship نسخه توسعه یافته نمودار ER است.
- مدل های EER برای طراحی پایگاه داده با مدل های سطح بالا بهتر هستند.
- با استفاده از ابزار پیشرفته تر روی ویژگی ها و محدویت ها کاوش و بررسی بیشتری انجام می دهد، در نتیجه با استفاده از این نمودار می توان پایگاه داده ها را با دقت بیشتری برنامه ریزی کرد.
- باعث می شود تا اطلاعات را با دقت بیشتری بررسی کنید.
- اگر پایگاه داده با مقدار داده زیاد دارید، توصیه می شود برای درک عمیق تر به جای مدل خود از مدل EER بروید.
نرمال سازی نمودار ER
نرمال سازی سازی نمودار به تجزیه و تحلیل بیشتر و دقیقتر نیازمندی های سیستم نیاز دارد، بنابراین به رفع برخی از معایب و مشکلات کمک می کند.
برخی از دلایل نرمال سازی ER عبارتند از:
- به بهبود مدل مفهومی کمک می کند.
- سرعت در اجرا را بالاتر می برد.
- در استاندارد سازی واژگان سازمانی کمک می کند.
- به رعایت قوانین تجاری تاکید دارد.
- روی اطمینان از کیفیت مناسب داده ها تاکید دارد.
برخی از روش ها یا مراحل اساسی نرمال سازی نمودار ER عبارتند از:
- تبدیل صفات به انواع موجودیت
- شکستن صفات مرکب به صفات کوچکتر
- گسترش موجودیت به دو نوع موجودیت و یک رابطه
- تبدیل یک موجودیت ضعیف به یک موجودیت قوی تر
- اضافه کردن جزئیات تاریخی به مدل داده موجود
لیست ابزارهای ER آنلاین
چندین ابزار آنلاین برای ایجاد و ویرایش مدل های ER وجود دارد. برخی از این ابزارها عبارتند از:
- Pony ORM: یکی از بهترین SQL ORMهایی است که برای تهیه پروتوتایپ (Prototype) سریع استفاده می شود.
- Smartdraw: برای ایجاد طرح های عالی یک ابزار آسان و قدرتمند است.
- ERD Plus: با توضیح گام به گام فرآیند به کاربر در طراحی کمک می کند.
- Lucidchart: با ایجاد عوامل تصویری قدرتمند در هر نوع نیاز تجاری کمک کننده است.
- Creately: به ترسیم پیچیده ترین داده ها در طراحی کمک می کند.
ویدیوی آموزش نمودار ER به زبان ساده
نتیجه گیری
نمودار ER یکی از پرکاربردترین تکنیک های مدل سازی داده است. این نمودار به تهیه یک چارچوب برای ایجاد و ویرایش پایگاه ها داده کمک می کند. به همین دلیل نمودارهای ER نقشی اساسی در رویکرد طراحی پایگاه داده و کل روند دارند. همچنین به عنوان یک ابزار ارتباطی مشترک برای افراد فنی و غیر فنی عمل می کند.
عالی بود ممنون
پاسخممنون بابت زحمتتون
پاسخخیلی خوب بود ممنون
پاسخمرسی ازتون
پاسخممنون ، ساده و کاربردی
پاسختشکر از آگاهی دادنتون