Upload
dania-khalid
View
65
Download
2
Embed Size (px)
Citation preview
Final Year Project Report
Business Intelligent Reporting System
B.S. Computer Engineering, Batch 2005
Project Advisor
Noman Hasany
Assistant Professor
SSUET
Submitted by
Sadaf Nasim 2005-CE-187
Mariam Firdous 2005-CE-182
Faiza Urooj 2005-CE-189
Mahvash Iftikhar Querashi 2005-CE-204
DEPARTMENT OF COMPUTER ENGINEERING
Sir Syed University of Engineering and Technology
University Road, Karachi – 75300
Jan 2009
PREFACE
Business Intelligent Reporting System is used to facilitate the HR department which keep and
manage the records of employees and follow the recruitment system as well.BRIS not only speed
up the HR processing but it also provide convenience to candidate to enjoy easiness for applying
the job and it also facilitate the top level management to take the advantage of Natural language.
BIRS makes it easy to enquire data base and to get successive result from search because it stops
users to write hectic data base queries. A manager can easily access any personnel information and
employee information as well.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 4
ACKNOWLEDGMENT
First of all, we cordially thank full to the Almighty Allah who praised us with the ability
and strength of character to complete this project which are assigned to do. Secondly, we
must be grateful to our internal Mr.Noman Hasany who helped us in this project.
And of course all of our teachers who have been great help and enormous source of
inspiration. During the project when we got in awkward positions, where nothing seemed to
make sense, our class lectures and lab instructions led us through those immensely dark
tunnels. Most of our respected teachers helped us when we needed it most. This is just not
concerning the project, it has been so over the last four years and we will never be able to
thank them enough. We also acknowledge our departmental staff, university staff or other
then this.
Last but not least we would like to thank to all our well wishers.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 5
INTRODUCTION TO GROUP MEMBERS
Sadaf Nasim 2005-CE- 187
(Group Leader, System Designer)
Immediate Contact: (021-6692138,0342-2154026, [email protected])
Mariam Firdous 2005-CE- 182
(System Analyst)
Immediate Contact: (t021-6675820, 0343-2664448, [email protected])
Faiza Urooj 2005-CE- 189
(Software Quality Analyzer)
Immediate Contact: (021-4983800, 0334-3973794, [email protected])
MahvashI.Querashi 2005-CE- 204
(System Developer)
Immediate Contact: (021-4969657, 0343-3498398, [email protected]
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 6
CERTIFICATE OF COMPLETION
This is to certify that the following students
Sadaf Nasim (GL) 2005-CE-187
Mariam Firdous 2005-CE-182
Faiza Urooj 2005-CE-189
Mahvash Iftikhar.Querashi 2005-CE-204
Have successfully completed their final year project named
Business Intelligent Reporting System
In the partial fulfillment of the Degree of Bachelor of Science in
Computer Engineering
_____________
Name of Advisor
Designation SSUET
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 7
ABSTRACT
This project describes a Natural Language interface to databases which consists of two parts: a
Natural Language Processing (NLP) and a data base application program. The NLP is a general
purpose language which builds a formal representation of the meaning of the English utterances it
is given. The database application is a module which builds a query in order to extract information
from the database. This approach yields an interface which is both extremely robust and portable.
This interface can be extended for several databases.
A major benefit of using natural language to access the information in a data base is that it stops
writing from the hectic queries.
Project aims to build a platform from which structured and textual information about HR domain
can be accessed in an integrated way through natural language queries.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 8
TABLE OF CONTENTS
PREFACE ii
ACKNOWLEDGEMENTS iii
INTRODUCTION TO GROUP MEMBERS iv
CERTIFICATE OF COMPLETION BY PROJECT ADVISOR v
ABSTRACT vi
TABLE OF CONTENTS vii
LIST OF FIGURES ix
LIST OF TABLES x
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 9
Table of Contents
Introduction .................................................................................................................................... 15
1.1 Goals and objectives ............................................................................................................ 15
1.2 System statement of scope ................................................................................................. 16
1.3 System context ...................................................................................................................... 16
1.4 Theoretical Background ....................................................................................................... 16
1.5 Technology & Tools .............................................................................................................. 18
1.5.1 Object oriented technology ........................................................................................... 18
1.5.2 Tools ................................................................................................................................ 21
Usage scenario .................................................................................................................................... 30
2.1 User profiles ........................................................................................................................... 32
2.2 Use-cases .............................................................................................................................. 33
2.3 Special usage considerations ............................................................................................. 38
Functional and Data Description ........................................................................................................ 39
3.1 System Architecture .............................................................................................................. 40
3.1.1 Architecture model ............................................................................................................ 41
3.1.2 Modules overview ............................................................................................................. 43
3.2 Data Description .................................................................................................................... 43
3.2.1 Major data objects ......................................................................................................... 44
3.2.2 System level data model ............................................................................................... 45
3.3 System Interface Description .............................................................................................. 46
Module Description ............................................................................................................................ 47
4.1 Keyword extraction ............................................................................................................... 47
4.1.1 Scope of generating keywords .................................................................................... 49
4.1.2 Flow diagram .................................................................................................................. 50
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 10
4.1.3 Restriction / Limitation ................................................................................................... 51
4.1.4 Performance issue ......................................................................................................... 51
4.1.5 Design constraint ........................................................................................................... 51
4.2 SQL query generation .......................................................................................................... 52
4.2.1 Scope of query generation ........................................................................................... 55
4.2.2 Flow diagram .................................................................................................................. 55
4.2.4 Design issue ................................................................................................................... 56
4.3 SQL Query execution ........................................................................................................... 56
4.4 Report generation ................................................................................................................. 57
Behavioral Model and Description ..................................................................................................... 59
5.1 Description for system behavior.......................................................................................... 59
5.1.1 Events/interrupts ............................................................................................................ 59
5.1.2 States ............................................................................................................................... 60
5.2 State Transition Diagrams ................................................................................................... 60
5.3 Control specification ............................................................................................................. 65
System Prototype and Modeling .................................................................................................... 66
6.1 Description of system modeling approach ........................................................................ 69
6.1.1 System/information engineering and modeling ......................................................... 69
6.1.2 Software Requirement Analysis. ................................................................................. 69
6.1.3 Design .............................................................................................................................. 73
6.1.4 Code generation ............................................................................................................. 76
6.1.5 Testing ............................................................................................................................. 80
6.2 Special performance issues. ............................................................................................. 80
6.2.1 Complex query. .............................................................................................................. 80
6.2.4 Heavy Database: ........................................................................................................ 80
6.3 Prototyping requirement ..................................................................................................... 81
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 11
System Estimates and Actual Outcome .............................................................................................. 81
7.1 Historical data used for estimates ...................................................................................... 82
7.2 Estimation techniques applied and results ........................................................................ 83
7.3 Actual Results and Deviation from Estimates ................................................................... 94
7.4 System Resources ................................................................................................................ 94
7.4.1 System Resources Required ....................................................................................... 94
7.4.2 System Resources Used .............................................................................................. 94
Test Plan ............................................................................................................................................. 95
8.1 System Test and Procedure ................................................................................................ 96
8.2 Testing strategy ..................................................................................................................... 96
8.2.1 Unit testing ...................................................................................................................... 96
8.2.2 INTEGRATION TESTING .......................................................................................... 104
8.2.3 Validation testing .......................................................................................................... 110
8.2.4 High-order testing ........................................................................................................ 112
8.3 Testing resources and staffing .......................................................................................... 116
8.4 Test metrics .......................................................................................................................... 116
8.5 Testing tools and environment .......................................................................................... 117
Future Enhancement and Recommendations ................................................................................... 118
Conclusion / Summary ..................................................................................................................... 121
A.APPENDICES ........................................................................................................................... 123
B.REFERENCES ........................................................................................................................... 131
C.GLOSSARY ................................................................................................................................ 132
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 12
LIST OF FIGURES
Chapter 1
Figure 1.1 ........................................................................................................................................ 21
Chapter2
Figure 2.1 ........................................................................................................................................ 33
Figure 2.2 ........................................................................................................................................ 34
Figure 2.3 ........................................................................................................................................ 35
Figure 2.4 ........................................................................................................................................ 36
Figure 2.5 ........................................................................................................................................ 37
Chapter3
Figure 3.1 ........................................................................................................................................ 40
Figure 3.2 ........................................................................................................................................ 41
Figure 3.3 ........................................................................................................................................ 45
Chapter4
Figure 4.1 ........................................................................................................................................ 51
Figure 4.2 ........................................................................................................................................ 57
Chapter5
Figure 5.1 ........................................................................................................................................ 61
Figure 5.2 ........................................................................................................................................ 61
Figure5.3 ......................................................................................................................................... 62
Figure 5.4 ........................................................................................................................................ 62
Figure 5.5 ........................................................................................................................................ 63
Figure 5.6 ........................................................................................................................................ 63
Figure 5.7 ........................................................................................................................................ 64
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 13
Chapter6
Figure 6.1 ........................................................................................................................................ 66
Figure 6.2 ........................................................................................................................................ 67
Figure6.3 ......................................................................................................................................... 67
Figure 6.4 ........................................................................................................................................ 68
Figure 6.5 ........................................................................................................................................ 71
Figure 6.6 ........................................................................................................................................ 72
Figure 6.7 ........................................................................................................................................ 74
Chapter7
Figure 7.1 ........................................................................................................................................ 84
Figure 7.2 ........................................................................................................................................ 85
Figure7.3 ......................................................................................................................................... 86
Figure 7.4 ........................................................................................................................................ 87
Figure 7.5 ........................................................................................................................................ 88
Figure 7.6 ........................................................................................................................................ 91
Figure 7.7 ........................................................................................................................................ 92
Figure 7.8 ........................................................................................................................................ 91
Figure 7.9 ........................................................................................................................................ 92
Figure 7.10 ...................................................................................................................................... 93
Chapter8
Figure 8.1 ...................................................................................................................................... 112
Figure 8.2 ...................................................................................................................................... 112
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 14
LIST OF TABLES
Chapter 8
Table 8.1 ......................................................................................................................................... 95
Table 8.2 ......................................................................................................................................... 97
Table 8.3 ....................................................................................................................................... 100
Table 8.4 ....................................................................................................................................... 102
Table 8.5 ....................................................................................................................................... 105
Table 8.6 ....................................................................................................................................... 107
Table 8.7 ....................................................................................................................................... 112
Table 8.8 ....................................................................................................................................... 113
Table 8.9 ....................................................................................................................................... 116
E [Type yo
ur ad
dress]
[Type yo
ur p
ho
ne n
um
ber]
[Typ
e you
r e-m
ail add
ress]
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 15
Introduction
We selected this project Business Intelligent Reporting system because it is
advance and the future form of business application. The aim of this is to obtain the
maximum advantage from the stored information it is important to ensure that
personnel at all levels of the organization have easy and transparent access to this
information. It also provides open-mindedness or easiness to implement obscure
database queries, reliability and flexibility for top level management.
1.1 Goals and objectives
Objectives of BIRS are as follows:
To give better interface with the user.
To develop a system with the accuracy better than the existing
system
To avoid from the hectic query.
To provide easy access to database.
To maintain DB simply.
To reduce the number of staff required to manage DB.
System must be convenient, easy set up and efficiently stored. It should not take
upon more memory space and provide fast access. The system must be low
enough in cost to be acceptable to most business men.
This system must require no technical expertise to run that expected to beyond of
anyone able to manage set up easily. The preparation of system for a specific
domain must require basic knowledge.
Obviously the BIRS must aim to have the property that any business
application should:
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 16
Integrity
Security
Reliability
Flexibility
1.2 System statement of scope
BIRS is actually domain based software which need to capture the demand and provided a
solution on the market requirement. It facilitates the user by taking Natural language as
input in free form text which shows user requirement and also provides a convenient access
to applicant to submit their resume. We aim to provide manager a syntax free environment
where s/he can easily inquire any thing related to the HR database due to this BIRS a
layman can also take advantage of stored information.
1.3 System context
BIRS is business oriented software which facilitates any business organization in a
convenient manner and saves the user from hectic database queries. Mostly the
Business Application software‘s also processes Natural language but there is no
versatility. BIRS specialty is to understand the Natural language input wisely which
can be use even by a non-specialist person simply and it gives required output in
the form of reports and table‘s .We took HR department of Business Domain
Technically the query bank is dealing only with concern issues of HR department
1.4 Theoretical Background
The value to our society of being able to communicate with computers in everyday
"natural" language cannot be overstated. Imagine asking your computer "Does this
candidate have a good record on the environment?" or "When is the next televised
National League baseball game?" Or being able to tell your PC "Please format my
homework the way my English professor likes it. Commercial products can already
do some of these things, and AI scientists expect many more in the next decade.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 17
One goal of AI work in natural language is to enable communication between
people and computers without resorting to memorization of complex commands
and procedures. Automatic translation enabling scientists, business people and just
plain folks to interact easily with people around the world is another goal. Both are
just part of the broad field of AI and natural language, along with the cognitive
science aspect of using computers to study how humans understand language.
From the ―Natural Language Research Group at the University of Sheffield
Department of Computer Science‖. Natural Language Processing (NLP) is both a
modern computational technology and a method of investigating and evaluating
claims about human language itself. Some prefer the term Computational
Linguistics in order to capture this latter function, but NLP is a term that links back
into the history of Artificial Intelligence (AI), the general study of cognitive function
by computational processes, normally with an emphasis on the role of knowledge
representations, that is to say the need for representations of our knowledge of the
world in order to understand human language with computers. Natural Language
Processing (NLP) is the use of computers to process written and spoken language
for some practical, useful, purpose: to translate languages, to get information from
the web on text data banks so as to answer questions, to carry on conversations
with machines, so as to get advice about, say, pensions and so on. These are only
examples of major types of NLP, and there is also a huge range of lesser but
interesting applications.NLP is not simply applications but the core technical
methods and theories that the major tasks above divide up into, such as Machine
Learning techniques, which is automating the construction and adaptation of
machine dictionaries, modeling human agents' beliefs and desires etc. This last is
closer to Artificial Intelligence, and is an essential component of NLP if computers
are to engage in realistic conversations: they must, like us, have an internal model
of the humans they converse with."
NL is successfully applied today in many businesses like in sales, marketing,
training, coaching, leadership, customer service, advertising, PR, creative design,
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 18
market research and of course HR. Get in touch to learn more about the many
ways NLP can help you and your organization.
Oftentimes Google and other search engines receive queries in forms of questions,
for example: “what is a mortgage backed security” and “where should I go on
vacation”. We research question specific key phrases relevant to our domain to
answer such questions, providing value and relevancy to user which automatically
passes query to BIRS.
1.5 Technology & Tools
1.5.1 Object oriented technology
A major factor for the use of Object-Oriented approach is to remove some of the
flaws encountered with the procedural approach. In OO, data is treated as a critical
element and does not allow it to flow freely. It bounds data closely to the functions
that operate on it and protects it from accidental modification from outside
functions. OO allows decomposition of a problem into a number of entities called
objects and then builds data and functions around these objects. A major
advantage of OOP is code reusability.
Some important features of Object Oriented programming are as follows:
o Emphasis on data rather than procedure
o Programs are divided into Objects
o Data is hidden and cannot be accessed by external functions
o Objects can communicate with each other through functions
o New data and functions can be easily added whenever necessary
o Follows bottom-up approach
Object Oriented Programming in any language is the use of objects to represent
functional parts of an application and real life entities. For example you may have a
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 19
Person object to hold the data related to a person and even provide some
functionality that this person may be capable of.
Object Oriented Programming has long been used in games to represent the
objects such as a User or an Enemy, or even a Weapon. This amazing way of
programming has proven just as useful in software and web development.
Abstract data types and information hiding in OOP
Inheritance
Polymorphism
Advanced OOP Techniques in PHP
Above are the basic concepts of OOP here are some more advanced
techniques [1]:
Serialization
PHP doesn't support persistent objects; in OOP persistent objects are
objects that keep its state and functionality across multiple invocations of the
application. This means having the ability to save the object to a file or
database and then load the object back. The mechanism is known as
serialization.
PHP has a serialize method which can be called for objects, the serialize
method returns a string representation of the object. However serialize
saves the data members of the object but not the methods.
In PHP4 if you serialize the object to string $s, then destroy the object, then
un-serialize the object to $obj you might still access the object methods! It is
not recommended because:
The documentation doesn't guarantee this behavior so in future versions it
might not work.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 20
This might lead to 'illusions' if you save the serialized version to disk and exit
the script. In future runs of the script you can't un-serialize the string to an
object and expect the methods to be there because the string representation
doesn't have the methods.
Reason for using OO technology
Object-Oriented Programming has the following advantages over conventional
approaches [2]:
o OOP provides a clear modular structure for programs which makes it good
for defining abstract data types where implementation details are hidden and
the unit has a clearly defined interface.
o OOP makes it easy to maintain and modify existing code as new objects can
be created with small differences to existing ones.
o OOP provides a good framework for code libraries where supplied software
components can be easily adapted and modified by the programmer. This is
particularly useful for developing graphical user interfaces.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 21
1.5.2 Tools
We used different software tools for BIRS representation and integration of the modules.
List of tools are as follows:
1. Xampp
Operating system
Apache server
MySQL database
PHP
XAMPP
Figure 1.1
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 22
XAMPP is a free and open source cross-platform web server package; Apache is
primarily used to serve both static content and dynamic Web pages on the World
Wide Web. Many web applications are designed expecting the environment and
features that Apache provides. Apache is the web server component of the popular
LAMP web server application stack, alongside MySQL, and the PHP/Perl/Python
programming languages consisting mainly of the
Apache HTTP Server:
Features:
Apache supports a variety of features, many implemented as compiled modules
which extend the core functionality.
These can range from server-side programming language support to authentication
schemes. Some common language interfaces support mod Perl, mod python, Tcl,
and PHP.
Popular compression methods on Apache include the external extension module,
mod_gzip, implemented to help with reduction of the size (weight) of web pages
served over HTTP.
Virtual hosting allows one Apache installation to serve many different actual
websites.
Apache features configurable error messages,
DBMS-based authentication databases,
It is also supported by several graphical user interfaces (GUIs).
MySQL
MySQL, the most popular Open Source SQL database management system, is
developed, distributed, and supported by MySQL AB. MySQL AB is a commercial
company, founded by the MySQL developers. It is a second generation Open
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 23
Source company that unites Open Source values and methodology with a
successful business model [3].
MySQL is a database management system.
A database is a structured collection of data. It may be anything from a
simple list to a picture gallery or the vast amounts of information in a
corporate network. To add, access, and process data stored in a computer
database, you need a database management system such as MySQL
Server. Since computers are very good at handling large amounts of data,
database management systems play a central role in computing, as
standalone utilities, or as parts of other applications.
MySQL is a relational database management system.
A relational database stores data in separate tables rather than putting all
the data in one big storeroom. This adds speed and flexibility. The SQL part
of ―MySQL‖ stands for ―Structured Query Language.‖ SQL is the most
common standardized language used to access databases and is defined by
the ANSI/ISO SQL Standard. The SQL standard has been evolving since
1986 and several versions exist. In this manual, ―SQL-92‖ refers to the
standard released in 1992, ―SQL: 1999‖ refers to the standard released in
1999, and ―SQL: 2003‖ refers to the current version of the standard. We use
the phrase ―the SQL standard‖ to mean the current version of the SQL
Standard at any time.
MySQL software is Open Source.
Open Source means that it is possible for anyone to use and modify the
software. Anybody can download the MySQL software from the Internet and
use it without paying anything The MySQL software uses the GPL (GNU
General Public License), to define what you may and may not do with the
software in different situations. If you feel uncomfortable with the GPL or
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 24
need to embed MySQL code into a commercial application, for buy a
commercially licensed version from us[4].
The MySQL Database is very fast, reliable, and easy to use.
If that is what you are looking for, you should give it a try. MySQL also has a
practical set of features developed in close cooperation with our users. You
can find a performance comparison of MySQL with other database
managers.
MySQL was originally developed to handle large databases much faster
than existing solutions and has been successfully used in highly demanding
production environments for several years. Although under constant
development, MySQL today offers a rich and useful set of functions. Its
connectivity, speed, and security make MySQL highly suited for accessing
databases on the Internet.
MySQL works in client/server or embedded systems.
The MySQL Database Software is a client/server system that consists of a
multi-threaded SQL server that supports different backbends, several
different client programs and libraries, administrative tools, and a wide range
of application programming interfaces (APIs).
A large amount of contributed MySQL software is available. It is very likely that
your favorite application or language supports the MySQL Database Server.
Reason to Use MySQL
Works on many different platforms.
Fully multi-threaded using kernel threads. It can easily use multiple CPUs if
they are available.
Provides transactional and non-transactional storage engines.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 25
A very fast thread-based memory allocation system.
Very fast joins using an optimized one-sweep multi-join.
In-memory hash tables, which are used as temporary tables.
SQL functions are implemented using a highly optimized class library and
should be as fast as possible. Usually there is no memory allocation at all
after query initialization.
The server is available as a separate program for use in a client/server
networked environment. It is also available as a library that can be
embedded (linked) into standalone applications. Such applications can be
used in isolation or in environments where no network is available.
The MySQL database server provides the ultimate in scalability
Sql Database
Integrity
This section provides looks at the concept by SQL to restrict the information that
can be added to the database. Restrictions are usually thought of as negative
(constraints, limitations, confines etc).When they are applied to data integrity, they
do positive job.i.e.that of ensuing you does not inadvertently add junk data to the
database. Data integrity restriction in effect, acts as policemen for database. They
are responsible for protecting the overall integrity of the database from rogue data
that may be introduced by INSERT and UPDATE [5].
Security
Most SQL based system operate in a multi-user environment .this means that at
any time, several different user‘s can access the same database to query ,insert,
update or delete data. Such an environment requires safety devices that are both
built into the DBMS itself and than prevent users from inadvertently computing
data.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 26
PHP programming language
Features of PHP
Some of the important highlights are as follows.
Speed
PHP is considered to be the fastest, when compared with other programming
languages. You can really feel the speed when you are going to, implement live
over the web. When these operations are performed by PHP it is really faster when
compared with other types of scripting languages. Because of its high performance
of speed, PHP is being used for some of the important administrations like the
server administration over the web.
Open Source
PHP is open source, open source is one where the user is given a free license to
remodel or recode PHP, according to their wish. It is open source remember.
Multi Platform
PHP supports various platforms, which mean PHP can be installed on almost every
operating system, like the window−x, Linux, etc.
Easy Syntax
PHP syntax is quite easy to code, all the syntax are similar to the C language
syntax, if you are very new to the programming environment then it
Will be a bit difficult task for you to code the PHP.
PHP VS different languages
1. PHP vs. Perl
The biggest advantage of PHP over Perl is that PHP was designed for scripting for
the web where Perl was designed to do a lot more and can because of this get very
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 27
complicated. The flexibility / complexity of Perl make it easier to write code that
another author / coder has a hard time reading. PHP has a less confusing and
stricter format without losing flexibility. PHP is easier to integrate into existing HTML
than Perl. PHP has pretty much all the 'good' functionality of Perl: constructs,
syntax and so on, without making it as complicated as Perl can be. Perl is a very
tried and true language, it's been around since the late eighties, but PHP is
maturing very quickly.
2. PHP vs. ASP
ASP is not really a language in itself, it's an acronym for Active Server Pages, and
the actual language used to program ASP with is Visual Basic Script or JScript. The
biggest drawback of ASP is that it's a proprietary system that is natively used only
on Microsoft Internet Information Server (IIS). This limits it's availability to Win32
based servers additional components.
3. PHP vs. ASP.net
PHP is a relatively simpler language to use than ASP.net. PHP is has much
better support for the database management system, MySQL. In fact, the
very popular blogging platform, Word Press uses the formidable
combination of PHP coding on MySQL for its content management system,
which includes about hundreds of thousands of blog posts every single day.
Another very popular and frequently updated service that uses the
combination of PHP and MySQL is Wikipedia. ASP.net can also support
MySQL, but PHP is unanimously hailed, by the masses and classes alike,
for its great support for this database management system.
People who use both PHP and ASP.net also maintain their opinion that
PHP is better for embedded support with another database management
system SQLite is described as a relational database management system
and since it is contained in a C programming library, PHP can provide
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 28
better support to it.
PHP has also a very good support for object oriented programming, on
which whole scripting languages are being built nowadays. ASP.net also
provides capable support to OOP.
When it comes to support, PHP wins over ASP.net. The main reason for this is
that PHP is open source. Hence, the support can come freely from all over the
world. In most cases, PHP fixes are made instantly.
PHP can use the command line to perform many everyday activities. Some
of the things that the PHP command line is useful for is for manipulating
across many files and for putting files into multiple directories at once.
These are just some of the important features that PHP's command line is
used for.
PHP is an open source programming language; Programmers can develop
PHP applications virtually at no cost. ASP.net is not free too, but its
extensions are available for free on Windows platforms, Hence, ASP.net is
available to Windows users when they buy it. That puts a bit of restriction in
its use.
ASP.net is compiled into memory in binary code. So, when ASP.net is used
for coding, it is evident that it takes much longer time to process since the
codes need to be retrieved from memory. However, PHP is not compiled
into memory like ASP.net is. It is interpreted at runtime. That is the reason
why PHP coding leads to better speed and even efficiency. However, it
must be said that both PHP and ASP.net can run at supreme speeds and
efficiency when they are coded expertly.
Since PHP is older, there are many people who claim that it is much more
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 29
secure than ASP.net where coding is concerned. ASP.net is much new,
and the security options may not be fully in place yet.
Why use PHP for server-side scripting?
A trend with a lot of new Web Designers is to blindly go for ASP or JSP for creating
dynamic and interactive websites.
PHP is indeed a great choice for dynamic websites and a lot of popular websites do
use PHP as a scripting language.
Reason to use PHP
PHP runs on different platforms such as Windows, Linux, UNIX, etc. PHP is easy
and fast to learn and runs efficiently on the server side
PHP is compatible with almost all servers used today (Apache, IIS, etc.). PHP
supports many databases such as MySQL, Oracle, and PostgreSQL etc. PHP with
MySQL database and Apache Server is a very good and popular combination. PHP
combined with MySQL are cross-platform.
PHP is the widely-used, free, and efficient alternative to competitors such as
Microsoft's ASP and Sun Microsystems JSP. PHP is perfectly suited for Web
development and can be embedded directly into the HTML code. PHP is often used
together with Apache (web server) on various operating systems. It can be also
used with Microsoft's IIS on Windows.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 30
Usage scenario
Project description through the following scenarios
Scenario 1:
This scenario details the login steps of the manager. it is necessary to gain the
access to the other functionality.
1. The manager will login
2. Login will be verified from the verification function
3. Verification will be done through the verification system
4. From the verification function the login will be valid or invalid
Scenario 2:
The session is created through the scenario one. The end user has two perspective
of using the system .one from the searching perspective through NL and another
through filling the applicants‘ form.
The database saves the information for the applicant.
Scenario 2.1
End user adds the applicant through the new applicant panel.
The applicant fills resume having personnel information, educational details,
working experience and the reference. The database saves the detailed information
of the applicant.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 31
Scenario 2.2
The manger after the creation of the session inquires for the information of the HR.
the manager will type the NL onto the query text box and then searches for the
required output through the database.
Scenario 3:
The manager can take following three actions on the resume of the applicant
according to the requirement
1. Approve
2. Interview schedule
3. Reject
Scenario 4:
An applicant creates an electronic profile gives not only the common contact
information but also record the qualification, work experience and other relevant
details.
The applicant can edit and delete the information also.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 32
2.1 User profiles
BIRS has two main users.
Managers
New applicant
Since Manager is one who controls the resources and expenditures of the
company and hence he is the authorized user of the system. The user will be
verified as a manager when the user id and passwords verifies. The manager will
be able to access the BIRS from both admin panel and the applicant panel. Only
the managers are authorized to access the admin panel where the manager types
the N.L to retrieve the required output. The managers can keep an eye on the
employees‘ profile through BIRS.
Applicant who is not the authorized person can not access the admin panel. The
only new applicant panel is available for the applicant. The applicants will only fill
the C.V.
Manager and applicant are the only intended users of the system.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 33
2.2 Use-cases
manager
Login
login
verifying
valid invalid
«uses»
«extends»
*
*
Figure 2.1
Description:
This use case defines the session creation scenario. The manager creates the
session by login the user id and password. The manager given information is then
verified through the verification system. After verifying the user will either be valid or
invalid. The unauthorized person won‘t be able to access the functionality of the
system.
Verification
System <<include>>
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 34
Figure 2.2
Session started
new applicant
query text
*
*
*
*
*
*
*
*
manager/applicant
Description:
Now when the session is created the manager will be able to access the functions
of the BIRS. The manager can enter the NL query to inquire about the employee.
The applicant fills the C.V without creating the session. The manager after inquiring
about the applicant takes the action on it.
Data
base
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 35
Figure2.3
Entering query
query text
search
manager
**
* *
Description:
The manager types the NL in the query box. The query is then taken up by the
keyword extractor when the search function works. The NL query is converted into
the query and the query retrieves the output from the database.
<<Include>>
Keyword
extractor and
Query
generator
System
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 36
Applicant form
personal
information
educational detail
work experience
reference
*
*
* **
*
*
*
*
** *
*
*
*
*
user
Figure 2.4
Description:
The applicant fills the C.V without the creation of the session. The data is then
stored into the database
Database
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 37
Manager’s action
manager
*
* *
*
take actoin
approve interview schedule reject
Figure2.5
Description:
The action taken by the manager for the applicants on behaves of the applicant‘s
skills and/or educational details. The manager can approve, reject or schedule the
interview. These decision are then stored in the storage system
Storage
system <<Include>> <<include>> <<include>>
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 38
2.3 Special usage considerations
Usage specification
The BRIS will run on windows O.S only.
Installation of XAMP server.
Installation of SQLyog.
Installation of PHP editors.
Limitation
Server is required for the BRIS as it‘s the desktop based application.
BIRS is domain restricted. The domain is HR.
The whole natural language (English) can not be covered as it‘s a huge
language. There are some limitations that should be followed.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 39
Functional and Data Description
Our system is mainly design to facilitate the applicant and HR domain users so
BIRS focused to provide easiness to both. System is modeled in to two halves one
is Admin panel and other is applicant panel. The Administrator logins to BIRS
account by authorized password and user id then it will redirect the administrator to
the control panel where he can ask query related to the HR database and can
update, insert, delete and retrieve the data. While applicant can directly upload
his/her resume to the HR department manager can find the desired resume by
following the simple steps:
Administrator will give free form text input to ask the query or to extract information
from the data base. From this text keyword will be extracted on behalf of user‘s
focused or intention that what he needs to do. Then by taking the keywords which
stored in database to give the SQL related words to generate appropriate SQL
query which then executed and show the response of the query in the form of
reports.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 40
3.1 System Architecture
BIRS architecture is given below which defines concrete working of BIRS and its
interaction with the end users.
Figure 3.1
BIRS provide an interface for both Applicant and Administrator. It actually has two
precepts one is from Applicant end and other is from Admin end.
Admin Panel:
The higher management of any organization can use the BIRS in order to retrieve
information and manage the database. He/she can ask query in free form text or in
the natural language (English).
RESUME SUBMISSION
APPLICANT PANEL
BIRS
Natural language
APPLICANT
CV
APPLICANT PANEL
BIRS
Natural language
APPLICANT
CV
ADMIN PANEL
MANAGE HR DB
Administrator
RESUME SUBMISSION
APPLICANT PANEL
BIRS
Natural language
APPLICANT
CV
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 41
Applicant panel:
Any one can submit the resume by using BIRS in very convenient and easy way by
gradually adding the information.
3.1.1 Architecture model
Architecture of system is presented here. This includes detail description of system
and system diagram.
Figure 3.2
Response from DB
Report generation
SQL query generation
SQL query execution
Keyword extraction
Free form Natural
language input
MANAGE HR DB
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 42
BIRS is actually business domain software which is based on Natural language
input
Free form Natural language input.
It will be the text input in normal English form also called free form text input. User
can ask the desired query or perform intended action for manage a database.
Keyword extraction
From the input text we extracted the keywords which contain action, field, table and
condition. This keyword will be stored in QUERY BANK.
SQL query generation
We picked SQL corresponding commands for the stored keywords in order to
generate the SQL query.
SQL query execution
After the generation of SQL query it then executed.
Response from DB
Executed query then give response/output from the database.
Report generation
The output is representing in the report form.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 43
3.1.2 Modules overview
Each subsystem noted in the architecture model is described briefly
The modules are simple when user enter his query it first proceed by module
named Keyword Extraction for taken out specific keywords related to the
requirement of the user these keywords than further pass on to next module SQL
Query Generation module which used these words to generate SQL query. Once
these queries are created they are executed by SQL Query Execution module to
select out required database tables and fields. In end the Report Generation
module simply put table in a manner that is easy to read.
3.2 Data Description
Top-level data objects that will be managed by the system are
Extracted words/ indicators (condition) ,
Database,
Name ,
Table name,
Field name.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 44
3.2.1 Major data objects
Data objects and their major attributes are described.
Database name: The database name is the major part of the System.
Without the database the system is Unable to run.
Key words: These are words that are required by our Algorithm. These are
the table names, field name, indicators like condition or can be any
aggregate word.
Table name: The extracted information from the query will contain the table
name to verify that the query required by the manager exist in the Database.
Columns name: Once the table name is verified the internal flow will search
for the field name to retrieve the exact data.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 45
3.2.2 System level data model
Figure 3.3
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 46
3.3 System Interface Description
BIRS is server based system so it can easily interface with outside the world. We
used Apache server which supports a variety of features, many implemented as
compiled modules which extend the core functionality. Virtual hosting allows one
Apache installation to serve many different actual websites.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 47
Module Description
In this chapter we defined in detail about the different module of the BIRS. 4.1 is
about the keyword extraction which define that how from the input text query
specific keywords will be taken out, 4.2 include description about how we generate
SQL query that is based on matching of keywords extracted from first module with
our query bank, 4.3 describe the execution of SQL queries, and in 4.4 we try to
describe the output of the in a report form.
The modules are as figure 3.2
4.1 Keyword extraction
A typical information retrieval (IR) system responds to the user‘s query by selecting
documents from a database and ranking them in terms of relevance. A successful
IR system is able to filter out extraneous information and return only relevant
information, such level of precision of very hard to accomplish. People rarely
supply enough information for the system to determine what the user is looking for,
for example: queries for a World Wide Web search engine almost never exceed 4
words. An IR system well suited for general use would be able to process very
natural form queries. [6] We designed a system that started with a query and gives
almost precisely selected database tables and fields that were relevant to the
original query. This System extracts keywords from the original query and chooses
tables and fields that precisely matched the user‘s expectations. Real examples
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 48
often have many lines of query, and these are usually stored in a database-
management system that we can query by using SQL.
We wanted to achieve a high precision level by building independent recognizers.
The module selects specific text or key words that summarize the original query.
Extracting keywords requires that you recognize the character that are input, and
remove unwanted punctuation, symbols, numbers, and stop words. Our very first
task was to take out specific words from the user query. Since our user can enter
any query in natural language (English) as far as it‘s related to Human resource.
Our aim is to pick out related word from that input. Keyword extraction starts by
reading into a text string. When the user enters his query in text form it immediately
read by a file ―np.php‖ using a function "file_get_contents ( )".
Since we're only interested in keywords, we need to remove the punctuation,
special symbol characters, currency signs, and other math characters. However,
that stripping away punctuation joins sentences together into a single long string of
words. This is fine for extracting keywords, but not phrases. The words at the end
of one sentence will blend into those at the start of the next sentence, creating odd
word pairings that can give unexpected phrase searching results. Removing
punctuation also destroys the grammatical cues needed by natural language
processing. But for keyword extraction, we don't need punctuation or symbols —
just the words.
Keyword extraction module use natural language queries using PHP on Apache
Server. English keyword extraction module allows extracting and interpreting
queries posed in English regarding known tables, fields and data.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 49
For example, when user writes a query ―view me the salaries of employees along
with their names‖.
We define a function that read this query as a text string and it saves this as an
array of words, then this array is searched for words like View, Salary, Employees,
Name and value A. keywords are extracted accordingly to build syntax for database
to create SQL command. We can see that View can be consider as SELECT,
Salary & Name is like Field name and Employee is same as table in database.
This selection is due to a table name query bank in which we save more than 40
words; these words are select in bases of part of speech tag, we collect some
distinctive word like select, view, display for manipulating table, employee,
applicant for selecting table and name, salary, email id etc, as field name.
Here are the steps required to develop a keyword search.
Before that we will remove the blank space from left and right of the search sting by
using ltrim and rtrim functions.
$ltable=trim($ltable," ");
$rtable=trim($rtable," ");
4.1.1 Scope of generating keywords
Wouldn't it be nice if user can simply understood SQL and could pose questions to
the database themselves? Obviously, not many users are going to invest the time
necessary to learn SQL, but we offers the next best thing -- the ability to execute
queries using Standard English!
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 50
The components for English keyword extraction – the query bank table and the
runtime engine. The query bank (QB) table makes it possible for user to enter
different keywords into the query. The QB table allows you to test it against queries
you think users will pose. For example, you might try asking the database ―display
designation of employees who are working in HR department‖. If the table
encounters any queries it can‘t extract , it makes alerts
The runtime engine handles the English-to-SQL translation tasks. It uses an
extensive English syntax algorithm to extract keywords from plain language
statements that define the meaning of the question and identify the corresponding
database objects.
4.1.2 Flow diagram
The flow for searching query for a keyword might be shown as:
1. Admin enters the query
2. Click‘s the search button.
3. The search is executed for keywords
4. The results are forwarded to SQL query execution module
Alternative: Search failed
if the search fails at 3, then the user is redirected back to the search screen at
step1
The system flow is as follow
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 51
Figure 4.1
4.1.3 Restriction / Limitation
Main constraint of this module is that it can only take query in simple English
Language, also since our domain is specific one can only ask question related to
human resource department. Other restriction is that WH-question can‘t be
processed.
4.1.4 Performance issue
Our implementation has focused more on providing greater usability through the
use of controlled query bank. Database comes with a root dictionary which already
has definitions for common English words.
4.1.5 Design constraint
Our biggest design constraint for extracting keyword was to make such a query
bank that can define as much word so that our restriction can be overcome. We
Selected keywords to
next module
Keyword
extraction
Text query
User / admin
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 52
design our query bank on the bases of ontological foundation that is consisting of
same type word that give similar meanings for example education, qualification,
degree information etc.
4.2 SQL query generation
When this collection is performed we need to make SQL query. So far, we have
extracted specific text to get answers from database. To do this, we enter some
small text queries that we typed directly into query pane. We will apply the search
to an existing table. The visitors will enter one or more than one keywords in the
search box and we have to develop a query based on the selection of the visitor.
Here we will discuss how to create a sql query to apply to the database with
multiple keywords. Basically we will focus on construction of sql using keywords
When the keyword are located query generation module is next. In this module
basic SQL query is generated through these words. For this we would need
somehow to tell the module where to find the equivalent SQL syntax. We do this by
defining a special kind of table named IsKeyword into the query bank.
Since the visitor limited to search for exact match or any where match on the table.
For that we use our QB table and apply the search to the word in IsKeyword table
of our MySQL table. Based on the selected type of keyword then function look
whether it is a table name in IsTable column or a field name in Isfield column after
that sql query is generated
When the words have exact match as table name or field name then create the
query using simple where condition by searching for the SQL equivalent word in
sqlword table
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 53
function findop($data)
{
$sql="select * from querybank where data='$data' and sqno=1";
$result=mysql_query($sql);
if(mysql_num_rows($result)>0)
{
$data=mysql_result($result,0,'sqlword');
//echo "<script>alert('".$data."');</script>";
}
else
{
$data="";
}
return $data;
}
function istable($data)
{
$data1=false;
$sql="select * from querybank where data='$data' and istable=1";
$result=mysql_query($sql);
if(mysql_num_rows($result)>0)
{
if(mysql_result($result,0,'istable')==1)
{
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 54
$data1=true;
//echo "<script>alert('table');</script>";
$table=mysql_result($result,0,'sqlword');
}
else
{
// echo "<script>alert('not table');</script>";
$data1=false;
}
}
return $data1;
Else if asked for different matching of keywords then read the search term and
breaks it into array of keywords using split command. Then loop through all the
element of the array of words and create the sql command using like command for
each word or the element of the array. Here is the code for this.
$kt=split(" ",$search_text);//Breaking the string to array of words
// Now let us generate the sql
while(list($key,$val)=each($kt)){
if($val<>" " and strlen($val) > 0){$q .= " name like '%$val%' or ";}
}// end of while
we have broken the text using split command and then looped through the
keywords. Here using one if condition we have taken care that blank space are
removed in formatting the sql string.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 55
$q=substr($q,0,(strLen($q)-3));
In the above line we have first calculated the length of the string by using strlen and
then used that value inside the substr function after subtracting 3 from it. The 3 is
subtracted as length of OR with one blank space is 3. This way we will get the
string after removing 3 chars from the end.
function generateQuery($pieces)
4.2.1 Scope of query generation
This module is next main module after keyword extraction module. This module can
convert textual input into SQL query.
4.2.2 Flow diagram
1. Extracted keywords
2. Search corresponding SQL keyword in Query bank.
3. Generate SQL query.
Alternative: If 3 failed go to step 2 for further searching.
Flow diagram is as follow
Figure 4.2
Extracted keyword
Checking into database for
equivalent SQL keyword
Generating SQL query
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 56
4.2.3 Restriction /Limitation
The objective of translating freeform English to SQL is a challenging one. Currently
the translation from text does not handle truly random ad hoc questions. Our
implementation has focused more on providing greater usability through the use of
predefined words and controlled extensions to those questions.
Our limitation here is that we have difficulty to implement update and insert query.
Also query which have inner joint in there generation are complex to achieve.
4.2.4 Design issue
We have difficulty during the generation of multiple queries asked by user, for
example if user asks for selecting many tables and field for updating them.
4.3 SQL Query execution
Here we execute the SQL query, when the query generated it pass on to this
module. We collect records or data from MySQL database by using PHP. Here we
use some exclusive PHP function to interact and collect data from MySQL db.
These functions will be available for use if MySQL support is enabled in PHP
configuration file php.ini.
We use PHP functions to interact with SQL. The connection to SQL is already
established .We use the function mysql_query() to execute the SQL select query.
function getprimaryfield($ltable,$rtable)
{
$sql="select * from keypairs where ptable in ('$ltable') and ftable in('$rtable')";
$result=mysql_query($sql);
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 57
The pointer of this function we will use as input to mssql_fetch_array() , this
mssql_fetch_array() function will return the array of records. We will use while loop
to display all the records collected inside the array.
Here is the complete code to display the records from a MySQL table.
$dbusername='';
$dbpassword='';
$servername='';
$link= mysql_connect($servername,$dbusername,$dbpassword);
$query="select * from emp_m ";
$qt=mysql_query($query);
while($nt=mysql_fetch_array($qt)){
echo "$nt[emp_no]"." $nt[name]";
echo "<br>";
}
4.4 Report generation
If there are more records in a table ( say more than 50) then it will not look nice to
display all the records in one page and asking visitors to scroll down to see all the
records. This will also slow the process of loading of records. So it is better to break
all the collected records into different pages with a fix number of records per page
(say ten records per page) .We have to give navigational link at left and right side
saying previous and next page. We also have to give links at the center so the
visitor can visit in between pages of his/her choice.
The below menu is further improved if you have more records. For more than 1000
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 58
records and if you have 10 records per page then you have to show 100 links at the
bottom of the page. That can be further simplified in advanced script to make links
in groups.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 59
Behavioral Model and Description
There are two main behavioral models of the BIRS.
One from the applicant’s panel.
Second from the manager’s panel.
5.1 Description for system behavior
The BIRS takes the natural language input when the authorized user is log in. there is no
access for the applicant or for the employee from the security point of view. The applicants
will be hired or approved on the bases of their skills and education by the managers. the
applicant will submit the resumes for the required job. The managers will select, invite the
applicants for the interview, can also approach for the second interview if needed. Then the
manger will decide to hire and will decline the applicants if the applicant is not interested
for the job the managers will search for the applicants who is fit for the job through his own
end means he doesn’t has to wait for the other person to inform. The manager can search
directly through the BIRS through natural language. The manager can also spy the
employees. About their salaries, their department, their designations, their attendance and
leave etc.
5.1.1 Events/interrupts
The events that will cause behavioral change within the system are represented from two
perspective .one from the admin point of view and other from the applicant point of view
Events of admin perspective are
Login
Search via Natural language
Logout
Events of applicant perspective are
New applicants
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 60
The new applicant has the following events
Personal information
Educational detail
Work experience
Reference
5.1.2 States
Take action
A listing of states that will result as a consequence of events is presented.
Start state will result in two events
Login
New applicant
Entering user id/password state will result into three events
Entering NL
Control panel
Logout
Search state will result the output.
From the applicant perspective
Applicant personal information results in educational detail event
Add education detail results in work experience event
Work experience results in view information
5.2 State Transition Diagrams
State transition diagram contains two modules one from the manager’s perspective and
second from the applicant’s perspective.
Manager’s perspective:
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 61
Figure 5.1
Login NL search
Login
When the login event is triggered user id and password state will arise. When the
verification is done for the user then the manager will type the natural language query in the
query text box event. When the search event is triggered the output state will occur. When
the user logins fail due to the invalid user id or password the user has to login again. The
enter query state can take multiple input for the several time for the searching and to
provide the output.
Figure#5.2
Output Enter
query
User
verification
Not verified
Control panel
No query panel
Query panel User verified
Not a member
start
Logout
Control
panel
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 62
When the control panel is triggered it verifies for the authentic user if verified so the query
panel will be displayed. If not a member then the query panel will not be showed. The
applicant has access only to the new applicant event
Applicant’s perspective:
The applicant will fill his or her C.V through the new applicant event. the flow can be
represented as follows.
Figure5.3
When the applicant trigger over the new applicant event the system will come into the
applicant’s personal information state . here the applicant will fill his/her name , fathe’s
name ,address , country, email , phone ,city , POB, religion etc . then after the submit event
the system will be in the educational detail’s state
Figure5.4
In the educational detail the applicant will enter his/ her educational history like degree
name , degree, name of the institute, year of passing , grade. The applicant trigger the add
event to add the history and can also proceed to fill the other educational details if any else
will trigger the go to step 3 where the system will be in the work experience state
Add data
add Go to step
3
Educational
detail
Applicant’s
personal
information
submit
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 63
Figure#5.5
In work experience state the applicant will fill his/her working experience like what is the
period of work, where did he/she work, what was the name of the company what is the
reason of leaving the company. What is the salary last drawn. After gathering these
information the applicant can trigger the add event and can also add further experience if
having else the applicant will trigger the go to step 4 event and the system will be in the add
reference system.
Figure#5.6
In the add reference state the applicant will give the reference of the person who referred
him/her .the name phone number , email id etc of the referred person. At the end when the
applicant triggers the done event the system comes into the view information state where
the applicant can view his/her C.V.
add
Add data
Go to step
4
Work
experience
done
Add reference
View
information
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 64
Overall state diagram of the applicant from the applicant’s perspective
Figure5.7
Applicant’s
personal
information
submit
Add data
add Go to step 3
Educational
detail
add
Add data
Go to step 4
Work
experience
done
Add reference
View
information
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 65
5.3 Control specification
Each and every part of the processing is managed by the system. Only the input is required
from the authorized user. The front end is controlled by the login event and the new
applicant event. The members can only access the login panel by providing the valid user id
and the password. The mangers can access the new applicant also from the admin panel
also. The applicant have no right to access the login panel .only the new applicant panel is
available for the applicants.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 66
System Prototype and Modeling
BIRS prototype has been modeled in accordance of the user‘s convenience and to
provide attractive GUI. Below the snapshot of prototype is given
Figure 6.1 Home page
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 67
Figure 6.2 Login panel
Figure 6.3 Control panel
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 68
Figure 6.4 Applicant panel
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 69
6.1 Description of system modeling approach
We used Linear Sequential Model for BIRS, some time it also called ―classical Life
cycle‖ or ―water flow model‖. Sequential model suggests a systematic sequential
approach to software development that begins at the system level and progresses
through the following.
6.1.1 System/information engineering and modeling
First we gathered detailed requirements of BIRS. This system modeling is essential
when the BIRS interface with other elements such as hardware, people and other
resources. System is the basic and very critical requirement for the existence of
BIRS. To extract the maximum output we re-engineered and spruced up the BIRS.
We analyzed language, behavior and intentions of manager at various levels of
their search process in their specific domain that is HR in our case. Proper
understanding of all the factors made easy to achieve our goal. We started with
identification and optimization for the most common keywords searches in HR
domain, followed by more complex keyword string research on specific
segmentations within HR. Our approach is to find keywords with high search
volume that indicate interest in our selected domain. Keyword research is a
continuous process.
6.1.2 Software Requirement Analysis.
For developing BIRS which is natural language based we visited in different
organization to monitor their working related to retrieval of information and data
extraction and also analyzed that how they maintain their databases since our
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 70
working area is Human Resource so we also gathered detail information about HR
department of any organization. This analysis helped us more in order to have the
knowledge about BIRS behavior, function, performance and interfacing.
Human Resource Study:
The Human Resource Department provides expert level HR outsourcing, advisory
and interim professional staffing solutions. Our flexible model encompasses
traditional onsite and offsite project consulting in all major HR subject areas, interim
staffing of HR professionals and virtual HR services.
This includes the modules of
1. Personnel hiring
2. Salary and payroll.
3. Employee Management
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 71
Figure 6.5
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 72
Personnel Hiring.
Process of Applicant/personnel hiring is shown as the flow chart:
Figure 6.2
Figure 6.6
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 73
Employee Management:
Effective management of employees allows accomplishing goals at work.
Effective employee management allows capitalizing on the strengths of other
employees and their ability to contribute to the accomplishment of work. Successful
employee management helps employee motivation, employee development, and
employee retention. Employee management is the most important job that
managers do in an organization. The employee practices that keep employees
motivated, inspired, developing, and attaining goals with your guidance.
In employee management Manager can evolve the employee performance by
review his/her record with different aspect. He can manage the employee on the
behalf of their personal information which he can view easily by using Natural
language.
Salary and Payroll.
A record showing for each employee his or her gross pay, deductions, and net pay.
The payroll may also include details of the employer's associated employment
costs.
6.1.3 Design
BIRS design is actually a multistep process that focuses on four distinct attributes
of the system that is:
Data structure:
Database name
Table‘s name
Columns name
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 74
Key words
BRIS architecture:
In the architecture we defined the whole flow of BIRS from taking Natural language
input and process it to the user required output.NL broke in chunks then it will be
used to generate a SQL query ,this query will be then executed and extracts the
information from database and generate the report.
Interface representation.
User interface of BIRS is designed on PHP and HTML which follows object oriented
style .Due to this interface even a non specialist person can easily use the software
to get the required output. Interface of BIRS with outside world is represented by
modeling the given picture.
Figure 6.7
APPLICANT
BUSINESS INTELLIGENT
REPORTING SYSTEM ADMINISTRATER
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 75
Procedure.
BIRS is focusing actually on Natural Language .so we mainly followed the
procedure for breaking a natural language which actually follows the following:
Free form natural language text must break in small pieces like action, field, table
and condition (if there will be).the sequence may alter its not consistent. Field or
table can have more than one.
Show employee names
Action Table field
View gender of employee whose age less then 25
Action field table condition field operator value
BIRS contains a QUERY BANK which stores the words and correspond SQL word
it‘s a big task to maintain such a table because natural language is itself very
ambiguous one word can have many different meaning. To make the query flexible
we didn‘t restrict any special syntax but since to capture natural language at this
stage is very difficult so BIRS also have some limitations
This HR database could be used in many different ways. We have created queries
to show what tasks this database can fulfill.
The first type is simple Query which can show the all fields of database on
user‘s demand like.
Show employees firstname
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 76
show employees lastname
Show employees dateofbirth
Show employees qualification/education
Show applicant firstname
Show applicant dateofbirth
The second type is conditional which can show the ―where‖ clause Queries.
Show employees where lastname is ('qureshi')
Show employees firstname where lastname is ('qureshi')
6.1.4 Code generation
BIRS design is translated into machine readable form by using different
programming language the list of programming language is as follows.
1. PHP and HTML.
Both are used to provide user interface. But PHP is also used for key word
extraction, SQL query execution and database creation.
2. JSP
JavaScript is an interpreted programming or script language java Script uses some
of the same ideas found in Java, the compiled object-oriented programming derived
from C++. JavaScript code can be imbedded in HTML pages and interpreted by the
Web browser (or client).
Although best known for its use in websites (as client-side JavaScript), JavaScript
is also used to enable scripting access to objects embedded in other applications.
JavaScript, despite the name, is essentially unrelated to the Java programming
language, although both have the common C syntax.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 77
Prototype-based
Prototypes
JavaScript uses prototypes instead of classes for defining object properties,
including methods, and inheritance. It is possible to simulate many class-based
features with prototypes in JavaScript.
Functions as object constructors
Functions double as object constructors along with their typical role. Prefixing a
function call with new creates a new object and calls that function with its local this
keyword bound to that object for that invocation. The function's prototype property
determines the new object's prototype.
Functions as methods
Unlike many object-oriented languages, there is no distinction between a function
definition and a method definition. Rather, the distinction occurs during function
calling; a function can be called as a method. When a function is invoked as a
method of an object, the function's local this keyword is bound to that object for that
invocation. [3] http://en.wikipedia.org/wiki/JavaScript
Here we defined the some designing portion of BIRS.
Make a connection form PHP to DB.
<?php
$con = mysql_connect("localhost","root","");
if (!$con)
if (mysql_query("CREATE DATABASE hr_db",$con))
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 78
{
echo "Database created";
}
else
{
echo "Error creating database: " . mysql_error();
}
mysql_close($con);
?>
Make a table using PHP
// Create table
mysql_select_db("my_db", $con);
$sql = "CREATE TABLE Persons
(
FirstName varchar(15),
LastName varchar(15),
Age int
)";
// Execute
Executing simple query
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
mysql_select_db("hr_db", $con);
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 79
$result = mysql_query("SELECT * FROM Persons");
while($row = mysql_fetch_array($result))
{
echo $row['FirstName'] . " " . $row['LastName'];
echo "<br />";
}
mysql_close($con);
?>
Executing conditional query
<?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
mysql_select_db("my_db", $con);
$result = mysql_query("SELECT * FROM Persons
WHERE FirstName='Peter'");
while($row = mysql_fetch_array($result))
{
echo $row['FirstName'] . " " . $row['LastName'];
echo "<br />";
}
?>
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 80
6.1.5 Testing
We performed all required testing to verify the working of BIRS .we perform
integration testing to check the proper working of each module.
6.2 Special performance issues.
There are some performance issues in BIRS which is defined as below.
6.2.1 Complex query.
If user will give a complex query as input then it will obviously affect on
performance of BIRS. A complex query is a form of combination of multiple
conditional and aggregate queries.
Like.
Display the record of the employees having age > (‗50‘) years and calculate his
total salary from his joining date and find out his total attendance of the year
(‗2003‘).
6.2.3 Natural language Ambiguity.
Lexical ambiguity.
It means that query is not specifying clearly that what user requires.
Like: I want to view the good employee…
Here it includes the semantic ambiguity .This is often the case, for example, with
idiomatic expressions whose definitions are rarely or never well-defined, and are
presented in the context of a larger argument that invites a conclusion.
6.2.4 Heavy Database:
If the database of organization is too heavy then it will take time to retrieve the
required data.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 81
6.3 Prototyping requirement
For designing the prototype of the BIRS we required the tools which provide a
convenient interface to the user here we used PHP and HTML for prototyping.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 82
System Estimates and Actual Outcome
This section provides cost estimates for the project. Cost and time analysis is a very important phase of the project and different organizations have different methods of calculating cost of the project. The experience of experts available is also important in order to calculate the true cost of project. We have tried to calculate cost of our project on the basis of two measures. Time: Time to complete the project Personals Working: No of Developers available to work on project 1. Cost of Utilized Resources Following are the estimations made before the start of the project:
Total Estimated Time to complete the project = 26 weeks (Note: This time includes programming + research + finding solution to our problems by consulting experts.)
Total no of hours that all the developers are working on project/week = 15 hrs
Total no of Working hours for entire project duration = 26 * 15 = 390 hrs
Total No of Developers available to develop the project = 4 persons
Therefore all the workers will collectively work for 375*4 = 1500 hrs
Estimated amount of money while considering all three measure such loc, time, and cost of utilized resources.
Therefore, the total Cost of the project is Rs.25,000 out of which 40 % cost is of utilized resources that includes electricity, systems software, transportation etc. 60% is the cost of other expenses that we might have in the course of project For the software project estimation, effort estimation is as important as the cost and time estimation. Effort is measured in person-months
7.1 Historical data used for estimates
Our overall estimation strategy indicates that we iterate cycles of analysis, implementation and experimentation to converge on an effective solution to the research problems. The first phase of work was the definition of the problem. We first examined the existing work in the field to get a better understanding. We did not have access to any existing simulation tools, so we were confined to examining the existing research literature. Once we had a good idea of what the research challenges were, the second phase of work involved research on the tools that would be used for the solution of defined problem.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 83
The third phase involved deployment of the design space, evaluation of potential solutions and refining these solutions as necessary until we were satisfied with the demonstrated improvements.
7.2 Estimation techniques applied and results
Software cost and effort estimation can never be an exact science. Too many variables i.e. human, technical, environment, political affected the ultimate cost of software and effort applied to develop it. The model we used for cost and effort estimation is COCOMO 2 [3] model. We use COCOMO model as a cost estimation technique. The COCOMO cost estimation model is used by thousands of software project managers, and is based upon a study of hundreds of software projects. Unlike other cost estimation models, COCOMO is an open model, so all of the details are published, including:
The underlying cost estimation equations
Every assumption made in the model
Every definition (e.g. the precise definition of the Product Design phase of a project)
The costs that COCOMO estimates are stated Because COCOMO [3]is well defined, and because it doesn't rely upon proprietary estimation algorithms, Costar offers these advantages to its users:
COCOMO estimates are more objective and repeatable than estimates made by methods relying
on proprietary models
COCOMO can be calibrated to reflect your software development environment, and to produce more accurate estimates
Costar is a faithful implementation of COCOMO II. It's easy to use on small projects, and yet powerful enough to plan and control large projects.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 84
Figure 7.1 activity report.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 85
Figure 7.2
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 86
Figure 7.3
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 87
Figure 7.4
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 88
Figure 7.5
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 89
Figure 7.6 .
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 90
Figure7.7
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 91
Figure 7.8
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 92
Figure 7.9
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 93
Figure 7.10
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 94
7.3 Actual Results and Deviation from Estimates
Our actual results are same as we estimated before, because we did not use any external resources.
7.4 System Resources
HARDWARE Ram, Hard disk, Processor speed Operating system
SOFTWARE XAMPP server SQLyog
7.4.1 System Resources Required
RAM: 256 MB Hard disk: 40 GB to install the XAMPP server and database Processor speed: 2.4 GH Operation system: windows, vista platform
7.4.2 System Resources Used
RAM and hard disk required use to installed XAMPP server and other soft ware. Processor Speed required for fast processing. And this is compatible to both windows and vista.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 95
Test Plan
We want to produce bug free product. And make sure that there is no defect in our
project. So we spending large amount of time in testing. We provide description
procedure and Strategy of the testing.
Overview
Test plan
objectives
We need to clear our objectives before starting
To ensure that
- Function consistently and reliably in accordance with
current business operations.
- Meet or exceed our requirements and technical
specifications.
Not adversely impact other systems or the existing technology
environment.
Testing
Assumptions
In unit testing instead of code we make module in GUI manner
give input and find out desired output. If the output is correct
then our module is successfully run .for that we make test
cases and analyzes the module.
Risks &
Contingencies
The following risks apply to the testing process and may
impact either the proposed date of readiness for the BIRS, or
the comprehensive level of testing that can be performed in
each of the Functional Units:
- The actual implementation may take longer to perform
than anticipated. The DB must complete the upgrade to
its entirety before users will be granted access to the
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 96
system.
The following contingencies exist in order to successfully
complete the testing activities as outlined in this document:
- The staffing resources as listed in 8.3 will be available to
complete the testing requirements contained in this
document.
Table 8.1
8.1 System Test and Procedure
This section provides an overview of the entire test document. In BIRS we need to test each individual module either can run properly so we perform unit testing we have three modules
Keyword Extraction
Sql query generation
Query execution and repot generation
The above modules were tested in unit testing.
After completion of unit testing we have successfully done integration testing to integrate these individual modules.
At recruitment side we performed validation testing to ensure that all fields in curriculum vitae should taken valid values.
Security testing is applicable in administration panel because we working over database for security of database we restrict it .provide user name and password only administrator can login and perform action.
Stress testing is also applicable at administration panel when he is login for access data base insert natural language query so we put maximum length of query and analyze how many words it should be taken at a time.
8.2 Testing strategy
The overall strategy for software testing is described. In the following section we
describe the testing strategy. We use four different methods to test our product.
8.2.1 Unit testing
In the unit testing we test the separate modules of the software. We carry out white box testing where each module or component of the software is tested
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 97
individually. We test the components by passing data through it and monitoring data to find out the errors.[9] We are looking for entry and exit conditions of the data. We make sure that all the components work without any troubles. The test primarily carried out by the programmer who designed and implemented the module. Lead tester than carry out test on the modules to finalize the testing.
8.2.1.1 Keyword Extraction.
First module of BIRS is keyword extraction which extracts the keyword from
natural language query. And we check this by putting NL queries then it split NL
queries into keywords, we know that to process the NL queries in general way is
very difficult so we apply some format .according to that format the query can
process.
For example :
Action table name field name
This is the format which we apply and it extracts the keywords according to the
following pattern.
Test
cas
e ID
Input ( NL queries) Actual output System output Description
1 I want to display the
records of
employees
Action: Display
Table:
employees
Action: Display
Table:
employees
Split and
Extract the
keywords
2 Display the salary of
executive manager
Action: display
Table
:employee
Field: salary
Value:
executive
manager
Action: display
Table
:employee
Field: salary
Value:
executive
manager
Break this
query and
extract
desired
keywords
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 98
3 List down the cv‘s of
hired applicants
Action: show
Table:
applicant
Value: hired
applicants
Action: show
Table:
applicant
Value: hired
applicants
Similarly
select
keywords
4 Show me the
employees who are
absent today
Action: show
Table:
employees
Action: show
Table:
employees
Select key
word
according to
the pattern
5 Update the salary of
manager
Action: update
Table
:employee
Field: salary
Value:
manager
Action: update
Table
:employee
Field: salary
Value:
manager
Select key
word
according to
the pattern
6 Delete the record of
m.ali
Action: Delete
Table:
employee
Value: m.ali
Action: Delete
Table:
employee
Value: m.ali
Select key
word
according to
the pattern
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 99
7 show me the CV of
the candidates
which contains the
degree is ('Masters')
Action :show
Table:
candidate
Value: masters
Action :show
Table:
candidate
Value: masters
Select key
word
according to
the pattern
8 show me the
employees‘ salaries
alongwith salary
where lastname is
('qureshi')
Action: show
Table :
employee
Field: salary
Value: qureshi
Action: show
Table :
employee
Field: salary
Value: qureshi
Select key
word
according to
the pattern
9 View me the
firstname of
employees
Action :show
Table:
employees
Field:firstname
Action :show
Table:
employees
Field: firstname
Select key
word
according to
the pattern
10 View me firstname
and lastname or
dateofbirth of
employees
Action :view
Table:
employee
Field: firstname
lastname,,
dateofbirth
Action :view
Table:
employee
Field: firstname
lastname,,
dateofbirth
Select key
word
according to
the pattern
11 From employee show me name
Invalid query Invalid query Not follow
the pattern
Table 8.2
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 100
8.2.1.2 SQL Query Generator:
Second module SQL query generator it takes keywords as input and generates
SQL query on behalf of that key words
Test
cases
Input
Keywords
Actual output System output description
1
Action: Display
Table:
employees
Select * from
employee;
Select * from
employee;
generates sql
query against
the following
keywords
2 Action: display
Table
:employee
Field: salary
Value:
executive
manager
select salary from
employees where
designation is
executive manager
select salary from
employees where
designation is
executive manager
Here display
against display
it generate
select query.
3 Action: show
Table: applicant
Value: hired
applicants
Select *from hired
applicants;
Select *from hired
applicants;
Show also
indicates
select query ,
it select hired
applicants
4* Action: show
Table:
employees
Select from
employees who
are not present
Select from
employees who
are not present
This is
conditional
query first
search
employee who
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 101
are absent
then run select
or display the
names .
5 Action: update
Table
:employee
Field: salary
Value: manager
Update the salary
from employee
where designation
=manager;
Update from
employee salary
where designation
=manager;
This is
conditional
query perform
updation only in
1 field
6 Action: Delete
Table:
employee
Value: m.ali
Delete from
employee where
name =m.ali
Delete from
employee where
name =m.ali;
Conditional
query delete
the record of
specific
employee
7 Action :show
Table:
candidate
Value: masters
Select * from
candidate whose
degree is master;
Select * from
candidate whose
degree is master;
Conditional or
multi query run
both
simultaneously
by inner join
clause
8 Action: show
Table :
employee
Field: salary
Select salary from
employee whose
lastname is
qureshi;
Select salary from
employee whose
lastname is
qureshi;
Conditional
query or
complex query
first search
employee
whose name
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 102
Value: qureshi ends with
qureshi then
display
9 Action :show
Table:
employees
Field: firstname
Select firstname
from employee ;
Select firstname
from employee ;
Simple query
only display
the employee
firstname
10 Action :view
Table:
employee
Field: firstname
lastname,,
dateofbirth
Select from
employee
firstname,lastname
,dateofbirth ;
Select from
employee
firstname,lastname
,dateofbirth ;
Simple run
select query
but retrieved
three different
fields
8.2.1.3: Query execution and Report Generation
Third module of BIRS is data retrieved from data base and generate report. It takes
SQL query as input and produce output as report generation
Test
cases
SQL queries Actual
output
System
output
description
1 Select * from
employee;
Show
records of all
employees
in tabular
form
Show
records of all
employees
in tabular
form
It generate
report on
behalf of
query
Table 8.3
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 103
2 select salary from
employees where
designation is
executive manager
Display the
salary of
executive
manager
Display the
salary of
executive
manager
Generate
report
3 Select *from hired
applicants
Generate
report
names of
only hired
applicants
Generate
report
names of
only hired
applicants
Show the
names of
only hired
applicants
4 Show me the
employees who
are absent today
Show the
records of all
absent
employee
Show the
records of all
absent
employee
Simple
generate
report of
employee
who are
absent
5 Update from
employee salary
where designation
=manager;
Update the
salary and
give alert
Update the
salary and
give alert
It update the
salary
6 Delete from
employee where
name =m.ali
Delete
employee
the record of
m.ali
Delete
employee
the record of
m.ali
Perform
deletion
7 Select * from
candidate whose
degree is master;
Show the
candidate
reports
Show the
candidate
reports
Show the
cv‘s of
candidates
whose
education is
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 104
masters
8 Select salary from
employee whose
lastname is
qureshi;
Generate
report of
employee
whose last
name is
qureshi
Generate
report of
employee
whose last
name is
qureshi
It Shows the
salary of
employee
whose last
name is
qureshi
9 Select firstname
from employee ;
Generate
report of
employee
first name
Generate
report of
employee
first name
Run simple
select query
to retrieve
only one
coloumn
10 Select firstname,
lastname
,dateofbirth from
employee;
Generate
report
having
firstname,
lastname
and date of
birh
Generate
report
having
firstname,
lastname
and date of
birh
Only run
select query
and
retrieved 3
different
fields
8.2.2 INTEGRATION TESTING
After successfully completion of the unit testing we perform integration testing, in
unit testing we make sure that each module work properly then we start to integrate
these module. [5][6]
Phase 1
First we integrate the keyword extraction and query generation modules. For
analyzing the required output we create test cases and alternate cases either these
two modules integrate properly. Input of this phase is Natural Language and output
is SQL query.
Table 8.4
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 105
Test case ID
Test case description
Input data Expected result
Actual result
Pass/Fail Remark
1 It direct
show the
SQL query
of this
input
I want to
display the
records of
employees
Select *
from
employee;
Select *
from
employee;
Pass Successfully integrated
2 Generate
SQL select
query
against the
display.
Display the
salary of
executive
manager
select
salary
from
employee
s where
designatio
n is
executive
manager
select
salary
from
employee
s where
designatio
n is
executive
manager
Pass Successfully integrated
3 Generate
the simple
select
query
List down the
cv‘s of hired
applicants
Select
*from
hired
applicants;
Select
*from
hired
applicants;
pass Successfully integrated
4 Complex
or
conditional
query or
multi query
Show me the
employees
who are
absent today
Select *from
Successfully integrated
5 Complex
query
Update the
salary of
Update
the salary
Update
the salary
pass Successfully integrated
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 106
because
first run
select then
perform
update
query
manager from
employee
where
designatio
n
=manager
;
from
employee
where
designatio
n
=manager
;
6 Complex
query first
select m.ali
record then
delete
query
Delete the
record of m.ali
Delete
from
employee
where
name
=m.ali
Delete
from
employee
where
name
=m.ali
pass Successfully integrated
7 Complex
query
search
candidate
whose
degree ms
then select
show me the
CV of the
candidates
which
contains the
degree is
('Masters')
Select *
from
candidate
whose
degree is
master;
Select *
from
candidate
whose
degree is
master;
pass Successfully integrated
8 conditional
query
generate
select
query with
where
clause
show me the
employees
salaries
alongwith
salary where
lastname is
('qureshi')
Select
salary
from
employee
whose
lastname
is qureshi;
Select
salary
from
employee
whose
lastname
is qureshi;
pass Successfully integrated
9 Generate
simple
View me the
firstname of
Select
firstname
Select
firstname
pass Successfully integrated
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 107
select
query
employees from
employee
;
from
employee
;
10 Generate
simple
select
query with
different
field
names
View me
firstname and
lastname or
dateofbirth of
employees
Select
firstname,l
astname
,dateofbirt
h from
employee;
Select
firstname,l
astname
,dateofbirt
h from
employee;
pass Successfully integrated
Phase 2:
After successfully integrated of these two modules we further processed this process and integrate this with third module information extraction from database and report generation. Input of this phase is Natural Language query and output is report generation.
Test case ID
Test case description
Input data Expected result
Actual result
Pass/Fail Remark
1 Generate report of all records of employees in tabular form
I want to
display the
records of
employees
Generate report of employees record
Generate report of employees record
pass Successfully integrated
2 Only show salary o executive manager as a report
Display
the salary
of
executive
Generate required report
Generate required report
pass Successfully integrated
Table 8.5
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 108
manager
3 Display cv‘s of all hired applicants in list form
List down
the cv‘s of
hired
applicants
Generate required report
Generate report
pass Successfully integrated
4 Display name of employee in list form
Show me
the
employees
who are
absent
today
Generate required report
Generate required report
pass Successfully integrated
5 Perform updation and give alert.
Update
the salary
of
manager
Generate required report
Generate required report
pass Successfully integrated
6 After perform delete give alert
Delete the
record of
m.ali
Generate required report
Generate report
pass Successfully integrated
7 Show cvs of all applicant who having degree masters .in tabular fom
show me
the CV of
the
candidates
which
contains
the degree
is
('Masters')
Generate required report
Generate required report
pass Successfully integrated
8 Display show me
Generate Generate pass Successfully
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 109
salary only that employee whose name ends with qureshi in tabular form
the
employees
salaries
alongwith
salary
where
lastname
is
('qureshi')
required report
required report
integrated
9 Show only one field of employees in tabular form
View me
the
firstname
of
employees
Generate required report
Generate required report
pass Successfully integrated
10 Generate report having information of employee in tabular form
View me
firstname
and
lastname
or
dateofbirth
of
employees
Generate required report
Generate required report
pass Successfully integrated
11 Show in valid query
From
employee
show
name
Invalid query
Invalid query
pass Successfully integrated
Table 8.6
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 110
8.2.3 Validation testing
With respect to the applicant end. When applicant filled CV he should enter valid entries. For that we provide checks in each field of CV .for example applicant name take string, we restrict it should take only string. [10]
Test
Case Id
Test Case
Description
Input Data Expect
ed
Result
Actual
Result
Pass/F
ail
Remarks
1 Check name
Faiza accept accept Pass Clear
because
we insert
string
value
2 Insert
alternate
case
sadaf12234 Not
allowed
NOT
ALLOW
ED
PASS Clear
because
it did not
take any
integer
value
3 Date of birth
should insert
in yy-dd-mm
format and
take numeric
+ special
character -
1986-13-07 accept Accept Pass Clear
input is
actual
form of
date
4 Alternate
case
13-17-19 Not
accept
Not
accept
pass clear
5 NIC no check 422-444-44 Accept Accept Pass Clear
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 111
assign
integer or
special
character `–
6 Address can
enter alpha
numeric
value and
special
character
B-213 block
10/a gulshan-
e-iqbal
Accept Accept Pass Clear
7 Telephone no
should be an
integer value
4029388 Accept Accept Pass Clear
8 Mobile no
integer +
special
character -
0334-3973796 Accept accept Pass Clear
9 e-mail
address
string, integer
and special
character
and follow
following
pattern
aaa-
om
Mariam_fidous
@hotmail.com
Accept Accept Pass Clear
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 112
10 Alternate
case of e-mail
Miss_mahi%.c
om
Not
accept
Not
accept
Pass Clear
11 Marital status
should click
in 1 box
o Single Accept Accept Pass Clear
12 Gender
should click
in one box
o female Accept Accept Pass clear
13 Alternate
case
o Female
o male
Not
accept
Not
Accept
Pass Clear
14 Age should
enter in
integer
21 Accept Accept Pass clear
15 Blood group
only accpt
character and
+,_
O+ Accept Accept Pass clear
16 Alternate
case
A8 Not
accept
Not
accept
Pass clear
8.2.4 High-order testing
Over all system testing strategy and procedure is described
8.2.4.1 Security testing
No one can access the data base. We provide ID and Password for
Administrator only he can login and perform any action over database.
We assign checks on login windows.[11]
Table 8.7
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 113
Figure 8.1
8.2.4.2 Stress testing
In our system it is applicable at administrator panel when he access the database via NL, Check the length of query how many words it take at a time. Our system approximately support 50 words at a time.
Figure 8.2
8.2.4.4 Performance testing
In this strategy we monitor either system specification meets to actual requirement. Check overall system performance.
TEST
CASE ID
TEST CASE
DESCRIPTION
INPUT
DATA
EXPECTED
RESULT
ACTUAL
RESULT
PASS/
FAIL
1 Check either it
retrieves a
single column
Show first
name of
employee
Show list of
employees
first name
Show list of
employees
firstname
Pass
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 114
2 Check the
conditional
quries.here it
only shows the
cv whose
degree greater
then Bs
View me
the cv of
applicant
whose
degree is
greater
then BS
Show the cv
of those
candidates
whose
qualification
is greater
then BS
Show the cv of
those
candidates
whose
qualification is
greater then BS
pass
3 Aggregate
quries
Show me
the
average
salary of
employee
Calculate
average
salary and
Generat
report
Calculate
average salary
and Generat
report
pass
4 Simple select
query
Run select
query and
display the
record
I want to
display
the
records of
employee
s
Display the
records of all
employee in
tabular form
Display the
records of all
employee in
tabular form
Pass
5 Multi query run
at a time by
using
innerjoin.first
search and
display
Display
the salary
of
executive
manager
Only show
the salary of
manager
Only show the
salary of
manager
pass
6 Simple select
query display
all records from
List down
the cv‘s of
hired
Search the
cv‘s of hired
applicants
Search the cv‘s
of hired
applicants
pass
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 115
hired applicant
table
applicants
7 Update only
salary
Update
the salary
of
manager
Updation
perform only
in one field
Updation
perform only in
one field
pass
8 Delete full
record
Delete the
record of
m.ali
Delete full
record of
m.ali
Delete full
record of m.ali
pass
9 Multi query first
search
candidates
whose degree
masters then
display
show me
the CV of
the
candidate
s which
contains
the
degree is
('Masters')
It search and
display the
cv‘s whose
degree is
masters
It search and
display the cv‘s
whose degree
is masters
pass
10 Multi level
query. by using
inner join first
search person
whose last
name is
qureshi and
then display
the salary of
that employee
show me
the
employee
s‘ salaries
alongwith
salary
where
lastname
is
('qureshi')
Display the
salary whose
name ends
with qureshi
Display the
salary whose
name ends with
qureshi
pass
Table 8.8
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 116
8.3 Testing resources and staffing
We did not use any testing soft ware, or any special tool for testing. We have decided to use simple method for the testing. Each programmer test the components or functions created by him separately and hand over to the lead tester. Lead tester test each component and make a note of the result in test result table. Once the product is completely developed we all member of the software projectteam test the software with combined effort.
8.4 Test metrics
Indicator Category Management Insight Indicators
Progress We complete our project with respect to the schedule. make the schedule and complete the task according to its worth.
5 main phases of BIRS as follows
1:study phase
2:Desining Phase
3:Implementation
4:Testing
5:Documentation
1::study phase
Actual:3months
Planned: 2 months
2:Desining Phase
Actual: 2months
Planned:2 months
3:Implementation
Actual:3 months
Planned:2 months
4:Testing
Actual:1month
Planned:15 days
5:Documentation
Actual:25days
Planned:15 month
Effort Efforts in P/M Actual: variation in every month according to the work load
Planned: 50 pm
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 117
Cost Project cost/ person Actual:15000
Planned :10000
Review results Either it match with required
Output
Actual:70 % achieve
Planned: 95% achievable
Requirement Stability According to proposal Actual: during implementation
we have facing lots of
problem. So requirements are
not stable till the end.
Planned: most probable stable
Size Stability According to the requirements
Actual: not stable because as
requirements change it also
affect the size.
Planned: 70% it may be stable
Computer Resource Utilization
RAM, hard disk, operating
system, processor speed
RAM, hard disk, operating
system, processor speed
8.5 Testing tools and environment
We did not use any testing tool. All necessary testing we perform manually or at the time of implementation.
Table 8.9
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 118
Future Enhancement and Recommendations
Despite what you may have thought, keyword search engines are not going extinct.
They will continue to serve a good share of the search market into the foreseeable
future. However, next-generation search engines will have keyword engines
coexisting with new technologies that are widely expected to be semantic search
technologies driven by natural language processing (NLP) or more broadly by
knowledge base (KB).
For the average reader, the workings of keyword search engines are fairly obvious.
NLP and KB engines are similar in that they both are semantic search techniques
and they understand the meaning of a search query. However, they differ in their
approaches. NLP engines use natural language processing to understand
meaning, while KB engines apply a broader suite of knowledge with NLP being a
potential part of it. It is most similar to how we as people understand the meaning of
a sentence. We use a variety of knowledge bases, some vertical or domain specific
and others general. We might use our knowledge of banking services, alternate
fuels, basic math, or conversion rules (like three feet is one yard), and so on.
Before we start analyzing each of the techniques let us understand what really
matters in the business of search. Three things that top the list are
(1) The quality or relevance of search results
(2) The learning ability of the search engine over time
(3) The scope or how broadly it can be applied across multiple domains.
Let‘s compare the keyword, NLP and KB search techniques across these key
metrics.
Keyword Search Engines
A basic keyword search produces numerous results that may not be very relevant
or meaningful. Keyword search engines use page popularity as a substitute for
meaning, which is critical in ranking search results.
As for applicability, a keyword search platform can be applied almost universally
whether it is as meaningful language content or programming code, or simply a
bunch of keywords.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 119
With regard to learning, major search engines have over time come to use a variety
of sophisticated techniques like searching for word clusters, making spelling
suggestions, looking for phrases, and so on to produce very good search results
compared with a basic keyword search. Such enhancements can continue to
improve the quality of search results, but not significantly more so than the current
poor-quality results that are widely agreed to be under 5% relevant.
NLP Engines
NLP-based search engines can certainly improve the quality of search results by
using computational linguistics to understand the meaning of the search query and
match it to content. It is realistic to expect that the quality of results can go into the
20-25% range.
Although NLP search engines cannot be universally applied like keyword engines,
they can cover as much as 50-60% of current search content.
As for learning, NLP search engines will not offer any better search results over
time using the same linguistics processors. It‘s not like our knowledge of language
will be so much better next year and the year after.
Overall, given the leap in quality of results and the broad applicability across
language-based content, NLP engines have the capability to produce the next big
leap in general Internet search.
Knowledge Base Engines
KB engines can produce the highest-quality and most relevant results within well-
defined domains – reaching up to 80-90% in relevance by using a variety of vertical
and general knowledge bases, even including NLP.
KB engines will most closely emulate human capabilities and can continually
improve on search results as the knowledge base grows through community input.
KB engines are constrained by the lack of readily available general and vertical-
focused knowledge bases and the time it takes to develop them. Lastly, like NLP
engines, KB engines do not have any advantage over keyword engines when the
search content or user queries are just keywords or unconnected words.
The Future
Look for NLP engines to offer the next big leap in general Internet search given
their broad applicability and improved quality of results over keyword search
engines. Also, in the near future, KB search engines will offer the highest-quality
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 120
search results across verticals. With knowledge bases built and shared across
more verticals, KB search engines can become the best of the new generation of
search tools.
We can be certain that future search engines will be driven not just by keyword
search techniques but by a combination of keyword, NLP and KB search
techniques. KB engines will be used when knowledge bases are available. NLP
engines will kick in when content is language-based but no knowledge base is
available. Finally, keyword engines will be used for all other content and serve as
the search engines of last resort.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 121
Conclusion / Summary
We concluded that by designing a software like BIRS we can provide open mindedness to
the end user to do any thing by using natural language we also focused business domain
where the high level management needs to manage their data base so provide a syntax free
environment to enquire and manage the database more over we also facilitated the applicant
to fill resume in the simplest way.
We observed during the designing of BIRS that it is difficult to capture the whole language
since NL is itself very ambiguous and versatile so a point came where we need to limit the
free form text in order to get more efficient result. More ever there must take about the
semantics and syntax of language because it is the most important feature to describe any
language and we faced difficulty to extract the actual user requirement.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 122
A.APPENDICES
I. Project Schedule
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 123
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 124
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 125
Work Load Distribution:
We are four member .We have done our project report in the following.
Sadaf Nasim: she has done chapter 1, 3, 6,9,10 and starting pages
Mariam Firdous: chapter 4, formatting, indexing, ERD
Faiza Urooj: chapter 7, 8 and Gantt chart
Mahvash Iftikhar Qurashi: chapter 2, 3, and 5, taken the snap shots of the system
and class flow diagram
II. Snap shot of the deployed system
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 126
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 127
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 128
2.
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 129
start
User login
verifying
Text input
Keyword
extraction
SQL generation
correct
YES
SQL
execution
YES
output
NO
NO
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 130
start
Personal
informatio
Educational
details
Work
experience
reference
submit
HR
database
HR
database
HR
database
HR
database
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 131
B. References
[1] www.devarticles.com/c/a/PHP/Object-Oriented-Programming-in-PHP/4/
[2] http://searchsoa.techtarget.com/sDefinition/0,,sid26_gci212681,00.html
[3] MySQL 5_1 Reference Manual 1_3_1 what is MySQL.mht
[4] http://www.mysql.com/company/legal/licensing/.
[5] SQL tutorial by Akeel I din
[6] High Precision Information Retrieval with Natural Language Processing
Techniques
[7] http://www.fhwa.dot.gov/programadmin/mega/cefinal.cfm
[8] http://en.wikipedia.org/wiki/Project_plan
[9] http://www.softstarsystems.com/cocomo2.htm
[10] http://www.softstarsystems.com/overview.htm
[11] http://hissa.nist.gov/HHRFdata/Artifacts/ITLdoc/235/chapter7.htm(int) [12]http://searchsoftwarequality.techtarget.com/sDefinition/0,,sid92_gci12434
30, 00.html
[13] http://infolab.stanford.edu/~burback/watersluice/node22.html
[14] http://www.extremeprogramming.org/rules/unittests.html
[15] http://diveintopython.org/unit_testing/index.html
[16] http://www.waldentesting.com/backup/services/validation.htm
[17]http://searchsoftwarequality.techtarget.com/topics/0,295493,sid92_tax306128,00.html
[18] http://www.testingeducation.org/k04/TestMatricesExamples.html
[19] http://www.sqaforums.com/showthreaded.php?Number=302637
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 132
C. Glossary
Ambiguity
Statements or arguments used in a work that may have more than one meaning or
interpretation. Ambiguity refers to the ways words or phrases can connote a range
of meanings. Ambiguity points to the openness of language to different.
Artificial intelligence
applies to a computer system that is able to operate in a manner similar to that of
human intelligence; that is, it can understand natural language and is capable of
solving problems, learning, adapting, recognizing, classifying, self-improvement,
and reasoning.
Bug
A software bug is an error, flaw, mistake, failure, or fault in a computer program that
prevents it from behaving as intended (e.g., producing an incorrect or unexpected
result).
Chunks
A part of something that has been separated; A representative of a substance at
large, often large and irregular; To break into large pieces.
Cocomo ii
The COCOMO cost estimation model .COCOMO is an open model, COCOMO is
well defined, and because it doesn't rely upon proprietary estimation algorithms,
COCOMO estimates are more objective and repeatable . COCOMO can be
calibrated to reflect your software development environment, and to produce more
accurate estimates.
Configuration
an arrangement of parts or elements. To set up or arrange something in such a
way that it is ready for operation for a particular purpose.
Costar:
It‘s software that we used for cost, and effort estimation.
Data Base
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 133
A database is a structured collection of records or data. A large amount of data
stored in a well organized manner.
Data types
In programming languages a data type is an attribute of a datum which tells the
computer (and the programmer) something about the kind of datum it.
Data base management system
A database management system is a program that allows access to the
information. DBMS is computer software designed for the purpose of managing
databases based on a variety of data models.
Domain
A domain is a set of allowable values for one or more attribute.
Event
Something that happens at a given place and time.
Frame work
A framework is a basic conceptual structure used to solve or address complex
issues. This very broad definition has allowed the term to be used as a buzzword,
especially in a software context. A software framework is "the skeleton of an
application that can be customized by an application developer‖.
Free form input
There is no focal point of the arrangement.
Hardware
Hardware is the physical, tangible components of a computer or other electronic
device. The term hardware traditionally refers to the physical components of any
technology.
Human resources
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 134
The personnel department of an organization, dealing with the recruitment,
administration, management and training of employees.
Integrity
An undivided or unbroken completeness or totality with nothing wanting .state in
which information has remained unaltered from the point it was produced by a
source, during transmission, storage, and eventual receipt by the destination.
Integrity is a security service that ensures that modifications to data are detectable.
Interface.
An interface defines the communication boundary between two entities, such as a
piece of software, a hardware device, or a user. The point of interconnection
between two systems or subsystems.
Key word
Keyword is a word which occurs in a text more often than we would expect to occur
by chance alone. A significant word or phrase in the title, subject headings,
contents notes, abstract, or text of a record in an online catalog or database which
can be used as a search term in a free-text search to retrieve all the records
containing it. Keywords are searched in any order.
Knowledge base
The facts, relationships, and procedures that constitute the knowledge about a
given domain or task; the database of an expert (or knowledge based) system.
Model
A physical model is a smaller or larger physical copy of an object. A representation
of a set of components of a process, system, or subject area, generally developed
for understanding, analysis, improvement, and/or replacement of the process.
Object oriented
In programming, a combination of code, which is a sequence of instructions
referred to as functions, along with data units, referred to as structures. A design
methodology decomposing problems into objects rather than procedures.
Open source
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 135
Computer software for which the source code is freely available. Source code of a
computer program that is disclosed to the public. Software registered as open
source can be accessed, modified and adapted to new.
Part-of-Speech
One of the traditional categories of words intended to reflect their functions in a
grammatical context
Personnel
Persons collectively in the employ of a business.
Performance testing
In the computer industry, software performance testing is used to determine the
speed or effectiveness of a computer, network, software program or device.
Platform
A platform describes some sort of hardware architecture or software framework.
Procedure
A procedure is a specified series of actions, acts or operations which have to be
executed in the same manner in order to always obtain the same result under the
same circumstances.
Query A search request submitted to a database or search engine. Used to find specific
content and files. a stored question about information in a database; when you
create a query, you ask a computer to quickly find information that answers a
question that you specify.
Resume
A curriculum vitae; an account of one‘s employment history and qualifications (often
for presentation to a potential future employer when applying for a job.).
Scripting language
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 136
A scripting language differentiates itself from other typical languages in that they
are usually simpler to learn and use as well as not needing to be compiled. The
language is interpreted at run-time so you can execuate instructions immediately.
Search engines
web sites which allow users to query a database of other sites, eg Google, Yahoo,
MSN Search.
Semantics
A relationship between words, phrases or any other allowable constraint and their
actual meaning.
Server
A computer or application, that provides a service to client software on other
computers. Servers are used for web hosting and other web applications.
Software
Software is a general term for the various kinds of programs used to operate
computers and related devices.
Software testing
Testing is any activity aimed at evaluating an attribute or capability of a program or
system and determining that it meets its required results.
SQLyog.
its an software for designing sql data base.
Stress testing
Process to determine that an IS (Information System) protects data and maintains
functionality as intended. The six basic security concepts that need to be covered
by security testing are: confidentiality, integrity, authentication, authorization,
availability and non-repudiation.
State
The way something is with respect to its main attributes.
Syntax
BUSINESS INTELLIGENT REPORTING SYSTEM
Sir Syed University of Engineering And Technology Page 137
The grammatical arrangement of words in sentences, a systematic orderly arrangement, studies of the rules for forming admissible sentences
Systematic
A set of orderly, structurally inter-related steps based on a network of concepts,
principles and rules.
Technique
Technique is a procedure used to accomplish a specific activity or task.
XAMPP server
XAMPP is a free and open source cross-platform web server package, consisting
mainly of the Apache HTTP Server, MySQL database, and interpreters for scripts
written in the PHP and Perl programming languages.