# مهندسی نرم افزار > مباحث مرتبط با مهندسی نرم‌افزار > تحلیل و طراحی نرم افزار >  طراحی پایگاه داده برای سیستم کتابخانه

## bahar_babaee

سلام.من میخوام برای یک سیستم کتابخانه پایگاه داده طراحی کنم.این اولین کار منه و نمیدونم دقیقا باید چی کار کنم.من یک سری جدول در نظر گرفتم و فیلدهای آنهارو تعریف کردم.
1-جدول کتاب
2-جدول اعضای کتابخانه
3-جدول کتابهای به امانت برده شده
4-جدول کتابهای رزرو شده
حالا میخوام بدونم که چطور بین این جدول ها باید relation ایجاد کنم و اینکه چه جدول های دیگه ای لازم هست که وجود داشته باشند.
با تشکر

----------


## SYNDROME

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

----------


## najme975

> فکر کنم یادتان رفت فیلدهای جداول را در اینجا بنویسید.
> باید برای کتابها و اعضاء یک فیلد Key داشته باشید تا در جداول از آن فیلد استفاده کنید ماننده
> جدول کتابها:
> شماره،نام،ناشر،....
> جدول اعضاء
> شماره،نام،نام خانوادگی و . . .
> حالا مثلا در جدول امانت دادن کتابها به شکل زیر عمل می کنید
> شماره کتاب،شماره اعضاء؛تاریخ دریافت،تاریخ برگرداندن و . . . 
> موفق باشید


من هم نيازشديد به پايگاهداده كتابخانه دارم لطفا كمكم كنيد :افسرده:

----------


## pooyar

خوب جداولی که به ذهن من میرسه این هاست:

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

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

----------


## In_Chan_Nafar

دوست عزیز طبق استاندارد کنگره و یا دیویی (مربوط به کتابخانه) شما بایستی جدول مهم دیگری بنام اطلاعات ثبت مدارک (کتاب، سی دی ، روزنامه و...) را در نظر بگیرید در ضمن نگاه شما به اشیا موجود در کتابخانه به عنوان مدرک باشه اگه پروژه تون دانشجویی به این موضوع ها فکر نکنید اگه پروژه تون تجاری برین دنبال دو تا استاندارد بالا + استاندرد IS2709 و استاندارد web z3950 که در مورد انتقال اطلاعات (رکوردهای مدارک) مابین کتابخانه ها است
 نرم افزار هایی که اکثر کتابخانه های دانشگاهی و عمومی در ایران استفاده می کنند کاوش - پارس آذرخش و...
است قویترین نرم افزار کتابخانه دنیا یه نرم افزار اسرائیلی است اسمش یادم نیست

----------


## en-babak

جدول کتابها
جدول اعضا
جدول ...

----------


## kazemhoma

سلام ابتدا شما مشخص کرداید با چه برنامه ای می خواید پایگاه داده درست کنید.
من خودم با برنامه sql server طراحی کردم با
1-جدول کتاب
2-جدول اعضای کتابخانه
3-جدول کتابهای به امانت برده شده 
درست کردم راستی حتما کلیدرو درست انتخاب کن

----------


## razadazadazadj

با سلام من دانشجوي ترم يك كامپيوتر هستم و به عنوان پروژه درسي خود در درس مباني مهندسي نرم افزار تحليل سيستم كتابخانه دانشگاه را انتخاب كرده ام و دياگرام متن و دياگرام سطح يك آن را ترسيم كرده ام ولي در طراحي سطح دوم آن مشكل دارم خواهشمندم اگر ممكنه دياگرام سطح دوم رو براي يكي ازموجوديت ها ترسيم كنيد تا متوجه شوم 
ضمنا كار هايي كه تا به حال انجام دادم رو ضميمه مي كنم
                                                                                                                             با تشكر

----------


## razadazadazadj

با سلام 
در صورت امكان اطلاعاتي راجع به شبكه هاي Grid مي خواستم 
ممنون

----------


## Elham_gh

در اين دو نمودار تا جاييكه شده چهار چوب رو نشون دادمواگر سئوالي بود توضيح مي دم





 اگر منابع ديگري هم داشته باشيد ، مثل CD ، مجله يا ..... فقط كافيست مثل شكل دوم(مانند TitleInstance) RefrenceID رو به عنوان كليد اون جدول انتخاب كنيد.فقط يادتون باشه refrenceID در جدول refrence  فقط در يكي از جدولهاي TitleInstance يا سي دي يا مجله يا ... وجود دارد.
با اين روش هر منبع ديگري براي امانت دادن اضافه شود هيچ تغيير در اين ساختار ايحاد نمي شود.

البته مي توان امانت داخل سالن يا خارج سالن رو هم ديد

----------


## majid325

اگر راجع به عملکرد هر کدوم از جدولها توضیح نیم خطی بدی خیلی ممنون میشم(معلوم روش خوب کار شده)

----------


## sara99

سلام الهام من خیلی فوری احتیاج به ERD دارم قسمتهایی از آن را کشیدم ولی چون خیلی پیچیده و زیاد هستند نمی توانم آنها را با هم مرتبط کنم.اگر لازم است DFD آنها را برایتان بفرستم.ممنون می شم کمکم کنید. :ناراحت:

----------


## rashad-OT

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

----------


## mrvakil

سلام دوست عزیز

اگر راجع به z3950 مخصوصا راجع به نحوه پاسخگویی سرور تحت این پروتکل توی یه زبان برنامه نویسی خاص (ترجیحاً C#‎) اطلاعاتی دارید ، ممنون میشم اگه اونو به اشتراک بذارید.

----------


## stellar

من در شروع نوشتن برنامه بانك اطلاعاتي يك كتابخانه به زبانcدچار مشكل هستم اگر راهنمايي ام كنيد ممنون ميشوم

----------


## Elham_gh

> من در شروع نوشتن برنامه بانك اطلاعاتي يك كتابخانه به زبانcدچار مشكل هستم اگر راهنمايي ام كنيد ممنون ميشوم


مشکلتون چیه؟

----------


## hasty_s4000

سلام ، پروژه من سیستم کتابخانه است اما نمیدونم باید از کجا شروع کنم! میشه راهنماییم کنید؟
ابتدا باید نمودار er  را رسم کرد یا dfd ها را؟
اصلا تفاوت er با erd  در چیست و dfd   چند سطح دارد؟

----------


## whitehat

> سلام ، پروژه من سیستم کتابخانه است اما نمیدونم باید از کجا شروع کنم!  میشه راهنماییم کنید؟


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



> ابتدا باید نمودار er  را رسم کرد یا dfd ها را؟


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



> اصلا تفاوت er با erd  در چیست و dfd   چند سطح دارد؟


هر دو یکی هستند ER مخفف Entity Relation است که وقتی به آن دیاگرام ER گفته می شود ، انگلیسی آن ERD می شود. DFD به سیستم شما و پیچیدگی آن بستگی دارد ، هر چه سیستم شما پیچیده تر باشد باید سطحهای بیشتری را برای DFD در نظر بگیرید. (معمولا تا دو سطح برای اکثر سیستم ها کافی است)

----------


## hasty_s4000

> ابتدا یک سناریو برای خود بنویسید، چه هدفی دارید؟ چه نیازهایی را برای کتابخانه دنبال می کنید؟ کتابخانه چه اجزایی دارد؟ چه توقعی (گزارشهای خروجی) از سیستم مکانیزه دارید؟ چه کسانی با سیستم درگیرند؟ و ...
> 
> این نمودارها در طول هم نیستند یعنی مهم نیست که کدام اول رسم شود، بهترین حالت اینه که تواما رسم بشوند و به تدریج آنها را کامل کنید. باید ببینید ابتدا می توانید موجودیت ها و روابط بین آنها را تشخیص دهید یا جریان داده ای سیستم ؟
> 
> هر دو یکی هستند ER مخفف Entity Relation است که وقتی به آن دیاگرام ER گفته می شود ، انگلیسی آن ERD می شود. DFD به سیستم شما و پیچیدگی آن بستگی دارد ، هر چه سیستم شما پیچیده تر باشد باید سطحهای بیشتری را برای DFD در نظر بگیرید. (معمولا تا دو سطح برای اکثر سیستم ها کافی است)


ممنون از پاسختون ، من تقریبا تمام موجودیت هایی که تشخیص دادم رو با صفات و ارتباط هاشون مشخص کردم آیا چیز دیگه ای هم برای رسم دیاگرام ER نیازه؟ البته من مسئول کتابخانه رو هم جزء موجودیت ها گذاشتم که نمیدونم درسته یا نه؟! بعد یه چیزی هر کدوم این موجودیت ها یک جدول باید در پایگاه داده داشته باشند دیگه نه؟
در مورد dfd هم باید ابتدا دیاگرام متن را رسم کنم یا نه ؟ یک توضیحی در مورد سطوحش بدید ممنون میشم
من با اجازتون میخوام دیاگرام ها رو بعد رسم اینجا بزارم و نظرتونو بدونم البته اگه بهم نمیخندید  :لبخند:

----------


## whitehat

> ممنون از پاسختون ، من تقریبا تمام موجودیت هایی که تشخیص دادم رو با صفات و  ارتباط هاشون مشخص کردم آیا چیز دیگه ای هم برای رسم دیاگرام ER نیازه؟


اگه مطمئن هستید کامل در آوردید-> خیر



> البته من مسئول کتابخانه رو هم جزء موجودیت ها گذاشتم که نمیدونم درسته یا  نه؟!


آیا مشخصات مسئول کتابخانه در سیستم ثبت می شود؟ 



> بعد یه چیزی هر کدوم این موجودیت ها یک جدول باید در پایگاه داده  داشته باشند دیگه نه؟


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



> در مورد dfd هم باید ابتدا دیاگرام متن را رسم کنم یا نه ؟ یک توضیحی در  مورد سطوحش بدید ممنون میشم
>  من با اجازتون میخوام دیاگرام ها رو بعد رسم اینجا بزارم و نظرتونو بدونم  البته اگه بهم نمیخندید


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

----------


## hasty_s4000

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


بله مشخصات مسئول هم ثبت میشه ، منظورم از نمودار متن همان  Context Diagramهست که البته فکر کنم همان dfd سطح صفر باشه!

 این نمودار er که کشیدم ممنون میشم نظرتونو بدونم

----------


## ansarinia

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

----------


## ansarinia

کسی نیست کمکم کنه؟منباید تا آخرهفته نمودارER تحویل بدم.اساتید محترم لطفا کمک کنید :ناراحت:

----------


## sitesite

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

----------


## sitesite

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

----------


## setareh6968

با سلام اگه میشه به من کمک کنین آخه  پروژه ام زیاد وقت نداره اما نمیدونم چکارکنم.... :ناراحت: 
نمودار ER رو لازم دارم ویکم راهنمایی که چطور شروع کنم لطفا بهم کمک کنین ممنون.

----------


## kazemsabzi

سناریوی کامل کتابخونه رو میشه لطف کنن دوستان؟؟؟؟؟؟؟؟؟؟؟؟؟؟
ممنون میشم

----------

