Office Automation System
Office Automation System
Office Automation System
A PROJECT REPORT
Submitted by:
Bhargov Protim Bora
Reg.No: 1408003978
July 2017
TABLE OF CONTENTS
Page
CHAPTER 1: INTRODUCTION 10
1.1 Background 10
1.2 Objective 10
1.3.1 Purpose 10
1.3.2 Scope 11
1.4 Achievements 11
5.2.1 Coding 78
REFERENCES
GLOSSARY
1. INTRODUCTION
Today, computerized processing of transaction data is an activity of almost any
organization. In this generation, every bodys life becomes in computerized. They go
ahead with the computer. The areas of computer applications are literally too
numerous to mention. Computers have become an integral part of mans every day.
They dominate every sphere of life be it entertainment, education, banking,
insurance, medicine, design or manufacturing. Actually this generation is the era of
rapid growth of Information Technology. IT has change the working process in all
fields of human being. So they continue grow and the open new horizons of discovery
and application. One of the primary reasons for the immense popularly of computers
is the speed with which they can accomplish specific tasks. However computer
applications are not always easy to use.
The basic language used in this project are ASP.Net with C#.Net and the
database is created using Microsoft SQL Server 2005.
1.1 Background
The existing system in the office is manual, which is quite tedious and more difficulties
arise in the project management system. The Existing is not automated. The Project
Allotments or the respective documentation is maintained manually in paper, some of
the datas are only computerized. All the operations adding, modifying and deleting
the order of, system administrator by performs various user and document manually.
The project manager does not control all the management. The datas are not shared
systematically. The data sharing is done through manually.
1.2 Objective
Project Office automation system aims at creating an application which will automate
the processes in college office. Using this it is possible to keep a database of college
information like information about the students studying in various courses, employee
information in various departments, staff and non staff details etc. Transaction
involving fee and salary is also stored. Fees receipts are generated for students.
Reports are maintained for future usage. Search engine is used to search required
information.
1.3.1 Purpose
1.3.2 Scope
1.4 Achievements
Data validation
Performance
Reliability
Scalability
Security
Portability
Performance
Time constraint
Cost constraint
.NET Architecture:
DATABASE AN OVERVIEW
A Database is a single organized collection of structured data stored with a minimum
of duplication of data items so as to provide a consistent and controlled pool of data.
This data is common to all users of the system but is independent of programs which
use the data. The independence of database and programs using it means that they
can be changed without changing the other. The users of the database may find it
convenient to imagine that they are using integrated file system.
RDBMS:
RDBMS is an acronym for relational database management system and can be defined
as data program for general purpose data storage and retrieval that organized data
into table consisting the same set of data items (columns). The data is stored in the
Kernel to maintain data security. RDBMS is the database in which multiple tables can
be associated or related to one another based on common data items or files within
the tables. RDBMS provides a way of doing tasks in an understandable and reasonably
uncomplicated manner.
For Example, a name and address file might columns for name, street, city, state, pin
and phone number. A record can be created for each person by filling each field.
Another table consists of the name, employers name and dept. The two tables hold a
relationship where each person has an entity. One of the major features of RDBMS is
the ability to generate a new file with data from two related files.
Functions of RDBMS:
The most important functions of RDBMS are as mentioned below:
Defines database
Modifies structure of database
Queries the database
Adds and deletes the database
Controls the database
Secure Access from public users
Communicate within network
Export and import of data.
Visual Studio supports .Net framework, which provides a common language runtime
and unified programming classes. The biggest facility of ASP.Net is everything is
object-oriented. All aspects of OOP are implemented in ASP.Net and we can also
create multithreaded applications in ASP.Net. Also included in it is the MSDN Library,
which contains all the documentation for these development tools.
From Visual Basic 1.0, which radically simplified writing Windows Applications, to
Visual Basic 4.0, which helped to establish COM2 as the standard Windows object
architecture, the VB language has been a cornerstone of the Windows platform for
nearly a decade.
ASP.Net is the pillar of the .Net Framework, and yet another step forward in evolution
of the language. It is a high level programming language for the .net Framework, and
provides the easiest point of entry to the Microsoft .Net platform.
THE .NET FRAMEWORK
The .Net Framework is a new computing platform that simplifies application
development in the highly distributed environment of the Internet. It is design to fulfill
the following objectives:
1. Performance Requirements.
2. Functional Requirements.
Understanding the requirements specification is critical for the projects success
otherwise the system does not get developed according to the customers wishes.
Performance Requirements:
1. The system should be built in a way such that it is independent of the type of
database used (SQL Server, Oracle etc).
3. High throughput.
4. Security should be high such that no intruder can tamper with data.
5. The access of the system should be traceable to identify who are the users of the system
and when they last logged in to the system.
Hardware Requirement
The server on which this project is to be installed may have the following minimum
hardware requirements:
The client side any low end computer with internet access facility can be used.
Software Requirement
Microsoft SQL Server 2008
ASP.net with C#
.net framework 4.0
IIS
3.5 Conceptual Models
What it is?
The Data Flow Diagram shows the flow of data or information. It can be
partitioned into single processes or functions. Data Flow Diagrams can be grouped
together or decomposed into multiple processes. There can be physical DFD's that
represent the physical files and transactions, or they can be business DFD's (logical, or
conceptual).
The different versions are Context Diagrams (Level 0), Partitioned Diagrams
(single process only -- one level), functionally decomposed, leveled sets of Data Flow
Diagrams.
Data Store
All processes must have at least one data flow in and one data flow out.
All processes should modify the incoming data, producing new forms of
outgoing data.
Each data store must be involved with at least one data flow.
Each external entity must be involved with at least one data flow.
A data flow must be attached to at least one process.
DFDs are nothing more than a network of related system functions and
indicate from where information is received and to where it is sent. It is the starting
point in the system that decomposes the requirement specifications down to the
lowest level detail.
The four symbols in DFD, each of which has its meaning. They are given below:
External entities are outside to system but they either supply input data in the
system or use the system output. These are represented by square of
rectangle. External entities that supply data into a system are sometimes called
Sources. External entities that use system data are sometimes called sinks.
Dataflow models that passages of data in the system and are represented by
line by joining system components. An arrow indicates the direction of the
flow and the line is labeled by the name of the dataflow.
Process show that the systems do. Each process has one or more data inputs
and one or data outputs. Circles in DFD represent them. Each high level
process may be consisting of more than one lower level processes. Process will
be expanded in sequent level DFD. A circle or a bubble represents a process
that transforms incoming data flow into outgoing dataflow.
Receivable process.
Verifiable process.
Disposal process.
File or data store is a repository of data. They contain data that is retained in
the system. Process can enter data into data store or retrieved data from the
data store. An open rectangle is a data store, data at rest.
The following diagrams illustrate the notation and the symbols used to create the DFDs.
: A process.
Context Diagram
DFD LEVEL 1
Login info
User name
User LOGIN Login
Password 1.0
Login status
Data
Data
User Employee
Employee data
Info management
Info
2. 0
Leave data Leave data
Employee
User
Leaves management
Status Status
3. 0
leaves
Fees
Status
Log Data
Employee
User
Call Log
Log Data
5.0
Call Log
Entity-Relationship Model
Simply stated the ER model is a conceptual data model that views the real
world as entities and relationships. A basic component of the model is the Entity-
Relationship diagram which is used to visually represent data objects. Since Chen
wrote his paper the model has been extended and today it is commonly used for
database.
Entities
Entities are the principal data object about which information is to be collected.
Entities are classified as independent or dependent (in some methodologies, the terms
used are strong and weak, respectively). An independent entity is one that does not rely
on another for identification. A dependent entity is one that relies on another for
identification. .
Relationships
A Relationship represents an association between two or more entities.
Relationships are classified in terms of degree, connectivity, cardinality, and existence.
Attributes
Attributes describe the entity of which they are associated. A particular instance
of an attribute is a value. The domain of an attribute is the collection of all possible
values an attribute can have. The domain of Name is a character string.
Classifying Relationships
Relationships are classified by their degree, connectivity, cardinality, direction,
type, and existence. Not all modeling methodologies use all these classifications.
Degree of a Relationship
The degree of a relationship is the number of entities associated with the
relationship. The n-ary relationship is the general form for degree n. Special cases are
the binary, and ternary, where the degree is 2 and 3 respectively.
Direction
The direction of a relationship indicates the originating entity of a binary
relationship. The entity from which a relationship originates is the parent entity; the
entity where the relationship terminates is the child entity.
Existence
Existence denotes whether the existence of an entity instance is dependent upon
the existence of another, related, entity instance. The existence of an entity in a
relationship is defined as either mandatory or optional.
Generalization Hierarchies
A generalization hierarchy is a form of abstraction that specifies that two or
more entities that share common attributes can be generalized into a higher level entity
type called a supertype or generic entity. The lower-level of entities become the
subtype, or categories, to the supertype. Subtypes are dependent entities.
ER Notation
Entities are represented by labeled rectangles. The label is the name of the
entity.
Relationships are represented by a solid line connecting two entities. The
name of the relationship is written above the line. Relationship names should
be verbs.
Attributes, when included, are listed inside the entity rectangle. Attributes
which are identifiers are underlined. Attribute names should be singular nouns.
Cardinality of many is represented by a line ending in a crow's foot. If the
crow's foot is omitted, the cardinality is one.
Existence is represented by placing a circle or a perpendicular bar on the line.
Mandatory existence is shown by the bar (looks like a 1) next to the entity for
an instance is required. Optional existence is shown by placing a circle next to
the entity that is optional.
Existence is represented by placing a circle or a perpendicular bar on the line.
Mandatory existence is shown by the bar (looks like a 1) next to the entity for
an instance is required. Optional existence is shown by placing a circle next to
the entity that is optional.
3. SYSTEM DESIGN
System design is the solution to the creation of a new system. This phase is
composed of several systems. This phase focuses on the detailed implementation of
the feasible system. It puts emphasis on translating design specifications to
performance specification. System design has two phases of development logical and
physical design.
Login
Administrator
Employees
Leave Details
Call Log
Very careful attention had to be given to input design, which is a major part of
the overall system design. In order to make the data entry as easy, logical and error
free as possible, specific standards had been followed. Validation checks, provided in
the system prevented the user in entering incorrect, erroneous data. This made sure
that, only valid data had been available for data processing. If valid data was entered,
then meaningful error messages had been prompted to enter correct data. The
interactive screen formats facilitate the entry of valid data.
3.2.1 VALIDATIONS:
Some fields are having only number, as an I/P. For this key ASCII is checked. If
they entered characters, it would display the message to enter number only. Exchange
rates field will be validated for number and dot symbols.
3.2.2 INPUT DESIGN OBJECTIVES:
The numbers of clear objectives of input design are,
To produce a cost effective method of input
To achieve the highest possible level of accuracy
To ensure that the input is acceptable to and understand by the user
staff
Output, as you probably know, generally refers to the results and information
that are generated by the system. For many end-users, output is the main reason for
developing the system and the basis on which they will evaluate the usefulness of the
application. Most end users will not actually operate the information system or enter
data through workstations, but they will use the output from the system.
When designing output, systems analysts must accomplish the following.
Determine what information to present
Decide whether to display, print, or speak the information and select the
output medium.
Arrange the presentation of information in an acceptable format.
Decide how to distribute the output to intended recipients.
That alignment of information on a display or printed document is termed as layout.
Accomplishing the general activities listed above will require specific decisions, such as
whether to use preprinted forms when preparing reports and documents, how many
lines to plan on a printed page, or whether to use graphics and color.
The output design is specified on layout performs, sheets that describe the
location characteristics, and format of the column headings and pagination. As we
indicated at the beginning of this discussion, these elements are analogous to an
architects blue print that shows the location of the each component.
3.4 DATABASE DESIGN
Database structure
TABLE NAME: employee
TABLE NAME:serviceEngg
The Software Design Description Document has been used as input in the
implementation process. The actual implementation has been done using VB.net.
VB.NET has been used to interact with the backend database. In this
implementation, MS SQL Server has been used as the backend RDBMS. VB.NET
processes the inputs or commands given by the user and translates them in the
commands understandable to the backend database. The output produced by the
backend database are also handled by VB.NET which then displayed on the desktop
screen.
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data;
using System.Data.SqlClient;
}
protected void ImageButton2_Click(object sender, ImageClickEventArgs e)
{
if (rbuser.Checked == true)
{
login();
}
else if (rbse.Checked == true)
{
logse();
}
else
{
Label1.Text = "Select User Type";
}
}
void login()
{
SqlDataAdapter da = new SqlDataAdapter("select * from login where
empid='" + txtuser.Text + "'", con);
DataSet ds = new DataSet();
da.Fill(ds);
if (ds.Tables[0].Rows.Count == 0)
{
Label1.Text = "User Not Found";
}
else
{
if (txtpass.Text ==
ds.Tables[0].Rows[0].ItemArray[1].ToString())
{
Label1.Text = "Successfull";
Session["Uname"] = txtuser.Text;
Session["Permission"] =
ds.Tables[0].Rows[0].ItemArray[2].ToString();
if (Session["Permission"].ToString() == "Admin")
{
Response.Redirect("Admin.aspx");
}
else if (Session["Permission"].ToString() == "User")
{
Response.Redirect("MHome.aspx");
}
}
else
{
Label1.Text = "Invalid Password. Try Again...";
}
}
}
void logse()
{
SqlDataAdapter da = new SqlDataAdapter("select * from serviceEngg where
empid='" + txtuser.Text + "'", con);
DataSet ds = new DataSet();
da.Fill(ds);
if (ds.Tables[0].Rows.Count == 0)
{
Label1.Text = "User Not Found";
}
else
{
if (txtpass.Text == ds.Tables[0].Rows[0].ItemArray[3].ToString())
{
Label1.Text = "Successfull";
Session["Uname"] = txtuser.Text;
Response.Redirect("xxxx.aspx");
}
else
{
Label1.Text = "Invalid Password. Try Again...";
}
}
}
}
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
}
protected void btnreset_Click(object sender, EventArgs e)
{
txtaddress.Text = "";
txtbasic.Text = "";
txtda.Text = "";
txtdoj.Text = "";
txtemployeeid.Text = "";
txtgradepay.Text = "";
txthra.Text = "";
txtmedical.Text = "";
txtname.Text = "";
txtphone.Text = "";
txtrefreshercourse.Text = "";
ddlcategory.Text = "";
ddldepartment.Text = "";
ddldesignation.Text = "";
ddleduqualification.Text = "";
ddlgender.Text = "";
}
protected void btnsubmit_Click(object sender, EventArgs e)
{
try
{
con.Open();
SqlCommand com = new SqlCommand("insert into employee values('" +
txtemployeeid.Text + "','" + txtname.Text + "','" + txtaddress.Text + "','" +
txtphone.Text + "','" + ddlgender.Text + "','" + txtdob.Text + "','" +
txtdoj.Text + "','"+ ddldepartment.Text +"','"+ ddldesignation.Text +"','"+
ddlcategory.Text +"','"+ ddleduqualification.Text +"','"+
txtrefreshercourse.Text +"','"+ txtbasic.Text + "','"+ txtgradepay.Text +"','"+
txtda.Text +"','"+ txthra.Text + "','"+ txtmedical.Text +"','Path')", con);
com.ExecuteNonQuery();
con.Close();
Response.Redirect("employee.aspx");
}
catch (Exception ex)
{
con.Close();
}
}
protected void LinkButton1_Click(object sender, EventArgs e)
{
Session.Clear();
Response.Redirect("index.aspx");
}
}
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
}
protected void btnsubmit_Click(object sender, EventArgs e)
{
try
{
con.Open();
SqlCommand com = new SqlCommand("insert into leaveapplied values('"
+ Session["empid"].ToString() + "','" + txtappliedon.Text + "','" + ddleavetype
+ "','" + txtleavefrom.Text + "','" + TxtleaveTo.Text + "','" + txtnoofdays.Text
+ "','Pending')", con);
com.ExecuteNonQuery();
con.Close();
Response.Redirect("leaveapplied.aspx");
}
catch (Exception ex)
{
con.Close();
}
}
protected void btnreset_Click(object sender, EventArgs e)
{
txtappliedon.Text = "";
//txtisgranted.Text = "";
txtleavefrom.Text = "";
//txtleaveid.Text = "";
TxtleaveTo.Text = "";
txtnoofdays.Text = "";
//ddleavetype.Text = "";
}
void loadrec()
{
//Session["empid"] = "e1";
SqlDataAdapter da = new SqlDataAdapter("Select
employeeid,appliedon,leavefrom,leaveto,nodays,isgranted from leaveapplied where
employeeid='" + Session["empid"].ToString() + "'", con);
DataSet ds = new DataSet();
da.Fill(ds);
GridView1.DataSource = ds.Tables[0];
GridView1.DataBind();
}
protected void LinkButton1_Click(object sender, EventArgs e)
{
Session.Clear();
Response.Redirect("index.aspx");
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient;
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
Code efficiency has been achieved through proper validation using various methods
in VB.net coding. Fist no reminder data can be added, viewed, edited and d e l e t e d
t o database w i t h o u t l o g i n o r s e s s i o n . For t h i s w e h a v e implanted session
tracking techniques through VB.net. Codings have been used to validate various
f o r m s to ensure correct data should enter in database.
5.3Testing Approach
Unit testing and integration testing have been carried out as per the
test cases designed at paragraph 4.6.
TESTING PROCEDURES
Unit Testing: A Unit corresponds to a form/class in the package. Unit testing focuses
on verification of the corresponding form or class. In this level we have tested all our
forms/classes individually. This testing includes testing of control paths, interfaces,
local data structures, logical decisions, boundary conditions, and error handling. From
this testing we were able to save, retrieve, update, delete and the search
records on a table.
Integration Testing: Integration testing is used to verify the combination of the
software modules. In this level, we have tested by combining all unit tested
forms into a subsystem. Here we found that the subsystems are performing
well.
System Testing: System testing is used to verify, whether the developed system meets
the requirements.
Acceptance Testing: Acceptance is the part of the project by which the customer
accepts the product. The system under consideration is tested for user acceptance by
constantly keeping in touch with the system users at time of developing and making
changes whenever required.
We hope that after the acceptance testing the system will perform the best result for
the organization. When modification will be made, we will use regression testing
during the maintenance of the system.
The Software System delivered to the customer may undergo changes. Changes may
be due to addition of new functional modules or performance enhancement .For this
purpose proper maintenance of the system is must.
Expected outcome : The user should not get register any record without
filling all necessary fields and some error message
follow
The user should not get registered again with same
patient id
Step No. Data Used Actual Outcome
1. Click on the save button An alert message came to each
without entering valid details details and focused on the
respective fields
2. Click on the submit button A message displayed about
after entering a duplicate existence of such patient
patient id
For Management
Office Automation System is primarily designed for providing information
from the data after processing them. This system is designed for supplying
information to the strategic level of management from the operational
control. It includes almost all the functional areas needed like keeping
Employee Records Student Records and Fees Records.
For User
With this electronic data processing system, the operators will able to
maintain the following task:
Software development is never ending process and continues the life of the software
as per the changing needs of the user from time to time. The project is no doubt has
been developed keeping in mind easy modification and enhancement that may be
required from time to time.
However, there are many scopes to modify this software. As because due to
shortage of time, we here become unable to include many things. We are trying to
cover all the existing system for student record management and all official
information details but due to shortage of time we become unable to include many
things.
This project has many future applications like it can be used in any Medical
Laboratory or Diagnostic Center.
This project was build keeping in mind all the requirements of an educational
institutes and it can be implemented in any such type of organization with very few
modification. With modifications it can be possible use this system in a network.
But incorporating all these features needs more time. It is not possible to
develop such a huge extensive project within this limited time. So the project is
designed in such a way that it can be modified in future easily. The tables are given in
such a way to make understanding of the system easy.
CONCLUSION
After implementing the application it will contain the advantages were incomparable
to the present contemporary systems used by company. The most admirable feature
founded was its simplicity in terms of application to the user but its highly beneficial
outputs cant be ignored. The users will be highly benefited after using the system.
It is hoped that this project will help the future developers to modify and implement
the system. After modifying some techniques of the programs, it will give us the best
performance as our requirements. The project will be very useful for the users.