Вы находитесь на странице: 1из 54

ABSTRACT

The project is titled as EMPCORE. It is a cloud-based SAAS (software as a server) solution to


facilitated client companies to manage its employees HR performance and day to day activities
through a simple portal.
It is very essential for a company to manage the activities and performance of employees. This
system is helpful for the interaction among the employees and HR and gets regularly updated about
the company which will help in developing an employees performance.
This system has two end users, the admin and the users. With this system, the employees will be
able to log in to this system and on the basis of this, his regular attendance and more things can be
managed such as suggestions, leaves, upcoming events, and notices by the admin with some
restrictions for the user. With each entry of an employee the regarding database will be updated and
as well as it will be displayed on the dashboard. The admin have all the rights to update or view
each and every information of the employee.

CHAPTER-1
INTRODUCTION

1.1 Project Definition


EMPCORE is a solution to facilitate client companies to manage its employees HR, performance
and day to day activities through a simple portal. It can provide special advantages to the employees
so that they can be updated time to time about the company profile.
This is cloud based SAAS (Software as a Service) which is a way of delivering Applications over
the internet-as a service. Instead of installing and maintaining software, it can be simply accessed
via the internet, freeing users from complex software and hardware management. Improved access
to data from any networked device while making it easier to manage privileges, monitor data use,
and ensure everyone sees the same information at the same time.
EMPCORE contains a dashboard to display all the port lets in arranged manner. Dashboard
view is restricted for users in some cases so that the privacy of all the employees can be maintained.
Every employee has the right to access this software on his system via the network provided by the
company and a unique login ID and password is given to every user separately so that the security
factor is maintained.
Attendance Portlet is used to manage the attendance of the employees. When employee
logged in to the system, his logged in time will be noted, firstly according to the logged in time the
present status of his attendance is stored in the database but when he logged out from the system
them logged out time will be noted and now according to the logged out time the present status will
be updated for that particular day. Admin has all the rights to manage this Portlet. Employee can
only view the timings and present status of the employees including himself.
Suggestion Board Portlet is used to mention the suggestions or complaints given by
employees of the company. Here is the option of like and dislike for every suggestion so that
popularity of a suggestion can be seen, which shows the interest of the employees towards them and
helps admin for paying attention towards the required changes. Admin can manage all things related
to suggestions like if admin feels that a particular suggestion can create any problem for his
company policies then he can delete the suggestion without any permission. He can also view most
liked and disliked suggestions which helps to filter the data. Users can only see all the suggestions

and can like and dislike the suggestions of all other employees. For privacy the employees have
limited rights that they can update only those suggestions which are given by them.
Leave Board Portlet is used to manage the leaves of the employees. An employee can apply for his
leave with the reason and the duration in this Portlet, admin has the right to approve or disapprove
the leave on the basis of specific criteria. According to the action of admin the status of leave will be
updated on the dashboard so that the employee can see his leave status.
User Management Portlet is used to manage the employee details of the company like
joining day, birth date, contact number etc. The employees can only view the details on the
dashboard including some restrictions. The rights of the Admin are categorized into two parts:

ADD USER: only Admin has the right to add the new employees on the basis of the
information given by the employee.

MANAGE USER: Admin can manage all the users on the basis of the results those came by
the queries input in the search box.

Notice Board Portlet is used to display all the notices like any announcement, late coming issues,
any event news. The user can only see the notices and the regarding dates and the admin have the
right to update and manage them.

1.2 Existing System


The existing system is manual entry of keeping the details of the employees which are currently
working in the company and as well as the employees who left the company. And it is very difficult
to enter each and every detail of thousands of employees. This system is required to maintain the
records, update the records of the employees. In terms of security purposes also the existing system
requires a lot of effort to maintain the security of the records of the employees. It is also efficient in
time consumption, as to maintain the record manually it would take lot of time. Another factor that
takes into account that it is the possibility of errors and which require verification and checking of
data related to various operations manually. The limitation of existing system is that it is not at all
personalized. It cannot be used for personal and quick reference. Even the other staff member can
make quick entries if the responsible person is not present.

The whole process of updating, deletion and insertion of records are done manually till date.
Now, it has become easy to maintain the records and manage all the activities with the help of
online system which is discussed in the next section.
1.3Proposed System
The modern computerized system is developed with the aim to overcome the drawbacks of the
existing system. The proposed system has got many advantages. Admin as well as all employees of
the company can use this system very easily. The new system is very personalized. This software is
made in such a manner that the new employees in the company can understand and can operate this
software easily.
Access to all important details are handled by the admin only. The advantages of proposed
system are that security is maintained in the new system. Securities for all important data are
maintained confidentially.

CHAPTER-2
LANGUAGE INTRODUCTION

2.1 PHP Introduction


PHP started out as a small open source project that evolved as more and more people found out how
useful it was. Father of PHP RasmusLerdorf unleashed the first version of PHP way back in 1994.
PHP is a recursive acronym for "PHP: Hypertext Pre-processor".
PHP is a server side scripting language that is embedded in HTML. It is used to manage dynamic
content, databases, session tracking, even build entire e-commerce sites. It is integrated with a
number of popular databases, including MySQL, PostgreSQL, Oracle, Sybase, Informix, and
Microsoft SQL Server. PHP is pleasingly zippy in its execution, especially when compiled as an
Apache module on the UNIX side. The MySQL server, once started, executes even very complex
queries with huge result sets in record-setting time.
PHP supports a large number of major protocols such as POP3, IMAP, and LDAP. PHP4
added support for Java and distributed object architectures (COM and CORBA), making niter
development a possibility for the first time.

PHP is forgiving: PHP language tries to be as forgiving as possible.

PHP Syntax is C-Like.

PHP runs at server.

Extension : .PHP

Initially the name of PHP was : Personal Home Page

2.2 Purpose

PHP performs system functions, i.e. from files on a system it can create, open, read, write,
and close them.

PHP can handle forms, i.e. gather data from files, save data to a file, thru email you can send
data, return data to the user.

You add, delete, and modify elements within your database through PHP.

Access cookies variables and set cookies.

Using PHP, you can restrict users to access some pages of your website.

It can encrypt data.

Dynamic web page creation.

2.3 Advantages

Open source

Platform independent ( e.g. : Linux, Unix, MAC, Windows)

It can be run at any server (e.g.: Apache, IIS).

It can be associated with any database (e.g.: Oracle, Microsoft Access, and MySQL).

2.4 Features
PHP language revolves around the central theme of practicality. PHP is about providing the
programmer with the necessary tools to get the job done in a quick and efficient fashion. Five
important characteristics make PHPs practical nature possible:

Familiarity

Security

Efficiency

Flexibility

Free

2.4.1 Familiarity
Programmers from many backgrounds will find themselves already accustomed to the PHP
language. Many of the languages constructs are borrowed from C and Perl, and in many cases PHP
code is almost indistinguishable from that found in the typical C or Pascal program. This minimizes
the learning curve considerably.

2.4.2 Simplicity
A PHP script can consist of 10,000 lines or one line: whatever you need to get the job done. There is
no need to include libraries, special compilation directives, or anything of the sort. The PHP engine
simply begins executing the code after the first escape sequence (). If the code is syntactically
correct, it will be executed exactly as it is displayed.
2.4.3 Efficiency
Efficiency is an extremely important consideration for working in a multiuser environment such as
the WWW. PHP 4.0 introduced resource allocation mechanisms and more pronounced support for
object-oriented programming, in addition to session management features. Reference counting has
also been introduced in the latest version, eliminating unnecessary memory allocation.

2.4.4 Security
PHP provides developers and administrators with a flexible and efficient set of security safeguards.
These safeguards can be divided into two frames of reference: system level and application level.

System-Level Security Safeguards :


PHPfurnishes a number of security mechanisms that administrators can manipulate,

providing for the maximum amount of freedom and security when PHP is properly configured. PHP
can be run in what is known as safe mode, which can limit users attempts to exploit the PHP
implementation in many important ways.
Limits can also be placed on maximum execution time and memory usage, which if not
controlled can have adverse effects on server performance. Much as with a cgi-bin folder,
administrators can also place restrictions on the locations in which users can view and execute PHP
scripts and use PHP scripts to view guarded server information, such as the password file.

Application-Level Security Safeguards :

Several trusted data encryption options are supported in PHPs predefined function set. PHP is also
compatible with many third-party applications, allowing for easy-integration with secure
ecommerce technologies. Another advantage is that the PHP source code is not viewable through
the browser because the script is completely parsed before it is sent back to the requesting user. This

benefit of PHPs server-side architecture prevents the loss of creative scripts to users at least
knowledgeable enough to execute a View Source.

2.4.5 Flexibility
Because PHP is an embedded language, it is extremely flexible towards meeting the needs of the
developer. Although PHP is generally touted as being used in conjunction solely with HTML, it can
also be integrated alongside languages like JavaScript, WML, XML, and many others. Additionally,
as with most other mainstream languages, wisely planned PHP applications can be easily expanded
as needed.
Browser dependency is not an issue because PHP scripts are compiled entirely on the server side
before being sent to the user. In fact, PHP scripts can be sent to just about any kind of device
containing a browser, including cell phones, personal digital assistant (PDA) devices, pagers,
laptops, not to mention the traditional PC. People who want to develop shell-based applications can
also execute PHP from the command line.

2.4.6 Free
The open source development strategy has gained considerable notoriety in the software industry.
The prospect of releasing source code to the masses has resulted in undeniably positive outcomes
for many projects, perhaps most notably Linux, although the success of the Apache project has
certainly been a major contributor in proving the validity of the open source ideal. The same holds
true for the developmental history of PHP, as users worldwide have been a huge factor in the
advancement of the PHP project.
PHPs embracing of this open source strategy result in great performance gains for users,
and the code is available free of charge. Additionally, an extremely receptive usercommunity
numbering in the thousands acts as customer support, providing answers to even the most arcane
questions in popular online discussion groups.

CHAPTER-3
TECHNOLOGY SPECIFICATION

3.1 Languages
3.1.1HTML:
Hyper Text Mark-up Language (HTML) is the main mark-up language for displaying web pages
and other information that can be displayed in a web browser. HTML is written in the form of
HTML elements consisting of tags enclosed in angle brackets (like <html>), within the web page
content. HTML tags most commonly come in pairs like <h1> and </h1>, although some tags,
known as empty elements, are unpaired, for example <img>. The first tag in a pair is the start tag,
the second tag is the end tag (they are also called opening tags and closing tags) content. The
purpose of a web browser is to read HTML documents and compose them into visible or audible
web pages. The browser does not display the HTML tags, but uses the tags to interpret the content
of the page.
HTML elements form the building blocks of all websites. HTML allows images and objects
to be embedded and can be used to create interactive forms. It provides a means to create structured
documents by denoting structural semantics for text such as headings, paragraphs, lists, links, quotes
and other items. It can embed scripts in languages such as JavaScript which affect the behavior of
HTML web pages. Web browsers can also refer to Cascading Style Sheets (CSS) to define the
appearance and layout of text and other material. The W3C, maintainer of both the HTML and the
CSS standards, encourages the use of CSS over explicitly presentational HTML mark-up. HTML
documents are composed entirely of HTML elements that, in their most general form have three
components: a pair of tags, a "start tag" and "end tag"; some attributes within the start tag; and
finally, any textual and graphical content between the start and end tags, perhaps including other
nested elements.
HTML element is everything between and including the start and end tags. Each tag is
enclosed in angle brackets. The general form of an HTML element is therefore: <tag
attribute1="value1"attribute2="value2">content</tag>. Some HTML elements are defined as empty
elements and take the form <tag attribute1="value1" attribute2="value2" >. Empty elements may

enclose no content, for instance, the BR tag or the inline IMG tag. The name of an HTML element
is the name used in the tags. Note that the end tag's name is preceded by a slash character, "/", and
that in empty elements the end tag is neither required nor allowed.

3.1.2 CSS (Cascading Style Sheets):


Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation
semantics (the look and formatting) of a document written in a mark-up language. Its most
common application is to style web pages written in HTML and XHTML, but the language can also
be applied to any kind of XML document, including plain XML, SVG and XUL.
CSS is designed primarily to enable the separation of document content (written in HTML
or a similar mark-up language) from document presentation, including elements such as the layout,
colors, and fonts. This separation can improve content accessibility, provide more flexibility and
control in the specification of presentation characteristics, enable multiple pages to share formatting,
and reduce complexity and repetition in the structural content (such as by allowing for table less
web design). CSS can also allow the same mark-up page to be presented in different styles for
different rendering methods, such as on-screen, in print, by voice (when read out by a speech-based
browser or screen reader) and on Braille-based, tactile devices. It can also be used to allow the web
page to display differently depending on the screen size or device on which it is being viewed.
While the author of a document typically links that document to a CSS style sheet, readers can use a
different style sheet, perhaps one on their own computer, to override the one the author has
specified. In this so-called cascade, priorities or weights are calculated and assigned to rules, so that
the results are predictable. A style sheet consists of a list of rules. Each rule or rule-set consists of
one or more selectors, and a declaration block. A declaration-block consists of a list of declarations
in braces. Each declaration itself consists of a property, a colon (:), and a value. If there are multiple
declarations in a block, a semi-colon (;) must be inserted to separate each declaration. In CSS,
selectors are used to declare which part of the mark-up a style applies to, a kind of match
expression. Selectors may apply to all elements of a specific type, to elements specified by attribute,
or to elements depending on how they are placed relative to, or nested within, others in the
document tree.

10

3.1.3 JAVA SCRIPT:


JavaScript (sometimes abbreviated JS) is a prototype-based scripting language that is dynamic,
weakly typed and has first-class functions. It is a multi-paradigm language, supporting objectoriented, imperative, and functional programming styles. JavaScript was formalized in the ECMA
Script language standard and is primarily used in the form of client side JavaScript, implemented as
part of a Web browser in order to give enhanced user interfaces and dynamic websites. This enables
programmatic access to computational objects within a host environment. JavaScript's use in
applications outside Web pages for example in PDF documents, site-specific browsers, and
desktop widgets is also significant. Newer and faster JavaScript VMs and frameworks built upon
them (notably Node.js) have also increased the popularity of JavaScript for server-side web
applications. JavaScript uses syntax influenced by that of C. JavaScript copies many names and
naming conventions from Java, but the two languages are otherwise unrelated and have very
different semantics. The key design principles within JavaScript are taken from the self and Scheme
programming languages.

3.1.4 Use in web pages:


The most common use of JavaScript is to write functions that are embedded in or included from
HTML pages and that interact with the Document Object Model (DOM) of the page.
Some simple examples of this usage are:
Loading new page content or submitting data to the server via AJAX without reloading the page
(for example, a social network might allow the user to post status updates without leaving the
page)
Animation of page elements, fading them in and out, resizing them, moving them, etc.
Interactive content, for example games, and playing audio and video. Validating input values of a
web form to make sure that they are acceptable before being submitted to the server.

11

Transmitting information about the user's reading habits and browsing activities to various
websites. Web pages frequently do this for web analytics, ad tracking, personalization or other
purposes.
Because JavaScript code can run locally in a user's browser (rather than on a remote server), the
browser can respond to user actions quickly, making an application more responsive. Furthermore,
JavaScript code can detect user actions which HTML alone cannot, such as individual keystrokes.
Applications such as Gmail take advantage of this: much of the user interface logic is written in
JavaScript, and JavaScript dispatches requests for information (such as the content of an e-mail
message) to the server.
A JavaScript engine (also known as JavaScript interpreter or JavaScript implementation) is
an interpreter that interprets JavaScript source code and executes the script accordingly. The first
JavaScript engine was created by Brendan Each at Netscape Communications Corporation, for the
Netscape Navigator web browser. The engine, code-named Spider Monkey, is implemented in C. It
has since been updated (in JavaScript 1.5) to conform to ECMA-262 Edition 3. The Rhino engine,
created primarily by Norris Boyd (formerly of Netscape; now at Google) is a JavaScript
implementation in Java. Rhino, like Spider Monkey, is ECMA-262 Edition 3 compliant. A web
browser is by far the most common host environment for JavaScript. Web browsers typically use the
public API to create "host objects" responsible for reflecting the Document Object Model (DOM)
into JavaScript. The web server is another common application of the engine. A JavaScript
webserver would expose host objects representing an HTTP request and response objects, which a
JavaScript program could then manipulate to dynamically generate web pages. Because JavaScript
is the only language that the most popular browsers share support for, it has become a target
language for many frameworks in other languages, even though JavaScript was never intended to be
such a language. Despite the performance limitations inherent to its dynamic nature, the increasing
speed of JavaScript engines has made the language a surprisingly feasible compilation target.

12

3.2 Tools Used


3.2.1 Application Architecture PHP, XAMPP
a) PHP PHP is an open-source server-side scripting language designed for Web development to produce
dynamic web pages. It is one of the first developed server-side scripting languages to be embedded
into an HTML source document rather than calling an external file to process data. The code is
interpreted by a Web server with a PHP processor module which generates the resulting web page.
It has also evolved to include a command-line interface capability and can be used in standalone
graphical applications.
b) XAMPP XAMPP is an integrated server package of Apache, MySQL, PHP and Perl that all run from a
removable drive. Everything is pre-configured and ready to go just by unzipping or installing it.
Self-contained, multiple instances of XAMPP can exist on a single computer and any given instance
can be copied from one computer to another. It is offered in both a full, standard version and a
smaller version.
3.2.2 Web server APACHE
Apache is developed and maintained by an open community of developers under the auspices of the
Apache software foundation. The software is available for a wide variety of operating systems, such
as UNIX, Linux, Solaris, OS X, and Microsoft Windows.
3.2.3. Database platform MySQL
MySQL database is a way of organizing a group of tables. If you were going to create a bunch of
different tables that shared a common theme, you would group them into one database to make the
management process easier. MySQL is the world's most used open source relational database
management system (RDBMS) that runs as a server providing multi-user access to a number of
databases.

13

There are three types of MySQL commands:

DDL-

Data Definition Language (DDL) statements are used to define the database structure or schema.
Data Definition Language understanding with database schemas and describes how the data should
consist in the database, therefore language statements like CREATE TABLE or ALTER TABLE
belongs to the DDL. DDL is about "metadata".
DDL includes commands such as CREATE, ALTER and DROP statements.DDL is used to
CREATE, ALTER OR DROP the database objects (Table, Views, and Users).
Data Definition Language (DDL) are used different statements
CREATE - to create objects in the database
ALTER - alters the structure of the database
DROP - delete objects from the database
TRUNCATE - remove all records from a table, including all spaces allocated for the records are
removed
COMMENT - add comments to the data dictionary
RENAME - rename an object
CREATE TABLE
ALTER TABLE
1. ADD
2. MODIFY
COMMENT - add comments to the data dictionary
RENAME - rename a table

DML-

Data Manipulation Language (DML) statements are used for managing data within schema objects
DML deals with data manipulation, and therefore includes most common SQL statements such
SELECT, INSERT, etc. DML allows to add / modify / delete data itself.

14

DML is used to manipulate with the existing data in the database objects (insert, select, update,
delete).
DML Commands:
1. INSERT
2. SELECT
3. UPDATE
4. DELETE

DCL-

DCL is the abstract of Data Control Language. Data Control Language includes commands such as
GRANT, and concerns with rights, permissions and other controls of the database system. DCL is
used to grant / revoke permissions on databases and their contents. DCL is simple, but MySQL
permissions are a bit complex. DCL is about security. DCL is used to control the database
transaction.DCL statement allows you to control who has access to specific object in your database.
GRANT ,REVOKE

15

CHAPTER-4
PROJECT ANALYSIS

4.1 Purpose
EMPCORE helps the administrator of the company to use database for storing the data. The team
leaders, employees and staff members can use this to see their regular attendance status, all present
suggestions and notices and other activities of the company so that the company can be up to date
which helps in its development.
4.2 Scope
EMPCORE is a heaven for the company administrator and employees. It contains all the basic
requirements for them. Some of the real examples are HTML, CSS, and PHP etc. Since this
software in bulk quantities, hence they require some sort of software with proper database for
handling the records and a simple user interface to make its handling easy. We hereby present
software that allows the administrator to maintain records, update all the system and create a user
friendly interface for convenience.
Since, success of EMPCORE depends on its proper management, a balance has to be maintained
between income generated and cost incurred. This software helps in those areas by providing a
proper balance and thus ensuring a proper administration for the software.

4.3 Features

Software as a service
Provide all the information about the employees to the admin and other employees.
Day to day activity updating
User friendly interface

16

4.4 Planning
The planning of any project depicts and conveys in which order from core to the final processing of
the project is carried out. The final expected result shows that the project is successfully planned.
Software project managers take the overall responsibility of steering a project to success.
This surely is a very hazy job description. But, it is very difficult to objectively describe the job
responsibilities of a project manager.
Dividing the whole project in modules and separately functioning on them finally results in
the ease and successful implementation of the work to be carried out.
One of the major parts is the study of feasibility study. The feasibility study consists of Technical,
Economical, and Behavioral.
In the EMPCORE the planning is carried out by dividing the whole functioning in various
working modules.

4.4.1 Work Breakdown Structure


Work breakdown structure is used to decompose a given task set recursively into small activities.
WBS provides a notation for representing the major tasks needed to be carried out in order to solve
a problem. The root of the tree is labeled by the problem name. Each node of the tree is broken
down into smaller activities that are made the children of the node. Each activity is recursively
decomposed into smaller sub-activities until at the leaf level; the activities require approx. two
weeks to develop. If a task is broken down into a large number of very small activities, these can be
distributed to a large number of engineers. If the activity ordering permits, the solutions to these can
be carried out independently. Thus, it becomes possible to develop the product faster.
The following figure represents the WBS of application software:

17

Figure 4.1: WORK BREAKDOWN STRUCTURE


4.5 Overview
EMPCORE has following stages:

Login Panel

Admin Panel

User Panel

4.5.1 Login Panel


The company administrator and employees are provided separate and unique login id and password
by which they can start the software.
4.5.2 Admin Panel
Admin panel will have the features available like Registration, searching, updating, deletion of the
details of employee and activities. Panel will also show the required details on the dashboard.
4.5.3 User Panel
User panel will have the features available like adding suggestion, applying leave and can view the
notices and attendance status.

18

4.5.4 Portlet
EMPCORE has following portlets:

Attendance Portlet

Suggestion Board Portlet

Leave Board Portlet

User Management Portlet

Company Notice Board Portlet

4.5.4.1 Attendance Portlet

Employee attendance will be managed by this Portlet.

When employee logged in to this system then he will mark as present and logged in time
will be noted. When he logged out from this dashboard then logged out time will noted.

IP address will be bound to the login and logout to avoid fake entry.

Admin can get different basic reports.

4.5.4.2 Suggestion Board Portlet

Suggestion Board is common place for all the company employees. Employee can put their
notes (suggestions or complaints) on this board. All other users can like or dislike published
note.

Admin can manage all these notes.

4.5.4.3 Leave Board Portlet

Employee can see their leave details.

Employee can apply leave here and automatically email will be send to the company group.

TL or PM can approve and disapproves applied leaves.

19

4.5.4.4 User Management Portlet


Complete information of the user like joining day, birth date, contact number, address, mail id
etc.
4.5.4.5 Company Notice Board

HR can publish any note on this notice board.

Example- late coming issue, any celebration news.

4.6 Feasibility Study


Feasibility study is the test of the system proposal according to its workability, impact on the
organization, ability to meet user needs, and effective use of resources. It focuses on three major
questions:

What are the users demonstrable needs and how does the proposed system meets them?

What resources are available for proposed systems? Is the problem worth solving?

What are the likely impacts of the proposed systems on the organization? How well does it
fit within the organizations MIS plan?

The objective of the feasibility study is not to solve the problem but to acquire the sense of scope.
The proposed system should satisfy the technical, and operational or behavioural feasibility.

4.6.1 Economic Feasibility


Economic feasibility determines whether there are sufficient benefits in creating to make the cost
acceptable, or is the cost of the system too high. As this signifies cost-benefit analysis and savings
.On the behalf of the cost-benefit analysis, the proposed system is feasible and is economical
regarding its pre-assumed cost for making a system. The costs of project according to the phase in
which they occur. As we know that the system development costs are usually one-time costs that
will not recur after the project has been completed.

20

4.6.2 Technical Feasibility


Technical feasibility determines whether the work for the project can be done with the existing
equipment, software technology and available personnel. Technical feasibility is concerned with
specifying equipment and software that will satisfy the user requirement.
This project is feasible on technical remarks also, as the proposed system is more beneficiary in
terms of having a sound proof system with new technical components installed on the system. The
proposed system can run on any machines supporting Windows and works on the best software and
hardware that had been used while designing the system so it would be feasible in all technical
terms of feasibility.

4.6.3 Behavioural Feasibility


People are inherently resistant to change and computer has been known to facilitate changes. An
estimate should be made of how strong the user is likely to move towards the development of
computerized system. These are various levels of users in order to ensure proper authentication and
authorization and security of sensitive data of the organization.
4.7 System Analysis
4.7.1 Waterfall Model
The waterfall model is a sequential design process, often used in software development processes, in
which progress is seen as flowing steadily downwards (like a waterfall) through the phases of
Conception, Initiation, Analysis, Design, Construction, Testing, Production/Implementation and
Maintenance. The waterfall development model originates in the manufacturing and construction
industries: highly structured physical environments in which after-the-fact changes are prohibitively
costly, if not impossible. Since no formal software development methodologies existed at the time,
this hardware-oriented model was simply adapted for software development.

21

Figure 4.2

: WATERFALL MODEL

4.7.1.1 Applications

Software requirements clearly defined and known

Software development technologies and tools is well known

New version of the existing software system is created.

4.7.1.2 Advantages

Simple and easy to use.

Easy to manage due to the rigidity of the model each phase has specific

Phases are processed and completed one at a time.

Works well for smaller projects where requirements are very well understood.

4.7.1.3 Disadvantages

Adjusting scope during the life cycle can kill a project

No working software is produced until late during the life cycle.

High amounts of risk and uncertainty

22

4.8 System Design


The system design deals with externally observable characteristics of a software product.
They include:

Data Flow Diagram.

Data Dictionary or Representation of Data Source.

The design of an information system produces the detail that states will meet the requirements
identified during system analysis. System specialists often refer to this stage as LOGICAL DESIGN
in contrast to the process of developing program software, which is referred to as PHYSICAL
DESIGN.
Systems Analysis begins the design process by identifying reports and other outputs the system will
produce. Then the specific data on each are pinpointed. Usually designers sketch the former displays
as they expect it to appear when the system is complete. This may be done on a paper or on a
computer displays, using one of the automated system design tools available. The systems design
also describes the data items and calculation procedures are written in details. Designers select file
structures and storage devices, magnetic disc, magnetic tape, or even paper files. The procedures
they write tell how to process the data and produce the output. The documents containing the design
specification portray the design in man-different ways charts, tables and specific symbols. The
detailed information is passed on to the programming staff so that software developed can begin.
Designers are responsible for providing programming with complete and clearly outlined software
specifications. As programming starts designers are available to answer questions, clearly fuzzy
areas and handle problems that confront the programmers when using the design specification.
In brief we can say that analysis specifies what the system should do.Basically, we analyze
the facts and decide whether to make a new system, modify or upgrade the new system to the
system work we want.
There are many types of systems i.e. Physical or Abstract System, Open or Closed System,
Deterministic or Probabilistic System and Man Made Information Systems. An information system
is the basis for interaction between the user and the Analysis. It determines the nature of relationship
among the decision makers. Information may be defined as an assetof devices, procedures and
operating system designed around user based criteria information and communicate it to the user for
planning.

23

OUTPUT DESIGN

Computer output is the most important and direct source of information to the user Efficient,
intelligible output design should improve the system's relationships with the user and help in
decision making. A major form of output is a hard copy from the printer. Printouts should be
designed around the output requirements of the user. The output devices to consider depend on
factors such as compatibility of the device with the system, response time requirements, expected
print quality, and number of copies needed.

INPUT DESIGN
Inaccurate input data is the most common cause of errors in data processing. Errors entered by data
entry operators can be controlled by input design. Input design is a process of converting useroriginated inputs to a computer based format. After input data are identified, appropriate input
media are selected for processing and the analyst must decide how input is enteredand the speed of
data capture. The fastest method is online data entry, which requires a CRT screen for display and
predefined user's options that standardize data capture and provide visual verification.

4.8.1 Data Flow Diagram


Data flow diagram is graphical tool used to describe and analyses the movement of data through
system manual or automated- including the process, stores of data and delays in the system. Data
flow diagrams are the central tool and the basis from which other components are developed. The
transformation of data from input to output through process may be described logically and
independently of the physical components associated with the system.
They are termed logical data flow diagrams.
a. Data flow diagrams (DFD) are part of a structured model in the development of software.
They are a graphical technique that depicts information flow and the transforms that are
applied as data move from input to output. Basically, the function of DFDs is to show the
user a graphical analysis of a software system. It is like a flowchart, except DFDs show the
flow of data throughout the system.

The rectangle represents an external entity. The external entity is a producer or consumer of
information that resides outside the bounds of the system to be modelled.

24

The circle (process) is a transformer of information that resides within the bounds of the
system. The line with an arrow (data item) is a single item, or a collection of data items. The
arrow head represents the directions of the data.

The Parallel line (data store) represents a repository of data that is to be stored for use by one
or more processes; maybe as simple as a buffer or a queue or as sophisticated as a relational
database.

Figure 4.3: NOTATION USED IN DFD

25

Figure 4.4: CONTEXT LEVEL/ZERO LEVEL

Figure 4.5: FIRST LEVEL (USER)

26

Figure 4.6: SECOND LEVEL (USER)

Figure 4.7: FIRST LEVEL (ADMIN)

27

4.8.2 Use Case Diagram:

Figure 4.8 Use Case Diagram

28

4.8.3 Class Diagram:


4.8.3.1 Admin Class Diagram:

Figure 4.9 Admin Class Diagram

29

4.8.3.2 User Class Diagram:

Figure 4.10 User Class Diagram

30

4.8.4 Collaboration Diagram:

Figure 4.11 Collaboration Diagram

31

4.8.5 Activity Diagram:

Figure 4.12 Activity Diagram

32

4.8.6 Sequence Diagram:

Figure 4.13 Sequence Diagram

33

34

CHAPTER-5
DATA TABLE

S.NO.

TYPE

CONTAINS

Username

Verify username given by


admin

Password

Verify password match with the


username

Table 5.1. Login Table

S.NO.

ROLE TITLE

ROLE DESCRIPTION

Admin

All rights

User

Limited access

Team Leader

Limited access

Table5.2. Role Table

35

CHAPTER-6
SCREEN SHOTS

6.1 BACK END (Database)


6.1.1 Role Table:
Role Table describes the role_id, role_title and role_description for admin, users and team leader.

Figure 6.1.1.Role Table

36

6.1.2 User Table:


User Table shows all the information about user their User_id, User_name, address, Place, contact
no. etc.

Figure 6.1.2. Users Table


6.1.3 Attendance Table:
Attendance Table saves and updates the time and date when the user first logged in and last logged
out from the website.

Figure 6.1.3: Attendance Table

37

6.1.4 Suggestion Table:


Suggestion Table shows the entire users id that have added the suggestions and allots suggestion id
with every new suggestion.

Figure 6.1.4.Suggestion Table

38

6.1.5 Like Suggestion Table:


Like Suggestion table shows which users id select what suggestion and also tells the number
of likes that a suggestion have.

Figure 6.1.5. Like Suggestion Table

39

6.1.6 Dislike Suggestion Table:


Dislike Suggestion Table stores all the disliked suggestions by the corresponding users and also
allots a dislike id with every new disliked suggestion. Here dislike_id is a primary key that shows
which user disliked the particular suggestion.

Figure 6.1.6. Dislike Suggestion Table

40

6.1.7 Leave Table:


Leave Table stores all the information related to user who applies for a leave and also displays the
leave status, leave type, leave date, leave approver and leave id that features the particular leave.

Figure 6.1.7 Leave Table

41

6.1.8 Notice Table:


Notice table records all the information about the notices that are added by team leader or admin to
notify users. It also stores the number of likes and dislikes corresponding to each notice.

Figure 6.1.8. Notice Table

42

6.2 FRONT END (View)

Figure 6.2.1 Login

Figure 6.2.2. Dashboard (Admin)-1

43

Figure 6.2.3. Dashboard (Admin)-2

Figure 6.2.4Dashboard (Admin)-3

44

Figure 6.2.5. Dashboard

(User)-1

Figure 6.2.6.Dashboard (User)-2

45

Figure 6.2.7. Dashboard (User)-3

6.2.1 Suggestion Portlet

Figure 6.2.1.1 Suggestion (Edit)

46

Figure 6.2.1.2 Suggestion (View)

Figure 6.2.1.3 Suggestion (Most Liked)

47

Figure 6.2.1.4. Suggestion (Most Disliked)

6.2. User Management Portlet

Figure 6.2.2.1. User Management Portlet (Edit)-1

48

Figure 6.2.2.2. User Management Portlet (Edit)-2

Figure 6.2.2.3. User Management Portlet (View)-1

49

Figure 6.2.2.4. User Management Portlet (View)-2

Figure 6.2.2.5. Add User-1

50

Figure 6.2.2.6, Add User-2

Figure 6.2.2.7. Manage user

51

6.2.3 Leave Board Portlet

Figure 6.2.3.1. Apply for leave

Figure 6.2.3.2. View leave

52

CHAPTER-7
CONCLUSION

The project enabled us to understand all the design patterns thoroughly and various designing
phases like html, CSS and JavaScript.
During this project we have learnt how to work in a team and also various technical and
communication skills. This project helped us to learn all the basic concepts of PHP and the
implementation would help us in our career as well.
The significance of Project making lies in giving exposure to students as well as the
institution in the concerned organization and vice versa. It is important to implement theoretical
knowledge into practical. Students get the opportunity to see the mechanisms which are used in
present day industry by these kinds of project.
We implemented a new technology PHP that is evolving nowadays. From this project I
learnt how to work in a team. I learnt how to complete the work within given time limits. So project
plays an important role in every ones life. Through project I implemented various new technologies
that are present nowadays in market.

53

REFERENCES
The references I used in completion of this project are mentioned as:1. www.w3schools.com
2. www.stackoverflow.com
3. www.phptutorials.com
4. www.tizag.com
5. www.mysqltutorial.org
6. www.apache.org
7. www.tutorialspoint.com
8. www.tzag.com
9. www.homeandlearn.co.uk
10. www.freewebmasterhelp.com

54

Вам также может понравиться