Bus Ticket Reservation and Management System Project using Java and Swing

1. Introduction

1.1    Purpose

The purpose of this document is to describe the Software Requirement Specifications of a Bus Ticket Management System. It aims to lay down guidelines that have to be followed while developing the bus ticket management system. It also includes a description of the software and the IDEs used.

1.2    Intended Audience and Reading Suggestions

  • Section 2 of this document provides an overview of the domain that the proposed Bus Ticket Management System will support.
  • Section 3 includes screenshots of the actual developed Bus Ticket Management System.
  • Section 4 organizes the functional requirements for the major services provided by the Bus Ticket Management System.
  • Section 5 describes the nonfunctional requirements of the Bus Ticket Management System.

2.    Overall Description

2.1    Product Perspective

The Bus Ticket Management System that is to be developed is a new self-contained product that will contain information about a set of buses and passengers traveling on that particular bus. The perspective of the product is to replace the travel books used by travel agents and replace them with a well-maintained, reliable soft copy of the travel details.

Figure 2.1: Logic Diagram of the Software

2.2    Product Functions

A software system needs to be developed to maintain a Bus-Ticket Management System.

The software includes functionalities for 

1. User

2. Administrator                           

The user can book/cancel tickets.

  • To Book a ticket He / She selects the SOURCE Station & DESTINATION Station (for a given Date), upon which a list of buses plying on the chosen route is displayed. The user selects a bus, which results in the displaying of the Seat Matrix of the bus showing the available seats and booked seats.

            The user selects a seat and enters details like

            1. Name

            2. Address

            3. Contact No. 

            4. E-Mail

            after which the ticket describing all the travel details is generated.

  • To cancel a ticket He / She enters the Bus Number, Seat Number, and Date of Journey.

The ticket is canceled and the canceled seat is shown to be available in the seat matrix.

The administrator of the Bus-Ticket-Management system has to verify his/her identity by entering the password, which will give him/her administrative privileges.

The administrator can 

  1. Modify routes of buses
  2. Alter schedules of buses
  3. Modify the Prices of the tickets
  4. Add or remove buses

The changes made by the administrator are updated and the user sees the latest updated information.   

2.3    User Classes and Characteristics

It identifies the various use classes that will use the system. The system will be used in a Travel agency. The administrators, front-desk staff, and passengers will be the main users.

Assumptions: They are responsible for checking seat availability and reserving it for the appropriate passengers.

2.4    Operating Environment

The Bus Ticket Management System is developed on the Netbeans IDE and compiled as a Java Project. The source code files are put together in an src folder and included under one package.

This can be run on Operating Systems which have the Java Development Kit along with the Java Run Time Environment installed on it. 

3. External Interface Requirements

3.1 User Interfaces

The Bus Ticket Management System will not be a web-based application.  As can be seen above, the main interface includes a Book ticket button which will resume only after the source and destination of the user are inserted with the date. It also includes a button for canceling tickets if the user changes their mind. The third button is for the Admin to log in, once pressed it will ask for their username and password and the system retrieves the admin menu.   

The Admin Menu Page contains 4 fields which are labeled as ‘Add a bus’, ‘Modify a bus’, ‘Book a Ticket’ and ‘Remove a bus’. The admin can enter values to these required fields by clicking on the respective button.

There shall be other pages that have functionality related to customer operations and admin tool operations. The example figures are added.

The bus list is a table containing the Company name along with the details of the bus:

  • Amenities: gives all extra features present in that particular bus
  • Route number: to differentiate between buses of the same company
  • Type: tells the user whether the bus is a sleeper/nonsleeper and if It has A/c.
  • Price: Amount to be paid
  • Date: date of departure
  • Start and End time: The time of departure and arrival

At the bottom, the user has to enter the route number and choose the seat position from the seat matrix given. Once finished choosing the user can use the confirm button.

The cancel page is also present to remove a reservation placed on a seat on any specific bus.

Enter the details of the bus: the date, the route number, and your seat number.

 3.2 Software Interfaces

Both the client and server computers do not need an internet browser to work online.

The Bus Ticket Management System is developed on the Netbeans IDE and compiled as a Java Project. The source code files are put together in an src folder and included under one package.

This can be run on Operating Systems which have the Java Development Kit along with the Java Run Time Environment installed on it.

3.3 Communications Interfaces

This software can only be used on a local computer and thus communication functions like e-mail, web browsers, and network servers are not included. Any changes made are reflected immediately and the user who uses the system next will see the latest updated information.

Use Case Diagram for the Bus Ticket Management

4. System Features

4.1 Functional Requirements

Book Ticket:

  • Check Availability: The passenger must be allowed to see all available options for a journey and see if a particular seat is available or not. He should be able to view all the buses plying on a given route on a specific day and be able to check seat availability on all the buses.
  • Book Ticket: Then if the ticket is available then the seat should be booked, by entering the passenger details like Name, Contact No., E-mail id, and Age.

Report Generation:

  • Bus List: The Bus Ticket Management System should contain files that contain the list of buses traveling on a particular route.
  • Passenger List: The Bus Ticket Management System should contain files that contain the list of passengers traveling on a particular bus.
  • Seat Availability: The Bus Reservation System should generate reports on seat availability.       
  • Passenger-related Information: Each passenger should have the following mandatory information: first name, last name, phone number, and Bus details.
  • Bus-related Information: Each bus should have the following information: bus number, no of seats, bus type: normal, AC, Sleeper, Source, and Destination.
  • Update Bus Information: The Bus Reservation System shall allow the Administrator to update any of the bus information like type, source, destination, and ticket price.  

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:

The College Student App – A Solution to a Student common College Requirements

Problem Statement

A College Student App Android application needs to be developed that caters to the needs of students. The app should provide solutions to a student’s common requirements.

Timetable

Organize your daily college schedule with the help of the Timetable.
Create and customize according to your specific subjects for the semester.

Bunk Manager

Keeps you on track with the number of classes you have missed and warns you if you’re close to going below your attendance requirements for that course.

Expense Manager

Manage your expenses directly on your smartphone. The manager will be used by students to check the amount of money spent daily, weekly and monthly with the help of graphs.
The application also provides a widget for the expense manager to make it easier for the user to interact with it.

Memos

Quickly create, access, and organize notes. This proves extremely useful when you need to write things down on the go.

Reminder

It helps in reminding yourself of different important things which you don’t want to forget.
This feature has convenient messages which pop up on your notification bar as and when instructed.

The Study

Main Menu

The splash page on the left is the image that appears just as the android application is opened. It remains for 1.5s and is used to give time for the background applications to start running.

The College Student App main menu page is made to input details of the user, into the application. It appears only once when the application is first opened. These details are necessary for the Time Table and Bunk manager pages which are discussed later on.

The user has to input the following details into the text boxes

  • Classes per day (a maximum of 8)
  • Working days per week (either 5 or 6)
  • Total number of courses
  • The names of the course titles
  • Max number of classes in that course (max input of 60)
  • Required Attendance percentage

Menu screen

This is the initial page once the application is started and running. It serves as a menu for the user to choose the desired function. The menu screen of the college app consists of 5 buttons.

One button for each of the features present in the app:

  • Expense Manager
  • Timetable
  • Memos
  • Bunk Manager
  • Reminder

A single tap of any of the above icons will open the respective feature and take you to the next screen.

Reminder page

The College Student App Reminder application first starts off with a text box, which is used to give a title to your reminder. The user has to type in the message in this top space.
Next, the date and time of the event must be registered. The buttons when pressed open a drop-down panel that you can scroll through to find the correct date and time.
The date is in the DD/MM/YY format and the time is in the HH/MM format as shown above.
Finally, the bottom CREATE REMINDER button will finish the process.
The VIEW REMINDERS button stores all the previous reminders along with their date stamp for future reference.
The Reminder Message will pop up at the top of the screen in the notification bar at the specified time on the specified date. It also includes the ‘Big View’ Notification display.

Memo Page

Clicking on the memo icon will take you to the page above. This memo application is made to look like any ordinary piece of paper pinned down by a thumbtack. It’s an easy way to jot down any important points that you’ll need for further use.

The user can type in a title for the note on the top and continue with the details of the memo in the pop-up for the New Note.

Once saved, the user can create more and more memos by simply clicking on the green plus sign at the top of the screen. The minus sign on the left is used to remove a note that has already been created. It appears only after the first note is created and a pop-up gives you options to select the note you want to delete along with a Numpad.

Timetable Page

In the timetable feature, the user is meant to input the details once and then use the timetable for further use. The timetable page is made after initially asking the user whether they have a 5-day or 6-day college week. The number of classes in a day is also inputted along with the time intervals. After which the layout for the timetable is formed. Then one by one the classes are to be added. This is a one-time process.

After filling in all of the details, the user hits the confirm button to store the timetable. The timetable is saved and can be checked whenever necessary. It will be color-coded according to the subjects to simplify searching for the user. The edit button on the bottom of the screen allows the user to change the timetable if any adjustments are needed. The save button saves the changes made.

Bunk Manager page

The bunk manager opens up once the “Let’s Party” icon is tapped on. It opens up to an initial screen including all the subjects of the students. The student simply has to click on the subject which is currently taking place. Once the subject is selected, the next page that opens is the one that calculates your attendance percentage. If the user is attending the class, he taps on the Attended button. This draws a single tally mark under the attended column.

The same thing happens if the user is missing a class. In the bunk manager, the data is presented on the top of the screen. Also, the attendance percentage is automatically calculated as and when the classes are attended/bunked. This screen also includes an undo and reset button just in case you make a mistake or decide to attend class at the last moment. The last screenshot above shows the warning pop-up that opens up when the student’s attendance percentage goes lower than the minimum requirement.

Expense manager page

The expense manager page contains two buttons on the top. One dollar-eyed face for crediting money on the top left corner and another for debiting money on the top right.
First, it asks for the initial amount of money in your account which you have to punch in. After that, the user can update their expenses by filling in the pop-ups with the given number pads along with the reason for you spending their cash.

The application will keep track of your expenses and make sure that you don’t overspend. Another feature of this expense manager is the timely graphs showing the different ways you have spent your money.

There exist three columns:

  • A detailed expense for that specific day
  • Expenses with graphs per day
  • A monthly expense

Conclusion:

The College Student App is developed to be an innovative application and its main purpose is to get familiar with Android SDK and its development in general. The android OS has many advantages, as listed earlier, and this is why we picked this over others.

We primarily chose the Android platform as it is open-source and well documented, and the most commonly used mobile operating system among college students.

The advantage of declaring your User Interface in XML is that it enables you to better separate the presentation of your application from the code that controls its behavior. This feature of Android is used extensively in the development of our application.

Moving forward, we hope to push the user-specific data onto a server. We also plan to push notifications, tasks such as updating attendance records, wherein the user is notified after the class using the system time and date. Another functionality we would like to include is to sync expenses to a bank account thereby automatically updating the available balance when an amount is credited or debited. The application should be up on the Android play store soon once further testing and improvements have been made.

Web Technologies Project on Car Pooling Application

A brief walkthrough of the Car Pooling project

This Car Pooling application allows users to:

  • Become a member of the carpooling community (register and login)
  • Join rides
  • Offer rides
  • See the most popular rides taken

Joining A ride

The user searches for:

  • Source (starting point)
  • Destination (drop off point)

On selecting a ride, choose the number of seats (based on availability)

The cost of the ride will be displayed and will ask for verification of booking the ride

Offering the ride

A registered user creates a ride by

  • Selecting the starting point (source)
  • Selecting the endpoint (destination)
  • Entering car model (registration)
  • Enter the number of seats available
  • Cost per kilometer
  • The offered pickup points

 Inclusion of features

  • Webservices using RESTful APIs
  • Ajax Patterns
  • Submission throttling
  • To populate the source and destination of the list being searched
  • Multistage download
  • On loading the home page, the images are downloaded one after the other
  • Comet
  • SSE (server-sent events)
  • To view the topmost rides driven/ joined

Use of framework

  • RESTful API’s
  • Flask micro framework
  • Bootstrap for CSS
  • Mongo DB (for the database)

Intelligent Component

  • Calculate the fare: – ((distance * cost/km) / seats), Distance is calculated using the haversine algorithm
  • haversine algorithm – Takes two points (their latitude and longitude) and used to calculate the distance
  • To select pickup points – K nearest neighbors used
  • The intelligent component is trained using the dataset having rows as Place name, latitude, longitude
  • The model generated is used to predict the nearest neighbors of any given place
  • To decrease calculation time a pre-computed matrix of given places with respect to  distance  from all other points (places) is used

Two such matrices are used:

  • Distance matrix
  • Indexes matrix

Airbnb User Bookings Prediction Project Synopsis

Airbnb User Bookings Synopsis

1. Objective of work

The main objective of this project is to predict where will new guest book their first travel experience. 

2. Motivation

This project helps Airbnb to better predict their demand and take consequent informed decisions. Earlier a new user was overwhelmed with the various choices available for a perfect vacation or stay.

By predicting where a new user will book their first travel experience the company is better able to inform its users by sharing personalized content with their community. It will drastically decrease the time to first booking which will increase the company’s output and help them gain popularity among its user and an edge over its competitors in the market. 

3. Target Specifications if any

Predicting where a new guest books their first travel experience. 

4. Functional Partitioning of the project

4.1 Research and gaining knowledge

Undertaking various courses and familiarizing ourselves with the working process of Data Science problems. Exposure and exploration of the Kaggle website, understanding kernels, and datasets. Learning the prerequisites: programming in Python, and Pandas along with Machine Learning algorithms and data visualization methods.

4.2 Frequent Discussions and Guidance

Frequent discussions with our mentor along with his guidance in the same will allow us to work in the right direction and take informed decisions.

 4.3 Applying the knowledge gained

After much exposure to this field and gaining the knowledge, we will now apply our skills to real-life problems and contribute to society.

5. Methodology

5.1 Using the Kaggle platform

In the test set, we will predict all the new users with their first activities after 7/1/2014.In the sessions dataset, the data only dates back to 1/1/2014, while the user’s dataset dates back to 2010. Taking the help of the Kaggle platform for testing out datasets as it is not feasible to have a large dataset say 1TB be stored in a local machine.

5.2 Working on the dataset

 Using the dataset and studying various patterns of users’ first booking after signing up with Airbnb from different countries. Next plot out the observed and collected information. We can then apply various Machine Learning algorithms and calculate prediction scores. Finally, choose the algorithm with the highest score to recommend to users which are from that country the destinations that have been frequently used by travelers belonging to that region.

5.3 Submitting our work on the Kaggle platform

The result can now finally be uploaded on the platform and be used by Airbnb to better connect with their users.

6. Tools required

6.1 Kaggle Kernels

Kaggle is a platform for doing and sharing Data Science. Kaggle Kernels are essentially Jupyter notebooks in the browser that can be run right before your eyes, all free of charge. The processing power for the notebook comes from servers in the cloud, not our local machine allowing us to experience Data Science and Machine Learning without burning through the laptop’s battery and space.

6.2 Dataset

Airbnb will be providing us with the dataset, which would contain: Airbnb will be providing us with the dataset, which would contain

  • csv-the training set of users
  • csv-the test set of users
  • csv-web sessions log for users
  • csv-summary statistics of destination countries in this dataset and their locations
  • csv-summary statistics of users’ age group, gender, and country of destination.
  • csv-correct format for submitting our predictions

7. Work Schedule

(a) January

Enroll and start the course on Machine Learning using Kaggle. Start recapitulating the basics of Python and its various libraries such as NumPy, pandas, etc.

(b) February

End course and start analyzing the dataset

(c) March

Start coding and implementing various algorithms for the prediction

(d) April

Pick the final algorithm by trial and test and finish coding

(e) May

Appropriate documentation and upload our solution

Churn Prediction /Analysis Project using R and Tableau

Churn Prediction /Analysis on the given set of datasets The objective of the Churn Prediction /Analysis Project:

To obtain a Logistic Regression Model of the Insurance data which includes various attributes of customers mentioned in the dataset. This model will allow us to predict customers who will stick on with Allianz or in turn, renew their existing service plans (Churn=0) and customers who will not (Churn=1). Therefore, this model will help us to make a decision to retain the customers (churned) who will look for other Insurance companies.

The approach is taken for this Project:

First of all, start, there are around 21 variables in the given dataset. Before building a model we need to identify the most significant variables out of these 21. So, first, we need to do some preprocessing of the data. As part of pre-processing, we need to make sure that the data contains only numeric values and that the data is fully available. Out of these 21 variables,   there were 3 variables (Phone number, Area Code, etc.) that can be removed as they are not relevant to our prediction at this moment. Also, there were some data missing in certain rows. So those rows were omitted (using na.omit function in R). Then the significant variables can be found from this data. The following steps were carried out:

  • To start with, the data was divided into 2 sets namely the Training dataset and the test dataset with a proportion of 80:20.
  • Created fit0 taking “Churn” as the dependent value and rest as the independent values
  • Similarly, Fit1 was created
  • The iteration continued and created Fit2 where we got the significant variables. This was done using the step function.
  • Hence finalized the model Fit 2.
  • The next step is to predict the values for the training data using predict function. The predicted values are the probabilities. Using the view () function we can see the probability values
  • Converted these predicted values to “0” and “1”.
  • The threshold needs to be set and the advisable one was 0.5
  • Got the best accuracy rate with this threshold. Hence proceeded
  • So based on the predicted values, compared them with the actual values using the Table function.
  • Post this, a confusion matrix was created and the accuracy was 86% for a 0.5  threshold
  • Plotted ROC Curve to determine the area under the curve.
  • Plotted a KS Plot as well (just to understand the percentage of responders).

Also, the aim of this Churn Prediction /Analysis project was to visualize this in Tableau using the “R Integration with Tableau” feature. The following steps were carried out:

  • Using the finalized model in R (fit2), created one named Final_model (Prediction) in Tableau. This was created with the help of a confusion matrix
  • Created a graph using variables Churn (Actual Churn), Predicted Churn(Final_model), Accuracy, and Customer ID to identify the churn
  • For the Odds sheet, created a filter with all the measure values & threshold parameters.
  • A model created with R code with all variables (significant ones).

Conclusion:

Based on our predicted Model Fit2, We can conclude that 307 customers will not churn and there is a chance of 63 customers to get churned.  This is based on an accuracy of 86.13%. Therefore the Telecom Company (Service Provider) should contact these 63 customers to retain them by providing any attractive offers.

Regression Analysis on Fuel Economy Project

OBJECTIVE

The aim of this project is to identify the dependency of different variables with respect to the Fuel economy of a Car. In the attached excel I have done the regression Analysis considering the best suitable variable as an independent variable against the dependent variable FE.

PROCESSES & STEPS CARRIED OUT IN THE PROJECT

  • Used Excel “ Data Analytics” to carry out the entire process
  • To identify the best suitable variable, performed “correlation” in Excel and concluded that Engine Displacement is the best one
  • Post this, carried out regression Analysis using Excel function
  • Also, plotted a scatter plot against this to represent the trend line
  • Based on the P-value of regression analysis, the hypothesis was accepted /rejected
  • Divided the entire data set into 3 parts by random sampling method
  • Considered the 3rd set of data as the Test dataset and the first 2 as the Training data set
  • Calculated MAPE value based on the predicted value and actual value.

CONCLUSION

We could understand that the FE is related to Engine Displacement.  From the Scatter plot, we could identify that the best Fuel Efficient car has got a very less Engine Displacement.

Hospital Patient Medical Records Information Project App

Introduction

Information and communication technologies (ICTs) have great potential to improve health in all countries by enhancing access to health information and making health services more efficient. Mobile applications (apps) and other related software can also improve the quality of services and reduce their cost. The aim of the Patient Medical Records Information project was to enable health care practitioners such as doctors and nurses working in hospitals to be able to retrieve patient medical information remotely on any mobile device.

In this Patient Medical Records Information report, I will outline the research I conducted in choosing various technologies. I will discuss the problems I encountered and the solutions I came up with to overcome these issues in creating the specific application. I will also discuss the many technologies I used in the creation of the app including a data model representing the design.

The architecture of the solution

The overall structure of the solution is that the mobile app is being created for the hospital to maintain patients’ records and keep nurses and doctors up to date without carrying heavy paperwork around with them. The technologies I used to create this app suggested by my supervisor were Ionic, PHP, Angular JS, JavaScript, and MYSQL.

PHP provides integration of general-purpose programming and web-development scripting language. It is suited for server-side web development, and scripting and is used for professional websites. AngularJS is used for dynamic web apps and allows you to use HTML as a template language extending HTML’s syntax to express the application’s components clearly and concisely (Docs.angularjs.org, 2016). I chose both PHP and AngularJS because I had very limited knowledge of how they work and I wanted to improve my knowledge and skills in using them and they were also free. 

JavaScript is a programming language used to make web pages interactive (Chapman, 2016) and MYSQL Database is an open-source relational database management system (RDBMS) based on Structured Query Language (Search EnterpriseLinux, 2016).  Both of these programs were chosen because my supervisor requested me to use them and they were also free to use. Finally, Microsoft AZURE Cloud storage is open cloud storage, flexible, enterprise-grade cloud computing platform (Azure.microsoft.com, 2016). I decided to use this platform as my supervisor provided it to me free of cost I researched it and I found a lot of information online to help me complete this project.

The clients who are the doctors and nurses wanted to be able to log in to a mobile app to retrieve information in relation to patients. Firstly the doctors’ requirements were to be able to see all of the patients registered to him/her and the associated patient information. Nurses wanted to be able to log in and see all patient files and associated information as they worked with all patients. The second requirement was that once the doctor/nurse logged in to the mobile app they would have the ability to update the patient records for example blood pressure, heart rate, types of medicine, etc and they could also add notes or remarks. When the remarks and related updated information is added to the mobile app it then updates all the medical history and notes related to the patient. Furthermore, once the doctor/nurse checks the patient’s information in the future the patient’s information will be updated which makes it an effective and efficient method in contrast to multiple physical files.

The Hospital Patient Medical Records mobile app itself is written in AngularJS and JavaScript and through the HTTP requests the mobile app sends the requests to the PHP and the PHP then retrieves the data from the cloud MYSQL and transmits the data back to the mobile app.

Class diagram and Data Model

Through the HTTP requests the mobile app sends the requests to the PHP and the PHP then retrieves the data from the cloud MYSQL and transmits the data back to the mobile app. I designed the mobile app using these technologies as it was a requirement of the project given by my supervisor.

Technologies used

The technologies used included:

  1. JavaScript
  2. PHP
  3. AngularJS
  4. MYSQL Database
  5. Microsoft AZURE Cloud storage 
  6. Ionic

I chose both PHP and AngularJS because I had very limited knowledge of how they work and I wanted to improve my knowledge and skills in using them and they were also free. 

JavaScript and MYSQL Database were chosen because my supervisor requested me to use them and they were also free to use. I utilized Microsoft AZURE Cloud storage as my supervisor provided this platform to me free of cost and I researched it and found a lot of information online to help me complete this project.

Problems Encountered/Solved

At the beginning of the Patient Medical Record project, I was overwhelmed with the task at hand as I didn’t know where to start or what to do, so my project supervisor guided me and gave me advice about how to commence the project and what to do to begin.

The first time I tried to retrieve the data from the database it took me 4 days to retrieve it. Subsequently, I spoke to one of my colleagues and my project supervisor and did some research online and I figured out how to retrieve the information more efficiently and effectively.

Time management was an issue because I had many assessments to do and I left work late and I was running out of time in the end. For example during the Easter break, I had numerous projects due so I found it difficult to allocate time to all of the different assessments. I also wasted my time using a Google database called Firebase at the beginning of my project but later on, I decided not to use it because of the project requirements, and as a consequence, I wasted 2 weeks.

Also in relation to time management, I didn’t anticipate how time-consuming the research from the project would be. E.g. it took me a number of days to understand PHP and learn how to write a PHP script that could talk to the database. AngularJS was never taught in college so I had to take the time to teach myself. Although I completed the project in the allocated time I learned the importance of organization and prioritizing work.

Conclusions

Mobile technologies are emerging as a powerful tool for health information transfer including making patient information portable and accessible. I gained a lot of experience from using the 4 technologies and I believe I have the capability of using them if needed for future projects or for employment purposes.

I am also aware of how to solve specific problems and how to research these problems e.g. in relation to database retrieval or how to successfully manage my time. I recognize that I can overcome difficulties and achieve my goals successfully by being persistent, organized, and patient. Although working in isolation on individual projects it is important and is a necessary part of employment it is important to seek advice or guidance from superiors or colleagues that may shed light on an issue or provide a new perspective.

Recommendations

In terms of further developing the Hospital Patient Medical Records Information Project App, it could be linked to local GPs, pharmacies, and other health care providers so there is a complete holistic picture of the patient and his/her medical history. I would also have managed my time better as I was under severe pressure and time constraints and this may have affected the quality of the end product.

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.