0% found this document useful (0 votes)
99 views82 pages

Employee Bill Management System

This document provides an overview of a proposed employee expense reimbursement system. Key points include: 1. The current manual process for submitting and approving expense reimbursements is inefficient and time-consuming. 2. The proposed solution is an online system that allows employees to upload expense reports and managers to approve them digitally. 3. It would also automatically notify employees of the status of their requests via SMS, improving communication.

Uploaded by

Pallavi Pallu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
99 views82 pages

Employee Bill Management System

This document provides an overview of a proposed employee expense reimbursement system. Key points include: 1. The current manual process for submitting and approving expense reimbursements is inefficient and time-consuming. 2. The proposed solution is an online system that allows employees to upload expense reports and managers to approve them digitally. 3. It would also automatically notify employees of the status of their requests via SMS, improving communication.

Uploaded by

Pallavi Pallu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 82

1

CHAPTER – 1
INTRODUCTION

1.1 PROBLEM STATEMENT:


Being connected with people through a website is always exciting
and at the same time creating a work environment where in the most important entity ‘TIME’
is being utilized in a beneficial and productive way. As websites and mobile devices has
become a part of our day to day life, developing applications that provides user interaction and
at the same time overcoming the disadvantages such as the mistakes that can be encountered
during the manual calculations, wastage of manual power also the delay that exists for
knowing the status of the requests by the employees. This system allows employee to login
into his account and then he can upload the bills through the website. The employee must also
receive alert regarding his approval when forwarding from one department to another
department which indeed uses an automated calculation with least possibility of errors.

1.2 CURRENT SCENARIO:


Earlier, the employees in the organization submit their bills to higher
authorities. The higher authorities after verifying the bills, the approved bills is passed to the
finance department. The finance manager then permits to credit the amount to be payed out
Which then the amount is credited to the account of specified employee.

As files and maintain all the paper material to access a particular record. This
type of system is tedious to maintain. Efficiency is one of its major concern. Also the status of
the request by the employee is not known until and unless the amount is credited into his
account.
2

1.3 PROPOSED SOLUTION:


A n user interactive website is to be designed where each employee in the
organization has an employee account through which he can login. After logging in , the
employee can upload the invoice number and amount. When the manager logins to his
account, he can view the uploaded bills by the employees. The copy of the approved bills are
automatically forwarded to accounts section.
An intimation about the status of the bills in the workflow process can be
given by SMS. He can also query about his status, renewal of the policies etc.

REPORTS:
 Client’s Monthly Report
 Client’s list.
 Alert delivery report.
 Payment report.

1.4 FEATURES OF THE SYSTEM:


 Each employee in an organization has an employee account through which he can
log in.
 The employee can upload the Invoice no. and Invoice amount.
 The Invoice details are supported by the bill images by the process of scanning.
 When the manager logins, he can view the uploaded bills by the employees.
 The manager performs three actions : Approve, Reject, Pending.
 The bills after approving are automatically forwarded to the accounts section.
 Then the accounts department credits the amount into the employees account.
 The status of the request is intimated to employee for every 24hrs.
 Generation of pay slips can be performed.
3

ADVANTAGES: 

 Providing excellence in services.


 Designing an user interactive website.
 Many of the tasks that were earlier being handled manually were automated, presenting
significant efficiency benefits to the operations.
 The status of request by the employee is intimated by SMS.

1.5 SCOPE :
 Framework conditions: A regulatory system must be in place to prevent a deviation
of the bill amounts given to the employees.
 Scope of services: The scope service for mobile payment is limited at a high
expense.
 Administrative efficiency: This must be maintained at proper levels so that it must
not be limited.
 Message Format: the format of message to be sent by the customers must be
specific to the rules of the organization.
4

Chapter – 2
LITERATURE SURVEY

2.1 FISCAL DISBURSEMENT:


The employees in the organization submit the bills to their managers. The
bills could of various types and also of various amounts. The employee after submitting the
bill will automatically provide the manager’s name to which the bill will be submitted. The
bill will pass through a workflow process and the owner of the bill can view the status of the
bill at any time. An email will be sent to the concerned people to let them know about the
status of the bill. This also generates pay slips to the employee of the organization by
calculating the Gross salary and deducting the Income tax from the salary.

The system that is implemented is based on the .NET technology and SQL
SERVER 2005 .

2.2 ROOT NAME SPACES:

 System.Windows.Forms contains classes for creating Windows-based applications


that take full advantage of the rich user interface features available in the Microsoft
Windows operating system.

 System. IO contains types that allow reading and writing to files and data streams and
types that provide basic file and directory support.

 System. Text contains classes representing ASCII, Unicode, UTF-7, and UTF-8
character encodings.

 System. Data provides access to classes that represent the ADO.NET architecture.

 System.Collections.Generic contains interfaces and classes that define generic


collections, which allow users to create strongly typed collections that provide better type
safety and performance than non-generic strongly typed collections.
5

 System.ComponentModel provides classes that are used to implement the run-time


and design-time behavior of components and controls. This namespace includes the base
classes and interfaces for implementing attributes and type converters, binding to data
sources, and licensing components

 System.Data.SqlClient namespace is the.NET Framework Data Provider for SQL


Server

2.3 PROCESS:

User will log on to the application and the login will be based on the role of
the user. The user will directly taken into ‘My open requests’, where the user can view the
details of the request and can also view the status at which the request is. The access to the
system will be based on the roles. The roles will be based on the type of department the user
belongs to. Screens should also be provided to the administrator of the system to create the
employee as well as their manager.

For the creation of login form and to perform the requests to the higher
authorities we will make use of .NET frame work. First we design an interactive website for
the development of system specified. For the development of the application we use
ASP.NET.

For the application to work we have to make use of databases to store the
details of the employee information also the databases are used to provide thee status of the
request to the employee. Every data that should be processed must be stored in the database.
To maintain the databases we make use of ADO.NET which is an evolution of the ADO data
access model that directly addresses user requirements for developing scalable applications. It
was designed specifically for the web with scalability, statelessness, and XML in mind.
6

ADO.NET uses some ADO objects, such as the Connection and


Command objects, and also introduces new objects. Key new ADO.NET objects include the
DataSet, DataReader, and DataAdapter.

The databases that are used for the application development are maintained
by using Microsoft SQL server 20005 and Microsoft access. To maintain the databases in
order to perform operations such as sending mails from one employee to another and for the
intimation of status of request to employee. Microsoft access is used in the application for the
generation of the pay slips.

SQL SERVER:

A database management, or DBMS, gives the user access to their data and
helps them transform the data into information. Such database management systems include
dBase, paradox, IMS, SQL Server and SQL Server. These systems allow users to create,
update and extract information from their database.
A database is a structured collection of data. Data refers to the
characteristics of people, things and events. SQL Server stores each data item in its own
fields. In SQL Server, the fields relating to a particular person, thing or event are bundled
together to form a single complete unit of data, called a record (it can also be referred to as raw
or an occurrence). Each record is made up of a number of fields. No two fields in a record
can have the same field name.
During an SQL Server Database design project, the analysis of your
business needs identifies all the fields or attributes of interest. If your business needs change
over time, you define any additional fields or change the definition of existing fields.

FEATURES OF SQL SERVER (RDBMS)


SQL SERVER is one of the leading database management systems (DBMS) because it
is the only Database that meets the uncompromising requirements of today’s most demanding
information systems. From complex decision support systems (DSS) to the most rigorous
online transaction processing (OLTP) application, even application that require simultaneous
7

DSS and OLTP access to the same critical data, SQL Server leads the industry in both
performance and capability

SQL SERVER is a truly portable, distributed, and open DBMS that delivers unmatched
performance, continuous operation and support for every database.
SQL SERVER RDBMS is high performance fault tolerant DBMS which is specially designed
for online transactions processing and for handling large database application.

SQL SERVER with transactions processing option offers two features which contribute to
very high level of transaction processing throughput, which are the row level lock manager

2.4 SERVERS:

A server is a computer system that provides services to other


computing systems-called clients-over a computer network. The typical server is a computer
system that operates continuously on a network and waits for request s for services from other
computers on the network.
Most server applications are distinguished by the fact that they are
completely non-interactive on the local server it self, that is they do not display information on
a screen and do not expect user input. Installed, they run unobtrusively within the server and
interact only with client computers on the network to which the server is attached. Applications
of this kind are called daemons in UNIX terminology, and services in Windows terminology.
Server applications are typically started once when the server is
booted, and thereafter run continuously until the server is stopped. A given server usually runs
same set of applications at all the times, since there is no way for the server to predict when a
given server is might be requested of it by a client computer .Some server applications are
automatically started when a request from a client is received, and are then stopped when
request has been satisfied .
8

The system uses Internet Information Services (IIS) formerly


called Internet Information Server - is a set of Internet-based services for servers created by
Microsoft for use with Microsoft Windows.

IIS security scope:

IIS security is primarily concerned with:

1. Authentication – The means by which communicating entities prove their identities


tone another.
2. Access control- The means by which request for resources are limited to users or
programs.
3. Integrity – The means used to prove that information has not been modified while in
transit.
4. Confidentiality -The means used to ensure that information is understandable only
by authorized users.
9

Chapter – 3

SYSTEM ANALYSIS

3.1 REQUIREMENTS SPECIFICATION:

FUNCTIONAL REQUIREMENTS:
1. Submitting the request along with the supporting bills.
2. Accessing details like name, Invoice number, Invoice amount.
3. Calculating the Gross salary and Income tax.
4. Intimating the employee about the status of request.
5. Intimating the accounts department to deposit the amount into the account of employee.

NON FUNCTIONAL REQUIREMENTS:

 USABILITY:
The system should be useful to enhance with further technology in
future to improve its features compared to the existing system.

• EFFICIENCY:
The system should be able to perform in all independent paths that
all the logical conditions are satisfied.

• RELIABILITY:
The system should pertain to all the situations so that it can be
recoverable in any error conditions.

• MAINTAINABILITY:
The system should be maintained properly so that it should be
able resolve any data conflicts and sustain at any condition.
10

REQUIREMENT ANALYSIS:

 Whether the user is an authenticated user?


 Whether the request is supported by the bills?
 Whether the status is reported or not?
 What are the modes of the payment?

3.2 MODULES:

1. Login:
This module deals with the employee about the details which includes the user ID,
password, designation of the employee and the account is accessed by him only.

2. Employee Information;

This module provides the details of employee like personal details,


educational details, bank details etc. also the employee account contains my open requests
folder to view him the status of the request. The entire account is authenticated by the
administrator.

3. Uploading and Retrieving Bills:

This module acts as an interface for the customer to upload the bills
which supports his request. The employee can upload the images of the bills with the help of a
scanner and the composing of the request is done.

4. Sending SMS:

This module acts as interface between mobile of the customer and


the system which deals with sending alerts about the status of the bill and details about the
payment
11

Each module includes certain sub modules as follows:

1. Employee details:

Personal details: It lists all the details of the customer which includes his name, age, gender,
address, mail, mobile number etc.

Employee ID: It deals with the unique Id that was given to the customer at the time of registration.

Credit card details: It deals with credit card number, its pin number and its validity.

Request Status: It contains information about the status of his request.

2. System user management:

Login: It includes administrator tasks and customers status to retrieve through proper verification.

Registration: It is the task of the customer to register a policy to get a customer id which is unique
and register his mobile to make his payments through mobile.

3. Mobile User Management:.

User interface for mobile interacting with the server: This acts as interface for sending
and receiving messages with a message to specified user.

Alerts information: This deals with whether the message has been received to the customer.
12

3.3 IDENTIFICATION OF THE ACTORS:

ACTOR is not the part of the system –they represent anyone or any thing that must interact with
the system.
An Actor may
 Only input information to the system.
 Only receive information from the system.
 Input and receive information to and from the system.
Actors are discovered by examining:
 Who directly uses the system?
 Who is responsible for maintaining the system?
 Other systems that need to interact with the system.
An actor is a stereotype of a class and is depicted as a “stickman” on a use-case
Diagram. The name of the actor is displayed below the icon.
The following question should be answered to identify actors:
1. Who is interested in a certain requirement?
2. Where in the organization the system is used?
3. Who will benefit from the use of the system?
4. Who will supply the system with the information, use this information and remove this
information?
5. Who will support and maintain the system?
6. Does this system use the external resource?
7. Does one person play several different roles?
8. Do several people play the same role?
9. Does the system interact with the legacy system?

ACTORS IN A QUANTUM FISCAL DISBURSEMENT SYSTEM:


13

1. EMPLOYEE: An employee in an organization can enter into his account and can
upload the bills supporting the request.

customer
(from Use Case View)

2. PAYMENT SYSTEM: It checks the number provided by the user with the
respective bank credit card system.

credit card system


(from Use Case View)

3. ADMINISTRATOR: Administrator enters into his account and registers the


employee and send alerts to the employee.

administrator
(from Use Case View)

4. WEB SERVER: It is the system which stores the entire details like registration,
policy information, premium details and claims.

webserver
(from Use Case View)

3.4 IDENTIFICATION OF USECASES AND SUB USECASES:


14

USE CASE MODEL, a dialogue between actor and the system .They
represent the functionality provided by the system that is what capabilities will be provided to an
actor by the system. The collection of the use cases for a system constitutes all the defined ways
the system may be used.
The formal definition of the use case is:
A use case is a sequence of transactions performed by the system that yields a measurable result
of the values for a particular actor.
In its simplest form, a use case can be described as a specific way of using the system from a
user’s (actor’s) perspective.

A use case also illustrates:


 A pattern of behavior the system exhibits.
 A sequence of related transactions performed by an actor and the system.
Use cases provide a means to:
 Capture system requirements.
 Communicate with the end users and domain experts.
 Test the system.

Use cases are best discovered by examining what the actor needs and defining what the actor
will be able to do with the system; this helps ensure that the system will be what the user
expects.

UML notation for the use case:

1. An ellipse containing the name of the use case inside it.

Use
Case

2. An ellipse containing the name of the use case below


15

Use case

The following questions are to be answered to identify the use cases:


1. What are the tasks of each actor?
2. Will any actor create, store, change, remove, or read information in the system?
3. What use cases will store, change, remove or read this information?
4. Will any actor need to inform the system about sudden external changes?
5. Does any actor need to be performing about certain occurrences in the system?
6. What use cases will support and maintain the system?
7. Can all functional requirements be performed by the use cases
The use cases identified in the system are
1. Login
2. create account
3. employee information
4. Registration
5. request information
6. verification
7. verification of limits
8. credit to account
9. status information

Construction of use case diagram:


Use-case diagrams graphically depict system behavior. These Diagrams present a high
level view of how the system is used as viewed from an outsider’s perspective. A use-case
diagram may depict all or some of the use cases of a system.
16

A use-case diagram can contain:


 Actors
 Use-cases(system boundaries identifying what system
 Interactions or relationships between actors and use cases in the system including the
associations, dependencies and generalizations.
MAIN USECASE DIAGRAM FOR FISCAL DISBURSEMENT:

<<extend>>
create staff acc

<<include>>
adminis
staffDB

login

payslip

gen man fin man


employee
forward req corres manager

approved grants

supporting bills sent req forward

on approval

coments bank

verifiacation deliver to employee

verify limits

Fig 3.1 Main Use Case Diagram for Quantum Fiscal Disbursement
An employee working in an organization enters into his account with the specified password
and ID. He then enters into account and uploads the bills with the help of the scanner and the
request by the employee is forwarded to the higher authorities along with the bill images. The
manager can accept or reject the request based on the organizational constraints. The manager
then intimates the accounts department to check for the utilization of payment, the accounts
17

clerk then forwards the request to accounts manager to the approval. He then intimates to the
bank to credit the amount into the bank. Also the status of the request by the employee is
intimated for every 24hrs by means of SMS.

3.5 ACTIVITY DIAGRAM :

Activity diagrams also may be created at this stage in the life cycle. These diagrams
represent the dynamics of the system. They are flow charts that are used to show the workflow
of a system; that is, they show the flow of control from activity to activity in the system, what
activities can be done in parallel, and any alternate paths through the flow. At this point in the
life cycle, activity diagrams may be created to represent the flow across the use cases or they
may be created to represent the flow within a particular use case. Later in the life cycle, activity
diagrams may be created to show the workflow for an operation.
Activity diagrams contain activities, transitions between the activities, decision points,
and synchronization bars. In the UML, activities are represented as rectangles with rounded
edges, transitions are drawn as directed arrows, decision points are shown as diamonds, and
synchronization bars are drawn as thick horizontal or vertical bars.

Activity:
The activity icon appears as a rectangle with rounded ends with a name and a Compartment
for actions.
Object:
It is an ongoing non atomic execution within a state machine. Activities ultimately result in
some action which made up of executable atomic computations. An object has state behavior
and identity. The structure and behavior of similar objects are defined in their common class.
Each object in a diagram indicates some instance of a class. An object that is not named is
referred to as a class instance.
Object flow:
It is useful to see the relationships between an operation and objects
That are its argument values are results.
18

Decisions:
A decision represents a specific location on activity diagram when the workflow may branch
based upon guard conditions.

Synchronization: Synchronizations enable you to see a simultaneous workflow in an


activity diagram or state chart diagram. Synchronization visually defines forks and joins
representing parallel workflow.

States: A state represents a condition or situation during the life of an object during which it
satisfies some condition or waits for some event.

Transition: A state transition indicates that an object in the source state will perform certain
specified actions and enter the destination state when a specified event occurs or when
specified conditions are satisfied.

Start States: A start state (also called initial state) explicitly shows the beginning of a
workflow.

End States: An end state represents a final or terminal state on an activity diagram or state
chart diagram. Place an end state when you want to explicitly show the end of a workflow on
an activity diagram or the end of a state chart diagram. Transitions can only occur into an end
state; however, there can be any number of end states per context.
Swim Lane: A unique diagram feature that defines who or what is responsible
For carrying out activity or state Swim lanes are very similar to an object because they provide
a way to tell who is performing a certain role. Swim lanes only appear on activity diagrams.
You should place activities within swim lanes to determine which unit is responsible for
carrying out the specific activity. When a swim lane is dragged onto an activity diagram, it
becomes a swim lane view.
19

Work Flow: Each activity represents the performance of a group of actions in a workflow.

MAIN ACTIVITY DIAGRAM FOR FISCAL DISBURSEMENT:

login successful if admin? if scale 1 others


login
employee ?

upload his Bills

upload his bills


generate
payslips authenticate the
creates an account
bills
for employee

upLoad his
bills

login failed forward to the next


higer department

Fig 3.2 Activity diagram for Fiscal disbursement


3.6 SEQUENCE DIAGRAM :
A sequence diagram is a graphical view of a scenario that shows object interaction in
a time-based sequence—what happens first, what happens next. Sequence diagrams establish the
roles of objects and help provide essential information to determine class responsibilities and
interfaces. Sequence diagrams are normally associated with use cases.
This type of diagram is best used during early analysis phases in design because they are simple and
easy to comprehend. A sequence diagram has two dimensions: typically, vertical placement
represents time and horizontal placement represents different object Sequence diagrams are closely
20

related to collaboration diagrams and each are alternate representations of an interaction. A


sequence diagram traces the execution of a scenario in time.
Each message is represented by an arrow between the lifelines of two objects. The
order in which these messages occur is shown top to bottom by the message. Each message is
labeled with the message name. The label also can include the argument and some control
information and show self-delegation, a message the argument and some control information and
shows self-delegation, a message that an object sends to itself, by sending the message arrow back
to the same lifeline. The horizontal ordering of the lifelines is arbitrary. Often, call arrows are
arranged to proceed in one direction across the page, but this is not always possible and the order
conveys no information.
The sequence diagram is very simple and has immediate visual appeal-this is its
great strength. A sequence diagram is an alternative way to understand the overall flow of the
control of a program, instead of looking at the code and trying to find out the overall sequence
of behavior.
The following tools located on the sequence diagram toolbox which enables to model
sequence diagrams:

 Object: An object has state, behavior and identity. The structure and behavior of
similar objects are defined in their common class. Each object in a diagram indicates
some instance of a class. An object that is not named in referred to as a class instance.
 Message Icons: A message icon represents that the communication between objects
indicating that an action will follow. The message icon is a horizontal, solid arrow
connecting two lifelines together.
 Focus of Control: Focus of Control (FOC) is an advanced notational technique that
enhances sequence diagrams. It shows the period of time during which an object is
performing an action, either directly or through an underlying procedure.
 Message to Self: A message to self is a tool that sends a message from one object back
to the same object. It does not involve other objects because the message returns to the
same object. The sender of a message is the same as the receiver.
21

 Note: A note captures the assumptions and decisions applied during analysis and
design. Notes may contain any information, including plain text, fragments of code or
references to other documents.

OBJECT:
One of the primary elements of a collaboration or sequence diagram is an
object. An object has state, behavior, and identity. The structure and behavior of similar
objects are defined in their common class. Each object in a diagram indicates some instance of
a class.
An object that is not named is referred to as a class instance. The object icon is
similar to a class icon except that the name is underlined.If you use the same name for several
object icons appearing in the same collaboration diagram, they are assumed to represent the
same object; otherwise, each object icon represents a distinct object. Object icons appearing in
different diagrams denote different objects, even if their names are identical. Objects can be
named three different ways: object name, object name and class, or just by the class name
itself

MESSAGES:
A message icon represents the communication between objects, indicating that
an action will follow. Each message icon represents a message passed between two objects,
and indicates the direction a message is going. A message icon in a collaboration diagram can
represent multiple messages. A message icon in a sequence diagram represents exactly one
message.
A message is the communication carried between two objects that trigger an
event. A message carries information from the source focus of control to the destination focus
of control.
A message is represented on collaboration diagrams and sequence diagrams by a
message icon which visually indicates its synchronization. The synchronization of a message
can be modified through the message specification.
22

MAIN SEQUENCE DIAGRAMS FOR FISCAL DISBURSEMENT;

: login UI : staff DB : UploadBills : m ail DB

: employee

enter the login details


verify details

ack

forward ack

connect to interface

upload the bill im ages

store in the mail database

ack

forward ack

Fig 3.3 Sequence Diagram for Fiscal Disbursement


3.7 COLLABORATION DIAGRAM:

Collaboration diagram is an interaction diagram that shows the order of


messages that implement, an operation or a transaction. Another type of interaction diagram is
the collaboration diagram. A collaboration diagram is a set of objects related in a particular
context, and interaction which is a set of messages exchanged among the objects within the
collaboration to achieve a desire outcome. In a collaboration diagram, objects are shown in
figures. As in a sequence diagram, the sequence arrows indicate the message sent within the
given use case. In a collaboration diagram, the sequence is indicated by numbering the
messages. Some people argue that numbering the messages makes it more difficult to see the
sequence than drawing the lines on the page. However, since the collaboration diagram is
23

more compressed, other things can be shown more easily. A collaboration diagram provides
several numbering schemes.

Two types of Numbering Sequences are:

1 Flat sequence.
2 Decimal sequence.

The disadvantage of interaction diagrams is that they are great only for
representing a single sequential process; they begin to break down when you want to represent
conditional looping behavior. However, conditional behavior can be represented in sequence
or collaboration diagrams for each scenario.

Differences between sequence and collaboration diagrams:


 Sequence diagrams show time-based object interaction while collaboration diagrams
show how objects associate with each other.
 The Create Collaboration Diagram Command creates a collaboration diagram from
information contained in the sequence diagram from information contained in the
interaction’s collaboration diagram.
 Sequence diagrams are closely related to collaboration diagrams and both are alternate
representations of an interaction. Sequence diagram is easier to read where as
collaboration diagram shows how objects are statically connected.

There are three types of relationships between classes. They are:


 Association: This relationship represents a physical or conceptual connection between
two or more objects.
 Super-sub structure (Generalization Hierarchy): These allow objects to be build from
other objects. The super-sub class hierarchy is a relationship between classes where
one class is the parent class of another class.
24

 A-part-of relationship (Aggregation): This represents thee situation where a class


consists of several component classes.

MAIN COLLABORATION DIAGRAM FOR FISCAL DISBURSEMET:

1: enter the login details


: login UI

4: forward ack
9: forward ack
: employee 3: ack 8: ack
5: connect to interface : mail DB
2: verify details
7: store in the mail database

: staff DB 6: upload the bill images

: UploadBills

Fig 3.4 Collaboration For Fiscal disbursement.

CHAPTER - 4
DESIGN

4.1 CLASSES IDENTIFICATION:


IDENTIFICATION OF CLASSES:
Identification of classes can be done by the noun phrase approach,
the common class patterns approach, the use-case driven sequence/collaboration modeling
approach and the classes’ responsibilities and collaboration (CRC) approach.

NOUN PHRASE APPROACH:


In this method, we read through the requirements or use-cases
looking for noun phrases. Nouns in the textual description are considered to be classes and
25

verbs to be methods of the classes then, the nouns are listed, and divided in to three categories:
relevant classes, fuzzy classes and the irrelevant classes.

COMMON CLASS PATTERN APPROACH:


It is based on the knowledge base of common existing classes. The
candidate classes can be formulated using the following:

Concept Classes: Concept is an understanding of our world.


Event Class: These are points in time that must be recorded.
Organization Class: It is a collection people, resources, facilities or groups to which the
users belong.
People Class: The people class represents the different roles users play in interacting with
the application.
Places Class: These are the physical locations.
Tangible things and Devices Class: It includes physical objects or groups of objects
that are tangible.

USE-CASE DRIVEN APPROACH:


Here the scenarios are described in text or through a sequence of
steps. It is a problem driven approach to object oriented analysis in which the designer first
considers the problem at hand and not the relationship between the objects.

CLASSES RESPONSIBILITIES AND COLLABORATORS:


This technique is used to identify the classes, responsibilities and their attributes and methods.
It is based on the idea that an object can either accomplish a certain responsibility by itself or it
may require the assistance of other objects in which case it collaborates. Out of these, the noun
phase is used to identify the classes to increase our understanding of the subject.
Here we used Noun-phrase approach.
The initial list of noun phrases is:
26

1) Login 2)Administrator 3) registration 4)Enroll 5)Due date 6)Customer 7) Alert system


8)Web server 9)Claim 10)Policy 11) Payment system 12) Credit card system 13) Premium
2. Reviewing the irrelevant classes:
It is safe to eliminate the irrelevant classes. The candidate classes must be selected from
relevant classes. There are no irrelevant classes.

3. Reviewing the redundant classes:The classes that are redundant are stroked out.
1) Enroll 2) registration 3) Due date.

4. Reviewing the classes containing adjectives:In this system, we have no classes


containing adjectives that we can eliminate.

5. Reviewing the possible attributes:The noun phases used only as values should be
restated as attribute classes. Here we have no such attribute classes.

6. The Final List of Classes:

Administrator
employee
manager
accounts clerk
accounts manager

4.2 CLASS DIAGRAM:


A class diagram is a picture for describing generic description of
possible systems. Class diagrams and collaboration diagrams are alternate representation
of object models. Class diagrams contain classes and object diagrams contain objects, but
it is possible to mix classes and objects when dealing with various kinds of metadata, so
the separation is not rigid.
27

Class diagrams are more prevalent than object diagrams. Normally


you will build class diagrams plus occasional object diagrams illustrating complicated data
structures or message-passage structures.
Class diagrams contain icons representing classes, interfaces, and
their relationships. We can create one or more class diagrams to depict the classes at the
top level of the current model; such class diagrams are themselves contained bye the top
level of the current model. We can also create one or more diagrams to depict classes
contained by each package in your model; such class diagrams are themselves contained
by the package enclosing the classes they depict; the icons representing logical packages
and classes in class diagrams.
We can change properties or relationships by editing the
specification or modifying the icon on the diagram. The associated diagrams or
specifications are automatically updated.
Classes may be of 3 types. They are:
1. Entity class.
2. Boundary class.
3. Control class.
 Entity class: An entity class models information and associated behavior that is
generally long live.
 Boundary class: They handle the communication between the systems. They
can provide the interface to the user or another system.
Ex. Registration Form.
 Control class: Control class model sequencing behavior specific to one or
more use-cases. You can think of control class as running or executing the use-
case i.e., they represent the dynamics of the use-cases. Ex: Registration
Manager.

STEREOTYPES AND CLASSES:


A Stereotype provides the capability to create a new kind of modeling element. Some common
stereotypes for a class are Entity, Boundary, Control Utility and Exception. The stereotype for
28

a class shown below the class name enclosed in guillemots (<< >>). If desired, a graphic icon
or a specific color may be associated with a stereotype.

MAIN CLASS DIAGRAM FOR FISCAL DISBURSEMENT:

s canner
employee
invoice
loginID
password scan()
date scan the soft copy
billAmount
InvoiceNumber
* *

administrator view_s alary() manager


leaveForm() 1
username 1 loginID
updateDetails()
password enterBill() pas sword
date invoiceAmount

update() verifyBill()
1 1..*
delete() viewSalary()
new_employee() updateDetails()
view_salary() 1 leaveForm()
leaveForm() authunticate()

1 *
1
clerk (accounts dept.)
loginID
1..* accounts manager pas sword
loginID * billAmount
pas sword invoiceAmount
billApprove
invoiceAmount verifyLimit()
* viewSalary()
verifyInvoice() 1 UpdateDetails()
viewSalary() leaveForm()
updateDetails()
bankSetails ()
optionTransfer()

Fig: 4.1 Class diagram for Fiscal disbursement


29

4.3 FUNCTIONAL ARCHITECTURE

CLIENT DETAILS:

The employee must login to see his status which includes his personal
details and request details which are retrieved from the database and given to employee.

REQUEST REQUEST

EMPLOYEE
RESPONSE RESPONSE

Fig 4.3.1 Employee Details

EMPLOYEE REQUEST DETAILS:


The employee makes a request to the organization to show the details. The
Server retrieves data from the database and responds to the client.
30

REQUEST REQUEST

EMPLOYEE
RESPONSE RESPONSE

Fig 4.3.2 Employee request Details

SYSTEM USER MANAGEMENT:

REQUEST REQUEST

EMPLOYEE
RESPONSE RESPONSE

Fig: 4.3.3 System User Managment

The Employee interacts with the company server to register, to make status request, to download
attached documents etc.

MOBILE USER MANAGEMENT:


Employee
REQUEST
31

STATUS RESPONSE

Fig 4.3.4 Intimation of bill Status

The Employee gets a message about the status of the bill whether the bill is accepted or rejected or
pending. The server in turn can send status alerts to the Employee mobile.

4.4 E-R DIAGRAM:

Inv amt
Emp Name
Emp
ID Email Inv num

Gender Employee Details Submit Bill Details

Addres Date
s Designatio Contact
n
32

Designatio
Emp Name n
Emp
ID Email User Id

Gender Employee Details Attend Login Details


s

Addres Passwor
s Designatio Contact d
n

Inv amt

Inv num
Bill Details Verifie Admin
d

Date

to from

Manager Approve Mails Details


d
body
Subject

Bill image
33

Fig 4.4 E-R Diagram

4.5 DIAGRAMS:
USE CASE VIEW OF DESIGN:

1. ADMINISTRATOR:
34

bank acc no

login staff ID
account for staff bank details
no
provides
admin
yes
staff personal details
nativity

login correct ? staff DB staff details

designation
<<extend>> staff educational details
<<include>>
view previous records qualification

payslip graphical view


D.A work experience
<<include>> <<include>>

<<include>> <<include>>
H.R.A <<include>><<include>>
<<include>> staff advance
<<include>>

<<include>> <<include>>
C.A emolutions

calculate IT basic deductions <<include>> mobile excess

EDU.A <<include>>

ESI

instalments

generate pay slip

Fig 4.5.1 Administrator


2. EMPLOYEE:
35

staff DB status of bills

<<extend>>

login <<include>> forward req


no
inbox
yes
employee forward
<<include>>
verify dept department manager
login correct ? my open requests

compose

submit bills

softcopy

scanner

Fig 4.5.2 Employee

An employee in an organization login into his account and open the my


open request folder and he can compose the mail along with the bills supporting the request by bill
images using a scanner.
The request that is composed is sent to the corresponding manager for the approval of the bill amount.

3. MANAGER:
36

staff DB

<<extend>>

employee
login inbox

no
error in bills
manager <<include>>

yes authunticated forward

login correct ? manager account authunticate bills compose account's department

Fig 4.5.3 Manager

The manager in the organization login into his account and opens hi inbox and
checks the messages that exist in the inbox. He then verify’s the bills submitted by the employee for
approval. He can perform 3 operations such as accept, reject, pending and if the bill is approved then
the bill is forwarded to the accounts department for verification of limits for allotment.

4. ACCOUNTS CLERK:
37

staff DB

<<extend>>

employee
inbox
login
no
limits reached/invalid bills etc
account's clerk <<include>>

yes authunticated forward

login correct ? clerk's account verify limits.etc compose account's manager

Fig 4.5.4 Accounts Clerk

The clerk in the accounts department performs the verification of the bills
submitted by the employees and if he found that the bills submitted by the employee is correct , he
then intinates the higher authorities that the bills are found to be correct and then forward the bill
amount to the account department head i.e, the account manager for the process of crediting the
amount.

5. ACCOUNTS MANGER:
38

staff DB

<<extend>>

login inbox
no
account's manager <<include>>

yes

login correct ? manager account authunticate clerk approval

<<include>> account number

ok
<<include>> <<include>>
check bank details
by cash
<<include>>
bank
branch.bank
found wrong ?
<<include>>

DD

intimate to employee

credit into account

Fig 4.5.5 Accounts Manager

The account manager login into his account and opens his inbox for
checking the messages . He then verifies whether the bill that is submitted is under the rules of
organization and he then intimates the account department that he is approving the bill and gives the
permission to credit the bill amount into the employees account.

ACTIVITY DIAGRAMS:

1. ADMINISTRATOR:
39

Activity 4r adm inistrator

login

upload/Delete/Create

[no]

[yes] access staff


login correct ?
database

Fig 4.5.6 Administrator

2. EMPLOYEE:

login

[yes]

[no]

Upload bill ( Invoice no., Scan the bill for Upload bill
login correct ? [yes] upload another
Invoice amount etc..) soft copy image bill ?

[no]

Fig 4.5.7 Employee


3. MANAGER:
40

Activity 4r Manager

login
verify another bill
[No]

[no] ]Yes] Verify the Approve/Reject/ If


bills Pending Approved/Reject?

[Yes]

Email sent to
employee

If Approved?
[No]

[Yes]

Accounts
Department

Fig 4.5.8 Manager

The manager in the organization login into his account and opens hi inbox and
checks the messages that exist in the inbox. He then verify’s the bills submitted by the employee for
approval. He can perform 3 operations such as accept, reject, pending and if the bill is approved then
the bill is forwarded to the accounts department for verification of limits for allotment.
41

4.ACCOUNTS CLERK:

login

[yes]

[no]

login correct ? verify the verify the another bill ?


bills limits,elc

[no]

Fig 4.5.9 Accounts Clerk

The clerk in the accounts department performs the verification of the bills
submitted by the employees and if he found that the bills submitted by the employee is correct , he
then intinates the higher authorities that the bills are found to be correct and then forward the bill
amount to the account department head i.e, the account manager for the process of crediting the
amount.
42

5. ACCOUNTS MANGER:

Activity 4r Accounts manager

login

[no] ]Yes] Verify the verify limits If limits ok?


bills
[Yes]
[No]

SMS sent to
employee

Amount credited into


account automatically

Fig 4.5.10 Accounts manager

The account manager login into his account and opens his inbox for
checking the messages . He then verifies whether the bill that is submitted is under the rules of
organization and he then intimates the account department that he is approving the bill and gives the
permission to credit the bill amount into the employees account.

SEQUENCE DIAGRAMS:

1. LOGIN:
43

: user : loginUI : login : database

enter login details forward


verify details

acknowledgment

forward

Fig 4.5.11 Login

2. EMPLOYEE:

: employee : login UI : staff DB : scanner.

enter details
verify details
connect to scan

ack

forward ack

Fig 4.5.12 Employee


3. MANAGER:
44

: manageer : logUI interface : EmpDb : account dept

enter details

verify details

approve bills

verification

ACK

forward ACK

Fig 4.5.13 Manager

4. CLERK:
45

: clerkk : LOgin UI : stafFDB : acc manager

login Details

verify DETAils

Ack

4ward

verification

cheked OK

Fig 4.5.14 Accounts clerk

COLLABORATION DIAGRAMS
46

1. LOGIN

1: enter login details


: user : loginUI

5: forward

4: acknowledgment

2: forward

3: verify details
: login : database

Fig 4.5.15 Login

2. EMPLOYEE:

1: enter details
: employee : login UI

5: forward ack

4: ack

2: verify details

3: connect to scan
: staff DB : scanner.

Fig 4.5.16 Employee

3. MANAGER:
47

1: enter details
: manageer : logUI
interface
6: forward ACK

5: ACK

2: verify details
4: verification

3: approve bills
: EmpDb : account
dept

Fig 4.5.17 Manager

4. ACCOUNTS CLERK:

5: verification

1: login Details
: clerkk : LOgin UI

4: 4ward

6: cheked OK
3: Ack2: verify DETAils

: acc
manager : stafFDB

Fig 4.5.18 Accounts Clerk

4.6 DATABASE DESIGN:


48

Database consists of a collection of data managed by a database


management system. Which keeps track of the data storage with the help of information stored in the
system table space. In order to identify the tables in the system table space we apply first normal form
and second normal form on the entities of our system to identify following set of tables:
LOGIN:

ATTRIBUTE CONSTRAINT DATATYPE


Employee Id Not null Varchar2(20)
Password Not null Varchar2(20)
Designation Not null Varchar2(20)

Table4.1 Login

EMPLOYEE LIMITS:

ATTRIBUTE CONSTRAINT DATATYPE


Employee Id Primary Key Varchar2(20)
Designation Not null Varchar2(20)
Total Amount Not null Number
Amount Used Not null Number
Remaining Available Not null Number

Table4.2 Limits

MAIL DETAILS:

ATTRIBUTE CONSTRAINT DATATYPE


From Not null Varchar2(20)
To Not null Varchar2(20)
Subject Not null Varchar2(20)
InvoiveNumber Not null Varchar2(20)
InvoiceAmount Not null Number
BillImage Not null Varchar2(20)
Body Not null Varchar2(20)
Table4.3 Mail Details
PAY SLIP:
49

ATTRIBUTE CONSTRAINT DATATYPE


Employee Name Not null Varchar2(20)
Employee Id Primary Key Varchar2(20)
Basic salary Not null Number(5)
HRA Not null Number(5)
DA Not null Number(5)
CA Not null Number(5)
Gross Not null Number(5)
IT Not null Number(5)
StaffAdvance Not null Number(5)
TotalDeductions Not null Number(5)
WorkingDays Not null Number(2)
AttendedDays Not null Number(2)
Net Salary Not null Number(5)

Table4.4 Pay Slip

EMPLOYEE DETAILS:

ATTRIBUTE CONSTRAINTS DATATYPE


Employee Id Primary Key Varchar2(20)
Employee Name Not null Varchar2(20)
Gender Not null Varchar2(6)
Address Not null Varchar2(20)
Contact Not null Number(12)
Email Id Not null Varchar2(20)
Designation Not null Varchar2(20)

Table4.5 Employee details

CHAPTER – 5
50

DEVELOPMENT PROCEDURE

5.1 SYSTEM REQUIREMENTS:

Process Model:
A process model for software engineering is chosen based on the
nature of the project and application, the methods and tools to be used and the Deliverables
that are required.
So, our application is based on the water fall model. It is also called
classic life cycle or the linear sequential model. Waterfall model suggests a systematic,
sequential approach to software development that begins at the system level and progresses
through analysis, design, coding, testing and support.

Hardware Requirements:

 Company Server.
 GSM MOBILE with SIM.
 PCs

Software Requirements:

 Programming Languages – VB.Net


 Database -ORACLE8i
 Server - IIS

5.2 TECHNOLOGY:
51

In order to send a bill from employee to his department head, the


system creates a website managed by administrator and accessed by administrator to the
employee and to receive a message from higher officials, we use SMS technology to for the
transfer of messages. SMS messaging technology can be used as the underlying interactive
medium from servers (PCs) and mobile in a one-way alert text messaging application.

SERVERS:

A server is a computer system that provides services to other


computing systems-called clients-over a computer network. The typical server is a computer
system that operates continuously on a network and waits for request s for services from other
computers on the network.
Most server applications are distinguished by the fact that they are
completely non-interactive on the local server it self, that is they do not display information on
a screen and do not expect user input. Installed, they run unobtrusively within the server and
interact only with client computers on the network to which the server is attached. Applications
of this kind are called daemons in UNIX terminology, and services in Windows terminology.
Server applications are typically started once when the server is
booted, and thereafter run continuously until the server is stopped. A given server usually runs
same set of applications at all the times, since there is no way for the server to predict when a
given server is might be requested of it by a client computer .Some server applications are
automatically started when a request from a client is received, and are then stopped when
request has been satisfied .
The system uses Internet Information Services (IIS) formerly
called Internet Information Server - is a set of Internet-based services for servers created by
Microsoft for use with Microsoft Windows.

IIS security scope:

IIS security is primarily concerned with:


52

5. Authentication – The means by which communicating entities prove their identities


tone another.
6. Access control- The means by which request for resources are limited to users or
programs.
7. Integrity – The means used to prove that information has not been modified while in
transit.
8. Confidentiality -The means used to ensure that information is understandable only
by authorized users.

5.3 CODING:

1. Login Authentication:

protected void Button3_Click(object sender, EventArgs e)


{
SqlConnection cn = new
SqlConnection(ConfigurationManager.AppSettings["budget"]);
cn.Open();
SqlDataAdapter da = new SqlDataAdapter("Select * from Table1", cn);
SqlCommandBuilder cb = new SqlCommandBuilder(da);
DataSet ds = new DataSet();
da.Fill(ds, "Table1");
int c = ds.Tables["Table1"].Rows.Count;

int i;
for (i = 0; i < c; i++)
{
DataRow dr = ds.Tables["Table1"].Rows[i];
string user = dr[0].ToString();
user = user.Trim();

if (user.Equals(untb.Text))
{

string pwd = dr[1].ToString();


pwd = pwd.Trim();
if (pwd.Equals(pwtb.Text))
{
string role = dr[2].ToString();
role = role.Trim();
53

if (role.Equals(dn.SelectedItem.ToString()))
{
Session["user"] = untb.Text;
Session["desig"] = dn.SelectedItem.ToString();
Response.Redir
ect("Default3.aspx");
}
else
{
Response.Redirect("invalidpassword.aspx");
}
}
}
}

cn.Close();
if (i == c)
Response.Write("INVALID USERNAME OR PASSWORD");

2. Session Expiry:

protected void Page_Load(object sender, EventArgs e)


{
if (Session["user"] != null)
{
}
else
{
Response.Redirect("Default.aspx");

}
}

3. Composing

protected void Button1_Click(object sender, EventArgs e)


{
DateTime rightNow = DateTime.Now;
FileUpload1.SaveAs(Server.MapPath(FileUpload1.FileName));
string st;
54

st = ("C:/Users/y5cs887/Desktop/" +
FileUpload1.FileName).ToString();
SqlConnection cn = new
SqlConnection(ConfigurationManager.AppSettings["budget1"]);
cn.Open();
FileStream file = new FileStream(st, FileMode.OpenOrCreate,
FileAccess.Read );
byte[] rawdata = new byte[file.Length];
Session["f1"] = (byte[])rawdata;
file.Read(rawdata, 0, System.Convert.ToInt32(file.Length));
file.Close();
string sql = "SELECT * FROM Table6";
SqlDataAdapter adapter = new SqlDataAdapter(sql, cn);
SqlCommandBuilder cmdBuilder = new SqlCommandBuilder(adapter);
DataSet ds = new DataSet("Table6");
adapter.Fill(ds, "Table6");
DataRow row = ds.Tables["Table6"].NewRow();
row["from1"] = Session["user"].ToString();
row["to1"] = TextBox3.Text;
row["subject"] = TextBox1.Text;
string s= FileUpload1.FileName.ToString ();

row["attach"] = FileUpload1.FileName;
row["body"] = TextBox6.Text;
row["img"] = rawdata;
row["date"] = rightNow.ToString();
row["Invnum"] = TextBox2.Text;
row["Invamt"] = TextBox5.Text;
row["stage"] = Session["user"].ToString();
row["confirmation"] = "waiting".ToString ();
ds.Tables["Table6"].Rows.Add(row);
adapter.Update(ds, "Table6");

TextBox3.Text = "";
TextBox1.Text = "";
TextBox6.Text = "";
TextBox2.Text = "";
TextBox5.Text = "";
cn.Close();
}

4. Inbox:

protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs


e)
{
Button1.Visible = true;
Button5.Visible = true;

if (e.CommandName == "select")
55

{
int currentRowIndex = Convert.ToInt32((e.CommandArgument));
string user1 = Convert.ToString(Session["user"]);
user1 = user1.Trim();
string sub1 =
Convert.ToString(GridView1.DataKeys[currentRowIndex].Value);
sub1 = sub1.Trim();
Session["RR"] = sub1.ToString();
SqlConnection cn = new
SqlConnection(ConfigurationManager.AppSettings["budget1"]);
cn.Open();
SqlDataAdapter da = new SqlDataAdapter("Select * from Table6 ", cn);
SqlCommandBuilder cb = new SqlCommandBuilder(da);
DataSet ds = new DataSet();
da.Fill(ds, "Table6");
int c = ds.Tables["Table6"].Rows.Count;
int i;
for (i = 0; i < c; i++)
{

DataRow dr = ds.Tables["Table6"].Rows[i];
string user2 = dr[0].ToString();
user2 = user2.Trim();
string sub2 = dr[2].ToString();
Session["f2"] = dr[8].ToString();
sub2 = sub2.Trim();
if (user1.Equals(user2))
if (sub2.Equals(sub1))
{
TextBox6.Text = Convert.ToString(dr[7]);
// Session["im"] = Convert.ToString(dr[6]);
break;
}

cn.Close();
}
}

5. Grid View Selection:

protected void Button5_Click(object sender, EventArgs e)


{
Button5.Visible = false;
SqlConnection cn = new
SqlConnection(ConfigurationManager.AppSettings["budget1"]);
cn.Open();
SqlDataAdapter com = new SqlDataAdapter("SELECT to1,subject,date FROM
Table6 WHERE from1 = '" + Session["user"] + "'", cn);
56

DataSet f = new DataSet();


com.Fill(f);
GridView1.DataSource = f.Tables[0];
GridView1.DataBind();
cn.Close();
}

6. Deletion:

protected void Button1_Click(object sender, EventArgs e)


{
SqlConnection cn = new
SqlConnection(ConfigurationManager.AppSettings["budget1"]);
cn.Open();
SqlCommand com = new SqlCommand("DELETE FROM Table6 WHERE from1='" +
Session["f2"] + "'", cn);
com.ExecuteNonQuery();

7. Loading Image:

protected void Page_Load(object sender, EventArgs e)


{
SqlConnection cn = new
SqlConnection(ConfigurationManager.AppSettings["budget1"]);
cn.Open();
SqlCommand com = new SqlCommand("SELECT img from Table6 WHERE from1
= '" + Session["RR"] + "'", cn);
SqlDataReader MyReader;
MyReader = com.ExecuteReader();
if (MyReader.Read())
{
byte[] m_MyImage = (byte[])MyReader["img"];
Response.BinaryWrite(m_MyImage);
}
cn.Close();
}

8. Crystal Reports:

protected void Page_Load(object sender, EventArgs e)


{
57

ReportDocument r1 = new ReportDocument();


OleDbConnection con = new
OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=C:/Users/y5cs887/Desktop/Database4.mdb");
OleDbDataAdapter da = new OleDbDataAdapter("select * from Table1", con);
con.Open();
DataSet ds = new DataSet();
da.Fill(ds, "Table1");
r1.Load(Server.MapPath("CrystalReport3.rpt"));
r1.SetDataSource(ds);
CrystalReportViewer1.ReportSource = r1;
con.Close();
}

9. Account:

protected void Button1_Click(object sender, EventArgs e)


{
string gen="";
SqlConnection cn = new
SqlConnection(ConfigurationManager.AppSettings["budget1"]);
cn.Open();
string sql = "SELECT * FROM Table3";
SqlDataAdapter adapter = new SqlDataAdapter(sql, cn);
SqlCommandBuilder cmdBuilder = new SqlCommandBuilder(adapter);
DataSet ds = new DataSet("Table3");
adapter.Fill(ds, "Table3");
DataRow row = ds.Tables["Table3"].NewRow();

row["id"] = Session["user"].ToString ();


row["fn"] = TextBox1.Text.ToString();
row["ln"] = TextBox2.Text.ToString();
if (RadioButton3.Checked == true)
{
gen = "male";
}
if (RadioButton4.Checked == true)
{
gen = "female";
}

row["gender"] = gen ;
row["address"] = TextBox3.Text.ToString();
row["contact"] = TextBox5.Text.ToString();
row["degree"] = DropDownList1.SelectedItem.ToString();
row["email"] = TextBox7.Text.ToString();
row["authentication"] = "yes";
row["password"] = Session["user"].ToString();
ds.Tables["Table3"].Rows.Add(row);
adapter.Update(ds, "Table3");
58

cn.Close();
}

10. Change Password:

protected void Button1_Click(object sender, EventArgs e)


{
string usr = Session["user"] .ToString ();
if (usr.Equals(TextBox1.Text.ToString()))
{
string k = TextBox2.Text.ToString();
if (k.Equals(TextBox3.Text.ToString()))
{
SqlConnection cn = new
SqlConnection(ConfigurationManager.AppSettings["budget1"]);
cn.Open();
string sql = "UPDATE Table3 set password='"+TextBox3 .Text
+"' where id='"+Session["user"]+"'";
SqlDataAdapter adapter = new SqlDataAdapter(sql, cn);
SqlCommandBuilder cmdBuilder = new
SqlCommandBuilder(adapter);
}
}
}

10.Registration:

protected void Button3_Click(object sender, EventArgs e)


{
SqlConnection cn = new
SqlConnection(ConfigurationManager.AppSettings["budget"]);
cn.Open();
SqlDataAdapter adapter = new SqlDataAdapter("Select * from Table1 ",
cn);
SqlCommandBuilder cmdBuilder = new SqlCommandBuilder(adapter);
DataSet ds = new DataSet();
adapter.Fill(ds, "Table1");
DataRow row = ds.Tables["Table1"].NewRow();
int c = ds.Tables["Table1"].Rows .Count;
c++;
59

row["login"] = "BAS0" + c;
Session["log"] = "BAS0" + c;
row["password"] = "BAS0" + c;
Session["pwd"] = "BAS0" + c;
row["designation"] = DropDownList1.SelectedValue.ToString();
ds.Tables["Table1"].Rows.Add(row);
adapter.Update(ds, "Table1");
cn.Close();
Response.Redirect("Default9.aspx");

}
protected void Button4_Click(object sender, EventArgs e)
{
GridView1.Visible = true;
Button2.Visible = true;
Button5.Visible = true;
SqlConnection cn = new
SqlConnection(ConfigurationManager.AppSettings["budget"]);
cn.Open();
SqlDataAdapter adapter = new SqlDataAdapter("SELECT
login,password,designation FROM Table1 WHERE login = '"+TextBox3.Text .Trim
()+"'", cn);
DataSet f = new DataSet();
adapter.Fill(f);
GridView1.DataSource = f.Tables[0];
GridView1.DataBind();

cn.Close();
}

5.4 SCREEN DESIGN/ GRAPHICAL USER INTERFACE

The system uses a very user-friendly interface developed using extended markup
language (XML) and hyper text markup language (HTML). Which most users are acquitted
with and is broadly used on the World Wide Web (WWW). The controls are placed on the
forms in an easily accessible manner so that user strain is minimized to the maximum extent.

Whenever a user enters any from the system also states the action to be performed is an
easily understandable and pleasant speech. The navigation of the user from one area of the
60

system to another is very easy using easy to access and properly placed hyperlinks which user
can access on the click of a button.

The system also posses a unique format for each type of employee; this ensures that
employee is presented with options he has access to. This ensures a great deal of security to the
system and to the organization as an employee is not given an option to carryout unauthorized
activity.

1. LOGIN PAGE:

FIG. 5.1 Admin Login


61

The administrator makes login through his username and password and selects the login type as admin
to transfer to admin options page.

2. HOME PAGE:

FIG. 5.2 Home Page

The Home page has four options which can be done. These include sending bills to their higher
authorities i.e., composing the bill information, checking of the mails that are sent by the higher
62

official whether the bills are approved by them or not, viewing the past records of which of the bills
are sent at what date and time.

3. ACCOUNT REGISTRATION:

FIG. 5.3 Account Registration

The Admin creates the account to the respective employee based on the designation of the
employee. The Admin can also verify the details of the employee. The automatic creation of
63

account to the employee by generating the username and the password which are forwarded to
the employee.

4. ACCOUNT CREATION:

FIG. 5.4 Account creation

The administrator creates the account of the employee by assigning the user ID and the password.
These are forwarded to the employee after creating the account.
64

5. ACCOUNT DETAILS:

FIG. 5.5 Account Details

The employee after registering the account can fill the details by logging in. The system stores the
details into the database.
65

6. COMPOSING MAILS:

FIG. 5.6 composing the mails

The employee after logging in, composes the bill to the higher authority. The system uploads the bill
images and those are forwarded to the next higher authority.
66

7. VERIFYING THE INBOX:

FIG. 5.7 Verifying the Inbox

The employee after logging in verifies the details of the bills sent. The forwarded bills are
downloaded by the respective departments and are approved.
67

8. SENT MAILS:

FIG. 5.8 Sent Mails

The employee can verify the mails that are sent. The system can also resend the mails that are not
approved or pending replies.
68

9. VIEWING THE PAST RECORDS:

FIG. 5.9 Viewing the Past records

The employee can select one of the options of viewing the past records i.e of bar charts or pie charts
etc
69

10. CHANGE THE PASSWORD:

FIG. 5.10 Change the Password

The employee can change the password from account details. The confirmation of the password is
stored in the database.
70

11. FORGOT THE PASSWORD:

FIG. 5.11 forgot the password

The employee can re-attain the password by entering the text details and the password is forwarded
to the employee’s mail account.
71

12. OTHER THAN ADMINISTRATOR:

FIG. 5.12 Other than Administrator

When the employee logins i.e., other than administrator the button registration doesn’t appear as the
registration is not possible by the employee.
72

13. OPTIONS FOR EMPLOYEE:

FIG. 5.13 Options for an Employee

The employee other than administration and scale1 employee can view the three radio buttons of
accepting, rejecting and pending. The manager can forward by accepting the mails.
73

CHAPTER -6

TESTING

6.1 LOGIN:
This Test case is derived from set of constraints that username must be unique and password
length must be at least 6 characters

TEST CASE # 1
Test Objective : To verify the Login
Test Description: To check whether the administrator or the employee has entered
Login Id and password correctly.
Requirements Verified: YES
Test Environment: ASP and ORACLE
Actions Expected Results
Enter the Login ID Prompt to enter the login ID.
Enter the password Prompt to enter the password.
Select designation Select from drop down list.
Pass : yes Conditional Pass:______ Fail:_________
Problems/Issues: No
Notes: Successfully executed.

6.2 REGISTRATION:
74

This test case is derived from set of input conditions that must be
satisfied in order to continue the registration process.

TEST CASE # 2
Test Objective : To verify the Registration
Test Description: To check whether the registration details has been entered Correctly or not.
Requirements Verified: YES
Test Environment: ASP and ORACLE
Database : SQL server 2005
Actions Expected Results
Enter the name Prompt to enter the name.
Enter the age Prompt to enter the age
Enter the gender Prompt to enter the gender
Enter the Mobile number Prompt to enter the mobile number
Enter the mail Id Prompt to enter the Mail Id
Pass : yes Conditional Pass:______ Fail:_________
Problems/Issues: No
Notes: Successfully executed.

6.3 COMPOSING:
This test case is derived from set of input conditions if satisfied a mail will
be sent else there is no necessity of the mail to be sent.
75

TEST CASE # 3
Test Objective : To verify whether the user composes
Test Description: To check whether the user can send the mail or not.
Requirements Verified: YES
Test Environment: ASP and ORACLE
Database: SQL server 2005
Actions Expected Results
Make sure that all the fields are appropriate. All fields are non empty.

composing and Sending a message a mail sent to corresponding authorities.

Pass : yes Conditional Pass:______ Fail:_________


Problems/Issues: No
Notes: Successfully executed.

6.4 INBOX:
This test case is derived from the constraint that when ever the user
gets a mail and must be updated in the database
76

TEST CASE # 4
Test Objective : To verify the mails.
Test Description: To check whether the user had the mails in the inbox or not.
Requirements Verified: YES
Test Environment: ASP and ORACLE
Pre Conditions Required: a GSM mobile with SIM.
Actions Expected Results
Verify the received messages database List of mails in the inbox.

Verify the identity of customer and If the user is valid update his
Prepare a message to be sent. Request in the database
Otherwise report invalid user.
Send a message to the customer in Alert reaches the mobile with a message
reply to the message received about the status.

Pass : yes Conditional Pass:______ Fail:_________


Problems/Issues: No
Notes: Successfully executed.

6.5 PAST RECORDS:


This test case is derived from the constraint that whether the employee is
able to view the past allotments and details of approvals in past.

TEST CASE # 5
77

Test Objective : To verify the past records


Test Description: To check whether the employee is able to view the past records.
Requirements Verified: YES
Test Environment: ASP and ORACLE
Test Setup/Pre-conditions: a crystal view reporter must exist and crystal resource
engine should be available.
Actions Expected Results
Verify the database for past records The past records should visible in charts

Pass : yes Conditional Pass:______ Fail:_________


Problems/Issues: No
Notes: Successfully executed.

6.6 SENDING A SMS:


This test case is derived with input condition that whenever
the database is updated belonging to the status of the bill for every 24hrs.

TEST CASE # 6
Test Objective: To send a SMS about the status of request.
78

Test Description: To send a message to the employee whenever the database is updated belonging
to the status of the bill for every 24hrs.
Requirements Verified: YES
Test Environment: ASP and ORACLE.
Test Setup/Pre-conditions: a GSM mobile with SIM.
Actions Expected Results

Retrieve mobile number from database Mobile number will be retrieved.


Send the message Alert reached the employee mobile.

Pass : yes Conditional Pass:______ Fail:_________


Problems/Issues: No
Notes: Successfully executed.

Chapter-7
CONCLUSION

The project to a large extent simplifies the process of active interaction


between different levels of employees. This application provides facilities for registration, providing
information, generating the requests, sending the status through SMS, downloading attachments,
retrieving status information with the click of a button.
79

The project is developed keeping the view of users comfort in making


request with out the help of external entities. The deployment of the application will certainly help
users and reduces unnecessary wastage of time faced by organization and also the users.

CHAPTER -8

FUTURE WORK

The company administrator can update his database using photograph


identity of the customer which helps in faster administration and help the departments. The process of
sending the requests can be done using mobile and creation of an account can be done using a mobile
device.
80

BIBLIOGRAPHY

1. Roger S. Pressman, “Software engineering”, A Practitioner’s approach, fifth edition,


“Analysis Modeling”, (20th anniversary edition), McGraw Hill International Edition.

2. Elmasri & Navathe “Fundamentals of DATABASE SYSTEMS”, fourth edition (2004),


, Pearson Education Asia, Part2: “Relational Model: Concepts, Constraints, Languages,
Design, and Programming”, Part4: “Data Storage, Indexing, Query Processing, and
Physical design”
81

3. www.w3schools.com

4. www.cooltext.com

5. www.msdn.com

APPENDIX

USER MANUAL:

Steps to be followed:

 User will log on to the application and the login will be based on the designation which
is selected from drop down list.

 The user will directly taken into ‘Home page’.

 The user can view the details of the request and can also view the status at which the
request is.

 The access to the system will be based on the Designation. The roles will be based on
the type of department the user belongs to.
82

Details are:

o Any user can create a request by login to the system, the parameters for
creating the request will be
 Name of the user (should be defaulted from the login)
 Dept of the user (should be defaulted from the login)
 Type of the bill being submitted (e.g., telephone bill, electricity bill etc)
 Amount of the bill
 Date of expense incurred
 Whether the request is supported by the bills
 Whether the bill amount should be credited to the user account in the
bank
 Bank name, address and account number
 Any other mode by which the user will want to get the payment.

You might also like