SlideShare a Scribd company logo
1 of 33
A 
TRAINING REPORT 
ON 
“PAYROLL SYSTEM” 
AT 
ON JAVA 
Submitted 
In The Partial Fulfillment of 
Summer Training Programme 
Submitted to: Submitted by: 
Name :Karan Gupta 
B.Tech(C.S.E.) : 4th year 
Department of Computer Science Semester :7th 
& Technology Roll no. :BTCS11095 
Noida International University
2 
ACKNOWLEDGEMENT 
“No task is a single man’s effort” 
Various factors, situations, and people integrate to provide the background for the accomplishment of 
any task. Several persons with whom I interacted have contributed significantly to the successful 
completion of the Project. Although a single sentence hardly suffices. 
I would like to thank Mr Aakash Raghav for his guidance and help. 
Special thanks to my teachers, friends, and my family, whose patience and encouragement were the 
catalyst of this project. 
Last but not the least I would thank all the concern one’s who directly or indirectly helped me in 
completing my project.
3 
1 ABSTRACT 
1.1 PROJECT OBJECTIVES 
The Software engineering course that we took this semester placed emphasis on the paradigm of 
eXtreme Programming (XP) techniques. Extreme programming is a programming technique that 
bases its values on simplicity, communication, feedback and courage. It encourages team work and 
constant communication with the client. The objective of this project is to put into practice the 
teachings that we have learnt about XP. 
1.2 APPROACH 
When we were first given this project, we met to determine how we were to carry out the task 
assigned to us. We drew up a time-line, discussed about the programming language to use to carry 
out the task, how the GUI would look like and also to make sure that we understood what was 
assigned to us. We finally settled for Visual Basic (VB) as our programming language. We got more 
information on what we were to do and set about completing our task, making use of the new ideas 
taught in class, and especially spikes. 
1.3 ACHIEVEMENT 
Our task was to develop a payroll system that would keep a record of employee data including their 
pension plan, union membership status, and taxes and also to be able to calculate the pay of the 
employees taking into consideration employee data. We have been able to achieve these task. The 
software we developed calculates the employee net pay from the deductions. The payslip can be 
printed out as a receipt. Most of the bugs that we found and those that the clients and beta users 
found have been corrected. Any new bugs found will also be corrected and the software will be 
updated and released. Because we used object-oriented principles, modifying the software to fix bugs 
or add a new feature has been relatively easy.
4 
2 TABLE OF CONTENTS 
Abstract 3 
Table of Contents 4 
Company Profile 6 
10 
Introduction And Overview Of Project 1 1 
0CHAPTER 1 PROJECT BACKGROUND 14 
1.1 Definition of Problem 14 
1.2 Terminology definition 14 
1.3 Definition of Project Objectives 15 
1.4 Project Deliverables 15 
1.5 Project Plan 16 
CHAPTER 2 DESIGN 19 
2.1 An Introduction to the Methods and Techniques Adopted 
Within the Design 
19 
2.2 High–level Architecture Diagram of the Main Components 20 
2.3 More Detailed Description of the Most Important Modules of the 
Design 
20 
2.4 Indication of How the Design Fulfils the Requirements 22 
CHAPTER 3 IMPLEMENTATION 23 
3.1 Technical Issues Encountered 23 
3.2 Software Development Practices Adopted 23 
3.3 Screenshots of the Final System 23 
CHAPTER 4 RESULTS AND EVALUATION 27 
4.1 Adequacy and Coverage 27 
4.2 Efficiency and Effectiveness 27 
4.3 Productiveness 27 
4.4 Elegance and User-friendliness 27 
4.5 Quality Assurance 27 
4.6 Critical Evaluation 28
5 
CHAPTER 5 CONCLUSIONS AND FURTHER WORK 29 
5.1 Summary 29 
5.2 Overview and Interpretation of Results Attained 30 
5.3 Recommendations on Future Improvement 31 
References 32
6 
COMPANY PROFILE 
“In a free enterpris e, the community is not jus t another s takeholder in the bus iness, but is in fact the very purpose of its 
existence"- Jamsetji Tata 
CMC Limited is a leading systems engineering and integration company in India, offering application design, 
development, testing services and asset-based solutions in niche segments through turnkey projects for mission critical 
systems. CMC has also been expanding its service presence in international markets offering offshoring advantages 
and delivering value through service level-based and project scope-based deliveries. 
Since its inception on December 26, 1975, CMC has been a frontrunner in providing IT solutions and services. CMC 
was the first ever enterprise in India to set up a countrywide data network called INDONET - a computer network 
providing access to major cities in India, way back in 1985. 
A subsidiary of Tata Consultancy Services Limited (TCS Ltd), one of the world's leading information technology 
consulting, services and business process outsourcing organization, CMC Limited is a part of the US$ 100 billion Tata 
Group, India's best known business conglomerate. 
Over the last three decades, CMC continues to bring the benefits of Information Technology to improve the productivity 
of its customers globally and enhance the quality of their products and services by combining its wide range of service 
offerings with its deep vertical experience in multiple indus tries. CMC’s mis s ion is to deliver turnkey s olutions to s olve 
complex business and societal problems using Technology & Innovation. 
Today, CMC Limited, an ISO 9001:2000, certified and CMMI Level V accredited organization, is positioned as a premier 
IT solutions provider in the fast growing and competitive IT market. It executes large and complex turnkey projects, and 
has built, managed and s upported it’s customer's IT systems across the value chain of infrastructure, applications and 
business processes. 
A few highlights of CMC’s business 
 Over 10,000 employees spread across India, USA, UK, Europe, MEA & APAC 
 Expertise in 
o Product development 
o Software solutions 
o Infrastructure Management including cloud, mobility & virtualisation. 
o Knowledge processing & Analytics 
o Embedded & Real Time Systems 
 1000 strong skilled force in Embedded Systems 
 11 development centers across India and USA 
 Experience in setting up large ODCs with teams of 300+ resources
7 
CMC also prides its state-of-the-art, ISO 9001 certified R&D Centre in Hyderabad, India which conducts significant 
research into emerging technologies and competence that gives it an edge in complex, high technology projects. 
CMC over the years has followed a multi-dimensional approach to support its growth and expansion in becoming a 
global partner. 
Together with Tata Consultancy Services Limited (TCS Ltd), a strategic partner, CMC is working to target the global 
market with additional offerings that leverage the combined strengths and help follow common best practices. 
A global footprint with presence across all continents with a sizable resource pool of engineers trained in diverse 
technologies, with vast domain knowledge and varied skill sets. 
 CMC's wholly owned subsidiary, CMC Americas Inc., was acquired in 1991 and formerly called Baton Rouge 
International (BRI), before being renamed in 2003. With 9 offices in the USA and servicing customers across 
the country, it drives CMC's thrust towards globalization and business development in the USA is the largest 
contributor to CMC’s international bus iness. 
 CMC Informatics UK is the branch office of CMC Limited in the United Kingdom and covers the territories of 
the UK, Ireland and Europe. CMC's niche products, IT consultancy and business outsourcing services are 
some major offerings in this region. 
 CMC Dubai is the branch office of CMC in West Asia and serves as a front end to CMC's thrust towards 
globalization, especially in terms of business development in the Middle East and ICT led growth in Africa. 
 CMC’s pres ence in Aus tralia, New Zealand aims to bring the benefits of its value added s ervices to the APAC 
region and also leverage the innovative local industries towards unique partnerships that make them 
accessible globally. 
With its roots in India and a strong foothold globally , a cutting edge suite of products and services that offer value, cost 
effectiveness and flexible partnerships, CMC is poised to meet its vision to be among the “Top 20 s ys tems integration 
& engineering companies by 2020”.
8 
COMPANY’S MILESTONE: 
We've Come A Long Way 
Significant events in our history 
2010 
 1st International ODC established in Austin, Texas, USA 
2005 
 CMC Centre, Hyderabad, Southern Region (Bangalore, Chennai & Hyderabad), Northern Region (Delhi, 
Lucknow, Bhopal, Indore & Raipur) and Eastern Region are assessed SEI CMM Level 5 for Systems 
IntegrationDQ Rates TCS-CMC as number one in IT Services 
 DQ Rates TCS-CMC as number one in IT Services 
 CMC signs The Brand Equity-Business Promotion (BE-BP) agreement with Tata Sons Ltd. This agreement is 
an institutionalised process in the Tata Group to drive relationship between Tata Sons and the signatory 
company. It is to collectively and cooperatively promote the TATA BRAND which would match the brand equity 
of international brand names 
 CMC in line with TCS' business processes and practices implemented Ultimatix. Through the Ultimatix portal, 
all applications (Oracle Finance & Oracle HR modules) are accessible from one single window 
 BOLT, an online trading system, developed and implemented by CMC in March 1995 for BSE, completed 10 
years of operations 
2004 
 CMC ties up with Xilinx (the world's largest supplier of programmable logic solutions) to establish Xilinx' 1st 
development center in Hyderabad called Xilinx-CMC India Development Center (XIDC) 
 The Government of India divested its remaining 26.5 per cent stake in CMC 
 CMC was awarded the Gold certification from Cisco Systems, for customer satisfaction, training, support and 
specialisation 
 CMC's VOICE project adjudged the first runner-up in the best eGovernance projects category at the CSI-Nihilent 
eGovernance Awards 2003-04 
2003 
 Renamed subsidiary, BRI, as 'CMC Americas, Inc.' 
 Opened Dubai Branch office 
 CMC completes the 'India Census 2001' project of scanning and file creation of 228 million household forms
9 
2002 
 CMC Centre awarded the ISO 9001:2000 Certificate by STQC. Certification services for a period of three 
years 
 Northern region division of our systems integration SBU certified ISO 9001:2000 by STQC, for a period of 
three years 
 Western region (SI) assessed SEI CMM Level 5 (quality level 5 of the capability maturity model for software, 
version 1.1 of the Software Engineering Institute, Carnegie Mellon University, USA) 
 Eastern region (SI) assessed SEI CMM Level 4 
 Tata Business Excellence Model (TBEM) adopted 
2001 
 Tata Sons Limited acquired a 51 percent stake. CMC ceased to be a public sector enterprise. The board of 
the company was reconstituted.
10 
Introduction and Overview of the Project 
2.1.1 In this portion we are going to deal with the swings, in which project has been made and 
Java as the programming language, with a general overview about the project and how it 
works. 
This project is developed to complete the needs of admin of data integration, data security. 
Core Java 
Introduction to Java & OOP’s concepts and their implementation in java 
Java is an object oriented internet programming language. 
Its main features are:- 
 Open Source 
 Platform Independence 
 Security
A language is platform independent if it does not have any dependency on the operating system. 
11 
Usually dependency on the O/S is created:- 
At the time of development by invoking O/S library functions from the application, 
At the time of compilation by following O/S specific format in compiled code, and 
At the time of execution by using the O/S for launching the application. 
That is, a Language is platform independent if:- 
It is compiled in a platform mutual manner. 
Language provides its own runtime environment for the execution of its application. 
Language provides a comprehensive library for the application developers to develop all types of 
application without using the O/S concern. 
OOP’s 
It is a programming model that simplifies software development and maintenance by providing 
certain rules which are followed by the designer at the time of designing the software and by the 
developers at the time of developing and maintaining the software. 
The major advantage of this model is that we have habituated this model in our day to day life. 
Basic concepts of OOP’s 
 Object 
 Classification 
 Generalization & Inheritance 
 Polymorphism 
 Data Encapsulation 
Object 
An object is a discrete (distinct/unique/different) entity that has well-defined attributes and 
behavior. It can be a physical thing as well as an abstract thing. 
Classification 
Objects with common attributes, common behavior and having common relationship with other 
objects are grouped into logical units called classes. This process is called classification. 
Classes are used to manage objects. 
Generalization & Inheritance 
Through generalization we pick up common attributes and behavior of class. In this way we 
manage the class by using it.
12 
Generalization is the way to achieve abstraction. 
Polymorphism 
It is a natural phenomenon which states that in real life one thing can exists in different forms. E.g. 
- Water can be in three forms. 
Data Encapsulation (To protect something) 
It is a process by which we can encapsulate the data and this way we are protecting the data. 
Oracle Database 
A database management system (DBMS) is software that controls the storage, organization, and 
retrieval of data. 
A DBMS has the following elements: 
Kernel code 
This code manages memory and storage for the DBMS. 
Repository of metadata 
This repository is usually called a data dictionary. 
Query language 
This language enables applications to access the data.
13 
Software and Hardware Requirements 
The Requirements Specification is produced at the culmination of the analysis task. The function 
and performance allocated to as part of system engineering are refined by establishing a complete 
information description, a detailed functional description, a representation of system behaviour, 
an indication of performance requirements and design constraints, appropriate validation criteria, 
and other information pertinent to requirements. 
The Introduction of the requirement specification states the goals and objectives of the, describing 
it in the context of the computer-based system. Actually the introduction may be nothing more 
than the software scope of the planning document. The information description provides a detailed 
description of the problem that must solve. Information content, flow, and structure are 
documented. Hardware, Software and human interfaces are described for external system elements 
and internal software functions. For this project we need some special type of environment for 
setup.
14 
3 PROJECT BACKGROUND 
3.1 1.1 DEFINITION OF PROBLEM 
In XP, the user story serves the purpose of the problem statement and the specifications. The user 
story provided by the client was as follows: 
“You are to design and implement a payroll system that should accept employee hours 
worked, compute net pay and record all the payroll data for subsequent processing. The 
system should prepare pay cheques and a payroll ledger, and maintain data on a 
sequential payroll file. Non-statutory deductions such as union dues and pension plans to 
be made. 
“The payroll data are employee number, employee name, pay rate, and union member flag. 
The year-to-date total should contain earnings, federal tax, pension plan, and union dues” 
To accomplish these tasks, we had to meet with the client to find out exactly what the program is 
meant to do. Here are the sub stories that we were able to get from the client: 
• The program accepts employee hours worked 
• The program computes net pay 
• The program record all the payroll data for subsequent processing 
• The program should prepare pay cheques 
• The program should prepare a payroll ledger 
• The program should maintain data on a sequential payroll file 
• Non-statutory deductions such as union dues and pension plans to be made 
• Year-to-date total should contain earnings, federal tax, pension plan, and union dues 
• Payroll data are employee number, employee name, pay rate, and union member flag
15 
3.2 1.2 TERMINOLOGY DEFINITION 
This section gives a definition and explanation of some of the terms used in the project: 
Employee Data: This is the employee's information in the company. It consists of the employee 
identification number, employee name, pay rate, pension plan flag, and union member flag. 
Payroll Records: The payroll records are used to store each month’s hours worked, and the rates 
for that month. 
Rates: Rates consists of the percentage that would be deducted from the gross pay depending on 
union membership status, pension plan, state and federal tax. Each employee can have a unique 
hourly rate. 
Payroll Ledger: This is a table that shows the calculated pay of employees and the month in 
which they earned the pay. The ledger can be filtered by name, identification number, year and 
month. 
Hours Worked: This is the number of times that an employee work in a month. The hours 
worked is used to calculate the pay that an employee will receive for that month. 
Net Pay: The net pay is the final salary amount that would be given to the employee after all the 
deductions are subtracted from the gross pay. The deductions include among others taxes, union 
member dues and pension plan. 
Gross Pay: The gross pay is the amount that the employee earns before the deductions are 
subtracted. 
Deductions: Deductions are made up of taxes, union membership dues, pension plan. They are 
subtracted from the gross pay to give the net pay which is the employee's final pay for the month. 
Taxes: The taxes consists of the state dues and federal dues. A percentage of the employee's 
salary goes to state and country. 
Union Membership Dues: This is meant for employee's that are union workers in the company. 
They get to pay a percentage for union dues. An employee can be a union member and later 
change status to be a non-union member. 
Pension Plan: Employees that opted to use the pension plan of the company get to pay a 
particular percentage of their pay in preparation for their retirement. 
Payslip: These are similar to pay cheques. They allow the employee to have his or her pay 
printed out on paper so that they can cash it.
Year-To-Date Total: The year-to-date total is the summation of all the previous earnings till the 
month before the current month. 
16 
3.3 1.3 DEFINITION OF PROJECT OBJECTIVES 
The purpose of this project is to put into practice what we have learnt so far in our software 
engineering class. We spent most of the semester studying extreme programming. With extreme 
programming, the client knows how far he or her software is coming and knows what to except 
at one particular time or the other. The software is built exactly the way the client wants it to be 
built. 
3.4 1.4 PROJECT DELIVERABLES 
We met with our client on a few occasions to show our progress so far. In the long run, showing 
the client part of the finished product in stages helped. There were a few things he brought to our 
understanding and we were able to change those things. If we had waited till we finished the 
coding, we would have found it really difficult to correct the errors we found in such a short 
time. 
The graphical user interface was acceptable to the client at this stage even though he thought we 
could improve on it with a little more time. From our project deliverables, the client was able to 
bring to our understanding that the employees should have different pay rates and that it would 
be safe (for record purposes) to calculate the employee's year-to-data total salary earnings. These 
observations were later incorporated into the final deliverable. 
3.5 1.5 PROJECT PLAN 
At the beginning of the project, we scheduled meeting time for the group to discuss on the design 
and implementation of the software and what language to use in writing the software. We had 
several meetings to this effect. When then developed a time-line for the project–when we would 
be releasing the first version for scrutiny and the estimated time we thought we would use for 
refactoring. We also pondered on a suitable name to give the project. We came up with the name 
“Piccolo” but it was later changed to “Payroll System” after our meeting with our client. 
The group was then divided into two pairs that would work on parts of the code. We kept in 
touch with each other and whenever we had difficulties, we asked each other questions. On some 
occasions, we had to pretend we were the customer so as to try to figure out some of the things 
that user would desire, such as the friendliness of the user interface and ease of navigation 
through the software. We also created a blog so that we could communicate with each other, and 
also so that our client could track our progress http://project2.wordpress.com
When we discovered that we were behind schedule, we met to create a new time-line. We were 
behind schedule mostly because of our different engagements in school work and other personal 
issues. Fortunately for the team, we were able to stick to the new time-line and the project was 
completed in due time. 
17 
After the major part of the code was completed, we went ahead to lace the code, that is, adding 
exception handlers which will make the software more robust. We avoided this at the beginning 
because we did not want to get confused with too many lines of code. 
The version of the software that has been released can still be improved depending on user 
response. So far, we have succeeded in completing the desired goal of from the user stories given 
to us. The beta software has been released about three times and we have been able to get good 
ideas from the various users on how to improve the functionality, reliability and robustness of the 
software.
18 
CHAPTER 2 
DESIGN 
3.6 2.1 AN INTRODUCTION TO THE METHODS AND TECHNIQUES ADOPTED WITHIN THE DESIGN 
The software was built using Visual Basic and it can run on computers that have the .NET 
Framework installed. We divided the whole project into five main modules: employee data, 
payroll records, rates, ledger and help. 
When a data is saved, the data gets written into an XML file. Keeping in line with making the 
software platform- independent, XML is also a highly platform- independent format for storing 
data. This is where all the data of the employee is stored, along with each month’s payroll data 
for the employee. There is also a separate XML file for storing current rates. For an employee 
data or payroll data to be saved to the file, it has to be serialized. Getting any data from the file 
will require the data to first be deserialized before it can be used. Serialization and deserialization 
helped make the data storage very simple. 
We also used the object-oriented paradigm to code and organize our program. This ensured code 
reuse, and efficient updating of the code later on.
P A Y R O L L 
S Y S T E M 
R A T E S L E P A Y S L I P D G E R H E L P 
19 
3.7 2.2 HIGH-LEVEL ARCHITECTURE DIAGRAM OF THE MAIN COMPONENTS 
E M P L O Y E E 
D A T A 
P A Y R O L L 
R E C O R D S 
3.8 2.3 MORE DETAILED DESCRIPTION OF THE MOST IMPORTANT MODULES OF THE DESIGN 
The most important modules of the design are the employee data, payroll records and rates. For 
the employee data module, we had to keep track of the identification number, name, union 
membership status, pension plan agreement and payroll of an employee. We also had to link 
these to a general module that will hold all the other employees. There had to be a means of 
storing all these data, retrieving them, adding data and deleting data without giving any errors. 
From the employee data module, we had to create a link to the employee's pay records. 
The payroll records had to contain the number of hours that the employee had worked and in 
what month and year that the employee worked. We also had to keep in mind the rate with which 
we would be able to calculate the employee's pay. The payroll records also had to contain the 
employee's deductions, that is, the deductions from the pension plan, union membership fee and 
taxes. Obviously, the payroll records also had to contain the gross and net pay of the employee. 
The picture below shows a brief look at the modules of the original design.
20 
We refactored the modules. This had to be done after one first deliverable was given to out 
client.
21 
3.9 2.4 INDICATION OF HOW THE DESIGN FULFILLS THE REQUIREMENTS 
From the design picture above, it is clear that the software is meant to accept employee data, i.e., 
the identification number, name, union membership status and pension plan. It should stores 
these data in a XML file. The software computes the employee payroll depending on the rate and 
deductions that has been specified for the employee. New employees can always be added to the 
list of existing employees. There is no limit to the number of employees that the list holds. An 
employee's data can be modified as well as deleted from the list. 
Each employee has a link to a pay data in the payroll records module. From the design diagram, 
we can see that a new payroll data can be added to the employee's list of existing pay data. The 
payroll calculates the employee's pay depending on the hours worked, the employee's rates and 
deductions that include pension dues, union membership dues and taxes. Each pay data is stored 
according to the month and year is was calculated.
22 
4 CHAPTER 3 
5 IMPLEMETATION 
Some of the difficulty we faced was in trying to make the desired functions work. At first the 
coding seemed a little complex, so we went back to the client for clarification and we were able 
to get a more detailed description of the functions. After studying the IDE we wanted to use, the 
coding became less complex and we were able to figure out how to go about it. 
5.1 3.1 TECHNICAL ISSUES ENCOUNTERED 
Some of the technical issues and questions we encountered were with the following: 
 How the program saves data 
 How errors are detected and the error messages that should appear 
 What happens when we try overwriting data that already exists on the list 
 Is the software user friendly? 
 Is the Graphic User Interface elegant ? 
 The platform the software should run on 
We were able to answer and resolve these issues after meetings and discussions with the entire 
group. 
5.2 3.2 SOFTWARE DEVELOPMENT PRACTICES ADOPTED 
 We used Extreme Programming to build the software. 
 We adopted the whole team approach in which the client was involved through out the software 
development. 
 We used simple designs which were as simple as the current functionality allowed by the system. 
We first began with very simple design which is incrementally improved. 
 Continuous integration was also used where each code was compiled run and tested before 
adding to the system after which the system must meet all the criteria 
 The most important practice adopted was pair programming. We paired up with members of the 
team and each team met at various times to code. After each pair coded, they made sure they 
tested and compiled it, then added it to the main system which they sent to the other group 
members.
23 
 
We also made sure that we coded according to coding standards, the development codes were 
consistent and had the same style through out. 
5.3 3.3 SCREENSHOTS OF THE FINAL SYSTEM 
Below are some screenshots of the final program. 
The main screen shows all the tasks that can be selected and performed by the user. 
The Employee data displays the names and certain details about the employee.
24 
This is the Payroll records which show all the information about the employee a selected 
employee.
The Ledger screen shows a summary of all payrolls, and can be used to sort and filter the data to 
get a better view of data. 
25
26 
The payslip is printable and shows the current month’s payment details as well as the year-to-date 
total. 
There are various other web pages that are generated from the XML data directly.
27
28 
6 CHAPTER 4 
7 RESULTS AND EVALUATION 
7.1 4.1 ADEQUACY AND COVERAGE 
The payroll software can perform the following functions 
• Store employee information 
• Calculate gross and net pay, and determine tax deductions to be made 
• Print payslips for each month, showing year-to-date totals 
• Create and maintain a ledger containing all necessary records of employee payments 
• Provide the user with adequate help by the user manual with the software 
7.2 4.2 EFFICIENCY AND EFFECTIVENESS 
• The payroll software calculates the total earnings of the employee and automatica l ly 
updates the employee’s earning to date. 
• The employers can set different rates for employees. 
• The software does its calculations in a very clear and concise manner. All calculations are 
guaranteed accuracy. 
7.3 4.3 PRODUCTIVENESS 
• The payroll software gives the employee the ability to keep track of their earnings by 
printing their payslip for each month. 
• It gives the employers the ability to keep records of how much they pay out as salaries by 
creating a ledger that can be used to filter out results by employee, month, and year. 
7.4 4.4 ELEGANCE AND USER-FRIENDLINESS 
• The different tasks and functions are outlined in a very simple and clear manner for the 
users. 
• The help file can be used by the users to know how to use the payroll software. 
• The interface is very simple and not complicated to allow for easy usage.
29 
7.5 4.5 QUALITY ASSURANCE 
• The software was fully tested to ensure it is relatively error free and that it computes results 
correctly, including deductions such as taxes. 
• The software provides a better, time saving and efficient way of keeping track of employees 
earnings by speeding up calculations, and reducing paperwork by keeping effic ie nt 
electronic records. 
7.6 4.6 CRITICAL EVALUATION 
• The software overwrites employees information when re-entered. However, employee data 
is discarded when the employee is deleted from the software. 
• The software also stores every information provided by the user, but does not store results 
of calculations. Instead, calculations are done “on the fly” when the user needs to see them 
on the ledger, the payroll records, or the payslip. 
• Deductions such as federal tax, state tax and union tax are made according to the set rate 
provided by the employer, but additional benefits and bonuses are not included in 
calculations or storage of records. 
• The payslip not only provides the employee with their earning, it also reflects their year-todate 
recorded earning. However, there are no reports that explicitly summarize grand 
totals grouped by employees, months, or years. The ledger can be used to filter out these 
records.
30 
• 
CHAPTER 5 
8 CONCLUSIONS AND FURTHER WORK 
8.1 5.1 SUMMARY 
The main aim of this project was to put what we learnt in our Software engineering class into 
practice. The payroll system designated to our team allowed us to fully exercise the techniques of 
XP. The final deliverable was a simple payroll calculator and we were able to learn a new 
programming language, VB. In addition, we were able to apply the knowledge of OOP learnt in 
our Java classes to another language thereby giving us a better understanding of OOP. 
8.2 5.2 OVERVIEW AND INTERPRETATION OF RESULTS ATTAINED 
We were able to attain our set objectives, and this helped us gain confidence in writing our own 
code and our own applications. 
In addition, the use of serialization was an experimentation to cut down the time taken in 
designing the front-ends and back-ends of applications separately. With our OOP approach and 
serialization, we only concentrated on designing the objects/ classes, and then just serialized 
them on disk. So we did not spend any time on designing how to store data. 
We also worked as a team, and gained some experience on how professional programmers work 
in the industry.
31 
8.3 5.3 RECOMMENDATIONS ON FUTURE IMPROVEMENT 
There is always room for imporvement, and the software we created can also be imporved. This 
is especially because we had to create it within a limited time. With more time, the software can 
be improved to include security and different types of users. This would be the first step in 
making the software network-enabled, and eventually web-enabled. This was our original after-thought 
to programming the software, and we had chosen XML. In addition, the software can 
also be improved in terms of the calculations it can do, and more flexiblility in the rates used in 
calculations per employee.
32 
9 REFERENCES 
Horton, Ivor Java 2 SDK 1.4 Edition Wiley Publishing Inc., Indianapolis 2003 
Millspaugh, Anita C. and Julia Case Bradley Programming in Visual Basic 6.0 Update Edition 
McGraw-Hill Irwin, Boston 2002. 
Odinma, Augustine Software Engineering I SEN 261 Lecture Notes April/Spring 2007 ABTI-American 
University of Nigeria 
Palmer, Daniel W. and Daniel H. Steinberg Extreme Software Engineering A hands-on approach 
Pearson – Prentice Hall, New Jersey 2004
33

More Related Content

What's hot

MBA Project report at "Employee Satisfaction"
MBA Project report at "Employee Satisfaction"MBA Project report at "Employee Satisfaction"
MBA Project report at "Employee Satisfaction"Alok Singh
 
project report employee welfare (mithun kumar sheel
project report employee welfare (mithun kumar sheelproject report employee welfare (mithun kumar sheel
project report employee welfare (mithun kumar sheelmithun sheel
 
Project report on Employee Satisfaction
 Project report on Employee Satisfaction Project report on Employee Satisfaction
Project report on Employee SatisfactionMegha Sanghavi
 
Summer internship project hr mba mms
Summer internship project hr mba mmsSummer internship project hr mba mms
Summer internship project hr mba mmsSria
 
summer internship report - sourcing and recruitment
summer internship report - sourcing and recruitmentsummer internship report - sourcing and recruitment
summer internship report - sourcing and recruitmentSwetaSaroha
 
Sip Project Report
Sip Project ReportSip Project Report
Sip Project Reportspragyaa
 
Summer internship report- employee engagement
Summer internship report- employee engagement Summer internship report- employee engagement
Summer internship report- employee engagement Vidhu Arora
 
training and development at infosys
training and development at infosystraining and development at infosys
training and development at infosysSwati Luthra
 
HUMAN RESOURCE MANAGEMENT POLICIES OF TCS AND PANTALOONS
HUMAN RESOURCE MANAGEMENT POLICIES OF TCS AND PANTALOONS HUMAN RESOURCE MANAGEMENT POLICIES OF TCS AND PANTALOONS
HUMAN RESOURCE MANAGEMENT POLICIES OF TCS AND PANTALOONS Gunjan Thakkar
 
HR Policies of Aditya Birla Group ppt
HR Policies of Aditya Birla Group pptHR Policies of Aditya Birla Group ppt
HR Policies of Aditya Birla Group pptManish Pandey
 
HR Policies - Reliance Industries Ltd
HR Policies - Reliance Industries LtdHR Policies - Reliance Industries Ltd
HR Policies - Reliance Industries LtdObadia Lalthazuala
 
MBA Final Year Project
MBA Final Year ProjectMBA Final Year Project
MBA Final Year ProjectArun Kumar
 
PROJECT REPORT ON EMPLOYEE SATISFACTION (sample)
PROJECT REPORT ON EMPLOYEE SATISFACTION (sample)PROJECT REPORT ON EMPLOYEE SATISFACTION (sample)
PROJECT REPORT ON EMPLOYEE SATISFACTION (sample)Ajeesh Mk
 
HR practices at Wipro
HR practices at WiproHR practices at Wipro
HR practices at WiproArun Kishore
 
Human Resource Management of Mahindra
Human Resource Management of Mahindra Human Resource Management of Mahindra
Human Resource Management of Mahindra Anand Tomar
 
Hr project study of recruitment & selection process in aviva life insurance
Hr project study of recruitment & selection process in aviva life insuranceHr project study of recruitment & selection process in aviva life insurance
Hr project study of recruitment & selection process in aviva life insuranceProjects Kart
 

What's hot (20)

MBA Project report at "Employee Satisfaction"
MBA Project report at "Employee Satisfaction"MBA Project report at "Employee Satisfaction"
MBA Project report at "Employee Satisfaction"
 
project report employee welfare (mithun kumar sheel
project report employee welfare (mithun kumar sheelproject report employee welfare (mithun kumar sheel
project report employee welfare (mithun kumar sheel
 
Project report on Employee Satisfaction
 Project report on Employee Satisfaction Project report on Employee Satisfaction
Project report on Employee Satisfaction
 
Summer internship project hr mba mms
Summer internship project hr mba mmsSummer internship project hr mba mms
Summer internship project hr mba mms
 
summer internship report - sourcing and recruitment
summer internship report - sourcing and recruitmentsummer internship report - sourcing and recruitment
summer internship report - sourcing and recruitment
 
Sip Project Report
Sip Project ReportSip Project Report
Sip Project Report
 
Summer internship report- employee engagement
Summer internship report- employee engagement Summer internship report- employee engagement
Summer internship report- employee engagement
 
training and development at infosys
training and development at infosystraining and development at infosys
training and development at infosys
 
HUMAN RESOURCE MANAGEMENT POLICIES OF TCS AND PANTALOONS
HUMAN RESOURCE MANAGEMENT POLICIES OF TCS AND PANTALOONS HUMAN RESOURCE MANAGEMENT POLICIES OF TCS AND PANTALOONS
HUMAN RESOURCE MANAGEMENT POLICIES OF TCS AND PANTALOONS
 
RELIANCE HR POLICIES
RELIANCE HR POLICIESRELIANCE HR POLICIES
RELIANCE HR POLICIES
 
3 p compensation concept
3 p compensation concept3 p compensation concept
3 p compensation concept
 
HR Policies of Aditya Birla Group ppt
HR Policies of Aditya Birla Group pptHR Policies of Aditya Birla Group ppt
HR Policies of Aditya Birla Group ppt
 
HR Policies - Reliance Industries Ltd
HR Policies - Reliance Industries LtdHR Policies - Reliance Industries Ltd
HR Policies - Reliance Industries Ltd
 
MBA Final Year Project
MBA Final Year ProjectMBA Final Year Project
MBA Final Year Project
 
PROJECT REPORT ON EMPLOYEE SATISFACTION (sample)
PROJECT REPORT ON EMPLOYEE SATISFACTION (sample)PROJECT REPORT ON EMPLOYEE SATISFACTION (sample)
PROJECT REPORT ON EMPLOYEE SATISFACTION (sample)
 
HR practices at Wipro
HR practices at WiproHR practices at Wipro
HR practices at Wipro
 
Human Resource Management of Mahindra
Human Resource Management of Mahindra Human Resource Management of Mahindra
Human Resource Management of Mahindra
 
Wipro HR PPT
Wipro HR PPTWipro HR PPT
Wipro HR PPT
 
TCS
TCSTCS
TCS
 
Hr project study of recruitment & selection process in aviva life insurance
Hr project study of recruitment & selection process in aviva life insuranceHr project study of recruitment & selection process in aviva life insurance
Hr project study of recruitment & selection process in aviva life insurance
 

Similar to summer training report on payroll at cmc

Remiel softech solutions
Remiel softech solutionsRemiel softech solutions
Remiel softech solutionsAmrit Bajaj
 
Digital Engineering: Top 5 Imperatives for Communications, Media and Technolo...
Digital Engineering: Top 5 Imperatives for Communications, Media and Technolo...Digital Engineering: Top 5 Imperatives for Communications, Media and Technolo...
Digital Engineering: Top 5 Imperatives for Communications, Media and Technolo...Cognizant
 
Study of market potential for enterprise messaging solution
Study of market potential for enterprise messaging solutionStudy of market potential for enterprise messaging solution
Study of market potential for enterprise messaging solutionSupa Buoy
 
Tata consultancy services final
Tata consultancy services finalTata consultancy services final
Tata consultancy services finalWasim Akram
 
T-Bytes Agile & AI Operation
T-Bytes Agile & AI Operation T-Bytes Agile & AI Operation
T-Bytes Agile & AI Operation EGBG Services
 
Creocis_Company Brochure
Creocis_Company BrochureCreocis_Company Brochure
Creocis_Company BrochureAsheesh Dixit
 
T-Byte Agile & AI Operations March 2021
T-Byte Agile & AI Operations March 2021T-Byte Agile & AI Operations March 2021
T-Byte Agile & AI Operations March 2021EGBG Services
 
Internet of Things (IoT) Training
Internet of Things (IoT) TrainingInternet of Things (IoT) Training
Internet of Things (IoT) TrainingManish Shrivastava
 
CCCi Atlanta
CCCi AtlantaCCCi Atlanta
CCCi Atlantajkosar
 
Bs case study
Bs case studyBs case study
Bs case studyals1508
 
Resume_Amit_Chakraborty_2016
Resume_Amit_Chakraborty_2016Resume_Amit_Chakraborty_2016
Resume_Amit_Chakraborty_2016Amit Chakraborty
 
Dot net coaching Coimbatore
Dot net coaching CoimbatoreDot net coaching Coimbatore
Dot net coaching Coimbatoresathyancegon
 
Dot net institutes Coimbatore
Dot net institutes CoimbatoreDot net institutes Coimbatore
Dot net institutes Coimbatoresathyancegon
 
Dot net education Coimbatore
Dot net education CoimbatoreDot net education Coimbatore
Dot net education Coimbatoresathyancegon
 
McKinsey | When Things Get Complex: Complex Systems, Challenges and Where to ...
McKinsey | When Things Get Complex: Complex Systems, Challenges and Where to ...McKinsey | When Things Get Complex: Complex Systems, Challenges and Where to ...
McKinsey | When Things Get Complex: Complex Systems, Challenges and Where to ...Intland Software GmbH
 
Learn Mechanical Digital Modeling With Auto CAD, CATIA v5, Solid-works & Pro-...
Learn Mechanical Digital Modeling With Auto CAD, CATIA v5, Solid-works & Pro-...Learn Mechanical Digital Modeling With Auto CAD, CATIA v5, Solid-works & Pro-...
Learn Mechanical Digital Modeling With Auto CAD, CATIA v5, Solid-works & Pro-...techageacademy
 

Similar to summer training report on payroll at cmc (20)

Remiel softech solutions
Remiel softech solutionsRemiel softech solutions
Remiel softech solutions
 
MVSS-Shekhar-OTM
MVSS-Shekhar-OTMMVSS-Shekhar-OTM
MVSS-Shekhar-OTM
 
3_CHAPTER-2
3_CHAPTER-23_CHAPTER-2
3_CHAPTER-2
 
Digital Engineering: Top 5 Imperatives for Communications, Media and Technolo...
Digital Engineering: Top 5 Imperatives for Communications, Media and Technolo...Digital Engineering: Top 5 Imperatives for Communications, Media and Technolo...
Digital Engineering: Top 5 Imperatives for Communications, Media and Technolo...
 
Study of market potential for enterprise messaging solution
Study of market potential for enterprise messaging solutionStudy of market potential for enterprise messaging solution
Study of market potential for enterprise messaging solution
 
Tata consultancy services final
Tata consultancy services finalTata consultancy services final
Tata consultancy services final
 
T-Bytes Agile & AI Operation
T-Bytes Agile & AI Operation T-Bytes Agile & AI Operation
T-Bytes Agile & AI Operation
 
Nilesh_CV
Nilesh_CVNilesh_CV
Nilesh_CV
 
Creocis_Company Brochure
Creocis_Company BrochureCreocis_Company Brochure
Creocis_Company Brochure
 
T-Byte Agile & AI Operations March 2021
T-Byte Agile & AI Operations March 2021T-Byte Agile & AI Operations March 2021
T-Byte Agile & AI Operations March 2021
 
Ob Presentation
Ob PresentationOb Presentation
Ob Presentation
 
Internet of Things (IoT) Training
Internet of Things (IoT) TrainingInternet of Things (IoT) Training
Internet of Things (IoT) Training
 
CCCi Atlanta
CCCi AtlantaCCCi Atlanta
CCCi Atlanta
 
Bs case study
Bs case studyBs case study
Bs case study
 
Resume_Amit_Chakraborty_2016
Resume_Amit_Chakraborty_2016Resume_Amit_Chakraborty_2016
Resume_Amit_Chakraborty_2016
 
Dot net coaching Coimbatore
Dot net coaching CoimbatoreDot net coaching Coimbatore
Dot net coaching Coimbatore
 
Dot net institutes Coimbatore
Dot net institutes CoimbatoreDot net institutes Coimbatore
Dot net institutes Coimbatore
 
Dot net education Coimbatore
Dot net education CoimbatoreDot net education Coimbatore
Dot net education Coimbatore
 
McKinsey | When Things Get Complex: Complex Systems, Challenges and Where to ...
McKinsey | When Things Get Complex: Complex Systems, Challenges and Where to ...McKinsey | When Things Get Complex: Complex Systems, Challenges and Where to ...
McKinsey | When Things Get Complex: Complex Systems, Challenges and Where to ...
 
Learn Mechanical Digital Modeling With Auto CAD, CATIA v5, Solid-works & Pro-...
Learn Mechanical Digital Modeling With Auto CAD, CATIA v5, Solid-works & Pro-...Learn Mechanical Digital Modeling With Auto CAD, CATIA v5, Solid-works & Pro-...
Learn Mechanical Digital Modeling With Auto CAD, CATIA v5, Solid-works & Pro-...
 

Recently uploaded

Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncWhy does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncssuser2ae721
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfAsst.prof M.Gokilavani
 
Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxk795866
 
Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...121011101441
 
Electronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfElectronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfme23b1001
 
An introduction to Semiconductor and its types.pptx
An introduction to Semiconductor and its types.pptxAn introduction to Semiconductor and its types.pptx
An introduction to Semiconductor and its types.pptxPurva Nikam
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxDeepakSakkari2
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 
Concrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptxConcrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptxKartikeyaDwivedi3
 
Churning of Butter, Factors affecting .
Churning of Butter, Factors affecting  .Churning of Butter, Factors affecting  .
Churning of Butter, Factors affecting .Satyam Kumar
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxJoão Esperancinha
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerAnamika Sarkar
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AIabhishek36461
 
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfCCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfAsst.prof M.Gokilavani
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidNikhilNagaraju
 
complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...asadnawaz62
 
Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.eptoze12
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort servicejennyeacort
 

Recently uploaded (20)

Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncWhy does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
 
Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptx
 
Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...
 
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
 
Electronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdfElectronically Controlled suspensions system .pdf
Electronically Controlled suspensions system .pdf
 
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
🔝9953056974🔝!!-YOUNG call girls in Rajendra Nagar Escort rvice Shot 2000 nigh...
 
An introduction to Semiconductor and its types.pptx
An introduction to Semiconductor and its types.pptxAn introduction to Semiconductor and its types.pptx
An introduction to Semiconductor and its types.pptx
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptx
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 
Concrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptxConcrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptx
 
Churning of Butter, Factors affecting .
Churning of Butter, Factors affecting  .Churning of Butter, Factors affecting  .
Churning of Butter, Factors affecting .
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AI
 
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfCCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfid
 
complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...
 
Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.Oxy acetylene welding presentation note.
Oxy acetylene welding presentation note.
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
 

summer training report on payroll at cmc

  • 1. A TRAINING REPORT ON “PAYROLL SYSTEM” AT ON JAVA Submitted In The Partial Fulfillment of Summer Training Programme Submitted to: Submitted by: Name :Karan Gupta B.Tech(C.S.E.) : 4th year Department of Computer Science Semester :7th & Technology Roll no. :BTCS11095 Noida International University
  • 2. 2 ACKNOWLEDGEMENT “No task is a single man’s effort” Various factors, situations, and people integrate to provide the background for the accomplishment of any task. Several persons with whom I interacted have contributed significantly to the successful completion of the Project. Although a single sentence hardly suffices. I would like to thank Mr Aakash Raghav for his guidance and help. Special thanks to my teachers, friends, and my family, whose patience and encouragement were the catalyst of this project. Last but not the least I would thank all the concern one’s who directly or indirectly helped me in completing my project.
  • 3. 3 1 ABSTRACT 1.1 PROJECT OBJECTIVES The Software engineering course that we took this semester placed emphasis on the paradigm of eXtreme Programming (XP) techniques. Extreme programming is a programming technique that bases its values on simplicity, communication, feedback and courage. It encourages team work and constant communication with the client. The objective of this project is to put into practice the teachings that we have learnt about XP. 1.2 APPROACH When we were first given this project, we met to determine how we were to carry out the task assigned to us. We drew up a time-line, discussed about the programming language to use to carry out the task, how the GUI would look like and also to make sure that we understood what was assigned to us. We finally settled for Visual Basic (VB) as our programming language. We got more information on what we were to do and set about completing our task, making use of the new ideas taught in class, and especially spikes. 1.3 ACHIEVEMENT Our task was to develop a payroll system that would keep a record of employee data including their pension plan, union membership status, and taxes and also to be able to calculate the pay of the employees taking into consideration employee data. We have been able to achieve these task. The software we developed calculates the employee net pay from the deductions. The payslip can be printed out as a receipt. Most of the bugs that we found and those that the clients and beta users found have been corrected. Any new bugs found will also be corrected and the software will be updated and released. Because we used object-oriented principles, modifying the software to fix bugs or add a new feature has been relatively easy.
  • 4. 4 2 TABLE OF CONTENTS Abstract 3 Table of Contents 4 Company Profile 6 10 Introduction And Overview Of Project 1 1 0CHAPTER 1 PROJECT BACKGROUND 14 1.1 Definition of Problem 14 1.2 Terminology definition 14 1.3 Definition of Project Objectives 15 1.4 Project Deliverables 15 1.5 Project Plan 16 CHAPTER 2 DESIGN 19 2.1 An Introduction to the Methods and Techniques Adopted Within the Design 19 2.2 High–level Architecture Diagram of the Main Components 20 2.3 More Detailed Description of the Most Important Modules of the Design 20 2.4 Indication of How the Design Fulfils the Requirements 22 CHAPTER 3 IMPLEMENTATION 23 3.1 Technical Issues Encountered 23 3.2 Software Development Practices Adopted 23 3.3 Screenshots of the Final System 23 CHAPTER 4 RESULTS AND EVALUATION 27 4.1 Adequacy and Coverage 27 4.2 Efficiency and Effectiveness 27 4.3 Productiveness 27 4.4 Elegance and User-friendliness 27 4.5 Quality Assurance 27 4.6 Critical Evaluation 28
  • 5. 5 CHAPTER 5 CONCLUSIONS AND FURTHER WORK 29 5.1 Summary 29 5.2 Overview and Interpretation of Results Attained 30 5.3 Recommendations on Future Improvement 31 References 32
  • 6. 6 COMPANY PROFILE “In a free enterpris e, the community is not jus t another s takeholder in the bus iness, but is in fact the very purpose of its existence"- Jamsetji Tata CMC Limited is a leading systems engineering and integration company in India, offering application design, development, testing services and asset-based solutions in niche segments through turnkey projects for mission critical systems. CMC has also been expanding its service presence in international markets offering offshoring advantages and delivering value through service level-based and project scope-based deliveries. Since its inception on December 26, 1975, CMC has been a frontrunner in providing IT solutions and services. CMC was the first ever enterprise in India to set up a countrywide data network called INDONET - a computer network providing access to major cities in India, way back in 1985. A subsidiary of Tata Consultancy Services Limited (TCS Ltd), one of the world's leading information technology consulting, services and business process outsourcing organization, CMC Limited is a part of the US$ 100 billion Tata Group, India's best known business conglomerate. Over the last three decades, CMC continues to bring the benefits of Information Technology to improve the productivity of its customers globally and enhance the quality of their products and services by combining its wide range of service offerings with its deep vertical experience in multiple indus tries. CMC’s mis s ion is to deliver turnkey s olutions to s olve complex business and societal problems using Technology & Innovation. Today, CMC Limited, an ISO 9001:2000, certified and CMMI Level V accredited organization, is positioned as a premier IT solutions provider in the fast growing and competitive IT market. It executes large and complex turnkey projects, and has built, managed and s upported it’s customer's IT systems across the value chain of infrastructure, applications and business processes. A few highlights of CMC’s business  Over 10,000 employees spread across India, USA, UK, Europe, MEA & APAC  Expertise in o Product development o Software solutions o Infrastructure Management including cloud, mobility & virtualisation. o Knowledge processing & Analytics o Embedded & Real Time Systems  1000 strong skilled force in Embedded Systems  11 development centers across India and USA  Experience in setting up large ODCs with teams of 300+ resources
  • 7. 7 CMC also prides its state-of-the-art, ISO 9001 certified R&D Centre in Hyderabad, India which conducts significant research into emerging technologies and competence that gives it an edge in complex, high technology projects. CMC over the years has followed a multi-dimensional approach to support its growth and expansion in becoming a global partner. Together with Tata Consultancy Services Limited (TCS Ltd), a strategic partner, CMC is working to target the global market with additional offerings that leverage the combined strengths and help follow common best practices. A global footprint with presence across all continents with a sizable resource pool of engineers trained in diverse technologies, with vast domain knowledge and varied skill sets.  CMC's wholly owned subsidiary, CMC Americas Inc., was acquired in 1991 and formerly called Baton Rouge International (BRI), before being renamed in 2003. With 9 offices in the USA and servicing customers across the country, it drives CMC's thrust towards globalization and business development in the USA is the largest contributor to CMC’s international bus iness.  CMC Informatics UK is the branch office of CMC Limited in the United Kingdom and covers the territories of the UK, Ireland and Europe. CMC's niche products, IT consultancy and business outsourcing services are some major offerings in this region.  CMC Dubai is the branch office of CMC in West Asia and serves as a front end to CMC's thrust towards globalization, especially in terms of business development in the Middle East and ICT led growth in Africa.  CMC’s pres ence in Aus tralia, New Zealand aims to bring the benefits of its value added s ervices to the APAC region and also leverage the innovative local industries towards unique partnerships that make them accessible globally. With its roots in India and a strong foothold globally , a cutting edge suite of products and services that offer value, cost effectiveness and flexible partnerships, CMC is poised to meet its vision to be among the “Top 20 s ys tems integration & engineering companies by 2020”.
  • 8. 8 COMPANY’S MILESTONE: We've Come A Long Way Significant events in our history 2010  1st International ODC established in Austin, Texas, USA 2005  CMC Centre, Hyderabad, Southern Region (Bangalore, Chennai & Hyderabad), Northern Region (Delhi, Lucknow, Bhopal, Indore & Raipur) and Eastern Region are assessed SEI CMM Level 5 for Systems IntegrationDQ Rates TCS-CMC as number one in IT Services  DQ Rates TCS-CMC as number one in IT Services  CMC signs The Brand Equity-Business Promotion (BE-BP) agreement with Tata Sons Ltd. This agreement is an institutionalised process in the Tata Group to drive relationship between Tata Sons and the signatory company. It is to collectively and cooperatively promote the TATA BRAND which would match the brand equity of international brand names  CMC in line with TCS' business processes and practices implemented Ultimatix. Through the Ultimatix portal, all applications (Oracle Finance & Oracle HR modules) are accessible from one single window  BOLT, an online trading system, developed and implemented by CMC in March 1995 for BSE, completed 10 years of operations 2004  CMC ties up with Xilinx (the world's largest supplier of programmable logic solutions) to establish Xilinx' 1st development center in Hyderabad called Xilinx-CMC India Development Center (XIDC)  The Government of India divested its remaining 26.5 per cent stake in CMC  CMC was awarded the Gold certification from Cisco Systems, for customer satisfaction, training, support and specialisation  CMC's VOICE project adjudged the first runner-up in the best eGovernance projects category at the CSI-Nihilent eGovernance Awards 2003-04 2003  Renamed subsidiary, BRI, as 'CMC Americas, Inc.'  Opened Dubai Branch office  CMC completes the 'India Census 2001' project of scanning and file creation of 228 million household forms
  • 9. 9 2002  CMC Centre awarded the ISO 9001:2000 Certificate by STQC. Certification services for a period of three years  Northern region division of our systems integration SBU certified ISO 9001:2000 by STQC, for a period of three years  Western region (SI) assessed SEI CMM Level 5 (quality level 5 of the capability maturity model for software, version 1.1 of the Software Engineering Institute, Carnegie Mellon University, USA)  Eastern region (SI) assessed SEI CMM Level 4  Tata Business Excellence Model (TBEM) adopted 2001  Tata Sons Limited acquired a 51 percent stake. CMC ceased to be a public sector enterprise. The board of the company was reconstituted.
  • 10. 10 Introduction and Overview of the Project 2.1.1 In this portion we are going to deal with the swings, in which project has been made and Java as the programming language, with a general overview about the project and how it works. This project is developed to complete the needs of admin of data integration, data security. Core Java Introduction to Java & OOP’s concepts and their implementation in java Java is an object oriented internet programming language. Its main features are:-  Open Source  Platform Independence  Security
  • 11. A language is platform independent if it does not have any dependency on the operating system. 11 Usually dependency on the O/S is created:- At the time of development by invoking O/S library functions from the application, At the time of compilation by following O/S specific format in compiled code, and At the time of execution by using the O/S for launching the application. That is, a Language is platform independent if:- It is compiled in a platform mutual manner. Language provides its own runtime environment for the execution of its application. Language provides a comprehensive library for the application developers to develop all types of application without using the O/S concern. OOP’s It is a programming model that simplifies software development and maintenance by providing certain rules which are followed by the designer at the time of designing the software and by the developers at the time of developing and maintaining the software. The major advantage of this model is that we have habituated this model in our day to day life. Basic concepts of OOP’s  Object  Classification  Generalization & Inheritance  Polymorphism  Data Encapsulation Object An object is a discrete (distinct/unique/different) entity that has well-defined attributes and behavior. It can be a physical thing as well as an abstract thing. Classification Objects with common attributes, common behavior and having common relationship with other objects are grouped into logical units called classes. This process is called classification. Classes are used to manage objects. Generalization & Inheritance Through generalization we pick up common attributes and behavior of class. In this way we manage the class by using it.
  • 12. 12 Generalization is the way to achieve abstraction. Polymorphism It is a natural phenomenon which states that in real life one thing can exists in different forms. E.g. - Water can be in three forms. Data Encapsulation (To protect something) It is a process by which we can encapsulate the data and this way we are protecting the data. Oracle Database A database management system (DBMS) is software that controls the storage, organization, and retrieval of data. A DBMS has the following elements: Kernel code This code manages memory and storage for the DBMS. Repository of metadata This repository is usually called a data dictionary. Query language This language enables applications to access the data.
  • 13. 13 Software and Hardware Requirements The Requirements Specification is produced at the culmination of the analysis task. The function and performance allocated to as part of system engineering are refined by establishing a complete information description, a detailed functional description, a representation of system behaviour, an indication of performance requirements and design constraints, appropriate validation criteria, and other information pertinent to requirements. The Introduction of the requirement specification states the goals and objectives of the, describing it in the context of the computer-based system. Actually the introduction may be nothing more than the software scope of the planning document. The information description provides a detailed description of the problem that must solve. Information content, flow, and structure are documented. Hardware, Software and human interfaces are described for external system elements and internal software functions. For this project we need some special type of environment for setup.
  • 14. 14 3 PROJECT BACKGROUND 3.1 1.1 DEFINITION OF PROBLEM In XP, the user story serves the purpose of the problem statement and the specifications. The user story provided by the client was as follows: “You are to design and implement a payroll system that should accept employee hours worked, compute net pay and record all the payroll data for subsequent processing. The system should prepare pay cheques and a payroll ledger, and maintain data on a sequential payroll file. Non-statutory deductions such as union dues and pension plans to be made. “The payroll data are employee number, employee name, pay rate, and union member flag. The year-to-date total should contain earnings, federal tax, pension plan, and union dues” To accomplish these tasks, we had to meet with the client to find out exactly what the program is meant to do. Here are the sub stories that we were able to get from the client: • The program accepts employee hours worked • The program computes net pay • The program record all the payroll data for subsequent processing • The program should prepare pay cheques • The program should prepare a payroll ledger • The program should maintain data on a sequential payroll file • Non-statutory deductions such as union dues and pension plans to be made • Year-to-date total should contain earnings, federal tax, pension plan, and union dues • Payroll data are employee number, employee name, pay rate, and union member flag
  • 15. 15 3.2 1.2 TERMINOLOGY DEFINITION This section gives a definition and explanation of some of the terms used in the project: Employee Data: This is the employee's information in the company. It consists of the employee identification number, employee name, pay rate, pension plan flag, and union member flag. Payroll Records: The payroll records are used to store each month’s hours worked, and the rates for that month. Rates: Rates consists of the percentage that would be deducted from the gross pay depending on union membership status, pension plan, state and federal tax. Each employee can have a unique hourly rate. Payroll Ledger: This is a table that shows the calculated pay of employees and the month in which they earned the pay. The ledger can be filtered by name, identification number, year and month. Hours Worked: This is the number of times that an employee work in a month. The hours worked is used to calculate the pay that an employee will receive for that month. Net Pay: The net pay is the final salary amount that would be given to the employee after all the deductions are subtracted from the gross pay. The deductions include among others taxes, union member dues and pension plan. Gross Pay: The gross pay is the amount that the employee earns before the deductions are subtracted. Deductions: Deductions are made up of taxes, union membership dues, pension plan. They are subtracted from the gross pay to give the net pay which is the employee's final pay for the month. Taxes: The taxes consists of the state dues and federal dues. A percentage of the employee's salary goes to state and country. Union Membership Dues: This is meant for employee's that are union workers in the company. They get to pay a percentage for union dues. An employee can be a union member and later change status to be a non-union member. Pension Plan: Employees that opted to use the pension plan of the company get to pay a particular percentage of their pay in preparation for their retirement. Payslip: These are similar to pay cheques. They allow the employee to have his or her pay printed out on paper so that they can cash it.
  • 16. Year-To-Date Total: The year-to-date total is the summation of all the previous earnings till the month before the current month. 16 3.3 1.3 DEFINITION OF PROJECT OBJECTIVES The purpose of this project is to put into practice what we have learnt so far in our software engineering class. We spent most of the semester studying extreme programming. With extreme programming, the client knows how far he or her software is coming and knows what to except at one particular time or the other. The software is built exactly the way the client wants it to be built. 3.4 1.4 PROJECT DELIVERABLES We met with our client on a few occasions to show our progress so far. In the long run, showing the client part of the finished product in stages helped. There were a few things he brought to our understanding and we were able to change those things. If we had waited till we finished the coding, we would have found it really difficult to correct the errors we found in such a short time. The graphical user interface was acceptable to the client at this stage even though he thought we could improve on it with a little more time. From our project deliverables, the client was able to bring to our understanding that the employees should have different pay rates and that it would be safe (for record purposes) to calculate the employee's year-to-data total salary earnings. These observations were later incorporated into the final deliverable. 3.5 1.5 PROJECT PLAN At the beginning of the project, we scheduled meeting time for the group to discuss on the design and implementation of the software and what language to use in writing the software. We had several meetings to this effect. When then developed a time-line for the project–when we would be releasing the first version for scrutiny and the estimated time we thought we would use for refactoring. We also pondered on a suitable name to give the project. We came up with the name “Piccolo” but it was later changed to “Payroll System” after our meeting with our client. The group was then divided into two pairs that would work on parts of the code. We kept in touch with each other and whenever we had difficulties, we asked each other questions. On some occasions, we had to pretend we were the customer so as to try to figure out some of the things that user would desire, such as the friendliness of the user interface and ease of navigation through the software. We also created a blog so that we could communicate with each other, and also so that our client could track our progress http://project2.wordpress.com
  • 17. When we discovered that we were behind schedule, we met to create a new time-line. We were behind schedule mostly because of our different engagements in school work and other personal issues. Fortunately for the team, we were able to stick to the new time-line and the project was completed in due time. 17 After the major part of the code was completed, we went ahead to lace the code, that is, adding exception handlers which will make the software more robust. We avoided this at the beginning because we did not want to get confused with too many lines of code. The version of the software that has been released can still be improved depending on user response. So far, we have succeeded in completing the desired goal of from the user stories given to us. The beta software has been released about three times and we have been able to get good ideas from the various users on how to improve the functionality, reliability and robustness of the software.
  • 18. 18 CHAPTER 2 DESIGN 3.6 2.1 AN INTRODUCTION TO THE METHODS AND TECHNIQUES ADOPTED WITHIN THE DESIGN The software was built using Visual Basic and it can run on computers that have the .NET Framework installed. We divided the whole project into five main modules: employee data, payroll records, rates, ledger and help. When a data is saved, the data gets written into an XML file. Keeping in line with making the software platform- independent, XML is also a highly platform- independent format for storing data. This is where all the data of the employee is stored, along with each month’s payroll data for the employee. There is also a separate XML file for storing current rates. For an employee data or payroll data to be saved to the file, it has to be serialized. Getting any data from the file will require the data to first be deserialized before it can be used. Serialization and deserialization helped make the data storage very simple. We also used the object-oriented paradigm to code and organize our program. This ensured code reuse, and efficient updating of the code later on.
  • 19. P A Y R O L L S Y S T E M R A T E S L E P A Y S L I P D G E R H E L P 19 3.7 2.2 HIGH-LEVEL ARCHITECTURE DIAGRAM OF THE MAIN COMPONENTS E M P L O Y E E D A T A P A Y R O L L R E C O R D S 3.8 2.3 MORE DETAILED DESCRIPTION OF THE MOST IMPORTANT MODULES OF THE DESIGN The most important modules of the design are the employee data, payroll records and rates. For the employee data module, we had to keep track of the identification number, name, union membership status, pension plan agreement and payroll of an employee. We also had to link these to a general module that will hold all the other employees. There had to be a means of storing all these data, retrieving them, adding data and deleting data without giving any errors. From the employee data module, we had to create a link to the employee's pay records. The payroll records had to contain the number of hours that the employee had worked and in what month and year that the employee worked. We also had to keep in mind the rate with which we would be able to calculate the employee's pay. The payroll records also had to contain the employee's deductions, that is, the deductions from the pension plan, union membership fee and taxes. Obviously, the payroll records also had to contain the gross and net pay of the employee. The picture below shows a brief look at the modules of the original design.
  • 20. 20 We refactored the modules. This had to be done after one first deliverable was given to out client.
  • 21. 21 3.9 2.4 INDICATION OF HOW THE DESIGN FULFILLS THE REQUIREMENTS From the design picture above, it is clear that the software is meant to accept employee data, i.e., the identification number, name, union membership status and pension plan. It should stores these data in a XML file. The software computes the employee payroll depending on the rate and deductions that has been specified for the employee. New employees can always be added to the list of existing employees. There is no limit to the number of employees that the list holds. An employee's data can be modified as well as deleted from the list. Each employee has a link to a pay data in the payroll records module. From the design diagram, we can see that a new payroll data can be added to the employee's list of existing pay data. The payroll calculates the employee's pay depending on the hours worked, the employee's rates and deductions that include pension dues, union membership dues and taxes. Each pay data is stored according to the month and year is was calculated.
  • 22. 22 4 CHAPTER 3 5 IMPLEMETATION Some of the difficulty we faced was in trying to make the desired functions work. At first the coding seemed a little complex, so we went back to the client for clarification and we were able to get a more detailed description of the functions. After studying the IDE we wanted to use, the coding became less complex and we were able to figure out how to go about it. 5.1 3.1 TECHNICAL ISSUES ENCOUNTERED Some of the technical issues and questions we encountered were with the following:  How the program saves data  How errors are detected and the error messages that should appear  What happens when we try overwriting data that already exists on the list  Is the software user friendly?  Is the Graphic User Interface elegant ?  The platform the software should run on We were able to answer and resolve these issues after meetings and discussions with the entire group. 5.2 3.2 SOFTWARE DEVELOPMENT PRACTICES ADOPTED  We used Extreme Programming to build the software.  We adopted the whole team approach in which the client was involved through out the software development.  We used simple designs which were as simple as the current functionality allowed by the system. We first began with very simple design which is incrementally improved.  Continuous integration was also used where each code was compiled run and tested before adding to the system after which the system must meet all the criteria  The most important practice adopted was pair programming. We paired up with members of the team and each team met at various times to code. After each pair coded, they made sure they tested and compiled it, then added it to the main system which they sent to the other group members.
  • 23. 23  We also made sure that we coded according to coding standards, the development codes were consistent and had the same style through out. 5.3 3.3 SCREENSHOTS OF THE FINAL SYSTEM Below are some screenshots of the final program. The main screen shows all the tasks that can be selected and performed by the user. The Employee data displays the names and certain details about the employee.
  • 24. 24 This is the Payroll records which show all the information about the employee a selected employee.
  • 25. The Ledger screen shows a summary of all payrolls, and can be used to sort and filter the data to get a better view of data. 25
  • 26. 26 The payslip is printable and shows the current month’s payment details as well as the year-to-date total. There are various other web pages that are generated from the XML data directly.
  • 27. 27
  • 28. 28 6 CHAPTER 4 7 RESULTS AND EVALUATION 7.1 4.1 ADEQUACY AND COVERAGE The payroll software can perform the following functions • Store employee information • Calculate gross and net pay, and determine tax deductions to be made • Print payslips for each month, showing year-to-date totals • Create and maintain a ledger containing all necessary records of employee payments • Provide the user with adequate help by the user manual with the software 7.2 4.2 EFFICIENCY AND EFFECTIVENESS • The payroll software calculates the total earnings of the employee and automatica l ly updates the employee’s earning to date. • The employers can set different rates for employees. • The software does its calculations in a very clear and concise manner. All calculations are guaranteed accuracy. 7.3 4.3 PRODUCTIVENESS • The payroll software gives the employee the ability to keep track of their earnings by printing their payslip for each month. • It gives the employers the ability to keep records of how much they pay out as salaries by creating a ledger that can be used to filter out results by employee, month, and year. 7.4 4.4 ELEGANCE AND USER-FRIENDLINESS • The different tasks and functions are outlined in a very simple and clear manner for the users. • The help file can be used by the users to know how to use the payroll software. • The interface is very simple and not complicated to allow for easy usage.
  • 29. 29 7.5 4.5 QUALITY ASSURANCE • The software was fully tested to ensure it is relatively error free and that it computes results correctly, including deductions such as taxes. • The software provides a better, time saving and efficient way of keeping track of employees earnings by speeding up calculations, and reducing paperwork by keeping effic ie nt electronic records. 7.6 4.6 CRITICAL EVALUATION • The software overwrites employees information when re-entered. However, employee data is discarded when the employee is deleted from the software. • The software also stores every information provided by the user, but does not store results of calculations. Instead, calculations are done “on the fly” when the user needs to see them on the ledger, the payroll records, or the payslip. • Deductions such as federal tax, state tax and union tax are made according to the set rate provided by the employer, but additional benefits and bonuses are not included in calculations or storage of records. • The payslip not only provides the employee with their earning, it also reflects their year-todate recorded earning. However, there are no reports that explicitly summarize grand totals grouped by employees, months, or years. The ledger can be used to filter out these records.
  • 30. 30 • CHAPTER 5 8 CONCLUSIONS AND FURTHER WORK 8.1 5.1 SUMMARY The main aim of this project was to put what we learnt in our Software engineering class into practice. The payroll system designated to our team allowed us to fully exercise the techniques of XP. The final deliverable was a simple payroll calculator and we were able to learn a new programming language, VB. In addition, we were able to apply the knowledge of OOP learnt in our Java classes to another language thereby giving us a better understanding of OOP. 8.2 5.2 OVERVIEW AND INTERPRETATION OF RESULTS ATTAINED We were able to attain our set objectives, and this helped us gain confidence in writing our own code and our own applications. In addition, the use of serialization was an experimentation to cut down the time taken in designing the front-ends and back-ends of applications separately. With our OOP approach and serialization, we only concentrated on designing the objects/ classes, and then just serialized them on disk. So we did not spend any time on designing how to store data. We also worked as a team, and gained some experience on how professional programmers work in the industry.
  • 31. 31 8.3 5.3 RECOMMENDATIONS ON FUTURE IMPROVEMENT There is always room for imporvement, and the software we created can also be imporved. This is especially because we had to create it within a limited time. With more time, the software can be improved to include security and different types of users. This would be the first step in making the software network-enabled, and eventually web-enabled. This was our original after-thought to programming the software, and we had chosen XML. In addition, the software can also be improved in terms of the calculations it can do, and more flexiblility in the rates used in calculations per employee.
  • 32. 32 9 REFERENCES Horton, Ivor Java 2 SDK 1.4 Edition Wiley Publishing Inc., Indianapolis 2003 Millspaugh, Anita C. and Julia Case Bradley Programming in Visual Basic 6.0 Update Edition McGraw-Hill Irwin, Boston 2002. Odinma, Augustine Software Engineering I SEN 261 Lecture Notes April/Spring 2007 ABTI-American University of Nigeria Palmer, Daniel W. and Daniel H. Steinberg Extreme Software Engineering A hands-on approach Pearson – Prentice Hall, New Jersey 2004
  • 33. 33