SlideShare une entreprise Scribd logo
1  sur  60
Télécharger pour lire hors ligne
1
PREFACE
The Medical Reimbursement, designed for providing an interface between the Company
Administration and Employees, thus plays a critical role in circulation of an employee
information assets, besides offering controlled access to the database. The principal goal of an
Medical Reimbursement System is to provide the medical reimbursement to the employees of
any organization.
. The Medical Reimbursement System design is hinged on three-tier-architecture:
 Client end, which consists of forms, designed using JAVA SWING and APPLETS.
 Business Logic at Server End, designed using Java class and Database connectivity with
Oracle.
 Controller JDBC for switching control between Client end and Server Logic.
2
TABLE OF CONTENTS
CERTIFICATE--------------------------------------------------------------------------------------------i
DECLARATION-----------------------------------------------------------------------------------------ii
ACKNOWLEDGMENT--------------------------------------------------------------------------------iii
ABSTRACT----------------------------------------------------------------------------------------------iv
Chapter 1. Intoduction & Objectives-------------------------------------------------------------------
Chapter 2. System Analysis------------------------------------------------------------------------------
2.1Identification of Need-----------------------------------------------------------------
2.2 Preliminary Investigation -----------------------------------------------------------
2.3 Feasibility Study ---------------------------------------------------------------------
2.4 Project Planning----------------------------------------------------------------------
2.5 Software requirement specifications (SRS) --------------------------------------
2.6 Software Engineering Paradigm applied -----------------------------------------
2.7 Data model, Control Flow diagrams, State Diagrams / Sequence diagrams ERD’
CRC Models / Collaboration Diagrams / Use-case Diagrams/ Activity Diagrams---
Chapter 3. System Design -------------------------------------------------------------------------------
3.1 Database design / Procedural Design / Object Oriented Design ---------------
3.2 User Interface Design ---------------------------------------------------------------
Chapter 4. Coding ------------------------------------------------------------------------------------------
Chapter 5. Testing -----------------------------------------------------------------------------------------
5.1 Testing techniques and Testing strategies used along with the test case designs and
test reports--------------------------------------------------------------------------------------
5.2 Debugging and Code improvement ---------------------------------------------------
Chapter 6. Reports ----------------------------------------------------------------------------------------
Chapter 7. Future scope and further enhancement of the Project ------------------------------------
Chapter 8. Conclusion--------------------------------------------------------------------------------------
Chapter 9. Bibliography -----------------------------------------------------------------------------------
3
Introduction

A medical reimbursement plan is a tax shelter for the employer and the employee as well as a
type of health savings account. Unlike health insurance, a medical reimbursement plan does
not deal with premiums, deductibles, or co-pays. Rather, it is a way of saving pre-tax dollars
to reimburse you for medical expenses that are not covered by health insurance.
Another benefit of a medical reimbursement plan is that it allows medical expense
reimbursements not just for the employee but for spouses and dependents as well. Additionally,
reimbursements that are related to pre-existing conditions may also be eligible in the plan.
How Medical Reimbursement Plans Get Funded
Medical reimbursement plans can be funded by the employer or the employee. If an employee
has a self-funded medical reimbursement plan then he will determine how much money of his
salary will be put aside from each pay check to fund his medical plan.
There is a minimum and maximum amount that can be funded, such as a minimum of $10 per
pay period and a maximum of $5,000 per year. This money is deducted from the employee’s
pay check as pre-tax dollars, so the employee does not pay income tax on the money that is
deposited into his medical reimbursement plan account.
Instead of self-funded employee plans, many employers choose to fund their employees’
medical reimbursement plans with corporate funds. These deposits are deducted from corporate
dollars on a pre-tax basis, giving employers who choose this route a tax benefit in addition to
other benefits similar to Cafeteria Plans (Section 125). If the funds go unused they return to the
corporation instead of getting paid directly to the employee.
Regardless of who funds the medical reimbursement plan, the law dictates that the majority of
employees must be eligible to participate in order to establish this type of plan. This means that
a company cannot elect to create a medical reimbursement plan for only the top executives.
4
The plan must be offered to everyone and the majority of employees must be eligible to
participate or the plan can be disqualified.
Expenses Covered by Medical Reimbursement Plans
Not every expense is covered by medical reimbursement plans and the federal regulations
outlining the plan are very detailed in this regard. Medical reimbursement plans are primarily
intended to reimburse employees for health related expenses that are not covered by any health
insurance plan.
The plan cannot be used to pay for any health insurance related expenses such as premiums,
deductibles, or co-pays. While the rules were originally written to disqualify any non-
prescribed medications, they were amended in 2003 to include many non-prescribed
medications such as certain over the counter drugs and ointments.
Some expenses that may be covered by your medical reimbursement plan (provided they are
not already covered by your health insurance plan) include acupuncture, ambulatory services,
birth control, chiropractor services, corrective lenses (contacts or glasses), dentistry,
diagnostics, doctor’s fees, fertility services, guide dogs, hearing aids, injections, nursing care,
optometry, orthodontist services, prescription and some non-prescription drugs, rehabilitation
for alcohol and drugs, smoking cessation, surgery, transportation (such as for your doctor’s
visit), vaccinations, wheelchairs, and X-rays.
Additionally, some general preventive care such as bone density screenings and flu shots can
be reimbursed by a medical reimbursement plan.
Expenses Not Covered by Medical Reimbursement Plans
As discussed earlier in this article, any expense that is directly related to a health insurance
plan, such as premiums and deductibles, are not eligible for reimbursement by a medical
reimbursement plan. While some preventive care (such as health screenings) is covered,
participation in a health and fitness center does not qualify as a reimbursable expense. Many
over the counter prescriptions (such as allergy medication) are now allowed but most nutrition
supplements and vitamins are not eligible for the plan.
Another expense that is ineligible is cosmetic surgery. Most cosmetic surgery is purely for
aesthetic purposes and not considered to be a health related issue, therefore it does not qualify
as a medical reimbursement plan expense. However, some cosmetic surgery may qualify if it
is required to lessen or prevent a medical condition. One such example of this could be plastic
surgery for the nose if it is being done to correct a deviated septum since a deviated septum is
a physical disorder that can block the airway.
While not every employer offers a medical reimbursement plan, if yours offers one you should
consider participating in it. As an employee funded plan you benefit from pre-tax dollars and
as an employer funded plan you benefit by having your account funded for you.
Either way a medical reimbursement plan provides funds that can be used to reimburse you for
a wide variety of health related expenses. A medical reimbursement plan is a great supplement
to a health insurance plan but it is not a substitute for health insurance.
5
Objective
Medical reimbursement system is for companies or organisations to offer facility to their
employees to have medical expense reimbursements not just for the employee but for spouses
and dependents as well. Additionally, reimbursements that are related to pre-existing
conditions may also be eligible in the plan.
Facilities for Employees:
1. After registration by administrator/getting mail of registration employee can login with login
details shown in mail
2. After login student can fill up registration form providing
a. Personal Details
b. Disease Details
c. Provided Documents Details
3. Can Edit/Update registration Details
4. View Status(Posted by Administrator )
Facilities for Administrators:
1. Registration of employees
2. View employee list & their profile (registered only)
3. Block/Unblock & Delete Employees.
4. View all forms/requests made by employees.
5. Grant the employee request.
6. Reject the employee request.
System Analysis
Systems are created to solve problems. One can think of the systems approach as an organized
way of dealing with a problem. In this dynamic world, the subject System Analysis and Design,
mainly deals with the software development activities.
Systems analysis is the interdisciplinary part of science, dealing with analysis of sets of
interacting entities, the systems, often prior to their automation as computer systems, and the
interactions within those systems. This field is closely related to operations research. It is also
"an explicit formal inquiry carried out to help someone, referred to as the decision maker,
identify a better course of action and make a better decision than he might have otherwise
made.
6
2.2 Preliminary Investigation:
The requirement gathering is an art. The person who gathers the requirement should have
knowledge of what and when to gather information and by what resources. The requirements
are gathered regarding organization, which include…
 Information regarding its policies, objectives, and organization structure,
 About user, staff and management details.
 Information regarding job function and their personnel details,
 About function of the organization
 About work flow,
 Regarding work schedules and working procedure, and many more like these…
The following tools are used for information gathering:
Record Review:
A review of recorded document of the organization is performed. Procedure, manuals, client
details, logbook, working procedure details, magazines, forms are reviewed to see the format
and functions of present system.
Net Surfing:
A huge number of information related to our application, are also gathered from net, while
surfing the websites of different safety match manufacturer. Here some of the site names are
mentioned, below…
From Books & Magazines:
Different books and magazines published from different industries related to the match
manufacturing are also studied.
Interview:
The interview is a face-to-face interpersonal role in which a person called the interviewer asks
a person being interviewed questions deigned to gather information about a problem area. The
primary advantages of the interview are noted as follows: -
In this case the following personnel have been interviewed.
A. Employees
7
B. Administrators
C. Organisation management
D. Other related person with production and sales and marketing, too.
Questionnaire:
It is an effective tool, which requires less effort and products a written document about
requirements. It examines a large number of respondents simultaneously and gets customize
answers. It gives person sufficient time to answer the quires and give correct answers.
2.3 Feasibility Study:
Feasibility study looks at the viability of an idea with an emphasis on identifying potential
problems and attempts to answer one main question: Will the idea work and should we proceed
with it?
Before we begin writing our business plan we need to identify how, where, and to whom we
intend to sell a service or product. We also need to assess our competition and figure out how
much money we need to start our business and keep it running until it is established.
Feasibility studies address things like where and how the business will operate. They provide
in-depth details about the business to determine if and how it can succeed, and serve as a
valuable tool for developing a winning business plan.
Why Are Feasibility Studies so Important?
The information we gather and present in our feasibility study will help us:
 List in detail all the things we need to make the business work;
 Identify logistical and other business-related problems and solutions;
 Develop marketing strategies to convince a bank or investor that our business is worth
considering as an investment; and
 Serve as a solid foundation for developing our business plan.
Even if we have a great business idea we still have to find a cost-effective way to market and
sell our products and services. This is especially important for storefront retail businesses
where location could make or break our business.
8
Need for Feasibility Study:
Depending on the results of the initial investigation the survey is now expanded to a more
detailed feasibility study.
Feasibility study is a test of system proposal according to its workability, impact of the
organization, abilityto meet needs and effective use of the resources. In other words, Feasibility
study is the process of determination of whether or not a project is worth doing. Feasibility
studies are undertaken within tight time constraints and normally culminate in a written and
oral feasibility report. We have taken two weeks in feasibility study with our co-developer. The
contents and recommendations of this feasibility study helped us as a sound basis for deciding
how to precede the project. It helped in taking decisions such as which software to use,
hardware combinations, etc.
It focuses on the following major issues:
1. What are the user’s demonstrable needs and how does a candidate system meet them?
2. What resources are available for given system?
3. What are the likely impacts of the system on the organization?
4. Whether it is worth to solve the problem?
During feasibility analysis for this project, following primary areas of interest are to be
considered. Investigation and generating ideas about a new system does this.
Steps in Feasibility Study
Eight steps involved in the feasibility analysis are:
1. Form a project team and appoint a project leader.
2. Prepare system flowcharts.
3. Enumerate potential proposed system.
4. Define and identify characteristics of proposed system.
5. Determine and evaluate performance and cost effective of each proposed system.
6. Weight system performance and cost data.
7. Select the best-proposed system.
8. Prepare and report final project directive to management.
9
Types of Feasibility:
 Technical Feasibility
A study of resource availability that may affect the ability to achieve an acceptable system.
This evaluation determines whether the technology needed for the proposed system is available
or not.
 Can the work for the project be done with current equipment existing software
technology & available personal?
 Can the system be upgraded if developed?
 If new technology is needed then what can be developed?
This involves questions such as whether the technology needed for the system exists, how
difficult it will be to build, and whether the firm has enough experience using that technology.
The assessment is based on an outline design of system requirements in terms of Input,
Processes, Output, Fields, Programs, and Procedures. This can be quantified in terms of
volumes of data, trends, frequency of updating, etc in order to estimate if the new system will
perform adequately or not.
The front-end has been developed using JAVA SWING and the back-end database was
developed using MySQL.
Front-End and Back-End selection:
An important issue for the development of a project is the selection of suitable front-end and
back-end. When we decided to develop the project we went through an extensive study to
determine the most suitable platform that suits the needs of the organization as well as helps in
development of the project.
The aspects of our study included the following factors.
Front-end selection:
 It must have a graphical user interface that assists employees from non-IT background.
 Scalability and extensibility.
 Flexibility.
 Robustness.
 According to the organization requirement and the culture.
10
 Must provide excellent reporting features with good printing support.
 Platform independent.
 Easy to debug and maintain.
 Event driven programming facility.
Back-End Selection:
 Multiple user support.
 Efficient data handling.
 Provide inherent features for security.
 Efficient data retrieval and maintenance.
 Stored procedures.
 Popularity.
 Operating System compatible.
 Easy to install.
 Various drivers must be available.
 Easy to implant with the Front-end.
According to above stated features we selected My SQL as the backend.
The technical feasibility is frequently the most difficult area encountered at this stage. It is
essential that the process of analysis and definition be conducted in parallel with an assessment
to technical feasibility. It centers on the existing computer system (hardware, software etc.) and
to what extent it can support the proposed system.
Front end must support some popular back end like MySQL. According to the above stated
features we selected Swing as the front-end for developing our project.
11
 Economical Feasibility:
Economic justification is generally the “Bottom Line” consideration for most systems.
Economic justification includes a broad range of concerns that includes cost benefit analysis.
In this we weight the cost and the benefits associated with the candidate system and if it suits
the basic phase.
. The financial and the economic questions during the preliminary investigation are verified
to estimate the following:
. The cost to conduct a full system investigation.
. The cost of hardware and software for the class of application being considered.
. The benefits in the form of reduced cost.
. The proposed system will give the minute information, as a result the performance is
improved which in turn may be expected to provide increased profits.
. feasibility checks whether the system can be developed with the available funds. The
Medical Reimbursement System does not require enormous amount of money to be developed.
This can be done economically if planned judicially, so it is economically feasible. The cost of
project depends upon the number of man-hours required.
 Operational Feasibility:
It is mainly related to human organizations and political aspects. The points to be considered
are:
 What changes will be brought with the system?
 What organization structures are disturbed?
 What new skills will be required?
12
 Do the existing staff members have these skills? If not, can they be trained in due
course of time?
The system is operationally feasible as it very easy for the End users to operate it. It only needs
basic information about Windows platform.
2.4 Project Planning & Scheduling:
Gantt Chart:
A bar chart is known as Gantt chart developed by Henry L. Gantt. Gantt chart is a project
control technique that can be used for several purposes, including scheduling, budgeting and
resources planning. It is a bar chart drawn against a time line. The length of each bar is
proportional to the length of time planned for the activity. The Gantt charts can take different
forms depending on their intended use.
13
In my project the total work is done displaying through Gantt chart given below:
ACTIVITY
START
DATE
END
DATE
FEB M
A
R
A
P
R
MAY
START
PROJECT
TOPIC
SELECTED
7th
FEB
10th
MAY
ANALYSIS 7th
FEB
15th
FEB
DESIGN 15th
FEB
19th
MARC
H
DEVELOP
CODE
19th
MARCH
1st
APRIL
TESTING &
IMPLIMENTATION
1st
APRIL
1st
MAY
PREPARATION OF
FINAL REPORT
1st
MAY
10th
MAY
C
14
SYSTEM ANALYSIS & SYSTEM REQUIREMENT SPECIFICATION
SYSTEM REQUIREMENT SPECIFICATION:
 Hardware Specification
Computer : HP LAPTOP
Processor : INTEL core i5(8th
gen)
RAM : 8 GB
CACHE : 128 KB and above
Input Device : Mouse and Keyboard
Output Device : VDU (minimum VGA, SVGA support) , Printer
 Project Category :
The category of this project is Window based application.
 Tools and Language used:
Front End : JAVA SWING
Database Layer : JDBC
Database Used : Oracle 11g
Why the use of Oracle?
Designing a database means that you must visualize the relationships between the chunks
of data you will be using in your application, and create your tables with these relationships in
mind. We hold a strong belief in Oracle as the best database system for most Window-based
applications, because of its speed, reliability and cost -- or, its lack of a cost. Better yet, the
learning curve is not very steep!
15
Java Runtime System:
2.6 Software Engineering Paradigm
Software Process Models
To solve actual problems in a software project setting, a software engineer or a team of
engineers must incorporate a development strategy that includes methods, tools and
procedures. This strategy is referred to as a process model or a software engineering
paradigm.
There are several such paradigms available. Which software paradigm is more suitable
depends on lot of factors such as:
1. Nature of the Project
2. Type of Applications
3. Tools proposed to be used
4. Kind of controls and documentation required
Source Code Compiler .Class file
JVM
Java Interpreter
Java Runtime
Environment
16
Code And Fix Life Cycle Model
As the name suggests, this model uses an adhoc approach for the software designing. A very
casual study is followed by coding. The issues regarding specification or design are never
addressed. Instead, the developers simply build a product that is re-build again and again until
the customer is satisfied.
Limitations of code-and-fix cycle model
This approach may work well for small systems but is very unsatisfactory for larger systems.
As the code size increases, the understandability and maintainability of the system decreases.
The Waterfall Model/Linear Sequential Life Cycle Model
The simplest, oldest and most widely used process model for software designing is the
waterfall model.ItwasproposedbyRoycein1970.
The essence of this software paradigm is that the process of software designing consists of
linear set of distinct phases.
These phases are:
Stage1: Feasibility Study
The goal of feasibility study is to evaluate alternative systems and to purpose the most
feasible and desirable system for designing. Five types of feasibility are addressed in this
study.
1. Technical feasibility
2. Economic Feasibility
3. Motivational Feasibility
4. Schedule Feasibility
5. Operational Feasibility
Stage2: Requirement Analysis and Specification
The goal of this phase is to understand the exact requirements of the customers and to document
them properly. This activity is usually executed together with the customers, as the goal is to
document all functions, performance and interfacing requirements for the software designing
and management. The requirements describe “what” of a system. This phase produces a large
document containing a description of what the system will do without describing how it will
be done. This document is known as software requirement specification (SRS) document.
17
Stage3: Design
The goal of this phase is to transform the requirement specification produced in the requirement
analysis phase into a structure that is suitable for implementation in some programming
language, Here, overall software architecture is defined, and the product design and detailed
design work is performed. This work is documented and is known as software design
description (SDD document).
Stage4: Coding and Unit Testing
The information contained in SDD is sufficient to begin the coding Phase. The coding Phase
of software designing involves translation of design specification into a machine readable
form. If design is performed in a detailed manner, code generation can be accomplished easily.
This phase is also known as the implementation phase. Here, each component of the design is
implemented as a program module, and each of these program modules is unit tested. The
purpose of unit testing is to determine the correct working of individual modules.
Stage5: Integration and System Testing:
During this phase the different program modules are integrated in a planned wayand then tested
as a completed system to ensure that the designed system functions according to its
requirements as specified in the SRS document. After testing, the software is delivered to the
customer.
18
USE CASE DIAGRAM:
Use case diagrams overview the usage requirements for a system. They are useful for
presentations to management and/or project stakeholders, but for actual development you
will find that use cases provide significantly more value because they describe "the meat" of
the actual requirements.
Use case diagrams depict:
 Use cases. A use case describes a sequence of actions that provide something of
measurable value to an actor and is drawn as a horizontal ellipse.
 Actors. An actor is a person, organization, or external system that plays a role in one
or more interactions with your system. Actors are drawn as stick figures.
 Associations. Associations between actors and use cases are indicated in use case
diagrams by solid lines. An association exists whenever an actor is involved with an
interaction described by a use case. Associations are modeled as lines connecting use
cases and actors to one another, with an optional arrowhead on one end of the line. The
arrowhead is often used to indicating the direction of the initial invocation of the
relationship or to indicate the primary actor within the use case. The arrowheads are
typically confused with data flow and as a result I avoid their use.
 System boundary boxes (optional). You can draw a rectangle around the use cases,
called the system boundary box, to indicates the scope of your system. Anything within
the box represents functionality that is in scope and anything outside the box is
not. System boundary boxes are rarely used, although on occasion I have used them to
identify which use cases will be delivered in each major release of a system.
 Packages (optional). Packages are UML constructs that enable you to organize model
elements (such as use cases) into groups. Packages are depicted as file folders and can
be used on any of the UML diagrams, including both use case diagrams and class
diagrams. I use packages only when my diagrams become unwieldy, which generally
implies they cannot be printed on a single page, to organize a large diagram into smaller
ones.
19
EMPLOYEE:
ADMINISTRATOR:
REGISTER
SUBMIT
SEE
DETAILS
APPROVE
STATUS
20
DATA FLOW DIAGRAM:
Level 0 DFD:
Admin
MRS Employee
21
Level 1 DFD For Admin:
Admin
Login
View
Reimbursem
ent details
View
Status
Grant
Status
Adlog
Patient
Status
22
Level 1 DFD For Employee:
Employee Register
Login
Submit
Reimburse
Detail
Register
Patient
23
2.7 Entity-Relationship Diagram:
In software engineering, an Entity-Relationship Model (ERM) is an abstract and
conceptual representation of data. Entity-relationship modeling is a database modeling method,
used to produce a type of conceptual schema or semantic data model of a system, often a
relational database, and its requirements in a top-down fashion.
Diagrams created using this process are called entity-relationship diagrams.
An Entity may be defined as a thing which is recognized as being capable of an independent
existence and which can be uniquely identified. An entity is an abstraction from the
complexities of some domain. When we speak of an entity we normally speak of some aspect
of the real world which can be distinguished from other aspects of the real world.
A Relationship captures how two or more entities are related to one another. Relationships can
be thought of as verbs, linking two or more nouns.
Entities and relationships can both have attributes. Attributes are represented as ellipses
connected to their owning entity sets by a line. Every entity (unless it is a weak entity) must
have a minimal set of uniquely identifying attributes, which is called the entity's Primary Key.
Entity-relationship diagrams don't show single entities or single instances of relations. Rather,
they show entity sets and relationship sets.
24
MEDICAL REIMBURSTMENT APPLICATION(ERD)
password
prescription
E_na
me
E_i
d
Checks
Adlog
Submits
to
Patient
View Status
P_id
P_name
amt
illness
Dt_of_submit
password
Register
gender
bills A_id
A_name
Grants
Yes No
Reimburse
details
25
SYSTEM DESIGN
Data Dictionary:
In this section we present the database in a tabular form. The complete set of tables is
presented in this section.
1) Table Name: ADLOG
Field Name Data Type CONSTRAINTS
ADMINISTRATORID Varchar2(10) PRIMARY KEY
password Varchar2(25)
2) Table Name :PATIENT
Field Name Data Type Constraints Default Value
Emp_id Varchar2(10) Not null
Emp_name Varchar2(25) Not null
Patient_name Varchar2(50)
relationwithemployee Varchar2(25) Not null Father
Patient_gender Varchar2(15)
Type_of_illness Varchar2(50) Not null
Limit_of_embursement Number(20,0) Not null 1000
prescription Varchar2(20)
hospitalbills Varchar2(25)
medicalreceipts Varchar2(25))
Medicalreports Varchar2(25)
3) Table Name: REGISTER
Field Name Data Type Constraints Default Value
Emp_id Varchar2(10) Not null
Emp_name Varchar2(30) Not null
Password Varchar2(50)
26
4) Table Name: STATUS
Field Name Data Type Constraints Default Value
Emp_id Varchar2(10)
Emp_name Varchar2(30)
Status Varchar2(50)
27
USER INTERFACE
Screenshots
Taken during System Testing & Evaluation:
EMPLOYEE LOGIN:
28
EMPLOYEE REGISTRATION
EMPLOYEE MEDICAL REIMBURSTMENT
29
ADMINISTRATOR LOGIN
ADMINISTRATOR MENU
30
ADMINISTRATOR FETCH DATA
ADMINISTRATOR GRANT PAGE
31
ADMINISTRATOR CHECK STATUS
Program Coding:
The Design obtained must be translated into machine-readable form. The code generation
step performs this task. The Analysis and the Design after getting reviewed comes to the stage
where the entire design is implemented to working software.
The coding has been done maintaining standards. The use of standards helps for the
subsequent additions or modifications that might have to be made.
The coding has been done with JSP. The Client-end task is simplified using Dreamweaver
and HeidiSQL. The front-end can be connected to the back-end using MySQL drivers.
32
BASIC LOGIC:
//---------------------------------------Employee Registration---------------------------------------//
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
class InsertFrameRegister extends JFrame {
InsertFrameRegister (String title) {
setTitle (title);
setDefaultCloseOperation(3);
Dimension dim;
Toolkit tk = Toolkit.getDefaultToolkit ();
dim = tk.getScreenSize ();
setSize (dim.width, dim.height);
add (new InsertPanelRegister (dim.width / 2 , this));
setResizable (false);
setVisible (true);
}
}
class register {
public static void main (String [] args) {
InsertFrameRegister reg = new InsertFrameRegister ("Registration Form");
}
}
class InsertPanelRegister extends JPanel implements ActionListener{
JButton e_signin_Button = new JButton ("Login");
JButton e_cancel_Button = new JButton ("Cancel");
JLabel e_id_Label = new JLabel ("Insert Employee ID:");
JLabel e_name_Label = new JLabel ("Insert Employee Name:");
JLabel e_password_Label = new JLabel ("Insert Password:");
JLabel e_confirm_password_Label = new JLabel ("Confirm Password:");
JTextField e_id_Field = new JTextField ();
JTextField e_name_Field = new JTextField ();
JTextField e_password_Field = new JTextField ();
JTextField e_confirm_password_Field = new JTextField ();
InsertFrameRegister reg;
InsertPanelRegister (int m ,InsertFrameRegister reg) {
setBackground (Color.white);
setLayout (null);
this.reg = reg;
e_id_Label.setBounds (m - 20 - 200, 230, 200, 20);
33
e_id_Field.setBounds (m + 20, 230, 200, 20);
e_name_Label.setBounds (m - 20 - 200, 300, 200, 20);
e_name_Field.setBounds (m + 20, 300, 200, 20);
e_password_Label.setBounds(m - 20 - 200, 370,200,20);
e_password_Field.setBounds(m + 20, 370, 200, 20);
e_confirm_password_Label.setBounds(m - 20 - 200, 440,200,20);
e_confirm_password_Field.setBounds(m + 20, 440, 200, 20);
e_signin_Button.setBounds (m - 20 - 200, 510, 200, 20);
e_cancel_Button.setBounds (m + 20, 510, 200, 20);
add (e_id_Label);
add (e_id_Field);
add (e_name_Label);
add (e_name_Field);
add (e_password_Label);
add (e_password_Field);
add (e_confirm_password_Field);
add (e_confirm_password_Label);
add (e_signin_Button);
add (e_cancel_Button);
e_signin_Button.addActionListener(this);
e_cancel_Button.addActionListener(this);
}
public void actionPerformed(ActionEvent ae)
{
int flag=0;
int status_of_register=0;
String e_Id = e_id_Field.getText ();
String e_Name = e_name_Field.getText ();
String e_pass = e_password_Field.getText ();
String e_conf_pass = e_confirm_password_Field.getText ();
if(ae.getSource() == e_signin_Button)
{
if(e_pass.equals(e_conf_pass))
{
flag=1;
}
else
{
JOptionPane.showMessageDialog (null, "Wrong Password");
34
}
Jdbc ob=new Jdbc();
if(flag==1)
status_of_register=ob.register_form_insert(e_Id,e_Name,e_pass);
if (status_of_register >= 1)
{
reg.dispose ();
JOptionPane.showMessageDialog (null, "Value Inserted.");
InsertFrameAdmin emplog=new
InsertFrameAdmin("Employee Login");
}
else
{
JOptionPane.showMessageDialog (null, "Value Insertion
Problem.");
}
}
if(ae.getSource() == e_cancel_Button)
{
reg.dispose ();
InsertFrameAdmin emplogcancel = new
InsertFrameAdmin("Employee Login");
}
}
}
//---------------------------------------Update Patient Table-----------------------------//
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
class InsertFramePatient extends JFrame {
InsertFramePatient (String title, String eid) {
setTitle (title);
Dimension dim;
Toolkit tk = Toolkit.getDefaultToolkit ();
dim = tk.getScreenSize ();
setSize (dim.width, dim.height);
add (new InsertPanelPatient (dim.width / 2, eid ,this));
35
setResizable (false);
setVisible (true);
}
}
class patient {
public static void main (String [] args) {
InsertFramePatient pat = new InsertFramePatient ("Reimburstment Form"," ");
}
}
class InsertPanelPatient extends JPanel implements ActionListener{
JButton e_insert_Button = new JButton ("Submit");
JButton e_cancel_Button = new JButton ("Cancel");
String eid;
JLabel e_id_Label = new JLabel ("Employee ID:");
JLabel e_name_Label = new JLabel ("Employee Name:");
JLabel e_patient_Label = new JLabel ("Patient Name:");
JLabel e_relation_Label = new JLabel ("Relation with Employee:");
JLabel e_patient_gender_Label = new JLabel ("Patient Gender:");
JLabel e_type_of_illness_Label = new JLabel ("Type Of Illness:");
JLabel e_limit_Label=new JLabel("Limit of Emburstment:");
JLabel e_attachments_Label = new JLabel ("Attachments:");
JLabel e_description_Label = new JLabel ("Description of the Desease:");
JTextField e_id_Field = new JTextField ();
JTextField e_name_Field = new JTextField ();
JTextField e_patient_Field = new JTextField ();
Object relations [] = { "Father", "Mother",
"Daughter","Son","Husband","Wife","Self" } ;
JComboBox e_relation_Combo = new JComboBox (relations);
JRadioButton e_male_Button = new JRadioButton ("Male");
JRadioButton e_female_Button = new JRadioButton ("Female");
Object elements [] = { "Anaesthetics","Critical care","Diagnostic
imaging","Cardiac","Renal unit","Rheumatology","Orthopaedics",
"Pharmacy","Physiotherapy","Nutrition and
dietetics","Radiotherapy","Ophthalmology","Occupational therapy","Oncology","Obstetrics
and gynaecology units","Neurological", "Maternity departments","Neonatal
unit","Nephrology","Neurology","Elderly services
department","Gastroenterology","Haematology","Ear nose and throat
(ENT)","Surgical","Urology" } ;
JComboBox e_type_of_illness_Combo = new JComboBox (elements);
Object limits [] = { "1000",
"2000","3000","4000","5000","6000","7000","8000","9000","10000","11000","12000","130
00","14000","15000" } ;
JComboBox e_limit_Combo = new JComboBox (limits);
JCheckBox e_prescription_Check = new JCheckBox ("Prescriptions");
36
JCheckBox e_hospital_bills_Check = new JCheckBox ("Hospital Bills");
JCheckBox e_reports_Check = new JCheckBox ("Medical Reports");
JCheckBox e_receits_Check = new JCheckBox ("Medical Receits");
JTextPane e_description_Pane = new JTextPane ();
JScrollPane js = new JScrollPane (e_description_Pane);
InsertFramePatient pt;
InsertPanelPatient (int m, String eid ,InsertFramePatient pt) {
setBackground (Color.white);
setLayout (null);
this.eid = eid;
this.pt=pt;
e_id_Label.setBounds (m - 20 - 200, 60, 200, 20);
e_id_Field.setBounds (m + 20, 60, 200, 20);
e_name_Label.setBounds (m - 20 - 200, 100, 200, 20);
e_name_Field.setBounds (m + 20, 100, 200, 20);
e_patient_Label.setBounds(m - 20 - 200, 140, 200, 20);
e_patient_Field.setBounds(m + 20, 140, 200, 20);
e_relation_Label.setBounds(m - 20 - 200, 180, 200, 20);
e_relation_Combo.setBounds(m + 20, 180, 200, 20);
e_patient_gender_Label.setBounds (m - 20 - 200, 220, 200, 20);
e_male_Button.setBounds (m + 20, 220, 200, 20);
e_female_Button.setBounds (m + 20, 240, 200, 20);//m + 240, 220, 200, 20
e_type_of_illness_Label.setBounds (m - 20 - 200, 280, 200, 20);
e_type_of_illness_Combo.setBounds (m + 20, 280, 200, 20);
e_limit_Label.setBounds(m - 20 - 200, 320, 200, 20);
e_limit_Combo.setBounds(m + 20, 320, 200, 20);
e_attachments_Label.setBounds (m - 20 - 200, 360, 200, 20);
e_prescription_Check.setBounds (m - 20 - 200, 400, 200, 20);
e_hospital_bills_Check.setBounds (m + 20, 420, 200, 20);
e_reports_Check.setBounds(m - 20 - 200, 420, 200, 20);
e_receits_Check.setBounds(m + 20, 400, 200, 20);
e_description_Label.setBounds (m - 20 - 200, 460, 200, 20);
e_description_Pane.setBounds (m + 20, 460, 200, 80);
js.setBounds (m + 20, 460, 200, 80);
e_insert_Button.setBounds (m - 20 - 200, 600, 200, 20);
e_cancel_Button.setBounds (m + 20, 600, 200, 20);
e_cancel_Button.addActionListener(this);
e_insert_Button.addActionListener(this);
37
add (e_id_Label);
add (e_id_Field);
e_id_Field.setText (eid);
e_id_Field.setEditable (false);
add (e_name_Label);
add (e_name_Field);
add (e_patient_Label);
add (e_patient_Field);
add (e_relation_Label);
add (e_relation_Combo);
add (e_patient_gender_Label);
ButtonGroup gr = new ButtonGroup ();
gr.add (e_male_Button);
gr.add (e_female_Button);
add (e_male_Button);
add (e_female_Button);
add (e_type_of_illness_Label);
add (e_type_of_illness_Combo);
add (e_limit_Label);
add (e_limit_Combo);
add (e_attachments_Label);
add (e_prescription_Check);
add (e_hospital_bills_Check);
add (e_reports_Check);
add (e_receits_Check);
add (e_description_Label);
add (js);
add (e_insert_Button);
add (e_cancel_Button);
}
public void actionPerformed(ActionEvent ae)
{
if(ae.getSource() == e_insert_Button)
{
String e_Id = e_id_Field.getText ();
String e_Name = e_name_Field.getText ();
String e_patient = e_patient_Field.getText ();
String e_relation = (String)e_relation_Combo.getSelectedItem ();
String e_gender;
38
if (e_male_Button.isSelected ())
e_gender = "Male";
else
e_gender = "Female";
String t_o_ill = (String)e_type_of_illness_Combo.getSelectedItem ();
String e_limit = (String)e_limit_Combo.getSelectedItem ();
String epc;
if (e_prescription_Check.isSelected ())
epc = "Yes";
else
epc = "No";
String ehc;
if (e_hospital_bills_Check.isSelected ())
ehc = "Yes";
else
ehc = "No";
String erc;
if (e_reports_Check.isSelected ())
erc = "Yes";
else
erc = "No";
String ec;
if (e_receits_Check.isSelected ())
ec = "Yes";
else
ec = "No";
String e_description = e_description_Pane.getText ();
Jdbc ob = new Jdbc ();
int status = ob.reimburse_form_insert(e_Id, e_Name, e_patient,
e_relation, e_gender, t_o_ill, e_limit, epc, ehc, erc, ec, e_description);
if (status >= 1)
{
pt.dispose();
JOptionPane.showMessageDialog (null, "Value Inserted.");
InsertFrameAdlog adlog=new
InsertFrameAdlog("Administrator Login");
}
else
JOptionPane.showMessageDialog (null, "Value Insertion Problem.");
}
if(ae.getSource() == e_cancel_Button)
{
pt.dispose();
InsertFrameAdmin ifa = new InsertFrameAdmin("Employee Login");
ifa.setVisible(true);
ifa.setDefaultCloseOperation(3);
39
}
}
}
//---------------------------------------Update Administrator Table--------------------//
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
class InsertFrameAdmin extends JFrame {
InsertFrameAdmin (String title) {
setTitle (title);
setDefaultCloseOperation(3);
Dimension dim;
Toolkit tk = Toolkit.getDefaultToolkit ();
dim = tk.getScreenSize ();
setSize (dim.width, dim.height);
add (new InsertPanelAdmin (dim.width / 2, this));
setResizable (false);
setVisible (true);
}
}
class admin {
public static void main (String [] args) {
InsertFrameAdmin fr = new InsertFrameAdmin ("Employee Login Form");
}
}
class InsertPanelAdmin extends JPanel implements ActionListener {
JButton e_login_Button = new JButton ("Login");
JButton e_cancel_Button = new JButton ("Cancel");
JButton e_adlog_Button = new JButton ("Administrator Login");
JButton e_emp_register_Button = new JButton ("Employee Registration");
JLabel e_id_Label = new JLabel ("Employee ID:");
JLabel e_name_Label = new JLabel ("Employee Name:");
JLabel e_password_Label = new JLabel ("Password:");
JTextField e_id_Field = new JTextField ();
JTextField e_name_Field = new JTextField ();
JTextField e_password_Field = new JTextField ();
InsertFrameAdmin fr;
InsertPanelAdmin (int m, InsertFrameAdmin fr) {
setBackground (Color.white);
setLayout (null);
40
this.fr = fr;
e_id_Label.setBounds (m - 20 - 300, 100, 200, 20);
e_id_Field.setBounds (m + 20, 100, 200, 20);
e_name_Label.setBounds (m - 20 - 300, 180, 200, 20);
e_name_Field.setBounds (m + 20, 180, 200, 20);
e_password_Label.setBounds(m - 20 - 300, 260,200,20);
e_password_Field.setBounds(m + 20, 260, 200, 20);
e_login_Button.setBounds (m - 20 - 300, 340, 200, 20);
e_cancel_Button.setBounds (m + 20, 340, 200, 20);
e_adlog_Button.setBounds (m - 20 - 300, 490, 200, 20);
e_emp_register_Button.setBounds (m - 20 - 300, 640, 200, 20);
add (e_id_Label);
add (e_id_Field);
add (e_name_Label);
add (e_name_Field);
add (e_password_Label);
add (e_password_Field);
add (e_adlog_Button);
add (e_emp_register_Button);
add (e_login_Button);
add (e_cancel_Button);
e_login_Button.addActionListener(this);
e_cancel_Button.addActionListener(this);
e_adlog_Button.addActionListener(this);
e_emp_register_Button.addActionListener(this);
}
public void actionPerformed(ActionEvent ae)
{
String id = e_id_Field.getText();
String p = e_password_Field.getText();
if(ae.getSource() == e_login_Button)
{
Jdbc ob = new Jdbc();
Boolean b = ob.emp_login(id,p);
if(b == true)
{
fr.dispose ();
InsertFramePatient ip = new
InsertFramePatient("Reimbursement Form", id);
//ip.setVisible(true);
//ip.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
41
else
{
fr.dispose ();
JOptionPane.showMessageDialog(null,"Wrong userid /
password / name");
}
}
if(ae.getSource() == e_cancel_Button)
{
int x = JOptionPane.showConfirmDialog(null,"Are you sure???");
if(x == 0)
{
System.exit(0);
}
}
if(ae.getSource() == e_adlog_Button)
{
fr.dispose ();
InsertFrameAdlog adlog=new InsertFrameAdlog("Administrator
Login");
}
if(ae.getSource() == e_emp_register_Button)
{
fr.dispose ();
InsertFrameRegister ifr = new InsertFrameRegister("Employee
Registration");
}
}
}
42
//---------------------------------------Update Details Table------------------------------//
import javax.swing.*;
import java.awt.*;
import java.sql.*;
class InsertFrameDetails extends JFrame {
InsertFrameDetails (String title) {
setTitle (title);
Dimension dim;
Toolkit tk = Toolkit.getDefaultToolkit ();
dim = tk.getScreenSize ();
setSize (dim.width, dim.height);
add (new InsertPanelDetails ());
setResizable (false);
setVisible (true);
}
}
class details {
public static void main (String [] args) {
InsertFrameDetails fr = new InsertFrameDetails ("Employee Details");
}
}
class InsertPanelDetails extends JPanel {
InsertPanelDetails()
{
setLayout (new BorderLayout ());
// Initialize column headings.
String[] colHeads = {"EmployeeID", "Employee Name","Patient Name",
"Relation","Patient Gender","Types of Illness","Amount","Prescriptions","Hospital
Bills","Medical Reports","Medical Receits","Description"};
// Initialize data.
Jdbc ob = new Jdbc ();
try {
ResultSet rs = ob.getDetails ();
int count = 0;
while (rs.next ()) {
++count;
}
Object[][] data = new Object [count][];
rs = ob.getDetails ();
for (int i = 0; i < count; ++i) {
data [i] = new Object [12];
rs.next ();
data [i][0] = rs.getString (1);
data [i][1] = rs.getString (2);
43
data [i][2] = rs.getString (3);
data [i][3] = rs.getString (4);
data [i][4] = rs.getString (5);
data [i][5] = rs.getString (6);
data [i][6] = rs.getInt (7);
data [i][7] = rs.getString (8);
data [i][8] = rs.getString (9);
data [i][9] = rs.getString (10);
data [i][10] = rs.getString (11);
data [i][11] = rs.getString (12);
};
// Create the table.
JTable table = new JTable(data, colHeads);
// Add the table to a scroll pane.
JScrollPane jsp = new JScrollPane(table);
// Add the scroll pane to the content pane.
add(jsp);
}
catch (Exception e) {
System.out.println (e);
}
}
}
44
//---------------------------------------Update Fetch Table-------------------------------//
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
class InsertFrameFetch extends JFrame {
InsertFrameFetch (String title) {
setTitle (title);
Dimension dim;
Toolkit tk = Toolkit.getDefaultToolkit ();
dim = tk.getScreenSize ();
setSize (dim.width, dim.height);
add (new InsertPanelFetch (dim.width / 2 ,this));
setResizable (false);
setVisible (true);
}
}
class fetch {
public static void main (String [] args) {
InsertFrameFetch fr = new InsertFrameFetch ("Employee Status");
}
}
class InsertPanelFetch extends JPanel implements ActionListener {
JButton e_fetch_Button = new JButton ("Fetch Data");
JButton e_grant_Button = new JButton ("Grant");
JButton e_cancel_Button = new JButton ("Cancel/Exit");
JButton e_status_Button = new JButton ("Status");
InsertFrameFetch ft;
InsertPanelFetch (int m ,InsertFrameFetch ft) {
setBackground (Color.white);
setLayout (null);
this.ft=ft;
e_fetch_Button.setBounds (m - 20 - 200, 40, 200, 20);
e_grant_Button.setBounds (m - 20 - 200, 140, 200, 20);
e_status_Button.setBounds (m - 20 - 200, 240, 200, 20);
e_cancel_Button.setBounds (m - 20 - 200, 340, 200, 20);
add (e_fetch_Button);
add (e_grant_Button);
add (e_status_Button);
add (e_cancel_Button);
e_fetch_Button.addActionListener(this);
e_grant_Button.addActionListener(this);
45
e_status_Button.addActionListener(this);
e_cancel_Button.addActionListener(this);
}
public void actionPerformed(ActionEvent ae)
{
if(ae.getSource() == e_fetch_Button)
{
InsertFrameDetails details=new InsertFrameDetails("Employee
Details");
}
if(ae.getSource() == e_grant_Button)
{
ft.dispose();
InsertFrameStatus ifs = new InsertFrameStatus("Employee Grant");
}
if(ae.getSource()== e_status_Button)
{
DetailsInsertFrameDetails fr = new DetailsInsertFrameDetails
("Employee Details");
}
if(ae.getSource()== e_cancel_Button)
{
ft.dispose();
InsertFrameAdlog adlog =new InsertFrameAdlog("Administrator
Login");
}
}}
46
//-------------------------------Update Adlog(Administrator Login)-------//
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
class InsertFrameAdlog extends JFrame {
InsertFrameAdlog (String title) {
setTitle (title);
Dimension dim;
Toolkit tk = Toolkit.getDefaultToolkit ();
dim = tk.getScreenSize ();
setSize (dim.width, dim.height);
add (new InsertPanelAdlog (dim.width / 2, this));
setResizable (false);
setVisible (true);
}
}
class adlog {
public static void main (String [] args) {
InsertFrameAdlog fr = new InsertFrameAdlog ("Administrator Login Form");
}
}
class InsertPanelAdlog extends JPanel implements ActionListener {
JButton e_login_Button = new JButton ("Login");
JButton e_cancel_Button = new JButton ("Cancel/(Employee Login)");
JLabel e_id_Label = new JLabel ("Administrator ID:");
JLabel e_password_Label = new JLabel ("Password:");
JTextField e_id_Field = new JTextField ();
JTextField e_name_Field = new JTextField ();
JTextField e_password_Field = new JTextField ();
InsertFrameAdlog ad;
InsertPanelAdlog (int m, InsertFrameAdlog ad) {
setBackground (Color.white);
setLayout (null);
this.ad=ad;
e_id_Label.setBounds (m - 20 - 200, 300, 200, 20);
e_id_Field.setBounds (m + 20, 300, 200, 20);
e_password_Label.setBounds(m - 20 - 200, 370,200,20);
e_password_Field.setBounds(m + 20, 370, 200, 20);
e_login_Button.setBounds (m - 20 - 200, 470, 200, 20);
e_cancel_Button.setBounds (m + 20, 470, 200, 20);
47
add (e_id_Label);
add (e_id_Field);
add (e_password_Label);
add (e_password_Field);
add (e_login_Button);
add (e_cancel_Button);
e_login_Button.addActionListener(this);
e_cancel_Button.addActionListener(this);
}
public void actionPerformed(ActionEvent ae)
{
String ad_id = e_id_Field.getText();
String pass = e_password_Field.getText();
if(ae.getSource() == e_login_Button)
{
Jdbc ob = new Jdbc();
Boolean b1 = ob.ad_login(ad_id,pass);
if(b1 == true)
{
ad.dispose();
InsertFrameFetch fetch = new InsertFrameFetch("Employee
Status");
}
else
{
JOptionPane.showMessageDialog(null,"Wrong userid /
password / name");
}
}
if(ae.getSource() == e_cancel_Button)
{
ad.dispose();
InsertFrameAdmin ifa = new InsertFrameAdmin("Employee Login");
ifa.setVisible(true);
ifa.setDefaultCloseOperation(3);
}
}
}
//--------------------------------------Update Status Table------------------------------------------------
-----//
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
48
class InsertFrameStatus extends JFrame {
InsertFrameStatus (String title) {
setTitle (title);
Dimension dim;
Toolkit tk = Toolkit.getDefaultToolkit ();
dim = tk.getScreenSize ();
setSize (dim.width, dim.height);
add (new InsertPanelStatus (dim.width / 2 ,this));
setResizable (false);
setVisible (true);
}
}
class status {
public static void main (String [] args) {
InsertFrameStatus fr = new InsertFrameStatus ("Employee Status");
}
}
class InsertPanelStatus extends JPanel implements ActionListener{
JButton e_ok_Button = new JButton ("OK");
JButton e_cancel_Button = new JButton ("Cancel");
JLabel e_id_Label = new JLabel ("Employee ID:");
JLabel e_name_Label = new JLabel ("Employee Name:");
JLabel e_status_Label = new JLabel ("Status:");
JTextField e_id_Field = new JTextField ();
JTextField e_name_Field = new JTextField ();
Object approve [] = { "Yes","No" } ;
JComboBox e_approve_Combo = new JComboBox (approve);
InsertFrameStatus stat;
InsertPanelStatus (int m ,InsertFrameStatus stat) {
setBackground (Color.white);
setLayout (null);
this.stat=stat;
e_id_Label.setBounds (m - 20 - 200, 100, 200, 20);
e_id_Field.setBounds (m + 20, 100, 200, 20);
e_name_Label.setBounds(m - 20 - 200, 170,200,20);
e_name_Field.setBounds(m + 20, 170, 200, 20);
e_status_Label.setBounds(m - 20 - 200, 240,200,20);
e_approve_Combo.setBounds(m + 20, 240, 200, 20);
e_ok_Button.setBounds (m - 20 - 200, 310, 200, 20);
e_cancel_Button.setBounds (m + 20, 310, 200, 20);
add (e_id_Label);
49
add (e_id_Field);
add (e_name_Label);
add (e_name_Field);
add(e_status_Label);
add(e_approve_Combo);
add (e_ok_Button);
add (e_cancel_Button);
e_ok_Button.addActionListener(this);
e_cancel_Button.addActionListener(this);
}
public void actionPerformed(ActionEvent ae)
{
String e_id = e_id_Field.getText();
String e_name = e_name_Field.getText();
String e_status = (String)e_approve_Combo.getSelectedItem ();
if(ae.getSource() == e_ok_Button)
{
Jdbc ob = new Jdbc();
int status_of_insert = ob.emp_status_insert(e_id,e_name,e_status);
if(status_of_insert>=1)
{
JOptionPane.showMessageDialog (null, "Value Inserted.");
stat.dispose();
InsertFrameFetch fetch = new InsertFrameFetch("Employee
Status");
}
else
JOptionPane.showMessageDialog (null, "Value Insertion
Problem.");
}
if(ae.getSource()==e_cancel_Button)
{
stat.dispose();
InsertFrameAdlog adlog =new InsertFrameAdlog("Administrator
Login");
}
}
}
/---------------------------------------update details status table---------------------------------------//
import javax.swing.*;
import java.awt.*;
50
import java.sql.*;
class DetailsInsertFrameDetails extends JFrame {
DetailsInsertFrameDetails (String title) {
setTitle (title);
Dimension dim;
Toolkit tk = Toolkit.getDefaultToolkit ();
dim = tk.getScreenSize ();
setSize (dim.width, dim.height);
add (new DetailsInsertPanelDetails ());
setResizable (false);
setVisible (true);
}
}
class detailsstatusfile {
public static void main (String [] args) {
DetailsInsertFrameDetails fr = new DetailsInsertFrameDetails ("Employee
Details");
}
}
class DetailsInsertPanelDetails extends JPanel {
DetailsInsertPanelDetails()
{
setLayout (new BorderLayout ());
// Initialize column headings.
String[] colHeads = {"Employee ID", "Employee Name", "Status" };
// Initialize data.
Jdbc ob = new Jdbc ();
try {
ResultSet rs = ob.getDetailsStatus ();
int count = 0;
while (rs.next ()) {
++count;
}
Object[][] data = new Object [count][];
rs = ob.getDetailsStatus ();
for (int i = 0; i < count; ++i) {
data [i] = new Object [3];
rs.next ();
data [i][0] = rs.getString (1);
data [i][1] = rs.getString (2);
data [i][2] = rs.getString (3);
};
// Create the table.
JTable table = new JTable(data, colHeads);
51
// Add the table to a scroll pane.
JScrollPane jsp = new JScrollPane(table);
// Add the scroll pane to the content pane.
add(jsp);
}
catch (Exception e) {
System.out.println (e);
}
}
}
/---------------------------------------update jdbc table---------------------------------------//
import java.sql.*;
public class Jdbc
{
Connection con;
ResultSet getDetails () {
try {
PreparedStatement ps = con.prepareStatement ("select * from
patient");
ResultSet rs = ps.executeQuery ();
return rs;
}
catch (Exception e) {
System.out.println (e);
}
return null;
}
ResultSet getDetailsStatus () {
try {
PreparedStatement ps = con.prepareStatement ("select * from status");
ResultSet rs = ps.executeQuery ();
return rs;
}
catch (Exception e) {
System.out.println (e);
}
return null;
}
public Jdbc()
{
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
52
con =
DriverManager.getConnection("jdbc:odbc:MRS","MEDREM","123");
System.out.println("Connected");
}
catch(Exception e)
{
e.printStackTrace();
}
}
public boolean emp_login(String eid, String pw)
{
try
{
PreparedStatement ps = con.prepareStatement("select * from register
where EMPLOYEEID=? and PASSWORD=?");
ps.setString(1,eid);
ps.setString(2,pw);
ResultSet rs = ps.executeQuery();
if(rs.next())
{
return true;
}
else
{
return false;
}
}
catch(Exception ex)
{
ex.printStackTrace();
}
return false;
}
public int reimburse_form_insert(String eid, String nm, String p_nm, String rel, String
p_gen, String t_o_ill, String lim_of_embrs, String pres, String hos_bill,String med_rep,String
med_rec,String descrip)
{
try
{
PreparedStatement ps2 = con.prepareStatement("insert into patient
values(?,?,?,?,?,?,?,?,?,?,?,?)");
ps2.setString(1,eid);
ps2.setString(2,nm);
ps2.setString(3,p_nm);
ps2.setString(4,rel);
ps2.setString(5,p_gen);
ps2.setString(6,t_o_ill);
ps2.setInt(7, Integer.parseInt (lim_of_embrs));
ps2.setString(8,pres);
ps2.setString(9,hos_bill);
53
ps2.setString(10,med_rep);
ps2.setString(11,med_rec);
ps2.setString(12,descrip);
int status = ps2.executeUpdate();
return status;
}
catch(Exception ex)
{
ex.printStackTrace();
}
return 0;
}
public boolean ad_login(String ad_id, String ad_pass)
{
try
{
PreparedStatement ps3 = con.prepareStatement("select * from adlog
where ADMINISTRATORID=? and PASSWORD=?");
ps3.setString(1,ad_id);
ps3.setString(2,ad_pass);
ResultSet rs1 = ps3.executeQuery();
if(rs1.next())
{
return true;
}
else
{
return false;
}
}
catch(Exception ex)
{
ex.printStackTrace();
}
return false;
}
public int emp_status_insert(String eid, String e_nm, String e_status)
{
try
{
PreparedStatement ps4 = con.prepareStatement("insert into status
values(?,?,?)");
ps4.setString(1,eid);
ps4.setString(2,e_nm);
ps4.setString(3,e_status);
int status2 = ps4.executeUpdate();
return status2;
54
}
catch(Exception ex)
{
ex.printStackTrace();
}
return 0;
}
public int register_form_insert(String eid, String e_nm, String pass)
{
try
{
PreparedStatement ps5 = con.prepareStatement("insert into register
values(?,?,?)");
ps5.setString(1,eid);
ps5.setString(2,e_nm);
ps5.setString(3,pass);
int status3 = ps5.executeUpdate();
return status3;
}
catch(Exception ex)
{
ex.printStackTrace();
}
return 0;
}}
55
SYSTEM TESTING & EVALUATION
Testing of System:
The Testing phase is a critical element of software Quality Assurance and represents the
ultimate review of the specification, design and the code generation. This phase is a process of
executing the entire application and performing a thorough check on all the individual modules,
taking into consideration all the possible conditions that might arise in the working of the same.
Unit Testing:
In this phase all the independent units of the system are tested to ensure that information
properly flows into and out of the program under test. Here, the local data structures are also
examined to ensure that the modules operate properly. All possible error-handling paths are
also tested to give proper messages to the users of the system when an error is encountered.
Another important facility that has been tried out and tested successfully is to give warning
messages to the Administrator of the system when they are about to confirm some changes to
the records in the database.
56
TEST REPORTS:
MODULE TESTS TYPE REMARKS
User Login
Checked whether every minute details
regarding the login of user are given
or not and allow them to generate
instant report based on the given data.
Also checked if any details related to
item wise material.
By putting suitable data against
each interfaces , it was evident
that each part will generate the
required reports on the quicker
basis and the data validations are
done properly and lastly the data
depositions are also checked by
testing databases or back-end so
that result is getting OK
everywhere. Preliminary it is
found all right.
Database &
Connectivity
Testing
After the interface testing database is
also tested by cheking from backend
whether the data are properly stored in
the database tables or view or quieries
with necessary checkings and
cosntraints. Checked the ODBC and
the connection objects behave
properly or not!
Database is OK and data is stored
properly. Connection is Ok and
progressing with the software is
fine and harmless.
Admin Login
Checked whether every minute
details regarding the login of
admin are given and all the
information are correct.
If all the given data are correct
then we can move to next step. If
the data are wrong then we have
to insert the data again.
57
Module Test Type Remarks
Reimburse details All the details required are filled correctly
and accordingly by the employees.
If all the details are not
provided correctly then the
form is to be filled again.When
all the details are correctly
filled then we can proceed to
next step.
Fetch Data After administrator login administrator
can fetch the data filled by the employees.
If the fetch details are filled
correctly then the admin can
see the reimburse details filled
by the employees.
Status checking To grant the status administrator sees the
details then fill the status form.
After checking the fetch details
admin can grant or reject the
employee request
58
Implementation:
In the implementation phase it is actually judged that the requirements presents the real world
manifestation of processing functions and information structures. Implementation represents
the current mode of operations. In this phase: -
 We are viewing the usage of the software in the concerned organization and hence, the
flaws and other imperfection will come out for rectification.
 It consists of a trial phase for a few days known as the usage of demo version and lastly
“MEDICAL REIMBURSEMENT SYSTEM” is tested repeatedly by the client side in a client
version and servers, too, to check if there is any minute details is avoided.
 The implementation phase is going on in a manner that dictates accommodation of a
certain implementation details.
The modules and in integration is also implemented and accepted by the client using some real
life data, too. Feedbacks are taken and now, it is successfully implemented.
Future Scope:
The name of the project is MEDICAL REIMBURSEMENT. The software provides both the
employees and the administrative with a LOGIN ID of their own choice which is unique, and
is used for user authentication and checking illegal access to their individual accounts.
The facilities that can be appended to the current version of the Medical Reimbursement
include:
 Online submission of the Employee Form for all registered employees.
 Online Application for Review of Status for registered employees.
 The system is desktop application, it could be web application
59
CONCLUSION
Drawbacks and Limitations of the System:
The software system described above suffers from certain limitations. Such limitations have
crept into it owing to unavoidable circumstances of which time constraint is a major one. They
are listed below:
1. The security protocol requires more attention and should have been more robust, which
could not be resolved due to time constraints.
2. The 2 tables Administrator, patient require storage of data prior to
operational activities.
3. The System is not capable of surviving a database crash and heavily depends on database
connectivity for smooth operations.
60
BIBLIOGRAPHY:
The books referred in this project are summarized below:
1. Head First Java by Kathy sierra.
2. The Complete Reference Java by H Schildt.
3. Sam’s Teach Yourself MySQL in 21 Days.
4. SQL, PL/SQL by Evan Barros.
10. Database Management System by Korth.
The websites referred are:
 http://www.tutorialspoint.com/mysql/index.htm
 http://www.roseindia.net/jdbc/jdbc.shtml

Contenu connexe

Similaire à 1-60.pdf

EGWP Whitepaper (2)
EGWP Whitepaper (2)EGWP Whitepaper (2)
EGWP Whitepaper (2)
Liz Weber
 
HRNews - Outcome-Based Incentives Article (Sept2013_Adefuye)
HRNews - Outcome-Based Incentives Article  (Sept2013_Adefuye)HRNews - Outcome-Based Incentives Article  (Sept2013_Adefuye)
HRNews - Outcome-Based Incentives Article (Sept2013_Adefuye)
Victor Adefuye
 
10 minuteguidetohealthreform 10 minute guide
10 minuteguidetohealthreform 10 minute guide10 minuteguidetohealthreform 10 minute guide
10 minuteguidetohealthreform 10 minute guide
Chris K. Leslie
 
Employer's Guide to Health Care Reform
Employer's Guide to Health Care ReformEmployer's Guide to Health Care Reform
Employer's Guide to Health Care Reform
Kip Havel
 
HFMA Business of Health Care .docx
HFMA Business of Health Care                    .docxHFMA Business of Health Care                    .docx
HFMA Business of Health Care .docx
pooleavelina
 
PRIMARY CARE ScenarioType of care providedScenario.docx
PRIMARY CARE ScenarioType of care providedScenario.docxPRIMARY CARE ScenarioType of care providedScenario.docx
PRIMARY CARE ScenarioType of care providedScenario.docx
harrisonhoward80223
 
Accountable Care Act Employer Compliance.sharedoc.
Accountable Care Act Employer Compliance.sharedoc.Accountable Care Act Employer Compliance.sharedoc.
Accountable Care Act Employer Compliance.sharedoc.
Roberta Winter
 
August Newsletter
August NewsletterAugust Newsletter
August Newsletter
mikewojcik
 

Similaire à 1-60.pdf (20)

The Impact of Dropping Your Health Plan in 2015
The Impact of Dropping Your Health Plan in 2015The Impact of Dropping Your Health Plan in 2015
The Impact of Dropping Your Health Plan in 2015
 
Hospital Workers’ Compensation Claims: Strategies for Success
Hospital Workers’ Compensation Claims: Strategies for SuccessHospital Workers’ Compensation Claims: Strategies for Success
Hospital Workers’ Compensation Claims: Strategies for Success
 
Understanding the concept of non subscribers in connection with workers’ comp...
Understanding the concept of non subscribers in connection with workers’ comp...Understanding the concept of non subscribers in connection with workers’ comp...
Understanding the concept of non subscribers in connection with workers’ comp...
 
EGWP Whitepaper (2)
EGWP Whitepaper (2)EGWP Whitepaper (2)
EGWP Whitepaper (2)
 
HRNews - Outcome-Based Incentives Article (Sept2013_Adefuye)
HRNews - Outcome-Based Incentives Article  (Sept2013_Adefuye)HRNews - Outcome-Based Incentives Article  (Sept2013_Adefuye)
HRNews - Outcome-Based Incentives Article (Sept2013_Adefuye)
 
Health Insurance 411
Health Insurance 411Health Insurance 411
Health Insurance 411
 
Health Care Reform Action Info
Health Care Reform Action InfoHealth Care Reform Action Info
Health Care Reform Action Info
 
Special Health Care Reform Edition of BIZGrowth Strategies Newsletter
Special Health Care Reform Edition of BIZGrowth Strategies NewsletterSpecial Health Care Reform Edition of BIZGrowth Strategies Newsletter
Special Health Care Reform Edition of BIZGrowth Strategies Newsletter
 
Improve the Health of Your Wellness Program
Improve the Health of Your Wellness ProgramImprove the Health of Your Wellness Program
Improve the Health of Your Wellness Program
 
10 minuteguidetohealthreform 10 minute guide
10 minuteguidetohealthreform 10 minute guide10 minuteguidetohealthreform 10 minute guide
10 minuteguidetohealthreform 10 minute guide
 
Employer's Guide to Health Care Reform
Employer's Guide to Health Care ReformEmployer's Guide to Health Care Reform
Employer's Guide to Health Care Reform
 
The reward system compensation and non compensation dimension
The reward system compensation and non compensation dimensionThe reward system compensation and non compensation dimension
The reward system compensation and non compensation dimension
 
Proactive Health Management Plan - Employer Overview
Proactive Health Management Plan - Employer OverviewProactive Health Management Plan - Employer Overview
Proactive Health Management Plan - Employer Overview
 
HFMA Business of Health Care .docx
HFMA Business of Health Care                    .docxHFMA Business of Health Care                    .docx
HFMA Business of Health Care .docx
 
Employee Benefits
Employee BenefitsEmployee Benefits
Employee Benefits
 
On site medical clinic
On site medical clinicOn site medical clinic
On site medical clinic
 
Understanding the Benefits of Employee Group Health Plans
Understanding the Benefits of Employee Group Health Plans Understanding the Benefits of Employee Group Health Plans
Understanding the Benefits of Employee Group Health Plans
 
PRIMARY CARE ScenarioType of care providedScenario.docx
PRIMARY CARE ScenarioType of care providedScenario.docxPRIMARY CARE ScenarioType of care providedScenario.docx
PRIMARY CARE ScenarioType of care providedScenario.docx
 
Accountable Care Act Employer Compliance.sharedoc.
Accountable Care Act Employer Compliance.sharedoc.Accountable Care Act Employer Compliance.sharedoc.
Accountable Care Act Employer Compliance.sharedoc.
 
August Newsletter
August NewsletterAugust Newsletter
August Newsletter
 

Dernier

Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdfVishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
ssuserdda66b
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 

Dernier (20)

Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdfVishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 

1-60.pdf

  • 1. 1 PREFACE The Medical Reimbursement, designed for providing an interface between the Company Administration and Employees, thus plays a critical role in circulation of an employee information assets, besides offering controlled access to the database. The principal goal of an Medical Reimbursement System is to provide the medical reimbursement to the employees of any organization. . The Medical Reimbursement System design is hinged on three-tier-architecture:  Client end, which consists of forms, designed using JAVA SWING and APPLETS.  Business Logic at Server End, designed using Java class and Database connectivity with Oracle.  Controller JDBC for switching control between Client end and Server Logic.
  • 2. 2 TABLE OF CONTENTS CERTIFICATE--------------------------------------------------------------------------------------------i DECLARATION-----------------------------------------------------------------------------------------ii ACKNOWLEDGMENT--------------------------------------------------------------------------------iii ABSTRACT----------------------------------------------------------------------------------------------iv Chapter 1. Intoduction & Objectives------------------------------------------------------------------- Chapter 2. System Analysis------------------------------------------------------------------------------ 2.1Identification of Need----------------------------------------------------------------- 2.2 Preliminary Investigation ----------------------------------------------------------- 2.3 Feasibility Study --------------------------------------------------------------------- 2.4 Project Planning---------------------------------------------------------------------- 2.5 Software requirement specifications (SRS) -------------------------------------- 2.6 Software Engineering Paradigm applied ----------------------------------------- 2.7 Data model, Control Flow diagrams, State Diagrams / Sequence diagrams ERD’ CRC Models / Collaboration Diagrams / Use-case Diagrams/ Activity Diagrams--- Chapter 3. System Design ------------------------------------------------------------------------------- 3.1 Database design / Procedural Design / Object Oriented Design --------------- 3.2 User Interface Design --------------------------------------------------------------- Chapter 4. Coding ------------------------------------------------------------------------------------------ Chapter 5. Testing ----------------------------------------------------------------------------------------- 5.1 Testing techniques and Testing strategies used along with the test case designs and test reports-------------------------------------------------------------------------------------- 5.2 Debugging and Code improvement --------------------------------------------------- Chapter 6. Reports ---------------------------------------------------------------------------------------- Chapter 7. Future scope and further enhancement of the Project ------------------------------------ Chapter 8. Conclusion-------------------------------------------------------------------------------------- Chapter 9. Bibliography -----------------------------------------------------------------------------------
  • 3. 3 Introduction A medical reimbursement plan is a tax shelter for the employer and the employee as well as a type of health savings account. Unlike health insurance, a medical reimbursement plan does not deal with premiums, deductibles, or co-pays. Rather, it is a way of saving pre-tax dollars to reimburse you for medical expenses that are not covered by health insurance. Another benefit of a medical reimbursement plan is that it allows medical expense reimbursements not just for the employee but for spouses and dependents as well. Additionally, reimbursements that are related to pre-existing conditions may also be eligible in the plan. How Medical Reimbursement Plans Get Funded Medical reimbursement plans can be funded by the employer or the employee. If an employee has a self-funded medical reimbursement plan then he will determine how much money of his salary will be put aside from each pay check to fund his medical plan. There is a minimum and maximum amount that can be funded, such as a minimum of $10 per pay period and a maximum of $5,000 per year. This money is deducted from the employee’s pay check as pre-tax dollars, so the employee does not pay income tax on the money that is deposited into his medical reimbursement plan account. Instead of self-funded employee plans, many employers choose to fund their employees’ medical reimbursement plans with corporate funds. These deposits are deducted from corporate dollars on a pre-tax basis, giving employers who choose this route a tax benefit in addition to other benefits similar to Cafeteria Plans (Section 125). If the funds go unused they return to the corporation instead of getting paid directly to the employee. Regardless of who funds the medical reimbursement plan, the law dictates that the majority of employees must be eligible to participate in order to establish this type of plan. This means that a company cannot elect to create a medical reimbursement plan for only the top executives.
  • 4. 4 The plan must be offered to everyone and the majority of employees must be eligible to participate or the plan can be disqualified. Expenses Covered by Medical Reimbursement Plans Not every expense is covered by medical reimbursement plans and the federal regulations outlining the plan are very detailed in this regard. Medical reimbursement plans are primarily intended to reimburse employees for health related expenses that are not covered by any health insurance plan. The plan cannot be used to pay for any health insurance related expenses such as premiums, deductibles, or co-pays. While the rules were originally written to disqualify any non- prescribed medications, they were amended in 2003 to include many non-prescribed medications such as certain over the counter drugs and ointments. Some expenses that may be covered by your medical reimbursement plan (provided they are not already covered by your health insurance plan) include acupuncture, ambulatory services, birth control, chiropractor services, corrective lenses (contacts or glasses), dentistry, diagnostics, doctor’s fees, fertility services, guide dogs, hearing aids, injections, nursing care, optometry, orthodontist services, prescription and some non-prescription drugs, rehabilitation for alcohol and drugs, smoking cessation, surgery, transportation (such as for your doctor’s visit), vaccinations, wheelchairs, and X-rays. Additionally, some general preventive care such as bone density screenings and flu shots can be reimbursed by a medical reimbursement plan. Expenses Not Covered by Medical Reimbursement Plans As discussed earlier in this article, any expense that is directly related to a health insurance plan, such as premiums and deductibles, are not eligible for reimbursement by a medical reimbursement plan. While some preventive care (such as health screenings) is covered, participation in a health and fitness center does not qualify as a reimbursable expense. Many over the counter prescriptions (such as allergy medication) are now allowed but most nutrition supplements and vitamins are not eligible for the plan. Another expense that is ineligible is cosmetic surgery. Most cosmetic surgery is purely for aesthetic purposes and not considered to be a health related issue, therefore it does not qualify as a medical reimbursement plan expense. However, some cosmetic surgery may qualify if it is required to lessen or prevent a medical condition. One such example of this could be plastic surgery for the nose if it is being done to correct a deviated septum since a deviated septum is a physical disorder that can block the airway. While not every employer offers a medical reimbursement plan, if yours offers one you should consider participating in it. As an employee funded plan you benefit from pre-tax dollars and as an employer funded plan you benefit by having your account funded for you. Either way a medical reimbursement plan provides funds that can be used to reimburse you for a wide variety of health related expenses. A medical reimbursement plan is a great supplement to a health insurance plan but it is not a substitute for health insurance.
  • 5. 5 Objective Medical reimbursement system is for companies or organisations to offer facility to their employees to have medical expense reimbursements not just for the employee but for spouses and dependents as well. Additionally, reimbursements that are related to pre-existing conditions may also be eligible in the plan. Facilities for Employees: 1. After registration by administrator/getting mail of registration employee can login with login details shown in mail 2. After login student can fill up registration form providing a. Personal Details b. Disease Details c. Provided Documents Details 3. Can Edit/Update registration Details 4. View Status(Posted by Administrator ) Facilities for Administrators: 1. Registration of employees 2. View employee list & their profile (registered only) 3. Block/Unblock & Delete Employees. 4. View all forms/requests made by employees. 5. Grant the employee request. 6. Reject the employee request. System Analysis Systems are created to solve problems. One can think of the systems approach as an organized way of dealing with a problem. In this dynamic world, the subject System Analysis and Design, mainly deals with the software development activities. Systems analysis is the interdisciplinary part of science, dealing with analysis of sets of interacting entities, the systems, often prior to their automation as computer systems, and the interactions within those systems. This field is closely related to operations research. It is also "an explicit formal inquiry carried out to help someone, referred to as the decision maker, identify a better course of action and make a better decision than he might have otherwise made.
  • 6. 6 2.2 Preliminary Investigation: The requirement gathering is an art. The person who gathers the requirement should have knowledge of what and when to gather information and by what resources. The requirements are gathered regarding organization, which include…  Information regarding its policies, objectives, and organization structure,  About user, staff and management details.  Information regarding job function and their personnel details,  About function of the organization  About work flow,  Regarding work schedules and working procedure, and many more like these… The following tools are used for information gathering: Record Review: A review of recorded document of the organization is performed. Procedure, manuals, client details, logbook, working procedure details, magazines, forms are reviewed to see the format and functions of present system. Net Surfing: A huge number of information related to our application, are also gathered from net, while surfing the websites of different safety match manufacturer. Here some of the site names are mentioned, below… From Books & Magazines: Different books and magazines published from different industries related to the match manufacturing are also studied. Interview: The interview is a face-to-face interpersonal role in which a person called the interviewer asks a person being interviewed questions deigned to gather information about a problem area. The primary advantages of the interview are noted as follows: - In this case the following personnel have been interviewed. A. Employees
  • 7. 7 B. Administrators C. Organisation management D. Other related person with production and sales and marketing, too. Questionnaire: It is an effective tool, which requires less effort and products a written document about requirements. It examines a large number of respondents simultaneously and gets customize answers. It gives person sufficient time to answer the quires and give correct answers. 2.3 Feasibility Study: Feasibility study looks at the viability of an idea with an emphasis on identifying potential problems and attempts to answer one main question: Will the idea work and should we proceed with it? Before we begin writing our business plan we need to identify how, where, and to whom we intend to sell a service or product. We also need to assess our competition and figure out how much money we need to start our business and keep it running until it is established. Feasibility studies address things like where and how the business will operate. They provide in-depth details about the business to determine if and how it can succeed, and serve as a valuable tool for developing a winning business plan. Why Are Feasibility Studies so Important? The information we gather and present in our feasibility study will help us:  List in detail all the things we need to make the business work;  Identify logistical and other business-related problems and solutions;  Develop marketing strategies to convince a bank or investor that our business is worth considering as an investment; and  Serve as a solid foundation for developing our business plan. Even if we have a great business idea we still have to find a cost-effective way to market and sell our products and services. This is especially important for storefront retail businesses where location could make or break our business.
  • 8. 8 Need for Feasibility Study: Depending on the results of the initial investigation the survey is now expanded to a more detailed feasibility study. Feasibility study is a test of system proposal according to its workability, impact of the organization, abilityto meet needs and effective use of the resources. In other words, Feasibility study is the process of determination of whether or not a project is worth doing. Feasibility studies are undertaken within tight time constraints and normally culminate in a written and oral feasibility report. We have taken two weeks in feasibility study with our co-developer. The contents and recommendations of this feasibility study helped us as a sound basis for deciding how to precede the project. It helped in taking decisions such as which software to use, hardware combinations, etc. It focuses on the following major issues: 1. What are the user’s demonstrable needs and how does a candidate system meet them? 2. What resources are available for given system? 3. What are the likely impacts of the system on the organization? 4. Whether it is worth to solve the problem? During feasibility analysis for this project, following primary areas of interest are to be considered. Investigation and generating ideas about a new system does this. Steps in Feasibility Study Eight steps involved in the feasibility analysis are: 1. Form a project team and appoint a project leader. 2. Prepare system flowcharts. 3. Enumerate potential proposed system. 4. Define and identify characteristics of proposed system. 5. Determine and evaluate performance and cost effective of each proposed system. 6. Weight system performance and cost data. 7. Select the best-proposed system. 8. Prepare and report final project directive to management.
  • 9. 9 Types of Feasibility:  Technical Feasibility A study of resource availability that may affect the ability to achieve an acceptable system. This evaluation determines whether the technology needed for the proposed system is available or not.  Can the work for the project be done with current equipment existing software technology & available personal?  Can the system be upgraded if developed?  If new technology is needed then what can be developed? This involves questions such as whether the technology needed for the system exists, how difficult it will be to build, and whether the firm has enough experience using that technology. The assessment is based on an outline design of system requirements in terms of Input, Processes, Output, Fields, Programs, and Procedures. This can be quantified in terms of volumes of data, trends, frequency of updating, etc in order to estimate if the new system will perform adequately or not. The front-end has been developed using JAVA SWING and the back-end database was developed using MySQL. Front-End and Back-End selection: An important issue for the development of a project is the selection of suitable front-end and back-end. When we decided to develop the project we went through an extensive study to determine the most suitable platform that suits the needs of the organization as well as helps in development of the project. The aspects of our study included the following factors. Front-end selection:  It must have a graphical user interface that assists employees from non-IT background.  Scalability and extensibility.  Flexibility.  Robustness.  According to the organization requirement and the culture.
  • 10. 10  Must provide excellent reporting features with good printing support.  Platform independent.  Easy to debug and maintain.  Event driven programming facility. Back-End Selection:  Multiple user support.  Efficient data handling.  Provide inherent features for security.  Efficient data retrieval and maintenance.  Stored procedures.  Popularity.  Operating System compatible.  Easy to install.  Various drivers must be available.  Easy to implant with the Front-end. According to above stated features we selected My SQL as the backend. The technical feasibility is frequently the most difficult area encountered at this stage. It is essential that the process of analysis and definition be conducted in parallel with an assessment to technical feasibility. It centers on the existing computer system (hardware, software etc.) and to what extent it can support the proposed system. Front end must support some popular back end like MySQL. According to the above stated features we selected Swing as the front-end for developing our project.
  • 11. 11  Economical Feasibility: Economic justification is generally the “Bottom Line” consideration for most systems. Economic justification includes a broad range of concerns that includes cost benefit analysis. In this we weight the cost and the benefits associated with the candidate system and if it suits the basic phase. . The financial and the economic questions during the preliminary investigation are verified to estimate the following: . The cost to conduct a full system investigation. . The cost of hardware and software for the class of application being considered. . The benefits in the form of reduced cost. . The proposed system will give the minute information, as a result the performance is improved which in turn may be expected to provide increased profits. . feasibility checks whether the system can be developed with the available funds. The Medical Reimbursement System does not require enormous amount of money to be developed. This can be done economically if planned judicially, so it is economically feasible. The cost of project depends upon the number of man-hours required.  Operational Feasibility: It is mainly related to human organizations and political aspects. The points to be considered are:  What changes will be brought with the system?  What organization structures are disturbed?  What new skills will be required?
  • 12. 12  Do the existing staff members have these skills? If not, can they be trained in due course of time? The system is operationally feasible as it very easy for the End users to operate it. It only needs basic information about Windows platform. 2.4 Project Planning & Scheduling: Gantt Chart: A bar chart is known as Gantt chart developed by Henry L. Gantt. Gantt chart is a project control technique that can be used for several purposes, including scheduling, budgeting and resources planning. It is a bar chart drawn against a time line. The length of each bar is proportional to the length of time planned for the activity. The Gantt charts can take different forms depending on their intended use.
  • 13. 13 In my project the total work is done displaying through Gantt chart given below: ACTIVITY START DATE END DATE FEB M A R A P R MAY START PROJECT TOPIC SELECTED 7th FEB 10th MAY ANALYSIS 7th FEB 15th FEB DESIGN 15th FEB 19th MARC H DEVELOP CODE 19th MARCH 1st APRIL TESTING & IMPLIMENTATION 1st APRIL 1st MAY PREPARATION OF FINAL REPORT 1st MAY 10th MAY C
  • 14. 14 SYSTEM ANALYSIS & SYSTEM REQUIREMENT SPECIFICATION SYSTEM REQUIREMENT SPECIFICATION:  Hardware Specification Computer : HP LAPTOP Processor : INTEL core i5(8th gen) RAM : 8 GB CACHE : 128 KB and above Input Device : Mouse and Keyboard Output Device : VDU (minimum VGA, SVGA support) , Printer  Project Category : The category of this project is Window based application.  Tools and Language used: Front End : JAVA SWING Database Layer : JDBC Database Used : Oracle 11g Why the use of Oracle? Designing a database means that you must visualize the relationships between the chunks of data you will be using in your application, and create your tables with these relationships in mind. We hold a strong belief in Oracle as the best database system for most Window-based applications, because of its speed, reliability and cost -- or, its lack of a cost. Better yet, the learning curve is not very steep!
  • 15. 15 Java Runtime System: 2.6 Software Engineering Paradigm Software Process Models To solve actual problems in a software project setting, a software engineer or a team of engineers must incorporate a development strategy that includes methods, tools and procedures. This strategy is referred to as a process model or a software engineering paradigm. There are several such paradigms available. Which software paradigm is more suitable depends on lot of factors such as: 1. Nature of the Project 2. Type of Applications 3. Tools proposed to be used 4. Kind of controls and documentation required Source Code Compiler .Class file JVM Java Interpreter Java Runtime Environment
  • 16. 16 Code And Fix Life Cycle Model As the name suggests, this model uses an adhoc approach for the software designing. A very casual study is followed by coding. The issues regarding specification or design are never addressed. Instead, the developers simply build a product that is re-build again and again until the customer is satisfied. Limitations of code-and-fix cycle model This approach may work well for small systems but is very unsatisfactory for larger systems. As the code size increases, the understandability and maintainability of the system decreases. The Waterfall Model/Linear Sequential Life Cycle Model The simplest, oldest and most widely used process model for software designing is the waterfall model.ItwasproposedbyRoycein1970. The essence of this software paradigm is that the process of software designing consists of linear set of distinct phases. These phases are: Stage1: Feasibility Study The goal of feasibility study is to evaluate alternative systems and to purpose the most feasible and desirable system for designing. Five types of feasibility are addressed in this study. 1. Technical feasibility 2. Economic Feasibility 3. Motivational Feasibility 4. Schedule Feasibility 5. Operational Feasibility Stage2: Requirement Analysis and Specification The goal of this phase is to understand the exact requirements of the customers and to document them properly. This activity is usually executed together with the customers, as the goal is to document all functions, performance and interfacing requirements for the software designing and management. The requirements describe “what” of a system. This phase produces a large document containing a description of what the system will do without describing how it will be done. This document is known as software requirement specification (SRS) document.
  • 17. 17 Stage3: Design The goal of this phase is to transform the requirement specification produced in the requirement analysis phase into a structure that is suitable for implementation in some programming language, Here, overall software architecture is defined, and the product design and detailed design work is performed. This work is documented and is known as software design description (SDD document). Stage4: Coding and Unit Testing The information contained in SDD is sufficient to begin the coding Phase. The coding Phase of software designing involves translation of design specification into a machine readable form. If design is performed in a detailed manner, code generation can be accomplished easily. This phase is also known as the implementation phase. Here, each component of the design is implemented as a program module, and each of these program modules is unit tested. The purpose of unit testing is to determine the correct working of individual modules. Stage5: Integration and System Testing: During this phase the different program modules are integrated in a planned wayand then tested as a completed system to ensure that the designed system functions according to its requirements as specified in the SRS document. After testing, the software is delivered to the customer.
  • 18. 18 USE CASE DIAGRAM: Use case diagrams overview the usage requirements for a system. They are useful for presentations to management and/or project stakeholders, but for actual development you will find that use cases provide significantly more value because they describe "the meat" of the actual requirements. Use case diagrams depict:  Use cases. A use case describes a sequence of actions that provide something of measurable value to an actor and is drawn as a horizontal ellipse.  Actors. An actor is a person, organization, or external system that plays a role in one or more interactions with your system. Actors are drawn as stick figures.  Associations. Associations between actors and use cases are indicated in use case diagrams by solid lines. An association exists whenever an actor is involved with an interaction described by a use case. Associations are modeled as lines connecting use cases and actors to one another, with an optional arrowhead on one end of the line. The arrowhead is often used to indicating the direction of the initial invocation of the relationship or to indicate the primary actor within the use case. The arrowheads are typically confused with data flow and as a result I avoid their use.  System boundary boxes (optional). You can draw a rectangle around the use cases, called the system boundary box, to indicates the scope of your system. Anything within the box represents functionality that is in scope and anything outside the box is not. System boundary boxes are rarely used, although on occasion I have used them to identify which use cases will be delivered in each major release of a system.  Packages (optional). Packages are UML constructs that enable you to organize model elements (such as use cases) into groups. Packages are depicted as file folders and can be used on any of the UML diagrams, including both use case diagrams and class diagrams. I use packages only when my diagrams become unwieldy, which generally implies they cannot be printed on a single page, to organize a large diagram into smaller ones.
  • 20. 20 DATA FLOW DIAGRAM: Level 0 DFD: Admin MRS Employee
  • 21. 21 Level 1 DFD For Admin: Admin Login View Reimbursem ent details View Status Grant Status Adlog Patient Status
  • 22. 22 Level 1 DFD For Employee: Employee Register Login Submit Reimburse Detail Register Patient
  • 23. 23 2.7 Entity-Relationship Diagram: In software engineering, an Entity-Relationship Model (ERM) is an abstract and conceptual representation of data. Entity-relationship modeling is a database modeling method, used to produce a type of conceptual schema or semantic data model of a system, often a relational database, and its requirements in a top-down fashion. Diagrams created using this process are called entity-relationship diagrams. An Entity may be defined as a thing which is recognized as being capable of an independent existence and which can be uniquely identified. An entity is an abstraction from the complexities of some domain. When we speak of an entity we normally speak of some aspect of the real world which can be distinguished from other aspects of the real world. A Relationship captures how two or more entities are related to one another. Relationships can be thought of as verbs, linking two or more nouns. Entities and relationships can both have attributes. Attributes are represented as ellipses connected to their owning entity sets by a line. Every entity (unless it is a weak entity) must have a minimal set of uniquely identifying attributes, which is called the entity's Primary Key. Entity-relationship diagrams don't show single entities or single instances of relations. Rather, they show entity sets and relationship sets.
  • 24. 24 MEDICAL REIMBURSTMENT APPLICATION(ERD) password prescription E_na me E_i d Checks Adlog Submits to Patient View Status P_id P_name amt illness Dt_of_submit password Register gender bills A_id A_name Grants Yes No Reimburse details
  • 25. 25 SYSTEM DESIGN Data Dictionary: In this section we present the database in a tabular form. The complete set of tables is presented in this section. 1) Table Name: ADLOG Field Name Data Type CONSTRAINTS ADMINISTRATORID Varchar2(10) PRIMARY KEY password Varchar2(25) 2) Table Name :PATIENT Field Name Data Type Constraints Default Value Emp_id Varchar2(10) Not null Emp_name Varchar2(25) Not null Patient_name Varchar2(50) relationwithemployee Varchar2(25) Not null Father Patient_gender Varchar2(15) Type_of_illness Varchar2(50) Not null Limit_of_embursement Number(20,0) Not null 1000 prescription Varchar2(20) hospitalbills Varchar2(25) medicalreceipts Varchar2(25)) Medicalreports Varchar2(25) 3) Table Name: REGISTER Field Name Data Type Constraints Default Value Emp_id Varchar2(10) Not null Emp_name Varchar2(30) Not null Password Varchar2(50)
  • 26. 26 4) Table Name: STATUS Field Name Data Type Constraints Default Value Emp_id Varchar2(10) Emp_name Varchar2(30) Status Varchar2(50)
  • 27. 27 USER INTERFACE Screenshots Taken during System Testing & Evaluation: EMPLOYEE LOGIN:
  • 31. 31 ADMINISTRATOR CHECK STATUS Program Coding: The Design obtained must be translated into machine-readable form. The code generation step performs this task. The Analysis and the Design after getting reviewed comes to the stage where the entire design is implemented to working software. The coding has been done maintaining standards. The use of standards helps for the subsequent additions or modifications that might have to be made. The coding has been done with JSP. The Client-end task is simplified using Dreamweaver and HeidiSQL. The front-end can be connected to the back-end using MySQL drivers.
  • 32. 32 BASIC LOGIC: //---------------------------------------Employee Registration---------------------------------------// import javax.swing.*; import java.awt.*; import java.awt.event.*; class InsertFrameRegister extends JFrame { InsertFrameRegister (String title) { setTitle (title); setDefaultCloseOperation(3); Dimension dim; Toolkit tk = Toolkit.getDefaultToolkit (); dim = tk.getScreenSize (); setSize (dim.width, dim.height); add (new InsertPanelRegister (dim.width / 2 , this)); setResizable (false); setVisible (true); } } class register { public static void main (String [] args) { InsertFrameRegister reg = new InsertFrameRegister ("Registration Form"); } } class InsertPanelRegister extends JPanel implements ActionListener{ JButton e_signin_Button = new JButton ("Login"); JButton e_cancel_Button = new JButton ("Cancel"); JLabel e_id_Label = new JLabel ("Insert Employee ID:"); JLabel e_name_Label = new JLabel ("Insert Employee Name:"); JLabel e_password_Label = new JLabel ("Insert Password:"); JLabel e_confirm_password_Label = new JLabel ("Confirm Password:"); JTextField e_id_Field = new JTextField (); JTextField e_name_Field = new JTextField (); JTextField e_password_Field = new JTextField (); JTextField e_confirm_password_Field = new JTextField (); InsertFrameRegister reg; InsertPanelRegister (int m ,InsertFrameRegister reg) { setBackground (Color.white); setLayout (null); this.reg = reg; e_id_Label.setBounds (m - 20 - 200, 230, 200, 20);
  • 33. 33 e_id_Field.setBounds (m + 20, 230, 200, 20); e_name_Label.setBounds (m - 20 - 200, 300, 200, 20); e_name_Field.setBounds (m + 20, 300, 200, 20); e_password_Label.setBounds(m - 20 - 200, 370,200,20); e_password_Field.setBounds(m + 20, 370, 200, 20); e_confirm_password_Label.setBounds(m - 20 - 200, 440,200,20); e_confirm_password_Field.setBounds(m + 20, 440, 200, 20); e_signin_Button.setBounds (m - 20 - 200, 510, 200, 20); e_cancel_Button.setBounds (m + 20, 510, 200, 20); add (e_id_Label); add (e_id_Field); add (e_name_Label); add (e_name_Field); add (e_password_Label); add (e_password_Field); add (e_confirm_password_Field); add (e_confirm_password_Label); add (e_signin_Button); add (e_cancel_Button); e_signin_Button.addActionListener(this); e_cancel_Button.addActionListener(this); } public void actionPerformed(ActionEvent ae) { int flag=0; int status_of_register=0; String e_Id = e_id_Field.getText (); String e_Name = e_name_Field.getText (); String e_pass = e_password_Field.getText (); String e_conf_pass = e_confirm_password_Field.getText (); if(ae.getSource() == e_signin_Button) { if(e_pass.equals(e_conf_pass)) { flag=1; } else { JOptionPane.showMessageDialog (null, "Wrong Password");
  • 34. 34 } Jdbc ob=new Jdbc(); if(flag==1) status_of_register=ob.register_form_insert(e_Id,e_Name,e_pass); if (status_of_register >= 1) { reg.dispose (); JOptionPane.showMessageDialog (null, "Value Inserted."); InsertFrameAdmin emplog=new InsertFrameAdmin("Employee Login"); } else { JOptionPane.showMessageDialog (null, "Value Insertion Problem."); } } if(ae.getSource() == e_cancel_Button) { reg.dispose (); InsertFrameAdmin emplogcancel = new InsertFrameAdmin("Employee Login"); } } } //---------------------------------------Update Patient Table-----------------------------// import javax.swing.*; import java.awt.*; import java.awt.event.*; class InsertFramePatient extends JFrame { InsertFramePatient (String title, String eid) { setTitle (title); Dimension dim; Toolkit tk = Toolkit.getDefaultToolkit (); dim = tk.getScreenSize (); setSize (dim.width, dim.height); add (new InsertPanelPatient (dim.width / 2, eid ,this));
  • 35. 35 setResizable (false); setVisible (true); } } class patient { public static void main (String [] args) { InsertFramePatient pat = new InsertFramePatient ("Reimburstment Form"," "); } } class InsertPanelPatient extends JPanel implements ActionListener{ JButton e_insert_Button = new JButton ("Submit"); JButton e_cancel_Button = new JButton ("Cancel"); String eid; JLabel e_id_Label = new JLabel ("Employee ID:"); JLabel e_name_Label = new JLabel ("Employee Name:"); JLabel e_patient_Label = new JLabel ("Patient Name:"); JLabel e_relation_Label = new JLabel ("Relation with Employee:"); JLabel e_patient_gender_Label = new JLabel ("Patient Gender:"); JLabel e_type_of_illness_Label = new JLabel ("Type Of Illness:"); JLabel e_limit_Label=new JLabel("Limit of Emburstment:"); JLabel e_attachments_Label = new JLabel ("Attachments:"); JLabel e_description_Label = new JLabel ("Description of the Desease:"); JTextField e_id_Field = new JTextField (); JTextField e_name_Field = new JTextField (); JTextField e_patient_Field = new JTextField (); Object relations [] = { "Father", "Mother", "Daughter","Son","Husband","Wife","Self" } ; JComboBox e_relation_Combo = new JComboBox (relations); JRadioButton e_male_Button = new JRadioButton ("Male"); JRadioButton e_female_Button = new JRadioButton ("Female"); Object elements [] = { "Anaesthetics","Critical care","Diagnostic imaging","Cardiac","Renal unit","Rheumatology","Orthopaedics", "Pharmacy","Physiotherapy","Nutrition and dietetics","Radiotherapy","Ophthalmology","Occupational therapy","Oncology","Obstetrics and gynaecology units","Neurological", "Maternity departments","Neonatal unit","Nephrology","Neurology","Elderly services department","Gastroenterology","Haematology","Ear nose and throat (ENT)","Surgical","Urology" } ; JComboBox e_type_of_illness_Combo = new JComboBox (elements); Object limits [] = { "1000", "2000","3000","4000","5000","6000","7000","8000","9000","10000","11000","12000","130 00","14000","15000" } ; JComboBox e_limit_Combo = new JComboBox (limits); JCheckBox e_prescription_Check = new JCheckBox ("Prescriptions");
  • 36. 36 JCheckBox e_hospital_bills_Check = new JCheckBox ("Hospital Bills"); JCheckBox e_reports_Check = new JCheckBox ("Medical Reports"); JCheckBox e_receits_Check = new JCheckBox ("Medical Receits"); JTextPane e_description_Pane = new JTextPane (); JScrollPane js = new JScrollPane (e_description_Pane); InsertFramePatient pt; InsertPanelPatient (int m, String eid ,InsertFramePatient pt) { setBackground (Color.white); setLayout (null); this.eid = eid; this.pt=pt; e_id_Label.setBounds (m - 20 - 200, 60, 200, 20); e_id_Field.setBounds (m + 20, 60, 200, 20); e_name_Label.setBounds (m - 20 - 200, 100, 200, 20); e_name_Field.setBounds (m + 20, 100, 200, 20); e_patient_Label.setBounds(m - 20 - 200, 140, 200, 20); e_patient_Field.setBounds(m + 20, 140, 200, 20); e_relation_Label.setBounds(m - 20 - 200, 180, 200, 20); e_relation_Combo.setBounds(m + 20, 180, 200, 20); e_patient_gender_Label.setBounds (m - 20 - 200, 220, 200, 20); e_male_Button.setBounds (m + 20, 220, 200, 20); e_female_Button.setBounds (m + 20, 240, 200, 20);//m + 240, 220, 200, 20 e_type_of_illness_Label.setBounds (m - 20 - 200, 280, 200, 20); e_type_of_illness_Combo.setBounds (m + 20, 280, 200, 20); e_limit_Label.setBounds(m - 20 - 200, 320, 200, 20); e_limit_Combo.setBounds(m + 20, 320, 200, 20); e_attachments_Label.setBounds (m - 20 - 200, 360, 200, 20); e_prescription_Check.setBounds (m - 20 - 200, 400, 200, 20); e_hospital_bills_Check.setBounds (m + 20, 420, 200, 20); e_reports_Check.setBounds(m - 20 - 200, 420, 200, 20); e_receits_Check.setBounds(m + 20, 400, 200, 20); e_description_Label.setBounds (m - 20 - 200, 460, 200, 20); e_description_Pane.setBounds (m + 20, 460, 200, 80); js.setBounds (m + 20, 460, 200, 80); e_insert_Button.setBounds (m - 20 - 200, 600, 200, 20); e_cancel_Button.setBounds (m + 20, 600, 200, 20); e_cancel_Button.addActionListener(this); e_insert_Button.addActionListener(this);
  • 37. 37 add (e_id_Label); add (e_id_Field); e_id_Field.setText (eid); e_id_Field.setEditable (false); add (e_name_Label); add (e_name_Field); add (e_patient_Label); add (e_patient_Field); add (e_relation_Label); add (e_relation_Combo); add (e_patient_gender_Label); ButtonGroup gr = new ButtonGroup (); gr.add (e_male_Button); gr.add (e_female_Button); add (e_male_Button); add (e_female_Button); add (e_type_of_illness_Label); add (e_type_of_illness_Combo); add (e_limit_Label); add (e_limit_Combo); add (e_attachments_Label); add (e_prescription_Check); add (e_hospital_bills_Check); add (e_reports_Check); add (e_receits_Check); add (e_description_Label); add (js); add (e_insert_Button); add (e_cancel_Button); } public void actionPerformed(ActionEvent ae) { if(ae.getSource() == e_insert_Button) { String e_Id = e_id_Field.getText (); String e_Name = e_name_Field.getText (); String e_patient = e_patient_Field.getText (); String e_relation = (String)e_relation_Combo.getSelectedItem (); String e_gender;
  • 38. 38 if (e_male_Button.isSelected ()) e_gender = "Male"; else e_gender = "Female"; String t_o_ill = (String)e_type_of_illness_Combo.getSelectedItem (); String e_limit = (String)e_limit_Combo.getSelectedItem (); String epc; if (e_prescription_Check.isSelected ()) epc = "Yes"; else epc = "No"; String ehc; if (e_hospital_bills_Check.isSelected ()) ehc = "Yes"; else ehc = "No"; String erc; if (e_reports_Check.isSelected ()) erc = "Yes"; else erc = "No"; String ec; if (e_receits_Check.isSelected ()) ec = "Yes"; else ec = "No"; String e_description = e_description_Pane.getText (); Jdbc ob = new Jdbc (); int status = ob.reimburse_form_insert(e_Id, e_Name, e_patient, e_relation, e_gender, t_o_ill, e_limit, epc, ehc, erc, ec, e_description); if (status >= 1) { pt.dispose(); JOptionPane.showMessageDialog (null, "Value Inserted."); InsertFrameAdlog adlog=new InsertFrameAdlog("Administrator Login"); } else JOptionPane.showMessageDialog (null, "Value Insertion Problem."); } if(ae.getSource() == e_cancel_Button) { pt.dispose(); InsertFrameAdmin ifa = new InsertFrameAdmin("Employee Login"); ifa.setVisible(true); ifa.setDefaultCloseOperation(3);
  • 39. 39 } } } //---------------------------------------Update Administrator Table--------------------// import javax.swing.*; import java.awt.*; import java.awt.event.*; class InsertFrameAdmin extends JFrame { InsertFrameAdmin (String title) { setTitle (title); setDefaultCloseOperation(3); Dimension dim; Toolkit tk = Toolkit.getDefaultToolkit (); dim = tk.getScreenSize (); setSize (dim.width, dim.height); add (new InsertPanelAdmin (dim.width / 2, this)); setResizable (false); setVisible (true); } } class admin { public static void main (String [] args) { InsertFrameAdmin fr = new InsertFrameAdmin ("Employee Login Form"); } } class InsertPanelAdmin extends JPanel implements ActionListener { JButton e_login_Button = new JButton ("Login"); JButton e_cancel_Button = new JButton ("Cancel"); JButton e_adlog_Button = new JButton ("Administrator Login"); JButton e_emp_register_Button = new JButton ("Employee Registration"); JLabel e_id_Label = new JLabel ("Employee ID:"); JLabel e_name_Label = new JLabel ("Employee Name:"); JLabel e_password_Label = new JLabel ("Password:"); JTextField e_id_Field = new JTextField (); JTextField e_name_Field = new JTextField (); JTextField e_password_Field = new JTextField (); InsertFrameAdmin fr; InsertPanelAdmin (int m, InsertFrameAdmin fr) { setBackground (Color.white); setLayout (null);
  • 40. 40 this.fr = fr; e_id_Label.setBounds (m - 20 - 300, 100, 200, 20); e_id_Field.setBounds (m + 20, 100, 200, 20); e_name_Label.setBounds (m - 20 - 300, 180, 200, 20); e_name_Field.setBounds (m + 20, 180, 200, 20); e_password_Label.setBounds(m - 20 - 300, 260,200,20); e_password_Field.setBounds(m + 20, 260, 200, 20); e_login_Button.setBounds (m - 20 - 300, 340, 200, 20); e_cancel_Button.setBounds (m + 20, 340, 200, 20); e_adlog_Button.setBounds (m - 20 - 300, 490, 200, 20); e_emp_register_Button.setBounds (m - 20 - 300, 640, 200, 20); add (e_id_Label); add (e_id_Field); add (e_name_Label); add (e_name_Field); add (e_password_Label); add (e_password_Field); add (e_adlog_Button); add (e_emp_register_Button); add (e_login_Button); add (e_cancel_Button); e_login_Button.addActionListener(this); e_cancel_Button.addActionListener(this); e_adlog_Button.addActionListener(this); e_emp_register_Button.addActionListener(this); } public void actionPerformed(ActionEvent ae) { String id = e_id_Field.getText(); String p = e_password_Field.getText(); if(ae.getSource() == e_login_Button) { Jdbc ob = new Jdbc(); Boolean b = ob.emp_login(id,p); if(b == true) { fr.dispose (); InsertFramePatient ip = new InsertFramePatient("Reimbursement Form", id); //ip.setVisible(true); //ip.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); }
  • 41. 41 else { fr.dispose (); JOptionPane.showMessageDialog(null,"Wrong userid / password / name"); } } if(ae.getSource() == e_cancel_Button) { int x = JOptionPane.showConfirmDialog(null,"Are you sure???"); if(x == 0) { System.exit(0); } } if(ae.getSource() == e_adlog_Button) { fr.dispose (); InsertFrameAdlog adlog=new InsertFrameAdlog("Administrator Login"); } if(ae.getSource() == e_emp_register_Button) { fr.dispose (); InsertFrameRegister ifr = new InsertFrameRegister("Employee Registration"); } } }
  • 42. 42 //---------------------------------------Update Details Table------------------------------// import javax.swing.*; import java.awt.*; import java.sql.*; class InsertFrameDetails extends JFrame { InsertFrameDetails (String title) { setTitle (title); Dimension dim; Toolkit tk = Toolkit.getDefaultToolkit (); dim = tk.getScreenSize (); setSize (dim.width, dim.height); add (new InsertPanelDetails ()); setResizable (false); setVisible (true); } } class details { public static void main (String [] args) { InsertFrameDetails fr = new InsertFrameDetails ("Employee Details"); } } class InsertPanelDetails extends JPanel { InsertPanelDetails() { setLayout (new BorderLayout ()); // Initialize column headings. String[] colHeads = {"EmployeeID", "Employee Name","Patient Name", "Relation","Patient Gender","Types of Illness","Amount","Prescriptions","Hospital Bills","Medical Reports","Medical Receits","Description"}; // Initialize data. Jdbc ob = new Jdbc (); try { ResultSet rs = ob.getDetails (); int count = 0; while (rs.next ()) { ++count; } Object[][] data = new Object [count][]; rs = ob.getDetails (); for (int i = 0; i < count; ++i) { data [i] = new Object [12]; rs.next (); data [i][0] = rs.getString (1); data [i][1] = rs.getString (2);
  • 43. 43 data [i][2] = rs.getString (3); data [i][3] = rs.getString (4); data [i][4] = rs.getString (5); data [i][5] = rs.getString (6); data [i][6] = rs.getInt (7); data [i][7] = rs.getString (8); data [i][8] = rs.getString (9); data [i][9] = rs.getString (10); data [i][10] = rs.getString (11); data [i][11] = rs.getString (12); }; // Create the table. JTable table = new JTable(data, colHeads); // Add the table to a scroll pane. JScrollPane jsp = new JScrollPane(table); // Add the scroll pane to the content pane. add(jsp); } catch (Exception e) { System.out.println (e); } } }
  • 44. 44 //---------------------------------------Update Fetch Table-------------------------------// import javax.swing.*; import java.awt.*; import java.awt.event.*; class InsertFrameFetch extends JFrame { InsertFrameFetch (String title) { setTitle (title); Dimension dim; Toolkit tk = Toolkit.getDefaultToolkit (); dim = tk.getScreenSize (); setSize (dim.width, dim.height); add (new InsertPanelFetch (dim.width / 2 ,this)); setResizable (false); setVisible (true); } } class fetch { public static void main (String [] args) { InsertFrameFetch fr = new InsertFrameFetch ("Employee Status"); } } class InsertPanelFetch extends JPanel implements ActionListener { JButton e_fetch_Button = new JButton ("Fetch Data"); JButton e_grant_Button = new JButton ("Grant"); JButton e_cancel_Button = new JButton ("Cancel/Exit"); JButton e_status_Button = new JButton ("Status"); InsertFrameFetch ft; InsertPanelFetch (int m ,InsertFrameFetch ft) { setBackground (Color.white); setLayout (null); this.ft=ft; e_fetch_Button.setBounds (m - 20 - 200, 40, 200, 20); e_grant_Button.setBounds (m - 20 - 200, 140, 200, 20); e_status_Button.setBounds (m - 20 - 200, 240, 200, 20); e_cancel_Button.setBounds (m - 20 - 200, 340, 200, 20); add (e_fetch_Button); add (e_grant_Button); add (e_status_Button); add (e_cancel_Button); e_fetch_Button.addActionListener(this); e_grant_Button.addActionListener(this);
  • 45. 45 e_status_Button.addActionListener(this); e_cancel_Button.addActionListener(this); } public void actionPerformed(ActionEvent ae) { if(ae.getSource() == e_fetch_Button) { InsertFrameDetails details=new InsertFrameDetails("Employee Details"); } if(ae.getSource() == e_grant_Button) { ft.dispose(); InsertFrameStatus ifs = new InsertFrameStatus("Employee Grant"); } if(ae.getSource()== e_status_Button) { DetailsInsertFrameDetails fr = new DetailsInsertFrameDetails ("Employee Details"); } if(ae.getSource()== e_cancel_Button) { ft.dispose(); InsertFrameAdlog adlog =new InsertFrameAdlog("Administrator Login"); } }}
  • 46. 46 //-------------------------------Update Adlog(Administrator Login)-------// import javax.swing.*; import java.awt.*; import java.awt.event.*; class InsertFrameAdlog extends JFrame { InsertFrameAdlog (String title) { setTitle (title); Dimension dim; Toolkit tk = Toolkit.getDefaultToolkit (); dim = tk.getScreenSize (); setSize (dim.width, dim.height); add (new InsertPanelAdlog (dim.width / 2, this)); setResizable (false); setVisible (true); } } class adlog { public static void main (String [] args) { InsertFrameAdlog fr = new InsertFrameAdlog ("Administrator Login Form"); } } class InsertPanelAdlog extends JPanel implements ActionListener { JButton e_login_Button = new JButton ("Login"); JButton e_cancel_Button = new JButton ("Cancel/(Employee Login)"); JLabel e_id_Label = new JLabel ("Administrator ID:"); JLabel e_password_Label = new JLabel ("Password:"); JTextField e_id_Field = new JTextField (); JTextField e_name_Field = new JTextField (); JTextField e_password_Field = new JTextField (); InsertFrameAdlog ad; InsertPanelAdlog (int m, InsertFrameAdlog ad) { setBackground (Color.white); setLayout (null); this.ad=ad; e_id_Label.setBounds (m - 20 - 200, 300, 200, 20); e_id_Field.setBounds (m + 20, 300, 200, 20); e_password_Label.setBounds(m - 20 - 200, 370,200,20); e_password_Field.setBounds(m + 20, 370, 200, 20); e_login_Button.setBounds (m - 20 - 200, 470, 200, 20); e_cancel_Button.setBounds (m + 20, 470, 200, 20);
  • 47. 47 add (e_id_Label); add (e_id_Field); add (e_password_Label); add (e_password_Field); add (e_login_Button); add (e_cancel_Button); e_login_Button.addActionListener(this); e_cancel_Button.addActionListener(this); } public void actionPerformed(ActionEvent ae) { String ad_id = e_id_Field.getText(); String pass = e_password_Field.getText(); if(ae.getSource() == e_login_Button) { Jdbc ob = new Jdbc(); Boolean b1 = ob.ad_login(ad_id,pass); if(b1 == true) { ad.dispose(); InsertFrameFetch fetch = new InsertFrameFetch("Employee Status"); } else { JOptionPane.showMessageDialog(null,"Wrong userid / password / name"); } } if(ae.getSource() == e_cancel_Button) { ad.dispose(); InsertFrameAdmin ifa = new InsertFrameAdmin("Employee Login"); ifa.setVisible(true); ifa.setDefaultCloseOperation(3); } } } //--------------------------------------Update Status Table------------------------------------------------ -----// import javax.swing.*; import java.awt.*; import java.awt.event.*;
  • 48. 48 class InsertFrameStatus extends JFrame { InsertFrameStatus (String title) { setTitle (title); Dimension dim; Toolkit tk = Toolkit.getDefaultToolkit (); dim = tk.getScreenSize (); setSize (dim.width, dim.height); add (new InsertPanelStatus (dim.width / 2 ,this)); setResizable (false); setVisible (true); } } class status { public static void main (String [] args) { InsertFrameStatus fr = new InsertFrameStatus ("Employee Status"); } } class InsertPanelStatus extends JPanel implements ActionListener{ JButton e_ok_Button = new JButton ("OK"); JButton e_cancel_Button = new JButton ("Cancel"); JLabel e_id_Label = new JLabel ("Employee ID:"); JLabel e_name_Label = new JLabel ("Employee Name:"); JLabel e_status_Label = new JLabel ("Status:"); JTextField e_id_Field = new JTextField (); JTextField e_name_Field = new JTextField (); Object approve [] = { "Yes","No" } ; JComboBox e_approve_Combo = new JComboBox (approve); InsertFrameStatus stat; InsertPanelStatus (int m ,InsertFrameStatus stat) { setBackground (Color.white); setLayout (null); this.stat=stat; e_id_Label.setBounds (m - 20 - 200, 100, 200, 20); e_id_Field.setBounds (m + 20, 100, 200, 20); e_name_Label.setBounds(m - 20 - 200, 170,200,20); e_name_Field.setBounds(m + 20, 170, 200, 20); e_status_Label.setBounds(m - 20 - 200, 240,200,20); e_approve_Combo.setBounds(m + 20, 240, 200, 20); e_ok_Button.setBounds (m - 20 - 200, 310, 200, 20); e_cancel_Button.setBounds (m + 20, 310, 200, 20); add (e_id_Label);
  • 49. 49 add (e_id_Field); add (e_name_Label); add (e_name_Field); add(e_status_Label); add(e_approve_Combo); add (e_ok_Button); add (e_cancel_Button); e_ok_Button.addActionListener(this); e_cancel_Button.addActionListener(this); } public void actionPerformed(ActionEvent ae) { String e_id = e_id_Field.getText(); String e_name = e_name_Field.getText(); String e_status = (String)e_approve_Combo.getSelectedItem (); if(ae.getSource() == e_ok_Button) { Jdbc ob = new Jdbc(); int status_of_insert = ob.emp_status_insert(e_id,e_name,e_status); if(status_of_insert>=1) { JOptionPane.showMessageDialog (null, "Value Inserted."); stat.dispose(); InsertFrameFetch fetch = new InsertFrameFetch("Employee Status"); } else JOptionPane.showMessageDialog (null, "Value Insertion Problem."); } if(ae.getSource()==e_cancel_Button) { stat.dispose(); InsertFrameAdlog adlog =new InsertFrameAdlog("Administrator Login"); } } } /---------------------------------------update details status table---------------------------------------// import javax.swing.*; import java.awt.*;
  • 50. 50 import java.sql.*; class DetailsInsertFrameDetails extends JFrame { DetailsInsertFrameDetails (String title) { setTitle (title); Dimension dim; Toolkit tk = Toolkit.getDefaultToolkit (); dim = tk.getScreenSize (); setSize (dim.width, dim.height); add (new DetailsInsertPanelDetails ()); setResizable (false); setVisible (true); } } class detailsstatusfile { public static void main (String [] args) { DetailsInsertFrameDetails fr = new DetailsInsertFrameDetails ("Employee Details"); } } class DetailsInsertPanelDetails extends JPanel { DetailsInsertPanelDetails() { setLayout (new BorderLayout ()); // Initialize column headings. String[] colHeads = {"Employee ID", "Employee Name", "Status" }; // Initialize data. Jdbc ob = new Jdbc (); try { ResultSet rs = ob.getDetailsStatus (); int count = 0; while (rs.next ()) { ++count; } Object[][] data = new Object [count][]; rs = ob.getDetailsStatus (); for (int i = 0; i < count; ++i) { data [i] = new Object [3]; rs.next (); data [i][0] = rs.getString (1); data [i][1] = rs.getString (2); data [i][2] = rs.getString (3); }; // Create the table. JTable table = new JTable(data, colHeads);
  • 51. 51 // Add the table to a scroll pane. JScrollPane jsp = new JScrollPane(table); // Add the scroll pane to the content pane. add(jsp); } catch (Exception e) { System.out.println (e); } } } /---------------------------------------update jdbc table---------------------------------------// import java.sql.*; public class Jdbc { Connection con; ResultSet getDetails () { try { PreparedStatement ps = con.prepareStatement ("select * from patient"); ResultSet rs = ps.executeQuery (); return rs; } catch (Exception e) { System.out.println (e); } return null; } ResultSet getDetailsStatus () { try { PreparedStatement ps = con.prepareStatement ("select * from status"); ResultSet rs = ps.executeQuery (); return rs; } catch (Exception e) { System.out.println (e); } return null; } public Jdbc() { try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
  • 52. 52 con = DriverManager.getConnection("jdbc:odbc:MRS","MEDREM","123"); System.out.println("Connected"); } catch(Exception e) { e.printStackTrace(); } } public boolean emp_login(String eid, String pw) { try { PreparedStatement ps = con.prepareStatement("select * from register where EMPLOYEEID=? and PASSWORD=?"); ps.setString(1,eid); ps.setString(2,pw); ResultSet rs = ps.executeQuery(); if(rs.next()) { return true; } else { return false; } } catch(Exception ex) { ex.printStackTrace(); } return false; } public int reimburse_form_insert(String eid, String nm, String p_nm, String rel, String p_gen, String t_o_ill, String lim_of_embrs, String pres, String hos_bill,String med_rep,String med_rec,String descrip) { try { PreparedStatement ps2 = con.prepareStatement("insert into patient values(?,?,?,?,?,?,?,?,?,?,?,?)"); ps2.setString(1,eid); ps2.setString(2,nm); ps2.setString(3,p_nm); ps2.setString(4,rel); ps2.setString(5,p_gen); ps2.setString(6,t_o_ill); ps2.setInt(7, Integer.parseInt (lim_of_embrs)); ps2.setString(8,pres); ps2.setString(9,hos_bill);
  • 53. 53 ps2.setString(10,med_rep); ps2.setString(11,med_rec); ps2.setString(12,descrip); int status = ps2.executeUpdate(); return status; } catch(Exception ex) { ex.printStackTrace(); } return 0; } public boolean ad_login(String ad_id, String ad_pass) { try { PreparedStatement ps3 = con.prepareStatement("select * from adlog where ADMINISTRATORID=? and PASSWORD=?"); ps3.setString(1,ad_id); ps3.setString(2,ad_pass); ResultSet rs1 = ps3.executeQuery(); if(rs1.next()) { return true; } else { return false; } } catch(Exception ex) { ex.printStackTrace(); } return false; } public int emp_status_insert(String eid, String e_nm, String e_status) { try { PreparedStatement ps4 = con.prepareStatement("insert into status values(?,?,?)"); ps4.setString(1,eid); ps4.setString(2,e_nm); ps4.setString(3,e_status); int status2 = ps4.executeUpdate(); return status2;
  • 54. 54 } catch(Exception ex) { ex.printStackTrace(); } return 0; } public int register_form_insert(String eid, String e_nm, String pass) { try { PreparedStatement ps5 = con.prepareStatement("insert into register values(?,?,?)"); ps5.setString(1,eid); ps5.setString(2,e_nm); ps5.setString(3,pass); int status3 = ps5.executeUpdate(); return status3; } catch(Exception ex) { ex.printStackTrace(); } return 0; }}
  • 55. 55 SYSTEM TESTING & EVALUATION Testing of System: The Testing phase is a critical element of software Quality Assurance and represents the ultimate review of the specification, design and the code generation. This phase is a process of executing the entire application and performing a thorough check on all the individual modules, taking into consideration all the possible conditions that might arise in the working of the same. Unit Testing: In this phase all the independent units of the system are tested to ensure that information properly flows into and out of the program under test. Here, the local data structures are also examined to ensure that the modules operate properly. All possible error-handling paths are also tested to give proper messages to the users of the system when an error is encountered. Another important facility that has been tried out and tested successfully is to give warning messages to the Administrator of the system when they are about to confirm some changes to the records in the database.
  • 56. 56 TEST REPORTS: MODULE TESTS TYPE REMARKS User Login Checked whether every minute details regarding the login of user are given or not and allow them to generate instant report based on the given data. Also checked if any details related to item wise material. By putting suitable data against each interfaces , it was evident that each part will generate the required reports on the quicker basis and the data validations are done properly and lastly the data depositions are also checked by testing databases or back-end so that result is getting OK everywhere. Preliminary it is found all right. Database & Connectivity Testing After the interface testing database is also tested by cheking from backend whether the data are properly stored in the database tables or view or quieries with necessary checkings and cosntraints. Checked the ODBC and the connection objects behave properly or not! Database is OK and data is stored properly. Connection is Ok and progressing with the software is fine and harmless. Admin Login Checked whether every minute details regarding the login of admin are given and all the information are correct. If all the given data are correct then we can move to next step. If the data are wrong then we have to insert the data again.
  • 57. 57 Module Test Type Remarks Reimburse details All the details required are filled correctly and accordingly by the employees. If all the details are not provided correctly then the form is to be filled again.When all the details are correctly filled then we can proceed to next step. Fetch Data After administrator login administrator can fetch the data filled by the employees. If the fetch details are filled correctly then the admin can see the reimburse details filled by the employees. Status checking To grant the status administrator sees the details then fill the status form. After checking the fetch details admin can grant or reject the employee request
  • 58. 58 Implementation: In the implementation phase it is actually judged that the requirements presents the real world manifestation of processing functions and information structures. Implementation represents the current mode of operations. In this phase: -  We are viewing the usage of the software in the concerned organization and hence, the flaws and other imperfection will come out for rectification.  It consists of a trial phase for a few days known as the usage of demo version and lastly “MEDICAL REIMBURSEMENT SYSTEM” is tested repeatedly by the client side in a client version and servers, too, to check if there is any minute details is avoided.  The implementation phase is going on in a manner that dictates accommodation of a certain implementation details. The modules and in integration is also implemented and accepted by the client using some real life data, too. Feedbacks are taken and now, it is successfully implemented. Future Scope: The name of the project is MEDICAL REIMBURSEMENT. The software provides both the employees and the administrative with a LOGIN ID of their own choice which is unique, and is used for user authentication and checking illegal access to their individual accounts. The facilities that can be appended to the current version of the Medical Reimbursement include:  Online submission of the Employee Form for all registered employees.  Online Application for Review of Status for registered employees.  The system is desktop application, it could be web application
  • 59. 59 CONCLUSION Drawbacks and Limitations of the System: The software system described above suffers from certain limitations. Such limitations have crept into it owing to unavoidable circumstances of which time constraint is a major one. They are listed below: 1. The security protocol requires more attention and should have been more robust, which could not be resolved due to time constraints. 2. The 2 tables Administrator, patient require storage of data prior to operational activities. 3. The System is not capable of surviving a database crash and heavily depends on database connectivity for smooth operations.
  • 60. 60 BIBLIOGRAPHY: The books referred in this project are summarized below: 1. Head First Java by Kathy sierra. 2. The Complete Reference Java by H Schildt. 3. Sam’s Teach Yourself MySQL in 21 Days. 4. SQL, PL/SQL by Evan Barros. 10. Database Management System by Korth. The websites referred are:  http://www.tutorialspoint.com/mysql/index.htm  http://www.roseindia.net/jdbc/jdbc.shtml