پایان نامه دوره کارشناسی کامپیوتر
گرایش نرم افزار
چکیده
طراحی و پیاده سازی یک سیستم E-test
همان طور که از نام پروژه پیداست ما به دنبال طراحی یک سیستم برگزاری آزمون بصورت آنلاین هستیم، برنامه ای که بتواند این امکان را در اختیار اساتید، معلمان و یا هر نهاد وسازمانی که به دنبال برگزاری آزمون بصورت الکترونیکی، سریع ،آسان ، ارزان و ایمن باشد، فراهم سازد. بدیهی است که کنترل و هدایت قسمت های مختلف سیستم در اختیار سطوح مختلف دسترسی می باشد که توسط طراح پیاده سازی شده است و با تغییر آن می توان عملکرد سیستم را بر حسب نیاز تغییر داد. این پروژه می تواند کاربردهای وسیعی داشته باشد و در زمینه های گوناگون مورد استفاده قرار بگیرد و با کاهش هزینه های برگزاری آزمون، سهولت و امنیت برگزاری یک آزمون را تضمین نماید. با توجه به اینکه انجام این کار نیازمند اطلاعات پایه ای از عملکرد این گونه سیستم ها وکارهای انجام شده در این زمینه بود، تحقیق و جمع آوری اطلاعات در این زمینه را آغاز کردم. بعد از جمع آوری اطلاعات مورد نیاز پروژه را به چند گام و هر گام را به فازهای کوچکتر تقسیم نموده و مرحله به مرحله کار را جلو بردم. آنچه در این مختصر آمده توضیحاتی در مورد سیستم ، تعریف ، اصول کار و شرح قسمت های مختلف سیستم، چگونگی پیاده سازی قسمتهای مختلف و الگوریتم های مربوطه می باشد.
واژههای کلیدی
سیستم ،آزمون آنلاین، طراحی سوال، session،آزمون پیش فرض.
مقدمه
در آستانه قرن بیست و یکم به دلیل گسترش الکترونیک، آنچه بیش از همه در امر اطلاع رسانی مدنظر است، دیجیتالی کردن اطلاع رسانی است که از طرق مختلف می توان به این هدف دست یافت. یکی از جدیدترین روش ها، اطلاع رسانی از طریق شبکه جهانی اینترنت می باشد.
از سوی دیگر امروزه با گسترش روزافزون علم و صنعت کامپیوتر در تمام سطوح جامعه از امور فردی گرفته تا اجتماعی شاهد جریانی هستیم که از آن به عنوان مکانیزه شدن یاد می شود. جریانی که خود ملاک و معیاری برای سنجش میزان کارایی امور قرار داده است، به طوری که اگر فعالیت و عملیاتی مکانیزه نباشد، هیچ گونه ابزاری برای مقایسه خود ونیز رقابت با دیگر سیستم های مشابه را نخواهد داشت. جریانی که اگرچه ممکن است برای خواستاران آن هزینه بر باشد ولی آینده ای روشن را برای ارتقا آن ترسیم خواهد کرد.
در این راستا جامعه طیف وسیعی از فعالیت های خود را با شرایط جدید وفق داده است و سازمان ها مکانیزه کردن سیستم های خود را تنها وسیله، برای خدمت دهی مناسب به خارج از سیستم و تامین محیطی ایده آل برای کارکنان درون سیستم خود می دانند.
با توجه به آنچه خواندید، یکی از مظاهر تلفیق مکانیزاسیون و اطلاع رسانی، وب سایت است.در حقیقت طراحی وب کار مشکل و پیچیده ای است، چرا که موضوع اصلی آن معماری اطلاعات و طراحی جریان کاری است که هیچ کدامشان را نمی توان استاندارد کرد.
طراحی سوالات یک آزمون، چاپ کردن و تکثیرآن ها به تعداد مورد نیاز،برگزاری آزمون به روش سنتی،تصحیح اوراق و اعلام نتایج مدتها پس از برگزاری آزمون از مشکلات عمده اساتید،معلمین ومدرسین و حتی داوطلبان شرکت در آزمون است.
اما امروزه با عمومی ترشدن استفاده از رایانه ها، می توان انتظار داشت در مراکز برگزاری آزمون،تعداد قابل توجهی رایانه، در دسترس باشد. حال اگر بتوان با توجه به توانائی بالای رایانه ها شرایطی فراهم کرد تا مشکلات مذکور، کمتر و درکل، سرعت برگزاری یک آزمون تا حد ممکن سریعتر شود، می توان از بسیاری از اضافه کاری ها اجتناب نمود.
پروژه ای که قرار است با همین هدف طراحی و پیاده سازی شود یک" سیستم مدیریت آزمون آنلاین" است تا جایگزین مناسبی برای روش های سنتی برگزاری آزمون گردد.
استفاده از این سیستم های OTMS (Online Test Management System)،روز به روز در حال گسترش است و امروزه بسیاری از موسسات معتبر دنیا با استفاده از این نوع سیستم ها آزمون های خود را به صورت Internet_Based Test به اجرا در می آورند.
آزمون هائی از قبیل TOEFL،IELTS و...از این دست آزمون ها هستند.
در نهایت با توجه به آنچه در ابتدا درباره اهمیت اطلاع رسانی و ارتباط پویا با کاربران در شبکه ایترنت گفته شد و همچنین افزایش روزافزون اهمیت Web Apps تصمیم بر آن گرفته شد تا وب سایتی پویا طراحی شود تا بتواند نیازهای مورد نظر را برآورده سازد.
فصل یکم – نگاه کلی به سیستم های مدیریت آزمون آنلاین
1-1- سیستم هایOTMS و ویژگی آنها
سیستم های OTMS (Online Test Management System)،همان سیستم های مدیریت و برگزاری آزمون روی خط یا آنلاین هستند که کاربرد آنها روز به روز در حال افزایش بوده و به عنوان یکی از ابزارهای آموزش الکترونیکی مورد توجه قرار گرفته اند.
این سیستم ها در مقایسه با روش های برگزاری آزمون بصورت سنتی از مزایا و ویژگی های بسیار زیادی برخوردار هستند که اجمالا در اینجا بیان می شود.
ویژگی ها:
از هزینه های زیاد و گاهی بسیار زیاد چاپ و تکثیر اوراق امتحانی تا حد صفر کاسته می شود.
از مشکلات تکثیر سوالات؛ از قبیل اضافه یا کم بودن تعداد برگه ها نسبت به تعداد داوطلبان آزمون، ناخوانا بودن یا واضح نبودن سوالات و تصاویر،محدودیت در استفاده از تصاویر متحرک و فیلم، انباشته شدن سوالات تکثیر شده و...کاسته می شود.
فرآیند تصحیح اوراق و اعلام نتایج در کسری از زمان صورت می گیرد.
اضطراب داوطلبان آزمون در مدت زمان بین شرکت در آزمون و اعلام نتایج به شدت کاهش می یابد.
تاثیر اشتباهات معمول انسانی در زمان تصحیح اوراق از بین می رود.
برگزاری آزمون های آزمایشی برای سنجش سطح علمی داوطلبان به یک امر آسان تبدیل شده و با برگزاری مداوم آنها، بر سطح آمادگی داوطلبان افزوده می شود.
حضور کاربر در محل برگزاری آزمون الزامی نمی باشد.
با توجه به امکانات سیستم، از قبیل نمایش تصادفی سوالات، امکان تقلب در آزمون کاهش می یابد.
امکان تهیه سریع و خودکار آمارهای بسیار جزئی از نحوه پاسخگوئی داوطلبان تنها با چند کلیک فراهم باشد.
امکان تعریف زمان برای پاسخگوئی به سوالات همانند روش های سنتی و امکان مشاهده نتایج حاصل بلافاصله پس از پایان آزمون.
1-2- شروع به کار و موانع موجود بر سر راه
در آغاز پروژه های تحت وب باید با توجه به نوع این وب سایت و عملیاتی که قرار است برای ما انجام دهد، یک زبان از مجموع زبان های ایجاد صفحات وب به درستی انتخاب و مورد استفاده قرار گیرد.
شاید با HTML (مخفف زبان نشانه گذاری فرامتنی) به عنوان یکی از ساده ترین و مقدماتی ترین نوع از این زبان ها آشنا باشید. اما از آنجائی که این زبان قدرت ایجاد صفحاتی پویا به شکلی دوطرفه بین کاربر و سرویس دهنده را ندارد گزینه مناسبی برای ما به شمار نمی رود.
در واقع ما نیاز به زبانی داریم که بتواند با پایگاه داده موجود بر روی سرویس دهنده ارتباط برقرار کند و روی داده های مورد نظر پردازش و محاسبه انجام دهد(که این ویژگی در HTML یافت نمی شود)، بنابراین در این جستجو به زبان های .ASP،.PHP و.JSP می رسیم.
اما هر کدام از این زبان ها پایگاه داده،سیستم عامل و نرم افزار اجرای خاص خود را دارد که بر روی سرویس دهنده مورد نظر نصب می شود(سمت سرور).