Food for Life PHP Minor Project Synopsis

Introduction

”FOOD FOR LIFE” is a food relief web project to serve food for the needy. Nowadays, One-third of the food produced is being wasted and about 9 percent of the people in this world go to bed on an empty stomach. In this Minor Project, various party palaces or hotels have to give information about their unused food on our website and we or other organisations have to collect the food and distribute the food to the needy.

Technologies to be used

 This Food for Life project will be a Web application to be developed in PHP having below technologies:

  • PHP
  • HTML
  • MYSQL
  • JavaScript

Technical feasibility

The technical needs of the Food for Life system may include:

Front-end and back-end selection

When we decided to develop the Food for Life project we went through an extensive study to determine the most suitable platform that suits the needs of the organization as well as helps in the development of the PHP & MySQL project.

Front-end selection:

    1. Scalability and extensibility
    2. Flexibility
    3. Robustness
    4. Platform independent
    5. Easy to debug and maintain

Back-end Selection:

1. Multiple user support.
2. Efficient data handling.
3. Provide inherent features for security.
4. Efficient data retrieval and maintenance.
5. Easy to install.
6. Various drivers must be available.
7. Easy to implant with the Front-end.

Objectives 

The main objectives of this Food for Life project are:

  • The main objective of our academic minor project is to reduce food wastage as many of us throw unused food in dustbins
  • The objective of this is to help the organization that serves food to the hungry people

Conclusion 

This ”Food For Life” project is to feed hungry people with the help of our system. Organizations such as hotels or restaurants have to publish the details of their food on our Food for Life website.

College Classroom Check and Fill Mini Project Synopsis

Introduction

The Classroom Check and Fill project is to prepare a website that tells the current status of a particular room. It tells whether a class is going on or empty or there is no class in that particular room. . It uses the technologies like PHP, python, java, MySQL, and many more. With the help of this website, a teacher or a student can know the status of the room and work accordingly.

Objectives

The aim of our project is to help teachers and students to check if in the room a class is going on if the room is empty or if there is no class in that particular room.

1. To help the HODs and teachers to check whether the venue is empty or not (in one click)
2. To help students to check their timetables with ease
3. Provides user-friendly application

Methodology/ Planning of work

Step 1: GATHERING RELEVANT INFORMATION
Our project is to help teachers and students to check if in the room a class is going on or the room is empty or there is no class in that particular room. We will take the relevant information from the CR of a particular class of IT and update the status of the room accordingly.

Step 2: PLANNING

Step 3: DESIGN LAYOUT

Basically in this step, we create the front-end part of our website with the help of languages like HTML, CSS, Bootstrap, and Javascript.

Step 4: DEVELOPMENT

Step 5: TESTING, REVIEW, AND LAUNCH

Step 6: MAINTENANCE AND UPDATION

Facilities required for proposed work

Hardware Requirements: Laptop – i3 processor or higher, 4 GB RAM or higher, 100 GB ROM or higher
Software Requirements: Laptop or PC, Windows 7 or higher, Visual Studio, HTML, CSS, Javascript, Mysql, Php

References

[1] Geekathon series(2013)[Online]. Available: http://www.GeeksforGeeks.com
[2] Jimmy Wales, Larry Sanger (2001)[Online]. Available: http://www.Wikipedia.com
[3] Refnes Data (1998)[Online]. Available: http://www.w3schools.com
[4] Steve Chen (2005) [Online]. Available: http://www.youtube.com

Fake Disaster Tweet Detection Web-App Python Machine Learning Project

This project “Fake Disaster Tweet Detection” aims to help predict, whether a tweet weather it is fake or real. It uses the Multinomial Naïve Bayes approach for detecting fake or real tweets from existing datasets available on Kaggle. The classifier will be trained only on text data. Traditionally text analysis is performed using Natural Language Processing also known as NLP. Natural language processing is a field that comes under Artificial Intelligence. Its main focus is on letting computers understand human language and process it. NLP helps recognize and predict diseases using speech, it helps in sentiment analysis, cognitive assistant, spam detection, the healthcare industry, etc. In this project Training Data is pre-processed, then sent to the classifier, then and the classifier predicts weather the tweet is real or fake.

This project is made on Jupyter Notebook which is a part of Anaconda Navigator. This project ran successfully on Jupyter Notebook. The dataset was successfully loaded into the notebook. All the extra python packages which were required for project completion were also loaded into the notebook. The model is also deployed successfully using HTML, CSS, python, and flask.

The accuracy score on test data is 77.977%. average recall value is 0.775 and the average precision score is 0.775. Precision is used to calculate a number of correct positive predictions made by the model. The recall is used to calculate the number of correct positive predictions made out of all the positive predictions that could have been made.

System Design

System Flowchart

System Flowchart

Problem: To detect disaster tweets whether it’s fake or real using a machine learning algorithm. In this, the concept of Natural language Processing is used.

Identification of data: In this project, I have used a dataset available on Kaggle competition based on Natural language processing. This project works only on text data. It has five columns:

  1. Id: It tells the unique identification of each tweet
  2. Text: It tells the tweet in text form
  3. Location: It tells the place from where the tweet was sent and it can be blank
  4. Keyword: It tells a particular word in the tweet and it can be blank
  5. Target: It tells the actual value of the tweet weather it’s a real tweet or Fake

Data-preprocessing: First the preprocessing is done in the dataset which includes the removal of punctuations, then the removal of URLs, digits, non-alphabets, and contractions, then tokenization and removing Stopwords, and removing Unicode. Then lemmatization is done on the dataset. After preprocessing Countvectorizer is used to convert text data into numerical data as the classifier only works for numerical data. The dataset is then split into 70% training data and 30% test data.

Definition of Training Data: The training dataset which contains 70% of the whole dataset is used for training the model.

Algorithm Section: In this project Multinomial Naïve Bayes classifier algorithm is used for detecting disaster tweets whether they are fake or real.

Evaluation with test set: Several text samples are passed through the model to check whether the classification algorithm gives the correct result or not.

Prediction Model

Implementation Work Details

The data-set which is used in this project “Fake disaster tweet detection” is taken from the Kaggle competition “Natural Language Processing with Disaster Tweets”. The data set contains 7613 samples. This project works only on text data. It has five columns:

  • Id: It tells the unique identification of each tweet
  • Text: It tells the tweet in text form
  • Location: It tells the place from where the tweet was sent and it can be blank
  • Keyword: It tells a particular word in the tweet and it can be blank
  • Target: It tells the actual value of the tweet weather it’s a real tweet

Step 2: Data-Preprocessing

  1. Removing Punctuations: Punctuations are removed with the help of the following python code
  1. Removing URLs, digits, non-alphabets, _: True means it has HTTP, and False means it does not have HTTP
  1. Removing Contraction: It expands the words which are written in short form like can’t is expanded into cannot, I’ll is expanded into I will, etc.
  1. Lowercase the text, tokenize them, and remove Stopwords: Tokenizing means splitting the text into a list of tokens. Stopwords are the words in the text which does not provide additional meaning to the text.
  1. Lemmatizing: It converts any word into its root form like running, ran into a run.
  1. Countvectorizer:

Text cannot be used to train our model, it has to be converted into numbers that our computer can understand, so far in this project, Countvectorizer is used. Countvectorizer counts the number of times each word appears in a document. Countvectorizer works as:

Step1: It first identifies unique words in the complete dataset.

Step 2: then it will create an array of zeros for each sample of the same length as above Step 3: It then takes each word at a time and find its occurrence in each sample in the dataset. The number of times the word appears in the sample will replace the zero positioned at the word in the list. This will repeat for every word. 

Step 3: Model Used:

In this project, the Multinomial Naïve Bayes approach is used for detecting fake or real tweets from existing datasets available on Kaggle. Naïve Bayes classifier is based on the probability theorem “Bayes Theorem” and also has an assumption of conditional independence among every pair.

System Testing

This project is made on Jupyter Notebook which is a part of Anaconda Navigator. This project ran successfully on Jupyter Notebook. The dataset was successfully loaded into the notebook. All the extra python packages which were required for project completion were also loaded into the notebook. The model is also deployed successfully using HTML, CSS, python, and flask.

The machine learning model is evaluated we normally use classification accuracy which is the number of correct predictions divided by the total number of predictions.

This accuracy measuring technique works well when there is an equal number of samples in the dataset belonging to each class. The accuracy score on test data is 77.977%. average recall value is 0.775 and the average precision score is 0.775. Precision is used to calculate a number of correct positive predictions made by the model. The recall is used to calculate the number of correct positive predictions made out of all the positive predictions that could have been made.

  • Precision = True Positives / (True Positives + False Positives)
  • Recall = True Positives / (True Positives + False Negatives)

Conclusion

In this project only one classification algorithm is used which is Multinomial Naïve Bayes. First, the preprocessing is done in the dataset which includes the removal of punctuations, then removal of URLs, digits, non-alphabets, and contractions, then tokenization and removing Stopwords, and removing Unicode. Then lemmatization is done on the dataset. After preprocessing Countvectorizer is used to convert text data into numerical data as the classifier only works for numerical data. The dataset is then split into 70% training data and 30% test data. The accuracy score on test data is 77.977%. average recall value is 0.775 and the average f1 score is 0.775.

Future Scope

In the future, some other classification algorithms can also be tried on this dataset like KNN, Support vector machine (SVM), Logistic Regression, and even Deep learning algorithms can also be used which give very high accuracy. Vectorizing can be done using other methods like word2vec, Tf-Idf vectorizer, etc.

Download the Complete Project on ake Disaster Tweet Detection Web Application Python-based Machine Learning Project.

StellarStudent College Student and Faculty Communication Project

StellarStudent is a web application that deals with students and faculty. Ever since digitalization started in the country, schools and colleges want the best way possible to share information with their students. Some colleges use Google Drive or Whats app to share materials or collect other documents. However, the chance of data loss or misplacement is guaranteed. It is better for the college to have an admin who can look after all the happenings on the college website with just one click. With high security and validations of users, the chances of data misplacement are low with StellarStudent.

This Student and Faculty Communication project aims to connect the students with their faculty with no miscommunication. It is a web-established web-based application that involves faculty uploading study materials and notices like events and placement drives, viewing certifications, and quiz results of students. Students can also communicate with each other via the exchange of images, feedback, and discussion. This application can be handled by the admin and manage students as well as faculty.

Objective 

The StellarStudent is a web-based Student and Faculty Communication project for BVRIT-H students and faculty. The main objective of this project is to let college students interact with their faculties.  In this project, the faculties can upload materials, quizzes, etc. Even students can ask questions to faculties and can also upload the certificates. Our main goal is to ensure cost-effective, technical excellence, and secure apps.

Methodology 

To store the user data MYSQL has been used as a database. HTML and CSS have been used for front-end development. PHP is used as a server-side language, which is used to connect the front end to the back end. We can run this application in our browser.

Software requirements specifications

 Introduction:

Student and Faculty Communication SRS describes the requirements and specifications of StellarStudent, a web-based application for the college. 

Purpose:

The purpose of this document is to present a detailed description of StellarStudent.

Scope:

The project StellarStudent helps college students to interact with their faculties and many more. This web application can be accessed by students and faculty of BVRIT HYDERABAD College of Engineering for Women.

Overall description

The project StellarStudent is a web-based application with two interfaces: One is for students and another is for management. The website works on desktop computers, laptops, and mobile devices with the help of a browser.

Project Functions:

The project Student and Faculty Communication has the following product functions:

  • The web portal will provide the functionality to manage the system and the student
  • The website is secure because users must enter login details to access the
  • The system contains a huge For this reason, the search option has been provided on all report pages. The search results can be viewed in the list view.
  • The product works online with help of the internet

Assumptions and Dependencies

    • Internet connection
    • 24X7 uptime server connection
    • One assumption about the product is that it will always be used on mobile phones that have particular technical support.

Modular Decomposition of Components:

Dashboard Component

• Admin account
• Publish news
• Publish events
• Publish meeting schedule
• Add course records
• Add subject records
• Add certificate types

Faculty Component:

• Quiz materials
• Study materials
• Students record
• Faculty profile
• Certificates

Discussion Component:

• Post discussion forum
• Discussion reply
• View discussion forum

Quiz Component:

• Upload quiz question
• Attend quiz exam
• Quiz result

Study material Component:

• Upload notes
• View study materials

Certificate Component:

• Upload certificates
• View Certificates

Upload certificate by student Screen

View Uploaded Certificates

Order Management System for Steel Fabrication Factory Java Project

The web-based “Steel fabrication Order management system” project is an attempt to simulate the basic concepts of order management systems. The system enables the customer to do the things such as view all available products, and products by category-wise distribution. The user can place the order, the delivery agent will get the order details and it will be delivered to the customer at their residence. Users can request customized products with their own requirements and budget.

The Order Management System provides a facility that enables users to view details about products without logging in. But if the user wants to place the order, then it is required to log in first. Users can view all available products with detailed descriptions, reviews, and ratings. Users can choose a particular product. The system checks for the availability of the quantity of the product. If the product is available then the system allows the customer to select the product and place an order. To order a product the system asks the customer to enter his details such as first name, last name, city, street, landmark, state, pin, phone number, etc.

Scope 

  1. Order Management System for Steel Fabrication Factory is a web-based application that allows the admin to handle all the activities online quickly.
  2. So, the aim of the project is to provide products to customers. The customer can choose the products from the category and place the order. Users can request customized products to their own requirements and budget. Staff then can contact the user with the details provided by the user at the login time
  3. Staff will arrange the products as per the order and make them available for collection.
  4. Once the order is ready, the delivery agent will collect the products and they will be delivered to the customer at their residence

SYSTEM ANALYSIS AND DESIGN

System analysis is the performance management and documentation of activities late to the life cycle phase of any software namely:

  1. The Study Phase
  1. The Design Phase
  1. The Development Phase
  1. The Implementation Phase
  1. The Testing Phase

Software analysis starts with preliminary analysis and later switches to a detailed one. During the preliminary analysis, the Analyst took a quick look at what is needed and whether the cost benefits. Detailed analysis studies in depth all the cornered factor, which build and strengthens the software.

ER Diagram:

PROJECT FEATURES

Admin module

Admin is the main role in the overall system. Admin can log in into the system using credential where admin credential was already stored in the database.

After successful login into the admin dashboard, there are various operations that the admin can do mentioned below –

  1. View customer: Admin is able to view the list of customers who are already registered into the system. Customer data is stored in a database so the admin can fetch those data to view the list of customers
  2. Add remove staff: Admin can add staff by giving a particular role also admin is able to delete it from the system
  3. View feedback: Admin can view feedback which is given by customers on products after purchasing

Manager module

Like the admin, the manager can log in to the system with the credentials stored in the database. The manager carries out the most of operations on the owner’s side. The manager can perform the following functionalities mentioned below:

  • Manage products: The manager can add products into the system with all the necessary details. As the products are managed category-wise, the manager can add distinct categories first and then products under that specific category. Managers can also update products by changing the price of products or the available quantity of product
  • Manage delivery: The manager is able to see all the orders. After placing an order by the user, the manager assigns that order to the particular delivery That order is visible to that delivery agent’s dashboard with details.
  • View feedback: The manager can view feedback and ratings given by customers on products after purchasing. The manager can review and analyze the feedback
  • View order customization: The manager can review the customized orders that users have requested, and contact that specific user from the contact details given at the login time

User module

User can login into the system, or even without login users can see product lists, detailed descriptions of products, reviews, and ratings of products. Even without a login user can check all available products. But to place an order user needs to log in first to the system.

Registration and creation of user profile

The system shall require a user to register, in order to carry out the process to place an order. For registration it will ask the user for the following information first name, last name, city, street, landmark, state, pin, phone number, email, and password. The system will automatically generate the user’s profile.

Making Order

After registration user’s credential is saved in databases and using the credential user can log in to the system. For place an order user must do login first otherwise the system will not allow the user to place an order.

After login into the system successfully now the user is able to place an order. The first user needs to search for the available product or the user can search for a product by category, one more option is available the user can select a product and customize it according to their need.

If a user wants to place an order of multiple products, then the first user selects one item and moves it to the cart using the ‘add to cart button, after adding it to the cart now user can go for another product and the user can add multiple products to add.

After adding products to the cart, the cart dashboard will show all the products, product quantity, and total price. Now users can place orders by selecting a payment method.

View Order History: The system shall allow a user to view all information about his previous orders. In history, the system shows the previous product, delivery status, etc.

Delivery Agent

Account Delivery agent is another important role in this system. The main role of the delivery agent is to deliver the product to the mentioned address and update the status of delivery. The delivery agent has functionalities mentioned below:

  1. Receive order: The delivery agent received the order and does a job of delivering the product on time
  2. Track order: The tracking status of the product during delivery is updated by the delivery agent. Tracking status like ‘product arrives, ‘on the way, ‘delivered’, etc. Users get to see this status on his/her side
  3. Verify payment: The delivery agent needs to verify the payment details like whether payment is already done or needs to be collected at the time of delivery
  4. Update order status: After delivering the order successfully, the delivery agent needs to update the status as ‘delivered’.

Software Required for Development

Module 1: Database Design – MySQL-for database

Module 2: Front End – HTML, CSS, JavaScript, React js.

Module 3: Back End – Eclipse IDE(Any IDE), Spring tool suite, Tomcat

Download The Complete Project code, report, and PPT of the Order Management System for Steel Fabrication Factory Java & MySQL Project.

Online Learning Management System PHP Project

Objectives of the Project:-

The general objective of this Online Learning Management System project is to provide various courses to students as well as others who are interested in learning online. The use of the internet has increased and so the courses are available to be learned online. By providing this option, it would be easy for the users to learn by sitting in a comfortable place and learning based on the time they have.

The courses will be added, deleted, etc. by the admin. This project consists of the front end and back end sides. The front end side of the website is developed for the general public who are interested to know about us and to find out the courses provided by the management system. The back end is for the users who have created their accounts and admin utilities.

Scope of the Project:-

For this project, to store all the data various tables and attributes are required. As the main idea of this project is to provide courses for the students to enroll in and learn, it will also allow the instructors to teach courses. Thus the scope of this project is limited to the following tables: COURSES, USER DETAILS, STUDENTXREF, and INSTRUCTORXREF.

User requirements:-

Following would be the basic user requirements-

  1. Users should be able to view the Home page, About Us, and login/Register page of the website.
  2. Users should be able to search for the courses in which they are interested.
  3. Users will be asked to enter the user type as Student, or Instructor while creating the account.
  4. Users who have been marked as Students will be allowed to enroll in the available courses and will be displayed the courses in which they are already enrolled.
  5. Users marked as Instructors will be able to teach the course which is not taught by anyone else. They will be able to see the courses which are taught.
  6. Admin type of user will be able to add or delete courses as well as delete instructors from the courses.

*Note – User can be general public without creating an account, student, instructor, and admin.

Business Rules:-

Below are some basic business rules-

  1. One student can enroll in many courses.
  2. Every single course can be taken by many students.
  3. One instructor can teach many courses.
  4. One course will be taught by only one instructor.
  5. Users can be students or instructors based on the details entered while creating an account.

Entities and their attributes:

In this proposal, there are basically 4 entities. The description for each is given below-

USERDETAILS Entity –.When a student or instructor wants to enroll/teach for any course, first of all, they will have to create an account on the website by using the login page. All the details entered while creating an account will be stored in this table. This table will consist of the attributes as User id, user last name, user first name, user type (it can be student or instructor), and password. The primary key of this table will be the user id. Once the user has created an account, they will be able to know about the courses.

COURSE Entity – The course table will store all the details related to the courses which are offered. This table will have the following attributes Course id, Course name, course department, course description, course start date, and course end date. Course id will be the primary key for this table. Based on the above attributes, students can decide which course they are interested in. The instructors will also be able to know about the courses which are already taught by some other instructors and the courses available for them to teach.

STUDENTXREF Entity- This table will act as a reference table between the COURSE and USER DETAILS tables. The attributes of this table are student id, course id, and user id. The primary key of this table will be the student id.

INSTRUCTORXREF entity – This table is also a reference table between COURSE and USER DETAILS tables. If the user type is instructor then the details for that user id will be stored in this table. The attributes of this table are instructor id, user id, and course id. Instructor id will be the primary key for this table. Here the course id will be unique as 1 course cannot be taught by multiple instructors.

Entity-Relationship Diagram:-

Fig 1: Entity relationship diagram for Online Learning Management System.

Website Description:-

The online learning management system is a system that provides students to learn about various courses online. Various pages have been created for the users like Home Page, About Us page, Login/Register Page, and Search courses page.

The sitemap for the online Learning management system is as:

The project consists of the Front end and back end. The front-end pages are described below:

Home Page:

This page is the main page of the project. This page gives a brief description of the management system and also posts the latest courses which are going to be added in the future. This page will be linked to all other pages. Whenever the user is interested in learning any course, then they need to create an account by clicking on the Login/Register button provided on the navigation bar.

Login/Register Page:

The login page lets the user enter their username and password to login to their account. There are three different links for students, instructors and admin in the login/register page. Students can click on the enroll/register for courses link in order to login into the account. Students who are already registered can put in their username and password to login to the account. In the case of new users, they can register for a new account by clicking Join us button. In order to sign up for an account a user needs to enter an email address, preferred username and password, and date of birth. The user has to make a selection of the account type either teacher or student from a drop-down menu. Then they can simply login into their account. 

The login page lets the user enter their username and password to login to their account. There are three different links for students, instructors and admin in the login/register page. Students can click on enroll/register for courses link in order to login into the account.

Students who are already registered can put their username and password to login to the account. In case of new users, they can register for a new account by clicking Join us button. In order to sign up for an account a user needs to enter an email address, preferred username and password and date of birth. The user has to make a selection of the account type either teacher or student from a drop down menu. Then they can simply login into their account. 

About Us Page:

This page describes the goal of developing this project. This will make clear to the users what the purpose of developing this website is and how they can use it. Contact information is also provided for the users so that if they have any doubts, they can send an email with the query. 

1.6.4 Search course Page:

When a user is interested in learning any course, before creating an account he can check whether the course in which he is interested is provided by the management system or not. This search option will help them to know about the courses and then they can decide whether to enroll in those courses or not. While using the search option, users are not required to create an account.

The back end part will come into the picture when the user has created an account. Users can be students or instructors. While creating an account, the user will be asked to select the User type from the drop-down option. The pages at the backend side are described below:

Student Page:

This page (student.php) will be displayed to the user whose user type is Student. It will display the courses which are available for a particular student to enroll. He can select multiple courses for enrolling. Checkboxes are provided in front of all courses and then finally enroll button is provided.

Once the student selects any course and clicks on Enroll button, he will be shown a thank you message for enrolling in those courses. Student.php will call enroll.php when an enroll button is clicked by the student. The back button is provided on enroll.php which will re-direct the student to student.php. The student will also be displayed the courses in which he has already enrolled on student.php. 

Instructor Page:

When a user selects the user type as an instructor, he will be directed to instructor.php page. On this page, he will be displayed with the courses which he is already teaching. The instructor will be able to teach courses that are not being taught by any other instructor. A checkbox option will be provided to the instructor to select courses and then he can click on each button. This button will direct the instructor to teach.php page where he will be displayed a thank you message.

Admin Page:

Admin page is designed for the administrator to add and delete courses in the system. In order to login as an admin the user needs to select the admin-Add/Delete courses link from the Login/Register page. Two options appears in the admin page 1.Add a course and 2.Remove a course. Add a course lets the admin add new courses in the system.

The details the admin needs to provide in order to add a course are course name, course department, course description, course start date, and course end date. The admin can simply press the Add Class button. A success message appears on the page after the submission of the details. In order to remove a class the admin can make a selection from the drop-down menu and press the Delete Class button. The success message appears afterward.

Functions provided by the website are:

  1. The following are the functions provided by the online learning management system:
  2. Browse the homepage, and about us page.
  3. Search courses without creating an account.
  4. Interested users can create an account.
  5. Students can enroll in courses.
  6. The instructor can teach courses that are not being taught by any other instructor.
  7. Admin can add/delete courses.

Usability considerations:

The online management learning system website has logical navigation. Users can easily navigate around the webpage. The home page gives the users information about the whole system. All the contents are written in simple language. It has a user-friendly interface and functions well with no broken links. All the links and sub-links are clearly represented. The procedures to log in to the account, register for courses, and add or remove the courses from the system are very clear.

The system lets the users know if their attempts of adding courses or removing courses were successful. When the users put wrong credentials while logging in, it lets users know their attempt has failed because of the wrong username or password. So, that user can put the correct information and log in to the account. The website has all the required functions based on user types. That makes the website informative and user-centered. 

FUTURE ENHANCEMENTS:

  1. Based on the entries in the database, graphs can be created to provide information about the number of students in each course.
  2. A class entity can be added to provide more information about courses like classrooms, class timings, etc.
  3. Change the template to make it more attractive and user-friendly.
  4. Passwords can be stored in an encrypted way to avoid giving away personal information.

Employee Task Management System Web Project using PHP and MYSQL

Problem Description

We need to make a system in which mentors can assign tasks to the employee and other mentors can monitor the availability of employees and on that basis, they can assign him/her new task. As well as employees can see all the assigned tasks with priorities. The app should be able to: Store data on new Employees/Trainees and new Task Assignments Employees can see the availability of other employees, trainees, and interns but trainees will not be able to see other availability. Employees can assign tasks with details like task name, task description, assigner, priority, and expected hours for completion to other employees’ or trainees’ ToDo lists considering the maximum limit of a total of eight hours for an employee before assigning any task.

Target Audience

This is a very common problem in companies where an employee already working on an assigned task and another mentor or boss going to assign him a new task, S/He might not know the employee’s availability and the priority of the task on which the employee already working. In that scenario, there will be lots of communication going around to assign the task, due to which task going to be delayed. To resolve these issues and make employee availability transparent, we need to make a system in which mentors can assign tasks to the employee and other mentors can monitor the availability of employees and on that basis, they can assign him/her new task.

As part of the curriculum of B.tech and to gain practical knowledge in the field and Python programming and web development we have made this project. We have boosted our skills through it.

In this Project, we have worked on VS Code and GitHub. Git Bash, Mysql, Software xamp, CSS, and HTML.

Employee Task Management System is created in PHP and MYSQL. It deals with the rundown of workers in an organization or an association. It likewise contains the training went by every Employee. Representative is the foundation of an organization so the Employee Management System is an extremely useful framework for an association or organization.

It also contains training attended by each employee. The employee is the backbone of a company so the Employee Management System is a very helpful system for an organization or company. This system also manages the company employee details like their attendance, their performance, salary details, and leave details.

This section compresses the assessment of the writing important to the Employee Management System. It looks at hypotheses, ideas, methodologies, strategies, and systems important to the venture.
Comparative existing advances identifying with the improvement of the Employee Management Systems are talked about.

In this Project, we have worked on VS Code and GitHub. Git Bash, Mysql, Software xampp, CSS, and HTML. Employee Management System is created in PHP and MYSQL. It deals with the rundown of workers in an organization or an association. It likewise contains the training went by every Employee.

Representative is the foundation of an organization so the Employee Management System is an extremely useful framework for an association or organization. It also contains training attended by each employee. The employee is the backbone of a company so the Employee Management System is a very helpful system for an organization or company. This system also manages the company employee details like their attendance, their performance, salary details, and leave details.

Design Diagrams:

Use Case Diagram:

Data Flow Diagram:

ER Diagram: Sequence Diagram:

Activity Diagram:

Functional Requirements

REQ-1: Authentication 

  1. Login- The user can log in to the system with his/her username and
  2. Logout- The user can log out from the
  3. Login failure- If the user does not exist in the database or the user has not yet been authorized by the

REQ-2:Authorization 

  1. User role check- After logging in, the user role will be checked from the database and the user interface will be displayed according to their role.

REQ-3: Employee Management 

  1. Display- Users with defined roles can display the content of the database. To be more specific, an employee can only view his/her personal Boss and can not only see his/her personal information but also employee’s information who are under his/her department or school.
  2. Edit- A user with an employee role can edit his/her specific personal

information. Boss can only edit employees’ personal information that is under his/her coverage except for user role type. The Boss can check employee availability.

REQ-4:Trainee Management 

  1. Training – The Boss and employee shall create training tasks and assign them to other Bosses and employees and employees and trainees respectively that are required to attend the training as well. Boss and Employee can also check the availability of the trainee.

REQ-5: Task Management 

  1. Tasks – Boss and Employee can check assigned tasks, they can check task priority. they can also create the task and assign the task.

1. Sign Up
2. Login Up
3. View Employee Details
4. Create Task
5. Priority
6. Availability
7. Assign Task
8. Task Status
9. Task Done
10. Task Details
11. Personal Details
12. Submit Task

System Features

Module Description

Sign Up: Bosses, employees, and trainees will sign up using their credentials.

stimulus: boss/employee/trainee will sign up through the signup button.

response: dialogue box for “thank you for signing up” appears.

Log in: Boss, employee or trainee will log in to the system using their unique ID.

stimulus: boss/employee/trainee will log in through the login button.

response: for boss/employee/trainee different pages will appear respectively.

View employee details: contains employees’ details.

stimulus: click on the button to View employee details.

response: Details appear (only boss and employee can view details)

Create Task: boss can create tasks for employees or another boss. Employees can create tasks for trainees or other employees. trainee can not create tasks.

stimulus: click create task button.

response: the task will be created

Priority: Check the assigned task priority.(boss/employee/trainee)

stimulus: click on check assigned task priority.

response : shows priority(High,Medium,Low).

Availability: check availability of boss/employee/trainee for assigning the task.

stimulus: click on the check availability button.

response: shows availability.

Assign Task: After creating the task the creator will assign the task to the boss/employee/trainee.

stimulus: click on the button to assign a task.

response: Task will be assigned

Task Status: change the task status whether it is completed/submitted/in progress.

stimulus: click on the button to change task status.

response: changes will be done according to your status when you choose options from it.

The task is done: The feature indicates the task is done. Only bosses and employees can access this feature.

stimulus: click on the task done button.

response: status will be updated once the task is done.

Task Details: will get trainees through the details of the task assigned.

stimulus: click on the View Task Details button

response: details appeared

Personal Details: will display personal details of the trainee to her /him.

stimulus: click on the View personal details button.

response: personal view appears to him/her.

Submit Task: The feature is for trainees only, to submit the task.

stimulus: click on submit task button

response: the task will be submitted.

Future Scope

1) AI is applied in almost every industry and may become a standard in the near future. 

2) Data visualization represents the data in a visual and understandable manner: graphs, diagrams, maps, etc.

Conclusion

This is a customized task management tool that enables your enterprise to manage all tasks efficiently in this troubled time & even in the post-COVID age. Our robust task management app help organizations face challenges related to project management & gain a higher Return Of Investment over the period while meeting deadlines and utilizing resources effectively.

Download the Complete Employee Task Management System Project code, Report, PPt, and Design Documents

LSTM based Automated Essay Scoring System Python Project using HTML, CSS, and Bootstrap

Introduction

Essays are a widely used tool to assess the capabilities of a candidate for a job or an educational institution. Writing an essay given a prompt requires comprehension of a given prompt, followed by analysis or argumentation of viewpoints expressed in the prompt, depending on the needs of the testing authority. They give a deep insight into the reasoning abilities and thought processes of the author, and hence are an integral part of standardized tests like the SAT, TOEFL, and GMAT.

With essays comes the need for personnel qualified enough to carry out the process of grading the essays appropriately and ranking them on the basis of various testing criteria. Our project aims to automate this process of grading the essays with the aid of Deep learning, in particular, using Long Short Term Memory networks which is a special kind of RNN.

Automated Essay Scoring (AES) allows the instructor to assign scores easily to the participants with a pre-trained deep learning model. This model is trained in such a way that the scores assigned are in agreement with the previous scoring patterns of the instructor. So this needs the dataset which contains the information of scores given by the instructor previously. AES uses Natural Language processing, a branch of artificial intelligence enabling the trained model to understand and interpret human language, to assess essays written in human language.

Problem Definition

Given the growing number of candidates applying for standardized tests every year, finding a proportionate number of personnel to grade the essay component of these tests is an arduous task. This personnel must be skilled and capable of analyzing essays, scoring them according to the requirements of the institution, and be able to discern between the good and the excellent.

In addition to this, there are a lot of time constraints in grading multiple essays. This can prove to be cumbersome for a limited number of human essay graders. Having to grade several essays within a deadline can compromise the quality of grading done. Thus, there is a clear need to automate this process so that the institution carrying out the grading can focus on evaluating other aspects of the candidate’s profile.

The challenge was to create a web application to take in the essay and predict a score. We need to train a neural network model to predict the score of the essay in accordance with the rater. The model is to be made using LSTM.

Approach

In order to meet the need for automation of essay grading, we propose an application that provides an interface for users to choose an essay prompt of their choice and provide a response for the same. The user’s response is graded by the application within seconds and a score is displayed.

This application makes use of the technologies of Natural Language Processing that performs operations on textual input, and LSTM, which is used to train a model on how to grade essays. The application also uses the Word2Vec embedding technique to convert the essay into a vector so that the model can be trained addresses the issue of time constraints; automated grading takes place within seconds as compared to physical grading which requires minutes per essay. The net amount of time saved over a period of consistently using the application is vast; costs of maintaining human graders are also saved.

The application gives an output from the pre-trained LSTM model. The model is trained using a dataset provided by Hewlett Foundation in 2012 for a competition on Kaggle.

Web Application (Output)

The front end of the application was implemented using HTML, CSS, and Bootstrap. It provides the option for users to choose from a set of prompts and write an essay accordingly or to grade their own custom essay.

The landing page of the application:

Automated Essay Scoring System

Software Specifications

This application is developed primarily using Python, for the purposes of running the app. The model was built and trained on Jupyter Notebook. The front end of the application was designed with HTML, CSS, and Bootstrap. All the components of this application were integrated with the help of the Flask App, and the final project was deployed on IBM Cloud.

While training the model, the dataset was imported into the model with the Pandas library. Pandas library used was v1.3.0. Numpy v1.19.2 was used to handle array data structure. Natural Language ToolKit v3.6.2 was used to tokenize essays to sentences written in English and also to remove stopwords to make sure the sentences contain only relevant words. RegEx(re) package v2.2.1 was used to remove unnecessary punctuations and symbols present in the essay or sentences. Our model utilizes the Word2Vec technique to convert words to corresponding vectors. Word2Vec v0.11.1 was used to convert words into vectors. Tensorflow v2.5.0 was used to build the model. ScikitLearn v0.24.2 was used for data preprocessing.

To make use of the application, the user needs to have access to a stable internet connection and an operating system compatible with the latest versions of most browsers. In the absence of an internet connection, the application can be run locally. Still, the user needs to have the authorization to access the source code of our project for the same, which is not recommended for intellectual property purposes.

Future Scope

This application could be integrated and used by several testing institutions to meet their needs for essay grading. The model used could be trained with an increasing number of input essays to further improve its accuracy. The model could also be trained on giving a score on specific criteria of essay grading such as relevancy, linguistic and reasoning ability of the author. Research could be conducted on making the model faster. This technology could also be extended for use with languages other than the English language, effectively rendering it useful on a worldwide level.

Development of E-Commerce Store Portal using Bootstrap and ReactJS

The main aim of this project is to design, develop, and implement of E-Commerce Store Portal website based on HTML, CSS, Bootstrap, JavaScript, and ReactJS. To give a high openness of administration we will structure the online site that supports local businesses, with the goal that potential clients need not go to a physical shop to purchase items or administrations. The objective of this E-Commerce Store Portal project is to create an e-commerce web portal with a content management system that would allow product information to be updated securely using a system. The E-Commerce Store web portal will have an online interface in the form of an e-commerce website that will allow users to buy goods from the merchants. This web portal will allow local organizations and start-ups to start their businesses and reach out to the market.

INTRODUCTION

This Bootstrap and ReactJS web portal project is aimed at developing an online static website for an E-commerce store that can be used by people to list their business on the website and will also provide customers to buy the products directly from the store. The website is based on HTML, CSS, Bootstrap, JavaScript, and React. Customers can buy the products directly from the store. This will help local businesses to register their products on the website. It will eventually help local businesses to increase their profits and people to buy the goods from the comfort of their homes. Users can see the products from the website. Our website will contain a Homepage where all the basic information about the store and details of the products will be available. This site is easy to operate and user-friendly.

OBJECTIVE OF THE PROJECT

The web portal will have an online interface in the form of an E-commerce website that will allow users to buy goods from the merchants. This web portal will allow local organizations and start-ups to start their businesses and reach out to the market

MOTIVATION

Online shopping practices are increasing rapidly, thanks to digitalization. Online E-commerce store owners are always eager to know how to increase traffic on their E-commerce sites and how to increase their profits to earn more revenue.  Hence by this, bringing together the various local businesses to a single platform so that anyone can access them anywhere according to their need. So, with the increasing importance of online sales and the growing number of customers visiting online stores we are going to develop a website that helps to save the time of the users. This website encourages local businesses to create their online store and supports them to run their business to grow.

E-Commerce Store Portal

Benefits of the proposed work

• Saves time for customers in quickly view various items on the E-Commerce portal.
• The ability to view and purchase items anytime, from anywhere with Internet access.
• Provides information about resort facilities.
• User-friendly interface.
• No Convenience fees.
• Total features of E-Commerce Website are accessible.
• Easy to use and simple to understand.
• Quick and save lots of time.

Modules and their functionalities:

1. Dashboard: This is the home page of our website.
2. Hawkers: This consist of all the hawkers available online for selling their products.
3. Feedback: The feedback area consists of all the feedback given by buyers.
4. Vendors: This contains information about the vendors and their products.
5. Place Order: This is used for placing an order of the product of your choice.
6. About Us: This page consists information of about the team behind the idea of promoting local businesses.

Implementation and User Interface

This E-Commerce Store Portal project is implemented with the help of Visual Code.

The user interface design was one of the core tasks in this project. The aim of UI design is to make the E-commerce application to be accepted and used easily.

Software Requirements:

  • Macintosh /Microsoft Windows /Linux
  • Virtual Studio Code or any other text editor
  • Chrome or any other browser

IoT based Attendance System Project Using Blockchain and JAVA MySQL

The success of this IoT-based Attendance System app will ensure that many more parents and organizations will be motivated to use this common platform. It becomes complicated when strength is more. With the increase in technology, attendance monitoring is designed with android or web-based applications. However, the intention of this design is to provide a Blockchain-based app that can be downloaded and used by the organization with no third-party control to meddle with the data.

There is an update option to modify attendance when it’s needed. However, the modifications are recorded and tracked, just in case, it’s a fraudulent activity. Attendance is captured using IOT automatically and is entered into the blockchain which makes the data tamper-proof, secure and robust. The privacy of its users is preserved because the user ids are generated by a trusted third party. This data is available for the government for Scholarships and other related decision-making.

IOT-based Attendance System using Blockchain is an application that is made for students and faculty of a particular college to maintain students’ attendance which is captured through an IOT device(biometric) and then the attendance is stored in the Blockchain. Blockchain is used in this application to ensure safety and a tamper-free environment as the data cannot be manipulated and is used for government purposes.

Objectives

Generally, in many institutions attendance is monitored and marked using conventional systems like android or other similar web applications. Few conventional databases do not have features like checking whether any information has experienced unauthorized changes or not. In this system when the data is entered into the blockchain, no one is allowed to edit or delete the data.

This makes the application transparent and different from other web-based attendance systems as IoT is used to capture attendance through biometrics of the students in the class. Students’ poor attendance rate is one of the most challenging problems tackled by college management today. With the help of this application, student attendance rates can be improved which is also helpful for the government to take precise decisions regarding scholarship-like schemes for students with transparent data. Using blockchain and some encryption techniques, this application is made secure from any manipulations.

Student Login Page

Methodology

The fingerprint module will collect fingerprint data from multiple users and sends it over the internet to the website. The IoT-based Attendance System website is coded in HTML, and CSS, JSP has a MySQL database, and records of attendance are stored in Blockchain. By logging into the website, the student can view all their attendance records. The timestamp of students’ attendance is encrypted and stored in the blockchain.

CONCLUSION AND FUTURE SCOPE

This IoT-based Attendance System application helps to automize the attendance system and makes it easy to manage all the data. Encryption, decryption, and blockchain make the application very secure. The application has a very user-friendly UI and is made to keep UI and UX in consideration.

The future enhancement of this IoT based Attendance System application is

  • To use Ethereum to make the application up to date with the technologies
  • To generate automatic weekly and monthly reports

DATABASE TABLES SCREENSHOTS

Tables in the project.
Test case showing the home page after pasting the URL in the browser
Test case showing navbar functionalities working.
Test case showing login is done and navigated to the home page
Test case showing student registration is working.
Test case showing faculty registration
Test case showing faculty registration is working.
Test case showing attendance stored in blockchain

IoT based Attendance System Using Blockchain
Test case showing student’s attendance records.
Test case to get student report
Test case showing Student’s attendance report.
Test case showing download report is working
Test case showing all student details.
Test case showing all student’s attendance records.

Flow Chart Diagram:

Flow Chart

Architecture Diagram

Architecture Diagram

Usecase Diagram:

usecase diagram

Software Requirements

Programming Language: Java
Graphical User Interface: HTML, CSS with Bootstrap, JSP
Libraries: MYSQL connector jar file, Apache Tomcat jar file
Encryption Algorithm: SHA-256
API: JDBC
Framework: Java EE
Tool: Eclipse, MYSQL

Hardware Requirements:

IOT Fingerprint Scanner