Lab 09 Report - Online Survey System
Project Overview
- This project implements an online survey management system using ASP.NET Web Forms.
- It allows survey builders to create surveys and add different types of questions.
- Users (surveyors) can participate in surveys and submit responses.
- Admin manages users, surveys, and monitors system activity.
User Roles
- Admin - Manages users, controls surveys, and monitors system.
- Builder - Creates surveys and adds questions.
- Surveyor - Attempts surveys and submits responses.
System Implementation
- Developed using ASP.NET Web Forms (VB.NET).
- Session-based authentication is used for login and role handling.
- Separate dashboards for Admin, Builder, and Surveyor.
- Role-based redirection ensures secure navigation.
Admin Module
- Manage users (view and delete accounts).
- Activate or deactivate surveys.
- View detailed survey results and analysis.
- Monitor system statistics like total surveys, users, and responses.
Survey Builder Module
- Create surveys with title and anonymity option.
- Add questions (MCQs and True/False).
- Insert multiple options for each question.
- View responses submitted by users.
Surveyor Module
- View all active surveys.
- Attempt surveys only once (for non-anonymous surveys).
- Submit answers for each question.
- Anonymous surveys allow submission without identity tracking.
Key Features
- Anonymous and non-anonymous survey support.
- Prevention of duplicate submissions.
- Dynamic loading of questions and options.
- Automatic storage of responses in database.
Database & SQL Usage
- Tables include Users, Surveys, Questions, Options, Responses, and Answers.
- Uses JOIN operations to retrieve survey results and analysis.
- Survey responses are stored with optional user identity.
- Aggregated queries are used for result analysis.
Test Cases Considered
- User login with invalid credentials.
- Builder creating survey without title.
- Adding question without selecting survey.
- Surveyor attempting same survey multiple times.
- Anonymous vs non-anonymous submission handling.
- No surveys available scenario.