You are on page 1of 43

Declaration

I, Parth Mishra, hereby declare that the project work entitled “THUMPRESSIONZ” is an
authenticated work carried out by me at JAIN SOFTWARE SOLUTIONS. Under the
guidance of Ms. NAVEEN JAIN for the summer training of the degree of BACHELOR OF
ENGINEERING and this work has not been submitted for similar purpose anywhere else
except to APEEJAY COLLEGE OF ENGINEERING, SOHNA, GURGAON affiliated to
MAHARSHI DAYANAND (M.D.) UNIVERSITY, ROHTAK.

Date:
Place: Parth Mishra

1
TECHNOLOGIES USED

ASP.NET 2.0
ASP.NET is a programming framework built on the common language runtime that can be used
on a server to build powerful Web applications. The first version of ASP.NET offered several important
advantages over previous Web development models. ASP.NET 2.0 improves upon that foundation by
adding support for several new and exciting features in the areas of developer productivity,
administration and management, extensibility, and performance:

Developer Productivity
ASP.NET 2.0 encapsulates common Web tasks into application services and controls that can be easily
reused across web sites. With these basic building blocks, many scenarios can now be implemented with
far less custom code than was required in previous versions. With ASP.NET 2.0 it is possible to
significantly reduce the amount of code and concepts necessary to build common scenarios on the web.

• New Server Controls. ASP.NET 2.0 introduces many new server controls that enable
powerful declarative support for data access, login security, wizard navigation, menus,
treeviews, portals, and more. Many of these controls take advantage of core application
services in ASP.NET for scenarios like data access, membership and roles, and
personalization. Some of the new families of controls in ASP.NET 2.0 are described below.

 Data Controls. Data access in ASP.NET 2.0 can be accomplished completely


declaratively (no code) using the new data-bound and data source controls. There are
new data source controls to represent different data backends such as SQL database,
business objects, and XML, and there are new data-bound controls for rendering
common UI for data, such as gridview, detailsview, and formview..

 Navigation Controls. The navigation controls provide common UI for navigating


between pages in your site, such as treeview, menu, and sitemappath. These controls
use the site navigation service in ASP.NET 2.0 to retrieve the custom structure you
have defined for your site.

 Login Controls. The new login controls provide the building blocks to add
authentication and authorization-based UI to your site, such as login forms, create user
forms, password retrieval, and custom UI for logged in users or roles. These controls
use the built-in membership and role services in ASP.NET 2.0 to interact with the user
and role information defined for your site.

 Web Part Controls. Web parts are an exciting new family of controls that enable you
to add rich, personalized content and layout to your site, as well as the ability to edit
that content and layout directly from your application pages. These controls rely on the
personalization services in ASP.NET 2.0 to provide a unique experience for each user in
your application.

2
• Master Pages. This feature provides the ability to define common structure and interface
elements for your site, such as a page header, footer, or navigation bar, in a common
location called a "master page", to be shared by many pages in your site. In one simple
place you can control the look, feel, and much of functionality for an entire Web site. This
improves the maintainability of your site and avoids unnecessary duplication of code for
shared site structure or behavior.

• Themes and Skins. The themes and skins features in ASP.NET 2.0 allow for easy
customization of your site's look-and-feel. You can define style information in a common
location called a "theme", and apply that style information globally to pages or controls in
your site. Like Master Pages, this improves the maintainability of your site and avoid
unnecessary duplication of code for shared styles.

• Personalization. Using the new personalization services in ASP.NET 2.0 you can easily
create customized experiences within Web applications. The Profile object enables
developers to easily build strongly-typed, sticky data stores for user accounts and build
highly customized, relationship based experiences. At the same time, a developer can
leverage Web Parts and the personalization service to enable Web site visitors to
completely control the layout and behavior of the site, with the knowledge that the site is
completely customized for them. Personalization scenarios are now easier to build than ever
before and require significantly less code and effort to implement.

• Localization. Enabling globalization and localization in Web sites today is difficult,


requiring large amounts of custom code and resources. ASP.NET 2.0 and Visual Studio 2005
provide tools and infrastructure to easily build Localizable sites including the ability to auto-
detect incoming locale's and display the appropriate locale based UI. Visual Studio 2005
includes built-in tools to dynamically generate resource files and localization references.
Together, building localized applications becomes a simple and integrated part of the
development experience.

Flexible Extensibility
ASP.NET 2.0 is a well-factored and open system, where any component can be easily replaced with a
custom implementation. Whether it is server controls, page handlers, compilation, or core application
services, you'll find that all are easily customizable and replaceable to tailor to your needs. Developers
can plug in custom code anywhere in the page lifecycle to further customize ASP.NET 2.0 to their needs.

• Provider-driven Application Services. ASP.NET 2.0 now includes built-in support for
membership (user name/password credential storage) and role management services out of
the box. The new personalization service enables quick storage/retrieval of user settings
and preferences, facilitating rich customization with minimal code. The new site navigation
system enables developers to quickly build link structures consistently across a site. As all
of these services are provider-driven, they can be easily swapped out and replaced with
your own custom implementation. With this extensibility option, you have complete control
over the data store and schema that drives these rich application services.

• Server Control Extensibility. ASP.NET 2.0 includes improved support for control
extensibility, such as more base classes that encapsulate common behaviors, improved
designer support, more APIs for interacting with client-side script, metadata-driven support
for new features like themes and accessibility verification, better state management, and
more.

• Data Source Controls. Data access in ASP.NET 2.0 is now performed declaratively using
data source controls on a page. In this model, support for new data backend storage
providers can be easily added by implementing custom data source controls. Additionally,
the SqlDataSource control that ships in the box has built-in support for any ADO.NET
managed provider that implements the new provider factory model in ADO.NET.

3
• Compilation Build Providers. Dynamic compilation in ASP.NET 2.0 is now handled by
extensible compilation build providers, which associate a particular file extension with a
handler that knows how to compile that extension dynamically at runtime. For example,
.resx files can be dynamically compiled to resources, .wsdl files to web service proxies,
and .xsd files to typed DataSet objects. In addition to the built-in support, it is easy to add
support for additional extensions by implementing a custom build provider and registering it
in Web.config.

• Expression Builders. ASP.NET 2.0 introduces a declarative new syntax for referencing
code to substitute values into the page, called Expression Builders. ASP.NET 2.0 includes
expression builders for referencing string resources for localization, connection strings,
application settings, and profile values. You can also write your own expression builders to
create your own custom syntax to substitute values in a page rendering

2) C-Sharp( C# )
C# syntax is highly expressive, yet with less than 90 keywords, it is also simple and easy to learn. The
curly-brace syntax of C# will be instantly recognizable to anyone familiar with C, C++ or Java.
Developers who know any of these languages are typically able to begin working productively in C#
within a very short time. C# syntax simplifies many of the complexities of C++ while providing powerful
features such as nullable value types, enumerations, delegates, anonymous methods and direct memory
access, which are not found in Java. C# also supports generic methods and types, which provide
increased type safety and performance, and iterators, which enable implementers of collection classes
to define custom iteration behaviors that are simple to use by client code.

As an object-oriented language, C# supports the concepts of encapsulation, inheritance and


polymorphism. All variables and methods, including the Main method, the application's entry point, are
encapsulated within class definitions. A class may inherit directly from one parent class, but it may
implement any number of interfaces. Methods that override virtual methods in a parent class require the
override keyword as a way to avoid accidental redefinition. In C#, a struct is like a lightweight class; it
is a stack-allocated type that can implement interfaces but does not support inheritance.

In addition to these basic object-oriented principles, C# facilitates the development of software


components through several innovative language constructs, including:
• Encapsulated method signatures called delegates, which enable type-safe event notifications.
• Properties, which serve as accessors for private member variables.
• Attributes, which provide declarative metadata about types at run time.
• Inline XML documentation comments.

The C# build process is simple compared to C and C++ and more flexible than in Java. There are no
separate header files, and no requirement that methods and types be declared in a particular order. A
C# source file may define any number of classes, structs, interfaces, and events.

.NET Framework Platform Architecture


C# programs run on the .NET Framework, an integral component of Windows that includes a virtual
execution system called the common language runtime (CLR) and a unified set of class libraries. The
CLR is Microsoft's commercial implementation of the common language infrastructure (CLI), an
international standard that is the basis for creating execution and development environments in which
languages and libraries work together seamlessly.

Source code written in C# is compiled into an intermediate language (IL) that conforms to the CLI
specification. The IL code, along with resources such as bitmaps and strings, is stored on disk in an

4
executable file called an assembly, typically with an extension of .exe or .dll. An assembly contains a
manifest that provides information on the assembly's types, version, culture, and security requirements.

When the C# program is executed, the assembly is loaded into the CLR, which might take various
actions based on the information in the manifest. Then, if the security requirements are met, the CLR
performs just in time (JIT) compilation to convert the IL code into native machine instructions. The CLR
also provides other services related to automatic garbage collection, exception handling, and resource
management. Code that is executed by the CLR is sometimes referred to as "managed code," in
contrast to "unmanaged code" which is compiled into native machine language that targets a specific
system. The following diagram illustrates the compile-time and run time relationships of C# source code
files, the base class libraries, assemblies, and the CLR.

3) Microsoft SQL Server

Features

1. T-SQL (Transaction SQL) enhancements


T-SQL is the native set-based RDBMS programming language offering high-performance
data access. It now incorporates many new features including error handling via the TRY and
CATCH paradigm, Common Table Expressions (CTEs), which return a record set in a
statement, and the ability to shift columns to rows and vice versa with the PIVOT and
UNPIVOT commands.

2. CLR (Common Language Runtime)


The next major enhancement in SQL Server 2005 is the integration of a .NET compliant
language such as C#, ASP.NET or VB.NET to build objects (stored procedures, triggers,
functions, etc.). This enables you to execute .NET code in the DBMS to take advantage of
the .NET functionality. It is expected to replace extended stored procedures in the SQL
Server 2000 environment as well as expand the traditional relational engine capabilities.

3. Service Broker
The Service Broker handles messaging between a sender and receiver in a loosely coupled
manner. A message is sent, processed and responded to, completing the transaction. This
greatly expands the capabilities of data-driven applications to meet workflow or custom
business needs.

4. Data encryption
SQL Server 2000 had no documented or publicly supported functions to encrypt data in a
table natively. Organizations had to rely on third-party products to address this need. SQL
Server 2005 has native cap

5. Visual Studio Integration

Tight integration with Microsoft Visual Studio and the .NET Framework streamlines
development and debugging of data-driven applications. Developers can build database

5
objects, such as stored procedures, using any .NET language and can seamlessly debug
across .NET and Transact-SQL (TSQL) languages.

6
7
1.0. Purpose
1.1. Introduction
This Software Requirements Specification provides a complete description of all the

functions and specifications of the Project “Thumbpressionz”.

1.2. Scope
The objective of this application is to basically compare two thumb impressions and

identify that those are of a same person or not. With the help of the employee thumb

impression, we can access his record. The details of the employee are saved in the back end

with the help of SQL server.

The goal of this system to allow the users to successfully retrieve the records of any

employee with its thumb impression. The employee is authenticated by only its thumb

impression.

The benefit of having this system is that it saves time for user and employee. He does not

need to remember any login id or password. His/her thumb gives them authorization of

the system.

1.3. Document overview


The remainder of this document is two chapters, the first providing a full description of

the project. It lists all the functions performed by the system. The final chapter concerns

details of each of the system functions and actions in full for the software developers’

assistance. These two sections are cross-referenced by topic; to increase understanding by

both groups involved.

8
2.0. Overall description

2.1 Product Perspective

2.1.1 System Interfaces

The THUMBPRESSIONZ is integrated within the organization’s Intranet. It

consists of 4 major components namely: User module, Database and Admin Module.

2.1.2 Software Interfaces

The admin module must be page that must be able to run on a system. The module must

integrate with the DBMS through Microsoft SQL Server Connectivity.

2.2 Product Functions

Admin Module:

The admin module consists of a single administrator who will be the head.

The various functions of the system are summarized below:-

The system will consist of a Main Page which has 3 selections.

(1) The first selection is of Login. The login will ask for a User id and Password.

Only the administrator can give a user id and password for logging in.

After the administrator has successfully logged in he will further be provided with 4

selections :

(i) The first selection for the administrator will be of inserting a new

record in the database.

This page has lots of entry to be filled. These entries are of the

9
employee who joined the company. There are 3 tabs in this page.

Personal detail, Professional detail, File path details

The attributes of Personal Details are:-

ID

Name

Gender

DOB

Marital Status

Permanent Address

Temporary Address

Phone No.

Mobile NO.

Email Id

The attributes of the Professional details are:-

Department

Date of joining

Designation

Salary per annum

Educational Qualification

The attributes of file Path details are:-

Image File path

10
Thumb Impression path

Bits text file path

The third column’s field is automatically filled. User doesn’t need to fill the path address.

(ii) The second selection for the administrator will be of EDIT records. In

this there are two option :-

a. Modify records

b. Delete record:

 Single record

 All records

(iii) The third selection for the administrator will be of View.

The administrator can view a single record by typing the employee’s Id or he can view whole

records in a grid view.

All the pages accessible only by the administrator will return to the admin main page only.

3. Specific Functional requirements

Functional Requirements are those that refer to the functionality of the system, i.e., what

services it will provide to the user. Nonfunctional (supplementary) requirements pertain to

other information needed to produce the correct system and are detailed separately

11
USECASE DIAGRAMS

1.1 System Environment

1.2 Admin Module

3.2.1 Login as a Admin

Brief Description

The admin log’s in as an administrator

database Displays Main


Log In page Page

<<includes>>
Admin
Validate Login ID
and Password

Step By Step Description

For this use case to be initiated, the admin must be connected to the
intranet and on the NLB home page.

1) The admin fills in the Login ID and Login Password


2) The admin clicks on ‘Log In’
3) The request is send to the database
4) The server validates the Login ID and Login Password
5) If validation is true then the server passes the admin to the admin
home page
6) If validation is false the server retains the admin on the same page
and informs him to login again due to incorrect login ID and
Password.

12
Use Case Name: Log In as a Admin

Priority Essential

Trigger Menu selection

Precondition User /Admin is connected to the Local server.

Basic Path 1.User/Admin selects the Log In as a AdminLink


2.The server passes the user/admin to Login Page
3. The admin fills in the login id and password
4. The admin clicks on login button
5. Required Field validation is done at the client side
6. If validation is not true then user is prompted to
enter the login id and password again.
7. If the required field validation is true then the
request goes to the server.
8. Validation of the user id and password is done
9. If validation true then the server passes the user to
the admin home page.
10. If validation is false then the server returns the
user to the login page notifying the admin that user id
or password is incorrect and prompts him to enter
again the user id and password.
Alternate Path N/A

Post condition Admin is on the Home Page

Exception Path If there is a connection failure the Web Server returns


to the wait state
Other The page will have an option for returning to the
admin home page
Reference

3.2.2 Admin Selects Insert new record:-


Brief Description

The admin can insert a new record of an employee.

13
Status is
Displays updated and
Local
Main Page page of added
Server
insert Database
Update
status

Administrator

Step By Step Description

1) The user selects the option ‘Insert’ on the Main Page.


2) The admin is displayed a new form with lots of textboxes
3) The admin chooses a photograph of the user.
4) After filling the entries, the admin clicks on the next button.
5) Next form is opened. In this the conversion of image to byte is being shown.
6) Click next.
7) Again similar form is opened. This time conversion of byte to bits is shown.
8) After clicking the update button the admin saved a new entry in the database.

Use Case Name: Insert

Priority Essential

Trigger Menu selection

Precondition Admin is connected to the Local server and is on


the Admin Home page.

Basic Path 1. The admin clicks on the Insert option


2. Request is send to the server.
3. The server passes the admin to the insert
page.
4. On the page is displayed all the entries to be
filled.
5. The booking details displayed for each entry
on the page consist of the following fields
• ID
• Name
• Gender
• Date of birth
• Marital status
• Permanent address
• Phone no.
• Mobile No.
• Email ID
• Department
• Date of joining
• Designation

14
• Salary per annum
• Education Qualification
6. The server passes the admin to the updation
page.
7. The user clicks on the next button
8. The request goes to the server
9. The server updates the status of that entry in
the corresponding table in the database.
10. The server returns the admin to the admin
home page

Alternate Path N/A

Post condition Admin is on the Admin Home Page

Exception Path If there is a connection failure the Web Server returns


to the wait state
Other The page will have an option for returning to the
admin home page
Reference

3.2.3 View records:-


Brief Description

The admin can view all the records of either a single employee or the whole records.

Displays list Records are


Local deleted
Main Page of all
Server from
records Database
Delete
Select View Booking
All records

Administrator

Step By Step Description

For this use case to be initiated the admin needs to be connected to the Intranet and be
on the admin Home page of the NLB

1. The admin selects the view old bookings option on the admin home page.
2. The server passes the admin to the view old bookings page\

15
3. On this page is displayed in a tabular form all those booking entries whose
status is either approved or disapproved.
4. Each entry has column in which there is a delete button
5. The user clicks on the delete button for a particular entry
6. On clicking the deleting button the corresponding entry row is deleted from
the from the database
7. The server returns the admin to the view old bookings page

Use Case Name: View Old Bookings

Priority Essential

Trigger Menu selection

Precondition Admin is connected to the Patni web server and is


on the Admin Home page of NLB

Basic Path 1. The admin clicks on the view old bookings


page
2. The server passes the admin to the view old
bookings page.
3. On the view old bookings page, all those
entries whose status is set to ‘Approved’ or
‘Disapproved’ are listed in a tabular form
4. Maximum entries that can be listed are 10
5. On each row there is a delete option
6. The admin chooses on entry to be deletes
7. The admin clicks on the delete button for the
corresponding chosen
8. On clicking the delete button, the
corresponding entry is deleted from the
database.
9. The server passes the admin to the view old
bookings page.
Alternate Path N/A

Post condition Admin is on the View Old Bookings Page

Exception Path If there is a connection failure the Web Server returns


to the wait state
Other The page will have an option for returning to the
admin home page
Reference

16
3.2.4 Add Devices
Brief Description

The admin can view list of all devices. He can add or delete devices.

New
Enter device devices are
name & click on added to
add new devices database

Displays list of
Admin all Devices
Home Server Delete devices
with Device ID
Page Selected
Select Add
Devices are
devices deleted from
Update devices database
Administrator

Selected Devices
are updated

Step By Step Description

For this use case to be initiated the admin needs to be connected to the Intranet and be
on the admin Home page of the NLB

1. The admin selects the update devices option on the admin home page.
2. The server passes the admin to the update devices page.
3. On this page one grid view appears displaying the list of all devices with a
delete button with each device. If user wants to add any new devices there is
one Add new devices button and a textbox to enter the new device name.
4. If the admin selects a device from the list and clicks on the delete button.
5. That particular entry of the corresponding row is deleted from the database.
6. If admin wants to add new devices then he enters the details of new device to
be added and clicks on add new devices button.
7. Clicking on it he can add list of new devices to the database.
8. The server returns the admin to the modify devices page.

17
Use Case Name: Add Devices

Priority Essential

Trigger Menu selection

Precondition Admin is connected to the Patni web server and is


on the Admin Home page of NLB

Basic Path 1. The admin selects the update


devices option on the admin home
page.
2. The server passes the admin to the
update devices page.
3. On this page one grid view appears
displaying the list of all devices with
a delete button with each device. If
user wants to add any new devices
there is one Add new devices button
and a textbox to enter the new
device name.
4. If the admin selects a device from
the list and clicks on the delete
button.
5. That particular entry the
corresponding row is deleted from
the database.
6. If admin wants to add new a device
then he enters details of new device
to be added and clicks on add new
devices button.
7. Clicking on it he can add list of new
devices to the database.
8. The server returns the admin to the
modify devices page.
Alternate Path N/A

Post condition Admin is on the Modify Devices Page

Exception Path If there is a connection failure the Web Server


returns to the wait state
Other The page will have an option for returning to the
admin home page
Reference

3.2.5 Add Business Unit


Brief Description

The admin can view list of all Business Unit (Department). He can limit the lab

18
booking request from particular departments by editing the list of business units.

Selected
Update selected
Business Unit is
Business Unit deleted from
database
Displays list of all
Admin Serve Business Unit Add new
Home r who can book the Business Unit
Page lab button
New
Add Business Business unit
Unit
are added to
Delete Business unit database
Administrator
Selected
Business Unit is
deleted from
database

Step By Step Description

For this use case to be initiated the admin needs to be connected to the Intranet and be
on the admin Home page of the NLB

1. The admin selects the Add Business Unit option on the admin home page.
2. The server passes the admin to the Add Business Unit page.
3. On this page one grid view appears displaying the list of all business units
with a delete button with each business unit. If user wants to add any new
business unit there is one Add new business unit button and a textbox to enter
the new business unit name.
4. If the admin selects a business unit from the list and clicks on the delete
button.
5. That particular entry of the corresponding row is deleted from the database.
6. If admin wants to add new business unit then he enters the details of new
business unit to be added and clicks on add new business unit button.
7. Clicking on it he can add list of new business unit to the database.
8. The server returns the admin to the Add Business Unit page.

Use Case Name: Add Business unit

Priority Essential

Trigger Menu selection

19
Precondition Admin is connected to the Patni web server and is
on the Admin Home page of NLB

Basic Path
1. The admin selects the Add Business
Unit option on the admin home
page.
2. The server passes the admin to the
Add Business Unit page.
3. On this page one grid view appears
displaying the list of all business
units with a delete button with each
business unit. If user wants to add
any new business unit there is one
Add new business unit button and a
textbox to enter the new business
unit name.
4. If the admin selects a business unit
from the list and clicks on the delete
button.
5. That particular entry of the
corresponding row is deleted from
the database.
6. If admin wants to add new business
unit then he enters the details of new
business unit to be added and clicks
on add new business unit button.
7. Clicking on it he can add list of new
business unit to the database.
9. The server returns the admin to the
Add Business Unit page
Alternate Path N/A

Post condition Admin is on the Add Business Unit Page.

Exception Path If there is a connection failure the Web Server


returns to the wait state
Other The page will have an option for returning to the
admin home page
Reference

3.2.6 Add Location


Brief Description

The admin can view list of all locations. He can limit the lab booking request from
particular locations by editing the list of locations.

20
Selected
Location is
Update selected
Location deleted from
database

Displays list of all


Admin Serve Location who can Add new
Home r book the lab Location button
Page
New
Add Location Locations are
added to
Delete Location database
Administrator
Selected
Location is
deleted from
database

Step By Step Description

For this use case to be initiated the admin needs to be connected to the Intranet and be
on the admin Home page of the NLB

1. The admin selects the Add Location option on the admin home page.
2. The server passes the admin to the Add Location page.
3. On this page one grid view appears displaying the list of all location with a
delete button with each location. If user wants to add any new location there is
one Add new location button and a textbox to enter the new location name.
4. If the admin selects a location from the list and clicks on the delete button.
5. That particular entry of the corresponding row is deleted from the database.
6. If admin wants to add new location then he enters the details of new location
to be added and clicks on add new location button.
7. Clicking on it he can add list of new location to the database.
8. The server returns the admin to the Add Location page.

Use Case Name: Add Location

Priority Essential

Trigger Menu selection

Precondition Admin is connected to the Patni web server and is


on the Admin Home page of NLB

Basic Path
1. The admin selects the Add Location
option on the admin home page.

21
2. The server passes the admin to the
Add Location page.
3. On this page one grid view appears
displaying the list of all location
with a delete button with each
location. If user wants to add any
new location there is one Add new
location button and a textbox to
enter the new location name.
4. If the admin selects a location from
the list and clicks on the delete
button.
5. That particular entry of the
corresponding row is deleted from
the database.
6. If admin wants to add new location
then he enters the details of new
location to be added and clicks on
add new location button.
7. Clicking on it he can add list of new
location to the database.
8. The server returns the admin to the
Add Location page.
Alternate Path N/A

Post condition Admin is on the Add Location Page.

Exception Path If there is a connection failure the Web Server


returns to the wait state
Other The page will have an option for returning to the
admin home page
Reference

3.2.7 Log Out

Brief Description

The admin logs out from the NLB

22
Server Displays NLB
Selects Log Out Home Page
option

Admin

Step By Step Description

For this use case to be initiated the admin has to be on the admin home page of
NLB

1. The admin selects the option Log Out


2. The server passes the admin to the NLB Home Page
3. After logging out, the admin cannot access the admin home page without
logging in

Use Case Name: Log Out

Priority Essential

Trigger Menu selection

Precondition Admin is connected to the Patni web server and is


on the Admin Home page of NLB

Basic Path 1. The admin clicks on the Log Out Button


2. The server passes the admin to the NLB
Home page
3. The admin cannot access the Admin Home
page without logging in again

Alternate Path N/A

Post condition Admin is on the NLB Home Page

Exception Path If there is a connection failure the Web Server returns


to the wait state
Other The page will have an option for returning to the
admin home page
Reference

23
3.3 User Module

3.3.1 Make a new Request

Brief Description

The user makes a new request for booking the lab by filling in the form

Add new request


to database Database

New Web Server


Generate Booking ID
Request from database
Fill the request form,
Make a new Page upload attachments
request and click on submit Database
button

User Checks if <<includes>>


dates are Mail Send
available Checks if
first time to admin
request Checks if all the
form details are
Validate filled correctly
Validate
Booking Dates Form
Details
Validate
Employee Details

Step By Step Description

For this use case to be initiated the user must be connected to the intranet and
must be on the NLB Home page

1. The user clicks on the link Make a New request


2. The server passes the user to new request page
3. The user is displayed a form
4. The user fills in the Employee ID in the form
5. The user clicks on the select booking dates link image to select booking
dates.
6. He can check the previously done bookings on the dates and time selected
by him by clicking on Check Dates.
7. The user can only book the dates if those are no previous bookings done
on the date time selected by him.
8. The user is returned to the home page after choosing dates.

24
9. If the request is done for the first time than blank fields are displayed to
the user but if the user has requested earlier also than his details are
automatically displayed in the fields.
10. He fills the form and uploads attachments related to the project.
11. The user after filling the complete form clicks on submit button.
12. The server checks whether the form is complete or not
13. If the form is incomplete the server returns the user to the form and the
user is prompted a message indicating the location in the form which is
incomplete or not filled correctly and should fill in the incomplete fields
correctly to submit the request.
14. If the form is complete then the server generates a new booking id for that
booking and is displayed to the user with booking status pending.
15. The server also retains the form values including the booking id on the
database, update the employee details if they are changed and send e-mail
to the admin notifying him that a new request has been made.

Use Case Name: Make a New Request

Priority Essential

Trigger Menu selection

Precondition User is connected to the Patni web server and is


on the Home page of NLB

Basic Path 1. The user clicks on the make a new request


button
2. The server passes the user to the request page
which consists of the form
3. Initially user has to fill his Employee Id
before proceeding further.
4. Initially the following input fields are
displayed to the user:-
• Start Date
• Start Time
• End Date
• End Time
5. On entering the above details the request is
send to the server
6. The server checks whether the fields are
complete or not
7. If not complete then the server prompts the
user to enter the complete details
8. If complete then the server should perform
the following validations
i. The end date must not be
less than start date

25
ii. The end time must not
be less than start time
iii. The start date and end
date entered by the user
should not lie in between
any of the dates in the
database
9. If the validation is false then the user is
prompted that the dates are not available or
the dates are not valid depending on the
validation that went wrong. If the validation
is true then the user must be prompted that
the dates are available.
10. The user can check all the bookings on the
dates selected by him by clicking on check
status button.
11. The server checks whether any previous
booking has been made or not on the
employee ID entered by the user
12. If a previous booking has not been made then
the following details should be entered by
the user
• Name
• Location
• Email-ID
• Department
• Business Unit
• Extension No
If a previous booking has been made then the
following details should be automatically
generated.
13. The user can upload maximum of three files
and select list of devices.
14. The user submits the form by clicking on the
submit button
15. The request is send the server
16. The server checks whether the fields are
complete are not
17. If incomplete fields are there then server
returns the user to the request page again and
prompts him to fill in all the mandatory fields
or fill the incorrect fields correctly.
18. If the form is complete then the server
generates a booking ID which is displayed to
the user with booking status Pending.
19. Also the sever retains all the form values
including the booking ID generated on the
database and a mail should be send to the
admin
20. The mail should consist of the following
• Employee Id
• Name
• Business Unit
• Extension No
• Booking ID

26
• Project name
• Mail ID
• Attachment(Downloadable by the
admin)
• Booking start date time
• Booking End date time
21. The server prompts the user to check his
status after some time using the booking ID
given to him
22. The server returns the user to the NLB Home
Page
Alternate Path N/A

Post condition User is on the NLB Home Page

Exception Path If there is a connection failure the Web Server returns


to the wait state
Other The page will have an option for returning to the
NLB home page.
Reference

3.3.2 Check Status

Brief Description

The user can check the status of his booking request by entering his booking ID
given to him at the time of making the request.

Enter Databas
Server
Booking ID Searches from e
Select Database and
Check Status Clicks on Check displays the status
status button to the user
User
<<includes>>

Validate
Booking
ID

27
Step By Step Description

For this use case to be initiated, the user must be connected to the intranet and
must be on the NLB Home Page

1. The user clicks on the Check Status option


2. The server passes the user to the to status check page
3. On the page the user is required to enter the booking ID that was given
to him at the time of making the request
4. The user clicks on the Check Status button
5. The server checks with database if booking id is valid and if valid
generates the status of the booking.
6. If booking id is not valid then the server returns the user to the form
and the user is prompted that the booking id is not valid and should fill
a valid booking id.

Use Case Name: Check Status

Priority Essential

Trigger Menu selection

Precondition User is connected to the intranet and is on the


NLB home page

Basic Path 1. The user clicks on the Check Status


option
2. The server passes the user to the status
check page
3. The user enters the booking ID given to
him at the time of making the request
4. The user clicks on Check Status button
5. The request goes to the server
6. The server checks whether the booking
ID has been entered or not
7. If not entered then the server returns the
user to the status check page and
prompts the user to enter the booking ID
8. If booking ID entered the request is send
to the server
9. The server gathers all the booking details
related to the booking ID entered and
displays it to the user
10. The user can go back to the NLB Home
Page

Alternate Path N/A

Post condition User is on the NLB Home Page

Exception Path If there is a connection failure the Web Server returns


to the wait state

28
Other The page will have an option for returning to the
NLB home page
Reference

3.3.3 Cancel Booking

Brief Description

The user can check the status of his booking request by entering his booking ID
given to him at the time of making the request.

If valid searches from


Database and displays the
Booking to the user Databas
Enter e
Booking ID Server
and Employee
Select ID
Cancel Click on show Click on Delete
Booking booking button button
User The Booking
ID is deleted
<<includes>> from the
database
Validate Booking
ID and corresponding
Employee ID

Step By Step Description

For this use case to be initiated, the user must be connected to the intranet and
must be on the NLB Home Page

1. The user clicks on the Cancel Booking option


2. The server passes the user to the to Cancel Booking page
3. On the page the user is required to enter his Booking ID that was given to him at
the time of making the request and his Employee ID
4. The user clicks on the Show Booking button
5. The server checks with database if booking id and employee id is valid and if
valid generates the complete booking details.

29
6. If booking id and employee id are not valid then the server returns the user to the
form and the user is prompted that the booking id is not valid and should fill a
valid booking id.

Use Case Name: Cancel Booking

Priority Essential

Trigger Menu selection

Precondition User is connected to the intranet and is on the


NLB home page

Basic Path 1. The user clicks on the Cancel Booking


option
2. The server passes the user to the Cancel
Booking check page
3. The user enters the employee Id and
booking ID given to him at the time of
making the request
4. The user clicks on Show booking button
5. The request goes to the server
6. The server checks whether the booking
ID has been entered or not
7. If not entered then the server returns the
user to the status check page and
prompts the user to enter the booking ID
8. If booking ID entered the request is send
to the server
9. The server gathers all the booking details
related to the booking ID entered and
displays it to the user
10. The user can delete his booking by
clicking on delete button
11. The user can go back to the NLB Home
Page

Alternate Path N/A

Post condition User is on the NLB Home Page

Exception Path If there is a connection failure the Web Server returns


to the wait state
Other The page will have an option for returning to the
NLB home page
Reference

4. User Characteristics

30
The user of NLB Systems will be the employees of the organization. The
users are expected to have high educational qualifications having a good
experience working online. The user expect a comfortable UI design

31
There are 2 modules in NLB:

1. Administrator
2. User

START

HOME PAGE
Choose One Option

Select to
CHECK STATUS
Select to login as Select to MAKE A Select to CANCEL
ADMINISTRATOR NEW REQUEST BOOKING REQUEST

A B C D

32
A

Enter Login id & Password

NO

Valida
te
details

YES

Select the operation to be performed

Search By
Modify Add Add View New View Old Search By
Start Date
Devices BU Location Requests Requests Booking ID

Update Status

Delete Booking
Record
Add Delete LOGOUT

Home Page
Add Delete

Add Delete Send mail to user


if approved

admin_login Table
bu Table

device_list Table
location Table

booking_empdetails Table
emp_details Table

booking_projdetails Table

33
B

Enter BOOKING ID

Check
NO Please enter
Bookin
valid Booking
g
ID
ID

YES

Displays
the
status

Return to Check Status Page

Booking Details Database

34
C

Enter employee id

Select Booking Dates Display the name and


contact details of the
person who has already
booked the lab for that
Check
time
if dates NO
are
availabl
e

YES

Check
if user
request
NO s for
first
time

YES

Fill all employee


details automatically Enter all personal
from the database by details
comparing employee
id from database
Enter all project
details and select
devices

Upload Attachments
containing details about
topology, project
device_list Table

Add to database booking_empdetails Table

Generate Booking ID booking_projdetails Table

Send Mail to Administrator


bu Table
Show Booking ID to user
Make a NEW REQUEST
location Table
Return to HOME PAGE

emp_details Table

35
D

Enter BOOKING ID

Enter EMPLOYEE ID

Check
NO Please enter
Bookin
valid Booking
g
ID
ID

YES

Displays the
Booking
Details

Click on DELETE to
CANCEL Booking

Do you want
YES
to cancel Delete the booking
your form the database
Booking

NO

Return to Cancel Booking Page

booking_empdetails Table

booking_projdetails Table

36
37
admin_login Logi
n
emp_id
Password

Check emp_details Login


employee ID
details

Select bu Update
BU BU

bu_name bu_name
loc_name loc_name

Select Update
Locati location Locati
on on

device_name
device_name

Selec
Update
t
devic
device_list Device
es
s Administrator
Employee

emp_booki
edate d
sdate

Che Upda
ck booking_projdetails te
Date Statu
s s

Subm
View
it
Request
Detai booking_empdetails
s
ls

emp_bookid
38
TABLES

1.1 admin_login

Column Name Data Type Size Null Value Description


login_id varchar 50 Not allowed Primary key
login_passwd char 10 Not allowed
forget_ques varchar 50 Not allowed
forget_ans varchar 50 Not allowed

1.2 emp_personeldetails

Column Name Data Type Size Null Value Description


emp_id int 04 Not allowed Primary key
emp_name varchar 50 Not allowed
emp_gender Varchar 50 Not allowed
emp_dob Int 04 Allowed
emp_maritalstastu Int 04 Allowed
s
emp_mobileno nchar 10 Not allowed
emp_address varchar 50 Not allowed
emp_mailid varchar 50 Not allowed

1.3 emp_professionaldetail

Column Name Data Type Size Null Value Description


emp_id Int 04 Not allowed secondary key
emp_department Varchar 50 Not allowed
Emp_designation Varchar 50 Not allowed
Emp_doj Date 10 Not allowed

39
Emp_salaryperannu Numeric 09 Not allowed
m

1.4 booking_empdetails

Column Name Data Type Size Null Value Description


emp_id int 04 Not allowed
emp_name varchar 50 Not allowed
emp_bu varchar 50 Not allowed
emp_extn int 04 Not allowed
emp_link int 04 Allowed
emp_mobileno nchar 10 Allowed
emp_loc varchar 50 Not allowed
emp_mailid varchar 50 Not allowed
emp_bookid int 04 Not Allowed Primary Key
(Autogenerate)

1.5 booking_projdetails

Column Name Data Type Size Null Value Description


emp_bookid int 04 Not allowed Primary Key
sdate datetime Not allowed
stime datetime Not allowed
edate datetime Not allowed
etime datetime Not allowed
proj_name varchar 50 Not allowed
proj_details varchar 50 Not allowed
attachments varchar MAX Not allowed
list_devices varchar MAX Not Allowed
book_status varchar 50 Not Allowed
comments varchar MAX Not Allowed

40
1.6 bu

Column Name Data Type Size Null Value Description


bu_id int 04 Not allowed Primary key
bu_name varchar 50 Not allowed

1.7 location

Column Name Data Type Size Null Value Description


loc_id int 04 Not allowed Primary key
loc_name varchar 50 Not allowed

41
42
The NLB is to be deployed on the intranet and can be accessed by
the users by logging onto the intranet.

 The system can be integrated with the employee database


 It can be deployed on the intranet so that the users can have
direct access from their local machine
 It can be integrated with the Global Help desk

43

You might also like