Classification of American Sign Language using online RESTful application

  • INTRODUCTION

This document report provides the desired layout to develop an online application service that accepts Human Skeletal key points of a sign video and returns the label of the sign in a JSON response. The document contains information about the extraction of key points from the videos using Tensor Flow’s Pose Net library and four different deep learning models that can classify American Sign Languages into six different signs. i.e {buy, fun, hope, really, communicate, mother}. Moreover, it also contains information about hosting services using flask API on ‘PythonAnywhere’ and steps involving handling HTTP requests coming from different users.

  • TECHNICAL APPROACH

Firstly, we have accumulated all the raw video data sets which have been recorded as a part of Assignment-1 and extracted frames of the particular timeline. Then, we used Tensor Flow’s Pose Net library in order to extract key points from the images, which are considerably used as training data for models. We have tried three different approaches to preprocess data and picked the one which gives the best accuracy for the trained models.

Approach-1: Scaled down raw data using the Universal Normalization technique and extracted a few features like- Standard Deviation, Moving Mean of Window size 5, Zero Crossing Rate, Dynamic Time Warping distance, and built feature matrix. Then we applied PCA on the feature matrix and using K-fold Cross-validation we trained four deep learning models named Convolutional Neural Network, K nearest neighbor, Support Vector Machine, and Random Forest. The average accuracy of the given models lay between 60-65%.

Approach- 2: As a part of the second approach, we expelled some features by observing the movement of each body part in videos for different signs and made a feature matrix of only important features. Then we apply Standard Scaler and Min Max Scaler in order to normalize data and trained our models using the first approach.

Somehow, we were able to increase the average accuracy of the models by 10%.

Approach -3: We have observed in the second approach that, our model is only considering the static coordinates of each body part, so we subtracted each coordinate of different body parts from the static body parts and processed the data in the same manner. So, by doing this approach we got our highest average accuracy which lies between 85% to 90%. 

  • INITIAL FEATURE EXTRACTION 
  1. Zero Crossing Rate
  2. Moving Average Window
  • Standard Deviation
  1. Dynamic Time Warping Distance.

Zero Crossing Rate: The zero crossing rate is the rate of sign- changes along with a signal, i.e the rate at which the signal changes from positive to zero to negative or vice versa. Zero Crossing Rate can be used as a primitive pitch detection algorithm for signal processing.

Moving Average Window: Moving Average is optimal for reducing random noise while retaining a sharp step response. This makes it the premier filter for the time domain encoded signals

Standard Deviation: The standard deviation is a measure of how far the signal fluctuates from the mean. It also depicts how data disperse near the mean of particular data series.

Dynamic Time Warping Distance: DTW measures the similarity between two temporal series data. Any linear sequence data can be analyzed with DTW, it aims at aligning two sequences of feature vectors by warping the time axis iteratively until an optimal match between the two sequences is found.

Feature Engineering:

We have expelled a few features by observing the movement of each body part for different signs and made a feature matrix with only important features. Below is the list of features that we considered for training models.

[“nose_x”, “nose_y”, “leftShoulder_x”, “leftShoulder_y”, “rightShoulder_x”, “rightShoulder_y”,”leftElbow_x”, “leftElbow_y”, “rightElbow_x”, “rightElbow_y”, “leftWrist_x”, “leftWrist_y”,      “rightWrist_x”, “rightWrist_y”]

Here, we observed that the coordinates value of each body part shows a static position for a given time, so we have subtracted each body part’s coordinates value from the corresponding static body part’s coordinates. Here, we have considered “nose”  as a static body part and subtracted each body part with corresponding X and Y coordinates.

The above-mentioned approach would become simpler for the models to understand the movement of each body part, as we have a relative position for each body part, the model can easily predict certain gestures by examining the positive or negative sides of coordinates.

  • MODELS USED:
  1. K nearest neighbor
  2. Convolution Neural Network
  • Support Vector Machine
  1. Random Forest

K Nearest Neighbor: The K Nearest Neighbor classifier is one of the most simple machine learning algorithms that simply relies on the distance feature vectors. It classifies unknown data by finding the most common classes among k nearest examples. The majority vote of the class label is assigned to unknown data. As KNN is a lazy learning algorithm, it works more efficiently when our dataset has been distributed in multi classes.

Support Vector Machine: The core idea of Support Vector Machine is to find a hyperplane that separates two sets of objects having different classes. It uses a technique called kernel trick to transform data and based on this transformation it finds an optimal boundary. It is considered one of the most robust and accurate algorithms among other classifiers.

Random Forest: Random Forest is an ensemble classifier; it takes multiple individual models and combined them into a more powerful aggregate model. So, let’s say we have different individual models, then there might be the case that they work efficiently because some part of the data set would be overfitted to the model. So by combining them, we can reduce the chances of error. Random forest built upon by aggregating n possible decision trees which might be generated by randomly picking data set row as root. So, as the dataset would be increasing, the possibilities of generating random decision trees would also increase and aggregating different decision tree models lead to an increase in the efficiency of the aggregated model, too.

REFERENCES:

Drowsiness Detection of a Cab Driver Python Project

  • In the present situation world, Accidents are part of life. On an average of 1214 road accidents in India only. One of the main reasons for road accidents is being drowsy during driving.
  • The application Drowsiness Detection of a Cab Driver helps the manager of the company get a notification that the driver is drowsy and an alarm rings in the car to alert the driver.

USAGE:

>    python detect_drowsiness.py –shape-predictor shape_predictor_68_face_landmarks.dat –alarm alarm.wav

Use the above command to run the application

This Drowsiness Detection of A Cab Driver application needs the following modules: –

MODULE NAME:  scipy

COMMAND USED FOR INSTALLING: conda install -c anaconda scipy

MODULE NAME: imutils

COMMAND USED FOR INSTALLING: conda install -c anaconda imutils

MODULE NAME: threading

COMMAND USED FOR INSTALLING: conda install -c anaconda threading

MODULE NAME: numpy

COMMAND USED FOR INSTALLING: conda install -c anaconda numpy

MODULE NAME: playsound

COMMAND USED FOR INSTALLING: conda install -c anaconda playsound

MODULE NAME: argparse

COMMAND USED FOR INSTALLING: conda install -c anaconda argparse

MODULE NAME: time

COMMAND USED FOR INSTALLING: conda install -c anaconda time

MODULE NAME: cv2

COMMAND USED FOR INSTALLING: conda install -c anaconda cv2

MODULE NAME: dlib

COMMAND USED FOR INSTALLING: It should be installed in the virtual environment the command is: conda install -c anaconda dlib

IN THE ABOVE-MENTIONED MODULES MOST OF THEM WILL BE GIVEN DEFAULT

TO CHECK THE MODULES THE COMMAND IS conda list

Download the complete project source code

IT Banking Portal Student Java Project Using Eclipse

EXECUTIVE SUMMARY OF THE PROJECT

Synopsis 

The mini-project made by us is basically a demonstration of the banking systems around the world on a very basic scale, in which we have created a GUI (Graphic User Interface) using the eclipse platform of JAVA and using the file management systems in JAVA. Basically, we have provided an interface to add, delete and view the different many accountants of a particular branch of a bank and also to add, delete and view the different bank holders and also store their account numbers, contact numbers, and salaries in the file, just to use whenever required. We have used the file management system in JAVA to store the details of all the accountants and the account holders.

Introduction 

The application that is the essence of the project works by defining various classes that even have further subclasses so as to modularize the final code. The code is written in a neat fashion with appropriate documentation. It provides a smooth, unfaltering user experience so as to facilitate its use among all age groups.

The use of exception handling in Java is implemented so as to prevent the user from getting stuck in a process and understanding the use of the application in a more suitable manner. It eases the reading and understanding of naive runtime errors generated. The use of the multithreading concept in Java lets us use multiple threads at a single time and also lets us do multiple tasks simultaneously which is required in the banking system.

Problem Statement 

The motivation behind the project was the lack of a simple well-written application to access and modify the details of the bank accountants of a particular branch and the bank account holders at the same time. It gave us enough motivation to make a GUI-based application to solve the same. In a world like this, can a whole lot of the population afford to waste the time looking for the details in the hard-copied registers and looking for all the accountants and the account holders when they can be easily maintained as a simple application?

Objective 

The main objective of the project makes the user to access the details of all the bank accountant’s bank account holders. It also gives the accountant the authority to delete, and modify the details of the account holders but the reverse is not possible

because that’s the hierarchy in a banking system works in that way. The aim is to give the accountant entire power virtually on the application. With our application, we have achieved just that. The application could have been designed in many different ways, but we have produced a solution of application that minimizes time complexity as well as space complexity by using Encapsulation, Polymorphism, Inheritance, and data abstraction. Along with these, Interfaces and various access modifiers have been implemented so as to maintain privacy and definition of access in different blocks Of code. The use of exception handling lets the user know exactly what went wrong.

METHOD

The application works by reading all the accountants and the account holders from a different file, which can be updated by the proprietor of the application, and also the same power is given to the admin of the bank. The file has the information stored in a particular format, which is decoded by the string reader functions in the code. Each time we enter or want output from the file we have to read this string reader function which is an in-built function of java and can be directly used just by importing the required files.

If there exists an object for the particular accountant or the account holder already, then that object is accessed, instead of creating a new one. If an object that is not available in the file is to be accessed then that object needs to be created and then accessed hence access to that object is not allowed and hence access is denied. We have to make sure that the object we want to access is present in the file system otherwise we have to create an object. The usage of various JFrames also enables us to increase our scope and work beyond the limitations of java by using the GUI effectively to give users an attractive interface to work with and get the work done.

SYSTEM REQUIREMENTS:-

  • Eclipse platform for JAVA GUI (Graphic User Interface)
  • JDK(Java Development Kit)
  • Windows Operating System

WORKS DONE:- (SCREENSHOT PF OUTPUT AND EXPLANATION)

  1. Main Page:–

This is the main frame that will be displayed as soon as our project gets executed. This is also the first page and the directive page as it directs us either to the admin section or to the accountant section. It consists of two buttons ADMIN LOGIN AND ACCOUNTANT LOGIN.

  1. Admin login page:–

This is the page that gets displayed as soon as the user clicks on the admin login button.

It consists of 2 labels namely enter a name, enter a password, one button, one text field, and one password field to get the password. To hide the password we have here used the echo Code property of the password field to encrypt it.

  1. Login Failed:–

This page gets displayed as soon as the user gets the name and the password on the frame admin login form but the dialog box with the message “Sorry, Username or Password Error” only when either the password or the name entered is incorrect.

4. Admin login Section:–

This frame gets displayed when the user enters the correct name and password. It has 4 different buttons which will direct to the things written on them. Only the ADMIN can enter the details of the Accountant and no one else. It consists of the addition, viewing, and removal of the accountant.

5. Add Accountant Page:–

This frame appears when the Accountant login button has been selected and the name and password entered are correct. This frame consists of the heading Add Accountant and it consists of 6 labels and 6 text fields and 2 buttons. This

6. Accountant Added Successfully:–

This frame appears when an accountant is added successfully.

This frame comes under the admin section. It consists of a dialog box that is used to make a JOptionPane.showMessageDialog() function.

  1. Database of all accountants:–

This is the database frame of all accountants under the institution. This contains various information about the accountants.

  1. Deleting an accountant:–

This frame comes under the admin section.

This frame does the job of deleting an accountant.

This is in the control of the admin whether to delete or not.

  1. Record Deleted Successfully:–

This frame comes when the record is deleted.

This frame confirms that the record is deleted successfully.

  1. Accountant Login Form:–

This frame can be chosen from the main frame of the project.

In this framed name and password of an accountant has to be given and if it is correct then the accountant section frame pops up.

  1. Accountant Section:–

This frame comes under the accountant’s control.

In this Frame, the accountant can add and view users.

  1. Add Account section:–

This frame appears when the button to add an account is hit in the Accountant section.

This frame saves the user’s various details in the database.

  1. Account Added Successfully:–

This frame confirms that the user is added successfully. This frame comes under the accountant section.

  1. Database of users:–

This is the database of users.

This comes under the accountant view section.

FUTURE WORKS:-

  • Since the project was made on a very basic level the obvious future work for the project would be to inculcate into it more complexities of the real-life kind of banking system. Since the project we made was only for the students of the branch IT in its future work we can inculcate more branches
  • Another future work that might sound interesting is to provide a server to it and make it using a database like MySQL(My Structured Query Language) which is a database used often with Java to store the details and the contents into it. It will be relatively easier for both the user as well as the programmer to use MySQL instead of the file management system, this is because in the file management system, we have to distinctly code to read in a string or anything else but when using MySQL we can directly use the add, delete and modify inbuilt functions of the MySQL database system and connect it to the Java program through server and then take in the command from the user in java and then pass on the same command to MySQL. Java and MySQL can be connected to each other through database connectivity which basically connects them through

RESULT AND DISCUSSION:-

The main result of the project is that we are now able to create a banking interface within a branch and between the accountants and the bank account holders. It can also be used to display the details of the users/bank account holders if we want to know something about them as and when we require it.

The usage of JFrame also enables a good graphical user interface making the banking system look more attractive and hence more appealing to the user. Since we have used many components on the JFrame like the text fields, password fields, radio buttons, and other buttons. All the components within them contain a lot of properties that can further be used to make it more attractive and more user friendly and also more encrypted in a way hence ensuring the data encryption in the Java program.

CONCLUSION:-

This was our project ever involving the connectivity of a language with the file management systems. This surely taught us a lot of things like how to store the details and how to look for the details in the backup database and how to create a database and how to back up our data regularly. Through this project, we ended up making an IT portal that has important significance and is very essential to us all. Through this project, we have gathered more knowledge about java, eclipse, and file systems in java. We also got to know a bit more about databases and how we use them.

This project also taught us how to work in a team and taught us various leadership skills and how to coordinate in a team and get the work done.

E-Commerce Application Project using Python Django Framework

PROBLEM STATEMENT FOR E-COMMERCE WEBSITE

An E-Commerce Website selling a wide variety of products needs to be developed. Products must be grouped into categories based on their characteristics. Some of the broad categories include Electronics, Apparel, Books & Media.

For eg, mobile phones and laptops come under the category Electronics, and T-shirts and pants come under the category Apparel.

The webpage should provide a search bar for the user to search for the products of his/her choice and should provide functionality for an admin to log in and modify the database.

The backend of the website should comprise a database to store:

1. The list of products available
2. The various categories of products available
3. The list of sellers available
4. Table of details of all the users who have purchased items.

The specifications of the various items in the database are given below.

A PRODUCT has the following requirements

– Each Product has the following attributes to identify it Name, ID, Seller, Price, Colour, Number of Items Left
– Each product may have a number of SELLERS.
– Each Seller has a location, products he/she is selling, discount he/she is willing to offer on the products as well as the time of delivery.

The products are organized into CATEGORIES.

– Each Category has a name and an ID.
– Each Category may be further subdivided into more categories.

Eg: Electronics is a broad category that is comprised of a number of products such as Laptops, of which Dell Inspiron is a type of Laptop.

The database must store data of the various USERS of the website

– Each user has a name, address, price to be paid, and ID of the product purchased.

Admin logs in to the PRODUCT database to add new products, and delete and modify the existing database.

Physical Design

E-Commerce Project Computation of the Blocking Factor for each of the Tables with the use of the standard block size of 512 bytes. The Blocking Factor is a lower-limit integer value as part of the tuple cannot be saved in one block of data storage.

List of Entity Types

Goods – This table has details of all the Goods in the Database.

Seller – This table has the details of all the Sellers in the database.

Product – This table has the details of all products being sold.

Customer – This table has the details of all customers who have registered with the website.

Customer Items – This table has the shopping cart of all the customers.

Book – This table has the specifications of all books being sold.

Fashion – This table has the specifications of all fashion apparel being sold.

Media – This table has the specifications of all Media being sold.

Mobile – This table has the specifications of all Mobiles being sold.

TV – This table has the specifications of all TVs being sold.

Laptop – This table has the specifications of all Laptops being sold.

All Columns are NOT NULL unless explicitly mentioned

Relational Schema:

Citizens and the Municipal Authorities Connecting System Project

Abstract

Citizens & Municipal Officials Connecting System is a project that is designed to facilitate the citizens and the Municipal Authorities to simplify the process of complaint filing and management. It consists of a mobile application for the citizens as well as an ASP.NET web application for the Authorities. The citizens can file complaints through the app and the authorities will get those complaints and assign them to the appropriate officer.

The officer will then solve the complaint and notify the administrator through the system, the administrator will then change the status of the complaint. The user can track all of this through their mobile app from their dedicated section to view the complaint status.

This system is a significant improvement over the existing system of complaint filing and management, and hence we believe that our project can make a significant contribution to the modernization of the governance procedures.

INTRODUCTION

Citizens & Municipal Officials Connecting System is a tool designed to function as a platform for the citizens to communicate with the Municipal corporation authorities and replace the old method of writing letters and e-mails as they are a time-consuming mode of communicating with the authorities.

  • Background

In this age of rapid urban development and internet connectivity, the gap in communication between the residents of a city and the Municipal Corporation that runs the city should be reduced to a bare minimum.

Unfortunately, there hasn’t been much progress in that area or it has been very slow because this topic hasn’t been seen as a priority by the authorities even with all the technological advancements, due to which the citizens have suffered as they are yet to see a channel of communication that is as fast and as up-to-date as the technology of today.

  • Objectives

The objective of our project is to provide solutions to both – the citizens and the municipal corporation. We aim to provide the citizens with a platform, which they can use to communicate with the authorities.

Another objective of the project is to provide the municipal corporation with a tool – which they previously didn’t have – to manage all the complaints that they receive, freeing them from the responsibility of managing all the heaps of files that are present in their office.

The most important of all the objectives is to save the time of the Municipal authorities so that they can focus on multiple tasks in a single day and utilize their time more efficiently. Other secondary objectives include creating awareness among the masses about the digitization of the traditional paper-based administration – which is regarded as time-consuming – as we are moving toward the idea of a Digital India.

  • Purpose, Scope, and Applicability

The following are the purpose, scope, and applicability of the city reporting system that we are going to develop.

  • Purpose

The project has been undertaken by us to simplify the communication process between the authorities and the citizens by removing the unnecessary and time-consuming formalities that are in place right now and putting in its place a new system that uses an entirely new channel of communication – the Internet and the mobile phone.

Since the citizens can directly communicate with the authorities, it saves a lot of their time as they don’t have to follow a certain protocol anymore, the authorities will forward their query or complaint to the appropriate officer in charge and make the whole process hassle-free for them.

This way the authorities also don’t have to deal with all of the extra paperwork like forms and letters resulting from the old method of registering a complaint, all they have to do is to forward any complaint that they receive to the appropriate officer and that officer will take the necessary steps needed to solve that particular complaint.

  • Scope

The scope of our system ranges from the citizens that will use the system to report their grievances, to the Municipal authorities that will use the system to then manage those complaints and solve them.

This offers us multiple avenues where we can simplify the process of complaint filing and complaint management for both the parties involved respectively.

Citizens can have various problems, like waste disposal, water supply, sewage, drainage problems, waterlogging, etc., through the mobile application they can just simply click a picture and post a complaint, which will then be forwarded to the concerned officer. Thus we are building a single platform that can be used to resolve a wide range of issues about most of the departments in the Municipal Corporation.

Thus we can say that our project is not just one dimensional in terms of its scope we have tried to cover as many areas as we could, and we have also tried to make our project scalable so that we can build upon the existing architecture instead of building a new system entirely from scratch.

  • Applicability

The citizens here can file their complaints in a matter of a few clicks instead of making a personal visit to the local Municipal Corporation office due to which the transportation time and cost of the citizen are saved and the paperwork is also reduced making the whole operation an environment-friendly one.

The Mobile app can also help people with certain physical disabilities to file complaints without having to worry about traveling to the Municipality office and properly handling the paperwork or documentation and going from table to table, to find the right officer to submit their complaint since the app can do both the things for them so that they don’t have to take all the trouble by themselves.

Municipal officers that have been assigned a complaint through the system will need to provide a proof-of-work that they have solved that particular issue and not just click solved on the screen and think that their job is finished, in this way we are promoting accountability of the officers towards the citizen.

ER Diagram:

ER Diagram

SYSTEM ANALYSIS

Existing System

Till now most of the complaints are filed physically or via emails, which in the case of emails require multiple email IDs too, for the relevant authority of a particular department. This might take a lot of time and effort for finding the authority first, for a particular kind of complaint, and then find an email ID of the department.

Due to these multiple channels of communication, the authorities also find it difficult to track every complaint since the users might file their complaints through the medium of their choice, this leads to confusion among the authorities as there is no central system that manages all of the complaints in a single place

Proposed System

This system will not only save the time of the complaint filers but also allow them to track their complaint and their status at regular intervals of time. Once the complaint is solved, the user gets the update on their phone..

Requirement Analysis

  • Problem Definition

Nowadays it is important that if a user is using a mobile app, they have to be provided with accurate information/guidance and proper security of their data should be implemented, to create trustworthiness between the citizens and the government. Authentication and verification of users have also become mandatory now.

  • Issues

Some of the issues that the citizens face with the current system are as follows

  • Time Consumption: Travelling to the office of the Municipal Authorities and filing the complaint physically is a time-consuming process as it involves hopping from table to table.
  • Dealing with Paperwork: Another problem with the physical method is that involves dealing with a lot of paperwork. The citizens have to fill out various forms to file even a single complaint.
  • Lack of accountability: Municipal officers in the past have been accused of not being accountable to the citizens, through our project we are promoting accountability among the Municipality officers.
  • Requirements specification

Here we are going to develop a system that acts as a communication channel between the citizens of a locality and the Municipal Corporation of that locality the main objective is to provide a common interface between the citizens and the authorities so that they can communicate trustfully, at ease and without any inconvenience for both the parties involved.

Overview

  • The user can file a complaint by logging in to the app
  • The user will be requested to create and register an account by filling out all the details that are required
  • A complaint ID will be generated when the user files a complaint it will be unique for every complaint the user files
  • The user can track the status of all their filed complaints through a separate tab called ‘complaint status’.
  • The administrator will be able to delegate various complaints to an officer under him.
  • The officer can change the status of the complaint assigned to him once he has solved the complaint

Design & Development of Disaster Safety Android app

A Disaster Safety Android app that helps people inform you about everything that is nearby by using help centers before and during an accident. Also, a PHP-based website to enter data on the server-side and work with the android application successfully. The Disaster Safety mobile app also gives you the location of all your friends and family that have been accessed by the user. The app can store offline maps and information about help centers also comes through messages and is displayed on the map.

Innovation:

India being a disaster-prone country suffers a lot of casualties every year not because of the lack of resources but because of the lack of information on these resources. This app brings the resources to you, even when you are in the middle of nowhere and knows nothing about what to do in such a situation, Disaster Safety app can save your life.

Features:

  • It works in offline mode and saves the data.
  • It not only works at the time of disaster but also in various situations like you are any kind of trouble or your phone is lost.
  • Gives the news and the guidelines about the various disasters.
  • Can track the location of your friends and family in danger.
  • Notifies you when your friend or a family member is in danger.
  • Saves a lot of power consumption as works offline.
  • Locates the nearby relief centers, hospitals, and police stations not only by internet but also through SMS.

Database Model

admin user

Column

Type

Null

id

int(11)

No

username

varchar(30)

No

password

varchar(50)

No

family 

Column

Type

Null

member_id

varchar(13)

No

family_id

varchar(13)

No

permission_given

tinyint(1)

No

guidelines 

Column

Type

Null

id

int(11)

No

calamity

varchar(30)

No

before_cal

text

No

during_cal

text

No

after_cal

text

No

help 

Column

Type

Null

id

int(11)

No

latitude

double

No

longitude

double

No

type_of_help

varchar(30)

No

login 

Column

Type

Null

Default

id

varchar(13)

No

 

name

varchar(30)

No

 

status

tinyint(1)

No

1

latitude

double

No

0

longitude

double

No

0

gcm_regId

text

Yes

NULL

news 

Column

Type

Null

Default

id

int(11)

No

 

notification

text

No

 

info

text

No

 

date

varchar(10)

No

 

Design & Implementation of Library Management System Java Project

Abstract

In every institute or city, there are libraries. A lot of software’s are being made in the past to manage the library system so that easy and proper functioning of the library can be there. This project aims at building such a project by implementing some of the functionalities that have been present in the older software’s using the content and the knowledge.

Giving a brief overview of the project is that this will be a core java project. The information regarding the books and members of the library is stored in the database. Very basic and user-friendly screens will be there for a good user experience and for the most part it will be implementing some easy and necessary features of the library management system.

functionalities :

  • Very friendly user interface.
  • Easy to issue and return books.
  • Easy to search books.
  • Adding and deleting members will be easy.
  • Adding and deleting books will be easy.
  • Can view all the members of the library
  • View all the books in the library

For accomplishing these functionalities very easy screens will be provided. Complex features of the general library management system will not be implemented but this system will be very useful for the staff in the library rather than the students. This will be small software implementing some easy features of the library management system in practice.

Introduction

The software Library Management System has the following main modules.

Insertion to Database Module  – Easy insert of books and members
Search Facility system  – search for the book
Deletion to Database Module – Easy to delete books and members
Issue Books  – Easy to issue books
Return Books  – Easy to return books and  charge fine on members and other basic operations

ER Diagram

ER Diagram

System Requirement and Specifications

Purpose:

This specification document describes the capabilities that will be provided by the software application ‘‘Library Management System’.

The system aims at providing the Library of an institute with better functioning and easy to issue the books and return books and many other facilities that can reduce the human work to an extent.

Scope:

 The software product ‘Library Management System’ will be an application that will provide information regarding the current situation and presence of books in the library and also very specific details of the library. Various functions can be performed like updating the number of books, issuing the books and adding and deleting members, etc.

References:

The details about the books and the members are provided by the Library head.

Overall Description:

The ‘Library Management System’ will have the capability to maintain information about the library regarding issues of books members of the library and fine and the students and many other things.

Product Perspective:

The application will be window-based. Very easy to use and good searching methods are provided to make it easy to search books and members.

System Interfaces:

The system has a very friendly interface and the java language provides the ease with which anyone can use it.

User Interface:

As the system will start there will be a menu where there will be some choices for the user about the management.
Each screen will have a title describing the things that can be done there. Most of the screens have an admin password box where an admin password is needed to fill. For general users, there is the option of searching the books only.

Product Description:

Normal users and students, cannot do the changes in the database. Only the admin using its password can change the contents of the database. Most things required a password. So it is designed for the admin to keep track of the records of books issued and other things.

User characteristics:

Educational level: He should be comfortable with the English language.
Technical Expertise: Should be comfortable using the general-purpose application on the computer.
Constraints: The whole system is user-driven. There are no warnings in the system if there is a decrease in copies of a book. The searching of the books and members is also very limited and no partial searching is there. The admin password can be changed only after doing changes in the code. As it is just a prototype so it lacks many features of the exact library management system.

Future Scope

As the project lacks many features like good searching of members and books, partial searching, and searching regarding many other fields. The details of the members are also very less. So this project can be extended very easily in the near future to make it more efficient and with more user-friendly frames and screens. Icons can be added to this project to look more attractive and very friendly. More modules can be added to make it do more work. More admin IDs and passwords can be added so that more Admins can use them and each admin can be provided with a different set of authority to change the contents of the database. More functions can be provided to the admin like changing passwords and fine to the library members. 

CSE Minor Project on Data Analysis of IT Sector in India using Big Data

Statement about the Problem:-

The IT industry is continuously growing in India, but there hasn’t been any tool yet that can analyze this sector’s growth with such a large dataset with immediate results. Such a problem can be addressed using a tool that can fetch any analysis-related query on huge datasets and can give immediate results.

Why is the particular topic chosen?

This topic finds its relevance in the analysis of growth of the IT industry of India to judge the increase in the number of IT companies in various states and at the central level too.

This tool would be able to handle huge sized datasets of companies which normally are found to be difficult to access in a fast manner to fetch relevant results

Objective and scope of the project

Using a dataset of companies to:

  • Observe IT growth in India for the past few decades in terms of various factors such as Sate wise growth to understand the development needed in the same.
  • Understand private and public sector growth of industries in India.
  • Understand the capital investment involved in various sectors of industry and many more.

Methodology/Process description:-

Dataset of companies which is huge in size will be first accessed through Cloudera software using Hadoop technology.

Using this technology, various queries would be coded down to use the dataset to give back all the results needed in minimal time.

Those results would then be converted into graphical representation to study the growth.

Required Resources :

Software-

  1. Cloudera
  2. Eclipse

What contribution would the project make?

  • This will help in studying the IT structure of India.
  • Various parameters needed to decide future steps to be taken for improvement in various states can be figured out using this analysis.
  • Analyzing growth patterns of various industries in India.
  • It is ultimately creating a tool that would be able to handle any big size of industry data and would give much faster statistical results than normal processors.

The Schedule of the project

  • Identify Statistics needed: (2 days)
  • Data Acquisition: (5 days)
  • Process/Clean Data: (1 week)
  • Exploratory Analysis: (1 week)
  • Designing Queries: (5 days)
  • Creating code: (5 days)
  • Implementing Code & Validation: (1 week)
  • Debugging code: (5 days)
  • Running code and fetching results: (1 week)
  • Graphical Conversion of results: (5 days)
  • Visualize Results: (5 days)

System Analysis and Design for Student Hostel Management System Project

Introduction

PURPOSE

The purpose of this SRS & System Analysis and Design document is to build a Hostel Management System Site to help students book hostel rooms at their own convenience, file complaints, and write reviews about the room.

INTENDED AUDIENCE AND READING SUGGESTIONS

The Hostel Management System project is useful for both students and hostel committee members.

PROJECT SCOPE

The purpose of this Hostel Management System is to ease hostel management and to create a convenient and easy-to-use application for students. The system is based on a relational database with room allotment, review, and complaint features.

The Application will be able to perform the following operations:

  1. Allot Rooms: Students will be able to choose hostel rooms according to their convenience and pay for the same.
  2. File a complaint: Students will be able to file a complaint regarding any of the facilities and if the complaint could not be resolved within the specified time, it would be sent to the higher authorities.
  3. Review the rooms– Seniors who have already stayed in the room will get an option to review a room in which they can upload the room pictures and write about the problems(if they had faced any).

Mess: Students will be able to pay the hostel fees, see their past payments and write reviews about the food and management.

ANALYSIS

Specific requirements

External Interface Requirements

User Interfaces

The goal of this Hostel Management System is to design the web application that will be used for the proper management of hostels. The user types are listed below-

  • Students
  • Hostel Committee
  • Mess Committee

ER Model

Hostel Management System ER Diagram

DESIGN

RELATIONAL SCHEMA

  1. Users
  2. Reviews
  3. Writes rev
  4. Rooms
  5. Complaints
  6. Writes com
  7. Student

USER INTERFACE DESIGN

GOAL

MAKE INTERFACE

  1. Pleasing to the eye.
  2. Simple to Use.
  3. Minimize the effort it takes for users to accomplish the work.

PRINCIPLES OF USER INTERFACE

  1. Layout
  2. Content Awareness
  3. User experience
  4. Consistency
  5. Minimize user effort

VARIOUS USER INTERFACES

  • HOME– It includes navigation among different pages. Starting with registration and login and address of other pages.
  • REGISTRATION/log in If you are a new user you have to register and if already a user only login is sufficient. After registration and login user will be redirected to the home page.
  • ROOM ALLOTMENT– After logging in it is necessary for the user to fill room allotment form if the room is already booked user will be redirected to the allotment form.
  • DASHBOARD– After booking the room user can see the status in the dashboard including username, scholar no and room booked.
  • REVIEW A ROOM – The user can review the room he is allowed only after login. This page is accessible only when the room is allocated. The review includes the description and the photo of the room. After the submission page is directed to another page from where the user can view his review and even delete it.
  • VIEW YOUR REVIEW– It keeps the track of the user’s reviews.
  • REVIEWS OF ROOMS– Before booking the room the user can view the review of various rooms.
  • COMPLAINTS– After room allotment, if the user requires to file any complaint he can register his complaint.
  • YOUR COMPLAINTS– It keeps a record of all the complaints filed by the user.

FLOWCHART

Hostel Management System Flow Chart Diagram

CONCLUSION

Till now, room allotment is done manually and physical presence is also required for the same. Students have to come a few days prior to the beginning of classes in order to select rooms. Hence this particular project deals with the problems of managing a hostel and avoids the hecticness of carrying out tasks manually.

College Search Engine Project using File Management in C++

Introduction

This is a simple file management-based search engine using C++ and some Graphics that gives you the details about your University like University Info, Faculty information, Student Fee payment information, etc.

It gives you details such as the admission process, hostels, courses offered, and different activities conducted by the university.

FUNCTIONS:

  • Basically, the function is used to set the cursor position on consol using x and y coordinates.
  • The function is used to flush the stream.it can flush all the buffer from the stream.
    Basically, it is used to clear a consol.
  • The function is used to delay the output on the console by providing according to values.
  • The function is used to provide a sound effect on the console according to provided arguments.

 Search Engine File Management

Motivation

We got this motivation as we wanted to explore how a search engine can be managed without database management.

We explored different ways of creating a search engine and then we decided to make it using file management.

Applications

  • Researching information on University
  • Admission regarding queries
  • Precise information from the source

Challenges

  • Stemming algorithm
  • Colorful backgrounds and Graphics
  • Screen resolution (Formatting gets unsettled)
  • Linking of HTML with C++

Conclusion

  • As we have finished this College Search Engine project, we have got a better understanding of the inner workings of a search engine using files.
  • We have known more about the use of graphics in C++.
  • Debugging and file management knowledge have increased along with concepts such as inheritance, constructor, and destructor.