Online Employee Leave Management System Capstone Project Document
Online Employee Leave Management System Capstone Project Document
Table of Contents
Background of the Study
Through the years, the web has vastly modified the way in which individuals use computer systems and talk immediately. Many Web phrases have turn out to be a part of individuals on a regular basis language and e-mail has added an entirely new means by which individuals can talk. By the flip of the century, data, together with the access to the internet, would be the foundation for private, financial, and political development.
The best way to manage your employee leave and absence is to create and maintain an effective leave management where every process is automated. It will assist you to set up request and approval procedures, outline and monitor employees’ schedules and see when leave or absence has occurred. That is in response to Leavewizard, (2012). In accordance with Bille( 2013) digital processing of leave and travel purposes eliminating the necessity to use plenty of paper, a move that can reduce firm funds. The manager benefits from being able to check on data touching on staff leaves and vacations whenever they want to. The manager can know which staff members are on leave, the ones about to go on leave and the leave time that an individual employee has applied for. The system has been made in such a way it is basic and can be learned and used by everyone irrespective of the area in the company that they work in and without any hardships.
The system has three modules:
logs in and applies for the leave
On this module Head of the department may have permissions to take care of information of each school member of their division. HOD can view information within the type of studies and get it within the type of print out. Studies might be displayed primarily based on day, month. HOD can approve leave through this application and he can view leaves data of each particular person. On this module, HOD can simply handle lessons schedule for that day.
Will be responsible for maintaining all the employee details, employee leaves record details, HOD leaves record details in the database.
Within the current system, Staff finds it difficult to use for leaves and holidays, particularly people who have duties that require a selected variety of individuals to function which is a really difficult process.
First, there must be an approach to decide if a selected worker has legitimate leave days to use.
Second, leaves must be scheduled in an approach that the conventional operations of the business aren’t impaired.
Lastly, the personal views and emotions of the worker that’s taking the leave in addition to the ambiance within the division she or he is leaving must be thought of to foster cooperation and goodwill as an alternative of anger and conflicts.
This Software program Requirements Specification offers a whole description of all of the capabilities and specs of the SST Online Leave Management System. The expected audience of this document is the business development manager BA, Service Delivery and Support Manager, including members of the organization who will use this system.
Anyone who has applied for leave will know the frustration of form-filling – and waiting as the hard copy travels up and down the approval hierarchy. This brilliant electronic leave management software with its powerful features, cuts out the physical movements and enables HR to have a bird’s eye view of the leave situation in the company, and make decisive, on-the-spot approval decisions.
There are many advantages of utilizing a web-based leave tracking system:
Eliminates paper-based leave application forms
Leave applications can be submitted online
Leave applications can be approved online
Both the leave applicant as well as the approver can view the remaining leave days as well as historical leave applications
Employees can easily:
Apply for leaves online whereupon submission; the supervisor will be notified via email that there is a leave to approve.
View the number of remaining leave days
View historical leave is taken
HR administrators can easily:
Define day offs
Assign available leave days for each employee
View a list of employees going on leave within a specified time period
Define leave types such as annual leave, unpaid leave, compassionate leave, etc.
Statement of Problem
In the existing paperwork related to leaving management. Leaves are maintained using the attendance register for the staff. An employee needs to submit their leaves manually to their respective authorities or department, this increases paperwork and maintaining the paperwork becomes a tedious exercise.
Employees find it difficult to apply for leaves and vacations, especially those that have tasks that require a specific number of people to operate which is a very complicated process. First of all, there should be a way to determine if a specific employee has legitimate leave days to use. Second, leaves should be scheduled in a way that the normal operations of the business are not impaired. Finally, the personal views and emotions of the employee that is taking the leave as well as the atmosphere in the department he or she is leaving should be considered to foster cooperation and goodwill instead of anger and conflicts.
The main objective of the proposed system is to decrease the paperwork, Collision of dates with other employees under the same department, Changes in the work schedule and late payment of leave allowances due to wrong calculation of leave balances and help in easier record keeping by having a centralized database system where data will be maintained. The system will keep the records, decrease paperwork and reduce chances of data loss. The system will allow employees and their managers to manage leaves and replacements for better scheduling of workload. . Research has found out that getting leaves in time is a major employee satisfaction factor and employees who do not take enough leave suffer from stress or employees who take too much leave are careless towards job both have a negative impact on their performance.
Objectives of the Study
The objective of this project is to develop an online leave management system that will allow the employees to apply for leave anywhere, anytime as long as they can access the internet.
The following are the project objectives for the Leave Management System.
Users will check the number of days remaining to complete their leave.
Automation of the leave management system.
Will allow users to check for feedback after the application has been made.
Allow users to check if he/she is eligible to get the leave.
The system should allow the employee to create accounts with the system.
The system will allow employees who have created accounts to log into the system, using their SSN and passwords.
Significance of the Research
This system will increase data integrity in that only right person goes for the leave at the time that is allocated to him/her. It will offer a better way of giving leave to the employees in that leave will be given to one employee at a time. It will be able to keep records of a particular employee who is on leave in order to avoid confusion of not knowing the particular employee who is on leave and for what reasons. This system will eliminate paperwork and reduce delay by enabling employees and supervisors to stop applications simply by entering the dates and type of leave being sought after the employee has received his or her entitlements.
Scope and Limitations
The system is an online leave management system for leave applications review process usable in any organization and customizable to be used in different business environments. A dynamic database will be used to hold all leave applications details and keep data in a way that it can be viewed by management to make prompt informed decisions on approvals and staffing levels. A simple interface will be in place making it easy and simple to use for all employees and management. A comprehensive documentation to assist in the maintenance, customizing and adding more modules to the system.
The system will only be used with employees who can get access to the internet because the system will be online.
The organization will also be forced to offer training to those employees who are computer illiterate thus adding some expenses to the organization.
The mobile platform is an operating system for mobile devices. Some of the mobile devices operating systems are iOS, Bada, Android, Windows, and Blackberry, etc.
What is Andriod?
Android is a software pile for mobile devices which includes an operating system, middleware components, and other key applications. The Android SDK facilitates the APIs and tools needed to start developing applications on the Android platform. Developing applications in Android the programming language used is Java programming language.
These are some of the Android components which are the major means by which Android application runs successfully without any interruptions.
Android activity is represented by each individual screen within an Android application. The user can interact with activity by performing some actions which involve visual components. Example of an activity can be considered as a single webpage in a website. Each activity performs its operations independently of one another and all the activities in the application are an extension from the activity class.
Service is another component in Android application which performs its actions in the background to accomplish actions which take a long time to run or remote processes tasks. Service is a component which does not possess a user interface. Consider an example where service can play music in the background when the user is performing some operation in other application like checking an email or texting a message using SMS application or retrieve some information from the network without interrupting user’s actions within an activity.
The intent is an application which initiates the message passing between the activities. Using intents messages can be broadcast throughout the system or if it can also pass messages to a target activity or service, which states intended action requested by the user or activity. Specifying an Intent-filter allows a user to state how a particular activity in an application should be called.
A content provider is a component which maintains a collective group of application data. All the application information or data can be stored in an SQLite database or file system, on remote web servers or on any storage location where the application can access the data. Using the content provider, other applications can process its queries and other related activities. This component mostly behaves like a database where users are given flexibility to edit its contents, query information needed, delete some data when not needed. The only difference between database and content provider is that using content provider users can store its data in different ways.
This component responds to system-wide broadcast declarations. Any application which needs to receive or respond to global activities like SMS application, receiving an incoming call, it should have been registered as a broadcast receiver. Most of the broadcasts come from the system for example, we can consider a broadcast statement like when battery is low it shows red colored battery symbol in the phone, when screen lock button is pressed the display will be turned off, when SMS is received its shows a message symbol at the top of the notification bar. Broadcast receivers don’t possess user interface for broadcasting notifications instead they alert the users by showing the status of the application in the notification bar.
All the Android packages by default come with a bunch of core applications which includes an SMS application, Email application, calendar, maps, browser, contacts, GPS and others. All these applications are developed using the Java programming language.
The Android SDK is Software Development Kit which allows developers to develop mobile applications in Android platform. Generally, these tools are categorized into two groups, they are SDK tools and platform tools. Among these SDK tools are independent of the platform and these are mandatory for any mobile application which is developed in the Android platform. The second most common tools are Platform tools which are modified or personalized to provide support to the latest Android platform features.
Android application Features
Android offers several applications features out of which the following mentioned features are the most effective and useful characteristics of Android applications:
The Dalvik Virtual Machine has been upgraded to improve developing mobile devices applications framework enabling reuse and replacement of components.
GSM the Global System for mobile communications kind of telephony has been introduced.
A productive application framework has been developed which enables the application components to be reused and replaced.
Open source web kit has been integrated into the browser.
Custom 2D and 3D graphics libraries came to the market which is based on Open GL specification.
Structured data storage is supported by using the SQLite database.
All the audio, video and image formats are supported in the new Android versions like MPEG, MP3, JPG, GIF, PNG, and ING.
Hardware supportive environment like Wifi, 3G, 4G, EDGE connectivity and Bluetooth are improved in the Android platform.
Development environment has been made popular by introducing device emulator feature Camera, GPS, compass, and accelerometer (hardware dependent).
All other important features include an accelerometer, camera, GPS, several different tools which help in debugging the application, memory management, and performance monitoring.
Setting Up the Android Environment
Android Development environment can be set in any machine using Eclipse IDE. To develop an Android application the following tools must be installed in Eclipse.
Online Employee Leave Management System
The Methodology that is going to be adopted to develop the system is the V-Model.
This methodology is widely used today, especially in the defense industry. The software development life cycle will allow the process to have testing and coding as a parallel activity which enables the changes to be made more dynamically. The V-Model is originally developed from the waterfall process model. It is a classic software development model.
This model has four main phases which are requirements, specification, design, and implementation. This model also encapsulates the steps in the verification and validation phases for each step in the SDLC. Implementation of modules is tested by unit testing, system design is tested by integration testing, system specification is tested by system testing and finally, acceptance testing verifies the requirements met.
One of the interesting characteristics of the V model is the ability to move backward which is it can revert to the analysis stage even though it is halfway through the implementation stage.
This will provide provider with the cushion if any error occurred V-model also allows the testing and coding process to be done parallel making it more dynamic than the waterfall model. The figure below shows the architecture of the V-model
Diagram of the V-Model
The various phases of the V-model are as follows;
Requirements like BRS and SRS begin the life cycle model just like the waterfall model. But, in this model, before the development started, a system test plan is created. The test plan focuses on meeting the functionality specified in the requirement gathering.
The High-Level Design (HLD) phase focuses on a system architecture and design. It provides an overview of the solution, platform, system, product and services/processes. An integration plan is created in this phase as well in order to test the pieces of the software systems ability to work together.
The low-level design (LLD) phase is where the actual software components are designed. It defines the actual logic for each and every component of the system. Class diagram with all the methods and relation between classes come under LLD. Component tests are created in this phase as well.
The implementation phase is, again, where all coding takes place. Once coding is complete, the path of execution continues up the right side of the V where the test plans developed earlier are now put to use
Coding: this is at the bottom of the V- shape model. Module design is converted into a code by developers.
Advantages of V-model:
Simple and easy to use.
Testing activities like planning, test designing happens well before coding. This saves a lot of time. Hence higher chances of success over the waterfall model.
Proactive defect tracking-that is defecting are found at the early stage.
Avoids the downward flow of the defects.
Works well for small projects where requirements are easily understood.
Disadvantages of v-model:
Very rigid and least flexible
The software is developed during the implementation phase, so no early prototype of the software is produced.
When to use the v-model:
The v-shaped model should be used for small to medium-sized projects where requirements are clearly defined and fixed.
The v-shaped model should be chosen when ample technical resources are available with needed technical expertise.
In this section, the researcher studied the existing system to establish this weak and strong points.
The information acquired from this study gave the basis for the design of the new system. A number of steps, procedures, and tools were employed as shown below:
Primary data collection techniques.
It comprises of firsthand information collected by the researcher in this case observations and interviews were used to collect primary data.
During the study the researcher conducted face to face with few customers, employees, and management in order to get more insight into the system and its implementation interviews are often more exploratory in nature, an allows for more flexibility since the interviewees have high response rate than written questionnaire and it is also suitable for use with both literate and illiterate. Examples of questions asked during the interview are:
How is information stored after getting it from the customers?
How is this information accessed in case it is required?
How many customers visit the gym per day?
What happens after the customers walk in?
Types of interviews
Structured interviews– based on standard question written by hand that enabled the interviewer gain answers based on specific findings
Unstructured interviews– using rapport building, this involved conversation that made it easy to obtain the feeling of the people and firsthand information. Some questions were not predetermined and were asked impulsively.
Advantages of using an interview
If the respondent lacks reading skills to answer a questionnaire.
Are useful for untangling complex topics.
The interviewer can probe deeper into response given by an interviewee
Interviews produce a higher response rate.
Disadvantages of using an interview
The interviewer can affect the data if he/she is not consistent.
It is very time-consuming.
It is not used for a large number of people.
The interviewer may be biased and ask close questions.
This technique was used to gather accurate information about how the current system operates and its processes from the organization. This involves systematically watching and recording the behavior and characteristics of operations and processes. Although the method is time-consuming, it gives more detailed and context related information and one can adapt to events as they occur.
Secondary data collection techniques
This kind of data was obtained from books, journals and various materials from the internet. It is helpful in providing a baseline with which the collected primary data results can be compared to.
Secondary data has a pre-established degree of validity and reliability enabling the researchers to make a comprehensive analysis of the study.
This will be used to indicate the time by which the project is expected to be completed. It has been summarized according to the number of days.