پروژه طراحی و پیاده سازی یک سیستم E-test


دنلود مقاله و پروژه و پایان نامه دانشجوئی

پروژه طراحی و پیاده سازی یک سیستم E-test مربوطه  به صورت فایل ورد  word و قابل ویرایش می باشد و دارای ۵۳  صفحه است . بلافاصله بعد از پرداخت و خرید لینک دانلود پروژه طراحی و پیاده سازی یک سیستم E-test نمایش داده می شود، علاوه بر آن لینک پروژه مربوطه به ایمیل شما نیز ارسال می گردد

 فهرست

مقدمه     ۱
فصل یکم –  نگاه کلی به سیستم های مدیریت آزمون آنلاین     ۳
۱-۱-  سیستم هایOTMS  و ویژگی آنها‏      ۳
۱-۲- شروع به کار و موانع موجود بر سر راه      ۴
۱-۳- مشخصات اولیه سیستم       ۵
فصل دوم- بانک اطلاعاتی     ۷
۲-۱- MYSQL       ۷
۲-۱-۱- انتخاب پایگاه داده و برتری های MYSQL       ۷
۲-۱-۲- رقبای اصلی MYSQL       ۹
۲-۲- طراحی بانک اطلاعاتی آزمون       ۱۱
فصل سوم- زبان برنامه نویسی PHP      ۱۷
۳-۱- PHP          ۱۷
۳-۱-۱- بررسی قابلیت های PHP     ۱۸
۳-۱-۲- مقایسه  PHP با سایر زبان ها    ۱۹
۳-۱-۳- معایب PHP    ۲۳
۳-۲- Form Validation     ۲۶
۳-۳- استفاده از Sessionها     ۲۷
فصل چهارم- آشنائی با سیستم مورد نظر ۳۴
۴-۱- روند کلی برگزاری آزمون ۳۴
۴-۲- آموزش گام به گام کار با سیستم    ۳۵
۴-۲-۱- بخش مدیریت(مدیر سیستم) ۳۵
۴-۲-۲- بخش مدیریت(مربی)        ۳۸
۴-۲-۳- بخش داوطلبان     ۴۱

فصل یکم –  نگاه کلی به سیستم های مدیریت آزمون آنلاین

۱-۱-    سیستم هایOTMS  و ویژگی آنها‏ ‏

سیستم های OTMS (Online Test Management System)،همان سیستم های مدیریت و برگزاری آزمون روی خط یا آنلاین هستند که کاربرد آنها روز به روز در حال افزایش بوده و به عنوان یکی از ابزارهای آموزش الکترونیکی مورد توجه قرار گرفته اند.

این سیستم ها در مقایسه با روش های برگزاری آزمون بصورت سنتی از مزایا و ویژگی های بسیار زیادی برخوردار هستند که اجمالا در اینجا بیان می شود.

ویژگی ها:

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

۱-۲-    شروع به کار و موانع موجود بر سر راه

در آغاز پروژه های تحت وب باید با توجه به نوع این وب سایت و عملیاتی که قرار است برای ما انجام دهد، یک زبان از مجموع زبان های ایجاد صفحات وب به درستی انتخاب و مورد استفاده قرار گیرد.

شاید با HTML (مخفف زبان نشانه گذاری فرامتنی) به عنوان یکی از ساده ترین و مقدماتی ترین نوع از این زبان ها آشنا باشید. اما از آنجائی که این زبان قدرت ایجاد صفحاتی پویا به شکلی دوطرفه بین کاربر و سرویس دهنده را ندارد گزینه مناسبی برای ما به شمار نمی رود.

در واقع ما نیاز به زبانی داریم که بتواند با پایگاه داده موجود بر روی سرویس دهنده ارتباط برقرار کند و روی داده های مورد نظر پردازش و محاسبه انجام دهد(که این ویژگی در HTML یافت نمی شود)، بنابراین در این جستجو به زبان های .ASP،.PHP و.JSP می رسیم.

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

 جدول۱-۲- شروع به کار و موانع موجود بر سر راه

سیستم عامل

نرم افزار اجرا

پایگاه داده

زبان

Windows

IIS

SQL server

.ASP

هر سیستم عامل

Apache

My SQL

.PHP

هر سیستم عامل

TOM CAT

Java DB

.JSP

حال با توجه به برتری سیستم عامل های سرویس دهنده Linux ،ساده بودن و نزدیکی زبان PHP به زبان C، امکان استفاده آنها در سرویس دهنده سیستم عامل Windows و نیز نیاز به ارتباط پویا و دوطرفه با داوطلبان شرکت در آزمونها، از گزینه دوم موجود در این جدول برای پروژه خود استفاده خواهیم کرد.

۱-۳- مشخصات اولیه سیستم

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

این سیستم برای برگزاری آزمون تحت وب، و توسط زبان برنامه نویسی PHP پیاده سازی می شود.
در کنار PHP ،برای انعطاف بیشتر سیستم از Javascript و در بعضی از بخش ها از تکنولوژی Ajax استفاده خواهدشد.
از زبان MySQL  جهت ارتباط با پایگاه داده استفاده شده وPHPmyAdmin به عنوان DBMS در نظر گرفته شده است.
استفاده از نرم افزار WAMP ،جهت اجرای برنامه های تحت وب بر روی ویندوز.
تعریف سه سطح مدیر سیستم،مربی و داطلب. مدیر سیستم یا مربی با ورود به سیستم سوالات مورد نظر را طراحی کرده و در اختیار داوطلبان قرار می دهند.

در اینجا ما به جای نصب هر یک از نرم افزار های مورد نیاز برای این زبان از یک نرم افزار جداگانه به نام WAMPServer(مخففPHP Windows Apache MySQL) استفاده میکنیم. این نرم افزار که بر روی سیستم عامل Windows نصب می شود شامل نسخه ای از Apache، PHP و MySQL (phpMyAdmin و SQLitemanager برای مدیریت پایگاه داده) می باشد.

پس از نصب برنامه بالا برای ویرایش کدهای PHP نیاز به برنامه های ویرایشگری مانند EnginSite یا Dreamweaver  داریم که در اینجا به دلیل امکاناتی که Dreamweaver دارد از آن استفاده می کنیم.

مشکلات بر سر راه

هر چند می توان مزایای بسیار زیادی برای این سیستم برشمرد، اما هنوز مشکلاتی بر سر راه توسعه استفاده از این روش وجود دارد. مشکلاتی از قبیل:

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

 

فصل دوم – بانک اطلاعاتی

۲-۱- MY SQL

MY SQL بانک اطلاعاتی بسیار سریع و امن RDBMS است.MY SQL یکی از انواع سرویس دهنده های پایگاه داده است که با وجود اینکه نسبت به سایر DBMSهای موجود قدرتمند نمی باشد، اما بعلت قیمت و عملکرد مناسب آن، مورد استفاده گسترده قرار می گیرد. MY SQLیک سیستم مدیریت پایگاه داده رابطه ای (RDBMS) است که امکان ذخیره سازی،جستجو،مرتب سازی و بازیابی داده ها را فراهم می کند.سرویس دهنده MY SQL به چندین کاربر اجازه استفاده همزمان از داده ها را می دهد و دسترسی افراد معتبر به داده ها را تسریع می کند.بنابراین MY SQL یک سرویس دهنده چند کاربره و چند ریسمانه است.

این سیستم مدیریتی پایگاه داده، رایج ترین پایگاه داده کدباز(open Source) محسوب می شود.بدین دلیل MY SQL بانک اطلاعاتی با کاربران زیاد و کانال های متفاوت می باشد که MY SQL زبان استاندارد جهانی بانک های اطلاعاتی SQL را به کار می گیرد.

 ۲-۱-۱ انتخاب پایگاه داده و برتری های MYSQL 

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

یکی از تکنولوژی ها، ADO می باشد که در برنامه کاربردی نوشته شده از آن استفاده شده است.ADO یک واسط برنامه کاربردی از شرکت ماکروسافت است که به کاربرانی که برنامه های کاربردی ویندوز را می نویسند،این قابلیت را می دهد که به یک پایگاه داده رابطه ای و یا غیر رابطه ای چه محصول ماکروسافت باشد و یا از دیگر تولیدکنندگان دسترسی داشته باشند.

اما در PHP این مسائل نیست،یک مزیت بزرگ استفاده از یک زبان اسکریپتی مثل PHP قابلیت ایجاد محتوای پویا می باشد.اگرمنبع محتوا ورودی کاربر از محل متغیرهائی چون Session و یا فایلهای متنی باشد مشکلی وجود ندارد،اما برای داشتن اطلاعاتی ماندگارتر از طول حیات یک صفحه وب، نیاز است مدیریت داده و دیسک را به پایگاه داده ای بنام MY SQL بسپاریم که علاوه بر فراهم کردن شرایط استفاده از دستورات SQL و ایجاد یک سیستم مدیریت پایگاه داده(DBMS) به عنوان یک واسط عمل می کند و علاوه بر آن نیز خود در PHP دارای واسط کاربر است یعنی می توان دستورات MY SQL را با کمک Queryهای PHP به آن ارسال کرد.

اکثر برنامه های کابردی تحت وبی که نوشته می شوند،برای ذخیره دائمی اطلاعات خود از بانک اطلاعاتی استفاده می کنند. هرگاه از بانک اطلاعاتی صحبتی می شود، برنامه نویس می بایست فاکتورهایی را برای انتخاب بانک در نظر بگیرد و با حلاجی آنها،بهترین انتخاب را انجام دهد.ویژگی های مشترکی که هر برنامه نویس به دنبال آنهاست و در واقع حداقل  نیازمندی های او از یک بانک اطلاعاتی است را می توان در سه صفت خلاصه کرد:

سرعت،پایداری و قابلیت اطمینان؛

آیا MY SQL تمام نیازمندی های ذخیره و بازیابی داده ها را با توجه به آنچه در مورد این پروژه و نیز قابلیت های گفته شده در MY SQL ، تامین نمی کند؟!

 

  ۲-۱-۲ رقبای اصلی MYSQL

 رقبای اصلی MY SQL عبارتند از:SQL Server،PostgreSQL و Oracle.

در برابر این رقبا، MY SQL از مزیت های زیر بهره مند است:

کارآئی بالا،هزینه پائین،سهولت پیکربندی و یادگیری،قابلیت حمل،در دسترس بودن کد اصلی،خدمات    پشتیبانی مناسب.سرعت بالای MY SQL در مقایسه با رقیبانش غیر قابل انکار می باشد.

برای مقایسه توانائی های MY SQL و دیگر بانک ها ابتدا نگاهی به PostgreSQL می اندازیم که شاید بتوان آنرا پدربزرگ بانک های طلاعاتی کدباز دانست(تلفظ PostgreSQL بصورت Post-gress-q-l میباشد). PostgreSQL یک بانک اطلاعاتی کدباز به معنای واقعی کلمه است که تحت جواز ساده و قابل انتقال BSD منتشر شده است. PostgreSQL دارای امکانات ویژه ای است و از استانداردهای ANSI SQL92 وSQL92 هم تبعیت کرده که یا در بانک های دیگر وجود ندارد و اگر هم باشد،به این کاملی نیست. علاوه بر این کار با آبجکت ها و داده های سلسله مراتبی هم با این بانک اطلاعاتی میسر است.

توانائی PostgreSQL را در زمینه آبجکت ها و داده های سلسله مراتبی را در نظر بگیرید.گاهی اوقات باید این ویژگی را جز معایب برشمرد و در واقع گاهی استفاده از PostgreSQL مثل خوردن غذا با ملاغه است.

خوب اگر صرفا بخواهید چیزهائی مثل آدرس و شماره تلفن و آی دی در بانک ذخیره کنید،نیازی به یک بانک اطلاعاتی رابطه ای شی گرا(Object Relational) ندارید. PostgreSQL در شرایط low-load، به اندازه MY SQL سریع نیست و اگر نیاز شما صرفا یک ذخیره و بازیابی ساده است، بهتر است دورPostgreSQL را خط بکشید.

بالاخره اینکه PostgreSQL پیچیده تر از MY SQL بوده و مدیریت مجوزها به سادگی آن نمی باشد. در ضمن نحوه کار با PostgreSQL  برای کاربران خیلی دشوارتر بوده و در بین برنامه نویسان کاربران آن کمتر از کاربران MY SQL می باشد.

MY SQL را می توان محبوب ترین پایگاه داده کدباز جهان نامید. اما علیرغم چنین محبوبیتی، بسیاری از شرکت های بزرگ از قبول آن سرباز می زنند.دلایل گوناگونی مزید این علت است،از تصورات نادرستی که پروژه های کدباز را بچه گانه تلقی می کنند گرفته، تا عقایدی نظیر اینکه هیچ چیز رایگان خوب نیست،همه و همه چنین مقاومت هایی را دامن می زند.اگرچه ایرادات غالبا درستی از MY SQL گرفته می شود،برای مثال MY SQL بر خلاف همتاهای اتیکت دار خود نظیر اوراکل یا DB2، از Stored Procedureها پشتیبانی نمی کند.البته MY SQL در نسخه ۵ خود که هم اکنون در دست توسعه است،از Stored Procedureها پشتیبانی میکند.(در واقع PHP وMY SQL  هر دو در نسخه ۵،به بلوغ می رسند)

Stored Procedureها مجموعه ای از فرامین SQL و منطبق برنامه هستند که در سرویس دهنده بانک اطلاعاتی ذخیره می شوند،سپس این Stored Procedureها توسط برنامه های کاربردی،فراخوانی می شوند و از این رو برنامه نویسان را تاحدی از نوشتن SQL بی نیاز کرده تا اکثر منطق دسترسی به بانک از منطق خود برنامه کاربردی مجزا شود.

یکی از مزایای غیر مستقیم استفاده از Stored Procedureها،کوتاهتر و قابل فهم تر شدن کد برنامه کاربردی است.دیگر مزیت آن اینست که SQL می تواند Pre-Compile شده و از اینرو باعث افزایش سرعت برنامه کاربردی شود.از آنجا که Stored Procedureها حاوی منطق برنامه هستند،بیشتر پردازش در سمت سرویس دهنده بانک اطلاعاتی صورت می گیرد و بدین طریق در پهنای باندی که برای ارسال داده ها به برنامه کاربردی مصرف می شود،صرفه جوئی به عمل می آید.همچنین در هنگام پیاده سازی برنامه های کاربردی چند لایه(n-tier)، از Stored Procedureها برای جداسازی لایه داده از لایه سرویس دهنده استفاه می شود.

امنیت از دیگر مزایای Stored Procedureهاست.

می توان به برنامه های کاربردی مجوز اجرای Stored Procedureها را اعطا کرد در حالیکه مجوز دسترسی مستقیم به جداول را ندارند.متاسفانه در حال حاضر، MY SQL  از دستور GRANT EXECUTE پشتیبانی نمیکند.این بدان معناست که اگر برنامه کاربردی اجازه دسترسی به یک جدول را نداشته باشد،مجوز اجرای Stored Procedureای که به همان جدول دسترسی می یابد را هم نخواهد داشت.

MY SQL به یک رقیب جدی و سرسخت برای Oracle است،ضمن آنکه بطور قطع از SQL Server ماکروسافت برتر است.برخلاف پایگاه های داده رابطه ای ماکروسافت و اوراکل که از سینتکس فعلی SQL:2003 برای Stored Procedureها تبعیت نمی کنند، MY SQLو DB2با این استاندارد خود را تطبیق داده اند.از لحاظ تئوری،می توان گفت در صورتی که ساختار بانک اطلاعاتی مشابه باشد،Stored Procedure که برای یکی از آنها نوشته می شود در دیگری قابل اجراست.

بازهم لازم به یادآوری است که پشتیبانی از Stored Procedureها در نسخه در حال توسعه MY SQL به خوبی و پختگی اوراکل، SQL ServerوDB2 نیست.

یکی از نکاتی که باید دقت شود اینست که MY SQL از Unicode پشتیبانی می کند،نه بطور کامل.به این معنی که تنها در دستورات مربوط به Length و مقایسه کاراکترها هر کاراکتر Unicode را به صورت دو کاراکتر می بیند و برای همین تنها در دستوراتی مانند length یا طول رشته و دستور order در queryها مشکل بوجود می آید،اما مشکل sort قابل حل است.اما در مواردی هم MY SQL برای کار با Unicode مشکلی ندارد و این برای ما فارسی زبانان یک حسن است.

برای فارسی نویسی در MY SQL داده را اکثرا با فرمت utf-8 ردوبدل می کنند.بطور کلی زمانی که باMY SQL و PHP کار می کنید باید بدانیدکه اصولا PHP در کار با بانک اطلاعاتی MY SQL برای نگهداری اطلاعات شامل Unicode هیچ مشکلی ندارد و تمامی دستورات مقایسه وqueryها هم برایش درست کار می کنند.

۲-۲- طراحی بانک اطلاعاتی آزمون

 

55,000 ریال – خرید

تمام مقالات و پایان نامه و پروژه ها به صورت فایل دنلودی می باشند و شما به محض پرداخت آنلاین مبلغ همان لحظه قادر به دریافت فایل خواهید بود. این عملیات کاملاً خودکار بوده و توسط سیستم انجام می پذیرد.

 جهت پرداخت مبلغ شما به درگاه پرداخت یکی از بانک ها منتقل خواهید شد، برای پرداخت آنلاین از درگاه بانک این بانک ها، حتماً نیاز نیست که شما شماره کارت همان بانک را داشته باشید و بلکه شما میتوانید از طریق همه کارت های عضو شبکه بانکی، مبلغ  را پرداخت نمایید. 

 

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

    براي قرار دادن بنر خود در اين مکان کليک کنيد
    به راهنمایی نیاز دارید؟ کلیک کنید
    

    جستجو پیشرفته مقالات و پروژه

    سبد خرید

    • سبد خریدتان خالی است.

    دسته ها

    آخرین بروز رسانی

      دوشنبه, ۱۵ آذر , ۱۳۹۵
    
    اولین پایگاه اینترنتی اشتراک و فروش فایلهای دیجیتال ایران
    wpdesign Group طراحی و پشتیبانی سایت توسط دیجیتال ایران digitaliran.ir صورت گرفته است
    تمامی حقوق برایdjkalaa.irمحفوظ می باشد.