برای ایجاد بانک اطلاعاتی برای یک محیط باید ابتدا داده های آن محیط را تحلیل کرده و بصورت نمودارهای ER مدل سازی کنیم و پس از طراحی بانک اطلاعاتی بر اساس نمودارهای ER، به پیاده سازی بانک اطلاعاتی اقدام نماییم. در این بخش و بخش های بعدی روش تحلیل و طراحی و مدل سازی داده های را آموزش می دهیم.
یکی از فعالیت های مهم تحلیل و طراحی سیستم ها، تحلیل داده ها و طراحی بانک اطلاعاتی می باشد. تحلیل داده بعد از شناسایی عملکرد سیستم، فرآیندها و جریان داده ها در سیستم انجام می شود.
قبل از طراحی بانک اطلاعاتی باید داده های محیط تجزیه و تحلیل شده داده هایی که باید نگهداری شوند تعیین شده و ساختارهای مناسب برای نگهداری آنها طراحی گردند. برای مدلسازی داده ها از نمودارER استفاده می شود. این نمودار موجودیت ها، خصوصیات و رابطه بین موجودیت ها را به صورت تصویری و قابل فهم نمایش می دهد.
در یک محیط عملیاتی اطلاعاتی که باید ذخیره شوند عبارتند از:
1-نهادها(Entity-موجودیت): هر چیزی از دنیای واقعی که باید راجع به آن اطلاعاتی ثبت شود مثل کتاب،دانشجو . هر محیط عملیاتی دارای مجموعه بزرگی از موجودیت ها از جمله افراد، نقش ها، واقعه ها ، فعالیت ها، بخش ها، گزارشات و … است که با توجه به وظایف و عملکردهای سیستم باید بخشی از انها انتخاب گردد.
2-صفات(Attribute-ویژگی):ویژگی هایی از موجودیت ها که باید برای آنها اطلاعاتی ثبت شود (مثل نام و نام خانوادگی شخصی،کد و عنوان و مولف کتاب ،شماره ی دانشجویی ورشته و آدرس دانشجو)
3-رابطه ها(Relation):ارتباط بین نهادها به عنوان مثال رابطه بین دانشجو ودرس،کتاب و ناشر و….
در هر محیط واقعی نهادهای خیلی زیادی وجود دارد و نهادها هم صفات متنوعی دارند بین نهادها هم ممکن است روابط مختلفی بر قرار باشد.
وظیفه ی تحلیلگران:بررسی نهادها و تعیین نهادهای لازم و صفات لازم می باشد به طوریک همه اطلاعات مورد نیاز ذخیره شده وسیستم بتواند وظایف مورد نظر را انجام دهد و قابلیت توسعه نیز تا حدودی داشته باشد.
نتایج تحلیل باید به صورت نمودارهایER نمایش داده شود.(ERD-Entity-Relation-Diagram)
این نمودارها میتوانند برای ارائه نتایج تحلیل به افراد گروه طراحی،افراد خبره،(کار فرما)و نیز نگهداری به عنوان مستندات سیستم جهت استفاده آتی(به منظور توسعه سیستم )مورد بهره برداری قرار گیرند.
اجزای نمودار ER
موجودیت
موجودیت ها به صورت مستطیل نشان داده می شوند و دو دسته اند: 1- موجوديت قوي 2-موجوديت ضعيف
موجودیت ضعیف وجودش بستگی به موجودیت دیگر دارد به عنوان مثال:کارمند یک موجودیت قوی است ولی اعضای خانواده کارمند موجودیت ضعیف هستند. موجودیت های قوی با مستطتیل و موجودیت های ضعیف با مستطیل با کادر مضاعف نشان داده می شوند.
صفات خاصه
صفات خاصه، ویژگی ها یا صفات موجودیت ها و روابط هستند.
صفات خاصه کلید: یک یا چند صفت خاصه که برای یک موجودیت منحصربه فرد است مثل شماره ی دانشجویی برای دانشجو،کد ملی برای شخص،کد درس برای درس
صفات خاصه ساده/مرکب: صفت ساده از یک بخش تشکیل شده و صفت مرکب از بیش از یک بخش.صفت ساده مثل:نام،سال تولد،نام خیابان،
صفت مرکب:آدرس که از استان، شهر و نشانی تشکیل شده یا تاریخ تولد که از سال ، ماه و روز تشکیل شده است.
صفات خاصه
صفت خاصه تک مقداری یا جند مقداری: صفت تک مقداری همیشه یک مقدار دارد مثل :نام دانشجو،نام استاد.صفت چند مقداری گاهی اوقات می تواند بیش از یک مقدار داشته باشد.مثل:فعالیت علمی دانشجو یا مدرک استاد
صفت خاصه مشتق(محاسبه شدنی): صفاتی که بر اساس صفات دیگر قابل محاسبه باشد.مثل:سن شخص که بر اساس تاریخ تولد و تاریخ جاری قابل محاسبه است.یا قیمت کل در جدول فروش که بر اساس قیمت واحد و تعداد قابل محاسبه است.
صفت خاصه هیچ مقدارپذیر:صفت خاصه ای که می تواند مقدار نداشته باشد،می تواند مقدار پوچ(null)بگیرد.بعبارتی صفتی که مقداردهی آن اجباری نیست.
رابطه ها
ارتباط بین نهادها (موجودیت ها)را رابطه گوییم. رابطه هایی را برای سیستم در نظر می گیریم که برای ما اهمیت داشته و باید آن ارتباط در سیستم ثبت شود به عنوان مثال بری نهاد دانشجو و نهاد درس رابطه ی انتخاب اهمیت دارد ولی رابطه ی مطالعه اهمیتی ندارد و نباید در نظر گرفته شود. یک رابطه دارای ویژگی هایی می باشد:
الف- درجه رابطه:
تعداد نهادهایی که در یک رابطه شرکت دارند و می تواند 1 و2و3 و یا بیشتر باشد.
رابطه درجه یک
یعنی یک کارمند میتواند مدیر یک یا
چند کارمند دیگر باشد.
رابطه درجه دو
رابطه بین دانشجو و درس یا رابطه بین کارمند و بخش
رابطه درجه سه
رابطه بین دانشجو و درس و ترم – دانشجو درس
را در ترم مشخصی انتخاب می کند
ب- کاردینالیتی رابطه:
تعداد نمونه هایی از موجودیت که در یک رابطه می تواند شرکت کند و شکل های مختلف ان عبارت است از :
- رابطه یک به یک (1:1)
- رابطه یک به چند ( 1 : N )
- رابطه چند به چند (M : N)
ج- الزام مشاركت (Modality)
الزام مشاركت به دو صورت كامل (1) و ناكامل(0) مي باشد . در مشاركت كامل تمام نمونه هاي يك موجوديت بايد در رابطه شركت داشته باشند و در مشاركت ناكامل الزامي به شركت همه نمونه هاي موجوديت در ارتباط وجود ندارد.
به عنوان مثال در رابطه بين وام و مشتريان بانك ، موجوديت مشتري مشاركت ناكامل دارد، چون همه مشتريان ممكن است وام نگرفته باشند. ولي مشاركت وام در اين رابطه الزامي است، چون هر وام مربوط به يك مشتري است و وامي بدون مشتري وجود ندارد.
موارد اضافه شده به نمودار ER:
رابطه تجمیع (aggregation):اگریک موجودیت از موجودیت های دیگری تشکیل شده باشد بین آنها رابطه ی تجمیع وجود دارد.یعنی یک کامپیوتر از اجزای RAM ،CPU،MB تشکیل شده است.
رابطه ی تخصیص(specialization):اگر یک موجودیت دارای انواع خاصی هم باشد.
مثال : سيستم آموزش
الف- موجودیت ها و خواص آنها
- دروس(کد درس، عنوان درس، تعداد واحد(عملی- تئوری) ، تعداد واحد اموزشی )
- دانشجويان ( شماره ی دانشجویی، نام دانشجو شامل نام و نام خانوادگی، رشته ی تحصیلی، سال ورود، معدل ، امکانات مورد نیاز(یک دانشجو می تواند هیچ یا چند امکان را انتخاب می کند) )
- کاركنان (کد پرسنلی، نام، نام خانوادگی،بخش، نوع کارمند(اداری – استاد) )
- اساتيد (كد پرسنلي ، نام، رشته تحصيلي، مدرك)
- بخش ها( كد بخش، عنوان بخش )
- رشته ها (كدرشته، عنوان رشته ، تعداد دانشجو)
ب- رابطه ها
- دانشجو میتواند درس خاصی را با استاد خاصی انتخاب کند.
- استاد خاصی درس خاصی را ارائه می کند.
- کارمند خاصی در بخش خاصی کار می کند.
- استاد خاصی مربوط به رشته مشخصی است.
نمودار های ER برای سیستم آموزش بصورت زیر هستند :
نمودار er درس و دانشجو
نمودار er بخش، رشته ها و کارکنان