دارای داکیومنت و مستندات در قالب فایل WORD Doc و دارای نمودار های UML و توضیحات کدها و دارای پشتیبانی
فهرست مطالب . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . شماره صفحه
چکیده 5
کلمات کلیدی 5
پیشگفتار 14
فصل اول: چشم انداز پروژه (VISION) 15
1-1- مقدمه 16
1-2- VISION چیست 16
1-3- موضوع پروژه 16
1-4- اهداف پروژه 16
1-5- انجام پروژه چه سودی دارد[2] 17
1-6- ذینفعان پروژه 17
1-7- سابقه انجام پروژه های مشابه 18
1-8- معایب پروژه های گذشته 18
1-9- زبان برنامه نویسی 19
1-10- پایگاه داده 20
1-11- روش تحلیل سیستم 20
1-12- سیستم عامل مورد نیاز برای پیاده سازی 20
1-13- سایر نرم افزارهای مورد نیاز برای پیاده سازی سیستم 20
فصل دوم: بررسی روند کار در یک کتابخانه 21
2-1- مقدمه 22
2-2- بررسی ACTOR های فیزیکی کتابخانه و شرح هر یک از آنها 22
2-3- بررسی USE CASE های فیزیکی کتابخانه 23
2-4- USE CASE DIAGRAM های فیزیکی کتابخانه 25
2-4-1- Use case Diagram مربوط به تقاضای عضویت 25
2-4-2- Use case Diagram مربوط به دریافت مدارک ثبت نام و صدور کارت 26
2-4-3- Use case Diagram مربوط به درخواست و تحویل کتاب 27
2-4-4- Use case Diagram مربوط به ثبت بازگشت کتاب 28
2-4-5- Use case Diagram مربوط به تمدید و لغو عضویت 29
2-4-6- Use case Diagram مربوط به گزارشات مدیریتی 30
2-5- سناریوی روند کار در کتابخانه[8] 31
2-5-1- سناریوی درخواست عضویت 31
2-5-2- سناریوی دریافت ارائه درخواست عضویت مراجعان به مدیر جهت بررسی (اکتور کارمند) 31
2-5-3- سناریوی تائید درخواست / رد درخواست (اکتور مدیر) 31
2-4-4- سناریوی درخواست مدارک جهت ثبت نام (اکتور کارمند) 31
2-5-5- سناریوی تحویل مدارک جهت ثبت نام (اکتور اعضا) 31
2-5-6- سناریوی بررسی و اعتبار سنجی مدارک تحویلی (اکتور کارمند) 31
2-5-7- سناریوی تائید اعتبار سنجی مدارک / عدم تائید اعتبار سنجی مدارک (اکتور کارمند) 32
2-5-8- سناریوی درخواست کد عضویت از مدیر برای عضو (اکتور کارمند) 32
2-5-9- سناریوی تخصیص کد عضویت به عضو (اکتور مدیر) 32
2-5-10- سناریوی صدور کارت عضویت برای درخواست کننده (اکتور کارمند) 32
2-5-11- سناریوی درخواست کتاب (اکتور اعضا) 32
2-5-12- سناریوی تحویل و ثبت تحویل کتاب (اکتور کارمند) 32
2-5-13- سناریوی بازگشت کتاب (اکتور اعضا) 32
2-5-14- سناریوی تحویل گیری و ثبت بازگشت کتاب (اکتور کارمند) 33
2-5-15- بررسی شمول جریمه دیر کرد (اکتور کارمند) 33
2-5-16- سناریوی پرداخت جریمه (اکتور اعضا) 33
2-5-17- سناریوی درخواست استفاده از سالن مطالعه (اکتور اعضا) 33
2-5-18- درخواست تمدید عضویت (اکتور اعضا) 33
2-5-19- سناریوی تمدید عضویت / لغو عضویت (اکتور کارمند) 33
2-5-20- ارائه گزارشهای مدیریتی به مدیر (اکتور کارمند) 33
فصل سوم: بررسی توجیه پذیری طرح (تعداد عملیات ، زمان و هزینه) 34
3-1- مقدمه 35
3-2- فهرست عملیات سنتی که حذف می شوند 35
3-3- فهرست عملیات سنتی که به عملیات سیستمی (نرم افزاری) تبدیل می شوند 36
3-4- فهرست عملیات سیستمی که اضافه شده اند 36
3-5- فهرست مرتب شده کلیه عملیات سیستمی 37
3-6- مقایسه تعداد عملیات سنتی و سیستمی در کتابخانه 37
3-6-1- مقایسه بر حسب تعداد عملیات 37
3-6-2- مقایسه از نظر زمان 38
3-6-3- مقایسه از نظر هزینه ها 39
3-6-3-1- هزینه های مربوط به روش سنتی 39
3-6-3-2- هزینه های مربوط به روش سیستمی 40
3-7- نتایج فاکتورهای بررسی شده 41
فصل چهارم: بررسی USE CASE DIAGRAM منطقی کتابخانه 42
4-1- مقدمه 43
4-2- فهرست مرتب شده FUNCTIONALITY هایی که باید سناریو برای آنها تعریف شود 43
4-3- نمودار منطقی کلی USE CASE سیستم کتابخانه دیجیتال 44
4-4- نمایش ارتباط اکتورهای سیستم در حالت کلی 45
4-5- نکاتی راجع به نوشتن سناریو برای USE CASE ها[1] 46
4-6-1- Use case Diagram مربوط به ثبت نام ، ورود و خروج از سیستم 47
4-6-1-1- سناریوی Sing Up Use Case 48
4-6-1-2- سناریوی LogIn Use Case 49
4-6-1-3- سناریوی LogOut Use Case 50
4-6-2- Use case Diagram مربوط به فعالیتهای مدیر 51
4-6-2-1- سناریوی Use Caseتعیین سطح دسترسی کاربران 52
4-6-2-2- سناریوی Use Caseویرایش لیست کتابها 53
4-6-2-3- سناریوی Use Caseمشاهده گزارشات مدیریتی 54
4-6-2-4- سناریوی Use Caseایجاد گروه کتاب جدید 55
4-6-3- Use case Diagram مربوط به فعالیتهای اپراتور 56
4-6-3-1- سناریوی Use Caseبروز رسانی پایگاه داده 57
4-6-3-2- سناریوی Use Caseانجام امور پشتیبانی 58
4-4-3-3- سناریوی Use Caseویرایش اطلاعات کاربری 59
4-6-4- Use case Diagram مربوط به فعالیتهای کاربر و کاربر عادی 60
4-6-4-1- سناریوی Use Caseویرایش اطلاعات 61
4-6-4-2- سناریوی Use Caseثبت اطلاعات کتابها 62
4-6-4-3- سناریوی Use Caseجستجو 63
4-6-4-4- سناریوی Use Caseمشاهده لیست کتابها 64
فصل پنجم: نمودار CLASS نرم افزر کتابخانه 65
5-1- مقدمه 66
5-2- نمودار اصلی CLASS سیتم 67
5-3- توضیحات متدهای نمودار کلاس اصلی سیستم 68
5-3-1- متد Insert () 68
5-3-2- متد Delete () 68
5-3-3- متد Update() 68
5-3-4- متد Select() 68
5-4- جزئیات و نام هر کلاس 69
5-4-1- کلاس کاربر 69
5-4-2- کلاس سطح دسترسی 69
5-4-3- کلاس سوابق مشاهده کتابها 69
5-4-4 کلاس کتابها 70
5-4-5- کلاس موضوع کتابها 70
فصل ششم: پیاده سازی پایگاه داده بر اساس CLASS DIAGRAM 71
6-1- مقدمه 72
6-2- نمودار ER ایجاد شد توسط SQL SERVER 74
6-3- نمایش جزئیات جداول پایگاه داده 76
6-3-1- جزئیات جدول Books 76
6-3-2- جزئیات جدول Users 77
6-3-3- جزئیات جدول tblMembers 77
6-3-4- جزئیات جدول Subjects 78
6-3-5- جزئیات جدول tblNahveieDariafteKetab 78
6-3-6- جزئیات جدول tblBookTransaction 79
6-4- اسکریپتهای SQL برای تولید جداول 79
فصل هفتم: نمودارهای توالی (SEQUENCE DIAGRAMS) 83
7-1- مقدمه 84
7-2- نمودار توالی ثبت اطلاعات اعضا در سیستم 84
7-3- نمودار توالی ورود به سیستم 85
7-4- نمودار توالی خروج از سیستم 86
7-5- نمودار توالی ایجاد موضوع جدید 87
فصل هشتم: نمودارهای همکاری (COLLABORATION DIAGRAMS) 88
8-1- مقدمه 89
8-2- نمودار همکاری ثبت نام در سیستم کتابخانه 89
8-3- نمودار همکاری ورود به سیستم کتابخانه 90
8-4- نمودار همکاری خروج از سیستم کتابخانه تحت ویندوز 91
8-5- نمودار همکاری ایجاد موضوع جدید 92
فصل نهم: نمودارهای فعالیت (ACTIVITY DIAGRAMS) 93
9-1- مقدمه 94
9-2- نمودار فعالیت ورود به سیستم (LOGIN) 95
9-3- نمودار فعالیت خروج از سیستم (LOGOUT) 96
9-4- نمودار فعالیت ثبت نام کاربر جدید در سیستم (SIGNUP) 97
9-5- نمودار فعالیت عملیات پشتیبانی (SUPPORTING) 98
9-6- نمودار فعالیت ایجاد موضوع کتاب جدید (CREATING NEW SUBJECT) 99
9-7- نمودار فعالیت انجام عملیات جستجو (SEARCHING) 100
فصل دهم: نمودار اجزا (DEPLOYMENT DIAGRAM) 101
10-1- مقدمه 102
10-2- نمودار DEPLOYMENT 102
فصل یازدهم: طراحی و کد نویسی بخش واسط کاربر 103
فصل دوازدهم: جمع بندی ، نتیجه گیری و پیشنهادات 124
12-1- جمع بندی 125
12-2- نتیجه گیری 126
12-3- پیشنهادات 127
منابع 128
کتابها 128
نرم افزارها 128
فهرست عکسها . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . شماره صفحه
نمایه 1 - اکتور مدیر 22
نمایه 2 - اکتور کارمند 22
نمایه 3 - اکتور مراجعه کننده 23
نمایه 4 - Use case Diagram مربوط به تقاضای عضویت 25
نمایه 5 - Use case Diagram مربوط به دریافت مدارک ثبت نام و صدور کارت 26
نمایه 6- Use case Diagram مربوط به درخواست و تحویل کتاب 27
نمایه 7 - Use case Diagram مربوط به ثبت بازگشت کتاب 28
نمایه 8 - Use case Diagram مربوط به تمدید و لغو عضویت 29
نمایه 9 - Use case Diagram مربوط به گزارشات مدیریتی 30
نمایه 10 - نمودار مقایسه ای تعداد عملیات سیستمی و سنتی در سیستم کتابخانه 38
نمایه 11 - نمودار مقایسه ای عملیات سیستمی و سنتی بر حسب زمان 38
نمایه 12 - نمودار مقایسه هزینه ها 40
نمایه 13 - نمودار UseCase کلی سیستم 44
نمایه 14 - نمایش ارتباط اکتورهای سیستم در حالت کلی 45
نمایه 15 - نمودار Use Case ثبت نام ، ورود و خروج از سیستم 47
نمایه 16- فعالیتهای مدیر 51
نمایه 17 - فعالیتهای اپراتور 56
نمایه 18 - فعالیتهای کاربر و کاربر عادی 60
نمایه 19 - نمودار اصلی Class سیتم 67
نمایه 20 - کلاس کاربر 69
نمایه 21 - کلاس سطح دسترسی 69
نمایه 22 - کلاس سوابق مشاهده کتابها 69
نمایه 25 - کلاس کتابها 70
نمایه 26 - کلاس موضوع کتابها 70
نمایه 27 - نمودار ER پایگاه داده 75
نمایه 28 - جدول کتابها 76
نمایه 29 - جدول اپراتورهای سیستم 77
نمایه 30 - جدول اعضای کتابخانه 77
نمایه 31 - جدول گروه های کتاب 78
نمایه 32 - جدول نحوه دریافت کتاب 78
نمایه 33 – تحویل کتاب به اعضا 79
نمایه 34 - نمودار توالی ثبت نام در سیستم کتابخانه 84
نمایه 35 - نمودار توالی ورود به سیستم 85
نمایه 36 - نمودار توالی خروج از سیستم 86
نمایه 39 - نمودار توالی ایجاد موضوع جدید 87
نمایه 41 - نمودار همکاری ثبت نام در سیستم کتابخانه تحت ویندوز 89
نمایه 42 - نمودار همکاری ورود به سیستم کتابخانه تحت ویندوز 90
نمایه 43 - نمودار همکاری خروج از سیستم کتابخانه تحت ویندوز 91
نمایه 46 - نمودار همکاری ایجاد موضوع جدید 92
نمایه 48 - نمودار فعالیت ورود به سیستم (LogIn) 95
نمایه 49 - نمودار فعالیت خروج از سیستم (LogOut) 96
نمایه 50 - نمودار فعالیت ثبت نام کاربر جدید در سیستم (SignUp) 97
نمایه 52 - نمودار فعالیت عملیات پشتیبانی (Supporting) 98
نمایه 54 - نمودار فعالیت ایجاد موضوع کتاب جدید (Creating New Subject) 99
نمایه 55 - نمودار فعالیت انجام عملیات جستجو (Searching) 100
نمایه 56 - نمودار اجزاء 102
فهرست جدول ها . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . شماره صفحه
جدول 1 - جدول نمودار مقایسه ای تعداد عملیات سیستمی و سنتی در سیستم کتابخانه 38
جدول 2 - جدول نمودار مقایسه ای عملیات سیستمی و سنتی در سیستم کتابخانه بر حسب زمان 39
جدول 3 - هزینه های مربوط به روش سنتی 39
جدول 4 - هزینه های مربوط به روش سیستمی 40
جدول 5 - جدول مقایسه ای هزینه های طرح 40
جدول 6 - نتایج فاکتورهای بررسی شده 41
جدول 7 - مثال نحوه نوشتم Scenario در UML 46
جدول 8 - جدول سناریوی Sing Up Use Case 48
جدول 9 - سناریوی LogIn Use Case 49
جدول 10 - جدول سناریوی LogOut Use Case 50
جدول 11 - جدول سناریوی Use Caseتعیین سطح دسترسی کاربران 52
جدول 12 - جدول سناریوی Use Caseویرایش لیست کتابها 53
جدول 13 - جدول سناریوی Use Caseمشاهده گزارشات مدیریتی 54
جدول 14 - جدول سناریوی Use Caseایجاد گروه کتاب جدید 55
جدول 15 - جدول سناریوی Use Caseبروز رسانی نرم افزار 57
جدول 16 - جدول سناریوی Use Caseانجام امور پشتیبانی 58
جدول 17 - جدول سناریوی Use Caseایجاد آرشیو 59
جدول 18 - جدول سناریوی Use Caseویرایش اطلاعات 61
جدول 19 - جدول سناریوی Use Caseثبت اطلاعات کتاب 62
جدول 20 - جدول سناریوی Use Caseجستجو 63
جدول 21 - جدول سناریوی Use Caseمشاهده لیست کتابها 64
پیشگفتار
کتابخانه Windows Application یا دیجیتال مجموعه ای از اطلاعات و خدمات به هم پیوسته ایست که در آن اطلاعات به صورت دیجیتال ذخیره شده و از طریق سیستمهای کامپیوتری و شبکه قابل دسترسی است.
کتابخانه دیجیتالی با پیدایش روشهای عرضه اطلاعات به صورت دیجیتال شکل گرفت. از زمانی که نشر سنتی یا ارائه اطلاعات بهصورت چاپی، به سوی نشر الکترونیک گام برداشت، با پدیدهای به نام کتابهای الکترونیکی مواجه شدیم. این متون به جای کاغذ روی دیسکها و حافظه رایانه ها ذخیره میشدند و به وسیله رایانه بازیابی و ارائه میگردیدند.
محل و فضایی که کتابهای الکترونیکی و دیجیتالی را نگهداری و سازماندهی میکند و تمهیدات لازم را به منظور انواع پردازش، چگونگی دسترسی به اطلاعات ، مرتبسازی و ذخیره مطالب و نیز ارائه قابلیتهای متنوع به کاربران فراهم میسازد ، کتابخانه دیجیتالی است. [21]
از این رو، میتوان اذعان داشت که دستاوردهای فنی در زمینه اطلاعات و دانشهای مربوط به فناوری اطلاعات باعث شده که امروزه تمامی امکانات و بهرهوریهایی که در زمینه کتاب، نشر و کتابخانههای سنتی وجود دارد و نیز همه اهدافی که در این حوزه دنبال میشود ، به صورت کاملتر، آسانتر، دقیقتر و سریعتر در کتابخانههای دیجیتالی عرضه شود.
نکته مهم اینکه بسیاری از مؤلفان و ناشران برای نشر گسترده محصولات خود ، با چالشهای جدی بهویژه در مسائل مادی و هزینه مالی انتشار ، مواجه میشوند و چه بسیار تاءلیفهایی که به همین دلیل منتشر نمیشوند. از سوی دیگر ، بسیاری از محققان خواستار این هستند که کتابها و منابعی را که به صورت چاپ شده در اختیار دارند ، به صورت دیجیتالی نیز در اختیار داشته باشند و اگر کتابی از چاپ خارج میشود ، متن آن نیز در قالب نرمافزار عرضه شود تا از پژوهش دیجیتالی نیز بهره لازم را ببرند.
بنابراین با ایجاد «کتابخانه دیجیتالی» هم نیاز کاربران و هم نیاز ناشران و عرضهکنندن تأمین میشود و بهیکباره هزینهها و چالشهای مالی آن از پیش رو برداشته میشود، هر چند برای رسیدن به این هدف باید اهتمام بیشتری از سوی مراکز مربوطه صورت گیرد تا ورود ناشران به فضای دیجیتال با سرعت و اطمینان خاطر بیشتری تحقق یابد.
البته این پروژه فقط یک پروژه تحقیقاتی دانشگاهی است و استفاده تجاری از آن مد نظر نمی باشد و حتی در سایر مکانها نیز مورد استفاده قرار نخواهد گرفت.
در ادامه به بررسی ، تحلیل و پیاده سازی پروژه کتابخانه تحت ویندوز خواهیم پرداخت.
namespace LibraryMembers
{
public partial class frmKarbarejadid : Form // تعريف فرم
{
public frmKarbarejadid()
{
InitializeComponent(); // فراخواني متد ايجاد اشياء
}
public void dbConnection()
{
FirstClass db2 = new FirstClass(); // ايجاد شي از كلاس
DataTable dt2 = new DataTable(); // ايجاد شي از كلاس جدول مجازي
dt2 = db2.dbOut("SELECT TOP 100 PERCENT UserName FROM dbo.Users ORDER BY UserName");
dataGridView1.DataSource = dt2;
}
public void insSql()
{
FirstClass dbIns = new FirstClass(); // ايجاد شي از كلاس
dbIns.cmd.Parameters.Add("@UserName", SqlDbType.NVarChar).Value = textBox1.Text.Trim(); // تخصيص مقدار فيلد متني با حذف فضاي خالي دو صرف متن
dbIns.cmd.Parameters.Add("@Password", SqlDbType.NVarChar).Value = textBox2.Text.Trim(); // تخصيص مقدار فيلد متني با حذف فضاي خالي دو صرف متن
dbIns.exeCommand("sp_Users_Insert");
}
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text == "" || textBox2.Text == "")
{
MessageBox.Show("مقادیر فیلدها نمی توانند خالی باشند");
}
else
{
insSql(); // فراخواني متد درج اطلاعات در پايگاه داده
dbConnection();
textBox1.Clear(); // حذف مقادير فيلد متني
textBox2.Clear(); // حذف مقادير فيلد متني
}
}
private void frmKarbarejadid_Load(object sender, EventArgs e)
{
dbConnection();
}
private void button2_Click(object sender, EventArgs e)
{
if (textBox1.Text == "" || textBox2.Text == "")
{
MessageBox.Show("مقادیر فیلدها نمی توانند خالی باشند");
}
else
{
FirstClass dbCheck = new FirstClass(); // ايجاد شي از كلاس
DataTable dtChek = new DataTable(); // ايجاد شي از كلاس جدول مجازي
dtChek = dbCheck.dbOut("SELECT TOP 100 PERCENT UserName, Password FROM dbo.Users WHERE (Password = '" + textBox2.Text.Trim() + "' AND UserName = '" + textBox1.Text.Trim() + "') ORDER BY UserName");
if (dtChek.Rows.Count <= 0) // بررسي تعداد ركوردهاي واكشي شده
{
MessageBox.Show("نام کاربری و کلمه عبور همخوانی ندارند");
}
else
{
FirstClass dbDel = new FirstClass(); // ايجاد شي از كلاس
dbDel.cmd.Parameters.Add("@UserName", SqlDbType.NVarChar).Value = textBox1.Text.Trim(); // تخصيص مقدار فيلد متني با حذف فضاي خالي دو صرف متن
dbDel.exeCommand("sp_Users_DeleteRow");
dbConnection(); // فراخواني متد
}
}
}
}
}
برنامه مدیریت کتابخانه دیجیتال با استفاده از#C و ویندوز اپلیکیشن
برنامه کتابخانه دیجیتال با استفاده از#C و ویندوز اپلیکیشن داراي بخشهاي متنوع و داراي چندين فرم داراي بخش مديريتي به همراه پايگاه داده SQL Server و داراي پشتيباني. اين برنامه کاملا متن باز Open Source بوده و بر روي Server نيز قابل نصب و اجرا مي باشد.
عنوان جداول طراحي شده در سيستم طراحی و پیاده سازی کتابخانه دیجیتال
معرفي جدول هاي پايگاه داده
BookH
Books
Members
MemberState
Subjects
Users
معرفي رويه هاي پايگاه داده
SelectQuery
sp_BookH_DeleteRow
sp_BookH_Insert
sp_BookH_SelectAll
sp_BookH_SelectRow
sp_BookH_Update
sp_Books_DeleteRow
sp_Books_Insert
sp_Books_SelectAll
sp_Books_SelectRow
sp_Books_Update
sp_Books_Update2
sp_Members_DeleteRow
sp_Members_Update
sp_Subjects_DeleteRow
sp_Subjects_Update
sp_Users_DeleteRow
sp_Users_Insert
sp_Users_SelectAll
sp_Users_SelectRow
sp_Users_Update
معرفي ويوهاي پايگاه داده
MeberNameSname
MemberList1
rptBooksShow
rptMemberreo
VIEW1
VIEW2
VIEW21
امکانات برنامه
فرم تمدید عضویت اعضا
فرم لغو عضویت
فرم ثبت نام اعضای کتابخانه
فرم ثبت بازگشت کتب تحویلی
و............
پروژه داراي پشتيباني مي باشد.
برچسبها: