Full Thesis
Full Thesis
by
Fatema-Tuz-Sabiha
Dedicated
To
TABLE OF CONTENT
Title Page No.
Board of Examiners ii
Candidate‘s Declaration iii
Dedication iv
Table of Contents v
List of Figures viii
Abbreviation & Key Terms ix
Acknowledgement x
Abstract xi
CHAPTER-I: INTRODUCTION
1.1 Introduction 01
1.2 Objectives with specific aims and possible outcome 01
1.3 Organization of the Project Report 02
LIST OF FIGURES
CHAPTER-V: CONCLUSION
5.1 Project Summary 56
5.2 Conclusion 57
5.3 Recommendation 57
5.4 Future Works 58
Reference 59
vii
Acknowledgement
I would like to express my deep gratitude to Dr. Md. Rubaiyat Hossain Mondal, Associate
Professor, Institute of Information and Communication Technology (IICT), Bangladesh
University of Engineering and Technology (BUET), Dhaka, Bangladesh, my research
supervisor, for his patient guidance, enthusiastic encouragement and useful critiques of this
research work. His easy and simple approach towards problems has been very important for
me to initiate and continue the study from an elementary status to the present level.
I would also like to extend my thanks to all the teachers and staffs of the Institution of
Information and Communication Technology (IICT), BUET for their kind support during the
study.
Special thanks to my parents, husband and two daughtersfor their continuous support and
being understanding.
x
Abstract
The admission procedures of universities worldwide, mainly for a sharp strike in number of
potential applicants for university studies, are experiencing a competitive environment
nowadays. Globalization has created a new dimension in this field as well. Students from all
over the world are applying to different countries to study abroad. An admission process can
be centralized or can be run by departments/institutes individually. Many developed countries
have stepped forward to automated online admission systems from the pen and paper method.
But in spite of technological advancement, still many universities in developing countries
process their procedures manually, which is very inefficient, time-consuming, requiring lot of
effort. This project will focus on the development ofan online system for the postgraduate
admission of a department/institute of a university. Here the students and the administration
both can access their parts and can be facilitated using this online system. The online system
will enable tracking all the details of an applicant from the start of the online application to
the end of admission which can be used for all reporting purposes. ‘Waterfall Process Model’
has been used to develop the whole software.The designed online admission system has two
modules. One is for the applicantsand the other is for the administrator. In the applicant’s
module a candidate can submit their application to their desired programs. In this module
they check their application status, print their admit cards for the written admission test if
they get selected for the test. The authorized person of the administration can update
notices as well as can evaluate the submitted applications of the applicants.For the system
implementation or execution, a webserver named WampServer 3.1.9 has been used as a
Windows web development environment. In the front end, for server-side web development,
Hypertext Pre-processor (PHP-5.6.40) as scripting language, Bootstrap, an open source of
Cascading Style Sheets (CSS3) for responsive design as well as jQuery for dynamic scripting
have been used. MySQL-5.7.26 as database has been used for relational database server. Unit
testing and system testing were performed before the software was finalized. Implementation
in broad scale with online payment and online examination system, can be done in future.
The system developed here met the expected requirements. So, this can be easily adopted by
any educational institution.
1
CHAPTER-I
Introduction
1.1Introduction
The objective of this project is to facilitate the potential applicants and the university
administrators by developing a web based online system for university admission. The
aim of Web Based Admission System is to digitize university admission process for
higher education. Its basic objectives are to extend their reach to international applicants,
2
reducing time in activities, centralized data handling and paperless admission with
reduced manpower. To accomplish the aim, the following processes will be carried out:
The process of online application including payment information for the applicants.
The process to view and asses the list of applicants and update their status by the
management.
To generate notices and admit cards and different other printable reports for the
applicants and the management.
The possible outcome after the successful completion of this project will be an online
system for postgraduate admission process of a university or institution.
In Chapter 1, the project overview and objectives are illustrated briefly. The system study and
requirement analysis are described in Chapter 2. Chapter 3 depicts of the design of the project
and its development. The implementation of the online system is described in Chapter 4.
Finally, the project strength, limitations, challenges as well as the future works are mentioned
in Chapter-5.
3
CHAPTER-II
System Study and Requirement Analysis
The step by step development of the project are described in the following.
A feasibility study opens up the strengths and weakness objectively and rationally of a
proposed project. It is also widely known as feasibility analysis [14]. For this analysis, the
factors which are most likely to be taken into account are such as economic, technological,
legal and scheduling. It is important to do feasibility study before investing time and money
both for a project to have a complete picture of potential positive and negative outcomes of
that project [13]. The study arises some questions like whether the proposed project is
technically feasible, will it be feasible within the estimated cost and whether it will be
profitable or not.
The manual system of admission using ink and paper is more time consuming, much costly as
well as difficult to maintain. But this proposed automated admission system is more feasible
in terms of cost, effort and time as well. It is much more organized and easy to use. The
project is economically feasible as it cuts the operation cost by cutting down the manpower.
In this system only one official person is enough to play the role of an administrator. All the
information of the applicants is shown in a tabular form to the administrator which makes the
selection procedure much easier to the administrator. The project can be considered as
technically feasible, since the whole system is designed into the latest technologies such as
PHP, CSS and MYSQL Server which are the most used and recent technologies to develop
web based systems and design databases. This proposed project also has Behavioral feasibility
as the system is providing an attractive user interface to the operator/end user which makes
the user feel easy and fast to work.
2.2 Planning
fundamentals like, a database of the data of the Applicants, Information Management System,
the assessment and shortlisting.
2.3 Scope
Project scope is generally an important part of a project planning. It is actually the tasks
needed to be achieved to deliver a project [15]. Determining and documenting a list of
specific project goals, deliverables, features, functions, tasks, deadlines, and ultimately costs
are listed in project scope.
2.4 Methodology
Methodology of a project is a model, which can be employed to design, plan, implement and
achieve the objectives of the project. An organized methodology is the guidelines for
successful completion of a study. The following steps were followed to develop the proposed
online system:
1. First of all, requirement analysis was done regarding the department/institute wise
admission procedure in a university. Next, software requirements specifications
(SRS) had been prepared. For the overall system, an appropriate database was
5
designed after preparing the data flow diagram (DFD) and entity relationship
diagram (ERD). Moreover, user interfaces or user screens were drawn.
2. There are two modules in the system, one for the applicants and the other for the
management team known as administrator. In the system, the candidates will apply
by registering and uploading their required documents. The administrator will
publish a list of eligible applicants for the admission test, set up seats and after the
test, result will be published online. Next the successfully selected candidates can
accept or deny the offer for admission. Upon acceptance a roll number will be
generated for each candidate. There is a provision to keep the reference number of
payments for application and admission fees.
3. Next, the web-based software was developed using MySQL as database. In the front
end, Cascading Style Sheets (CSS3) was used for style formatting, Hypertext Pre-
processor (PHP) and jQuery for dynamic scripting. After the development of the
software, thorough testing had been done with practical use case scenarios.
The steps of Requirements Analysis Process for the proposed project are briefly described
here.
i. Fixing System boundaries: The preliminary step of the process is to assimilate the
project and ensure its suitability with the existing system, service or environment.
Future scopes and limitations should also be identified in this step in order to
complete the project in a good planned way [18].
iii. Requirements elicitation: In this step, information is congregated and a final whole
picture of the requirements are drawn by listing the expectations of the defined
group or groups of the stakeholders. It is important not only to list the
requirements but also to categorize them. Activities in this step include:
Inception
Elicitation
Elaboration
Negotiation
Specification
Validation
Management
The diagram of fig -2.1 illustrates the different function of requirement engineering
tasks including inception, elicitation, elaboration, negotiation, specification, validation
and management which are briefly discussed below:
Considering the requirements, factors and options a programming language has to be chosen.
Choosing the right platform from an endless choice also depends on some special
characteristics. The choice also depends on the expertise of the developers on both language
and platform. It seems easy but sometimes risky as well as difficult to determine the suitable
platform or language for a proposed project. A wrong decision may put the developer in
10
trouble to meet the service requirements, security and expectations. So, to ensure the
maximum service and satisfaction to the customers a suitable programming language and
platform is necessary to choose.
Data is the fundamental unit of information or unorganized statistical facts and figures
collected for analysis and interpretation for research studies. Data sources are widely divided
into two categories, like: (i) Primary Source (ii) Secondary Source.
(i) Primary Data- Primary data are the first hand information considered to be pure, original
and collected data which has never gone through any kind of statistical treatments before It
may become necessary to collect original data to conduct first- hand investigation. Two major
methods of primary data collection are mentioned here:
Beside primary and secondary sources internal sources of data can be considered as important
source of data. The measurements that are produced by the routine business record keeping
like accounting, finance, production, personnel, quality control, sales, R&D etc is named
internal data [19].
There are different methods or techniques for collecting data. It is important to choose the
appropriate technique to drive a good research. The choice of method is influenced by the
data collection strategy, the type of variable, the accuracy required, the collection point and
the skill of the enumerator. Here, in this section, the methods which were applied for this
project are explained below:
Observation
Questionnaires
11
Interviews
Document study
2.10.1 Observation: It is a great source for information of a particular group. In this
technique the observer can use video cameras to monitor what actually happens in the existing
system but the privacy issue of a workplace should be considered before embarking the path.
For the proposed system video cameras were not used. This method can produce both
qualitative and quantitative data. But this process does not go with requirements analysis
process.
2.10.2 Questionnaires: This method is the most useful method for gathering information. The
questionnaires can be asked or sent to the subject by phone, email or online. It is one of the
most popular technique of data collection as it provides opportunity to the researchers to go
through the answers and formulate it at their own time and own pace. Although it is easy to
send the questionnaires, the response rate may be less. To optimize it while making the
questionnaires the researcher should focus on choosing the right questions.
2.10.3 Interview: Even though interviewing is time consuming and not that much cost
effective, it overcomes most of the short comings of other techniques. It is mainly qualitative
in nature and can be structured, semi-structured or informal. Telephone interview has become
very popular now a days and it was very helpful for this project. After the interview session
the interviewer generates a document which helps in the research process.
2.10.4 Documents study: Examining the formats of the existing system can be a good
method of gathering information about the operations. By studying the internal source data
like internal reports, annual journals, operating systems the researcher can get an idea of the
system and its limitations as well. In this proposed project this method was used for gathering
information.
A mid-range server with Windows or Linux operating system and a personal computer with
ability to browse on internet are the hardware required for the system as hosting server and
workstation respectively.
Internet Protocol (IP) like other systems was used for the data transmission between the server
and the client and at the upper level hypertext transfer protocol (HTTP) was used for
communication between the web server and client.
System attributes are the properties to measure the quality of the system or how much the
system satisfies the stakeholders. There can be different genres of attributes of a software
system such as correctness, reliability, adequacy, learnability, robustness, maintainability,
readability, extensibility, testability, efficiency, portability etc. The attributes of this software
are reliability, security, maintainability and portability.
b) Security: This attribute refers to the ability to protect the system from the likelihood of
malicious or accidental actions. It is also responsible for reducing the possibility of theft or
loss of information. The authorization mechanism of the system will block the unwanted
attempts to the server and also let the system decide which privileges the user. The system has
different types of users who need to login with a specific authorization number so that
unwanted information will not make the system overwhelmed.
(1) The client Side- An applicant is a client who uses a personal computer, laptop or mobile
to send requests to the resources through internet by using interface. It handles the
presentation logic
(2) The Admin Side- Admin is also a client similarly uses the computer, laptop, mobile etc.
which requests the resources, through the internet with a user interface but for creating,
updating and deleting information.
(3) The Web Server- Authentication, authorization and ensuring security is the key role that
a web server plays. It is the heart of any system as most of the works are being done in this
server. A database server restores all the data required for the application.
Creation of profile: Applicants can create their own profile and afterwards
view and edit it till a specific deadline. An admin can view the profile, evaluate
and update the status evaluating the application.
User Authentication: For logging in to a profile the user has a unique User ID
and password.
14
Non-Functional requirements are often called quality attributes of a system. These are not the
features but required characteristics of the system. Some Non-functional requirements which
were taken into account while developing the project are listed below.
Performance: For a better performance the proposed system requires high speed
internet availability for intensive data transmission.
Scalability: A system should be scalable to expand to support increasing traffic or user
data. A scalable system can run with limited space and resources for small number of
15
users but as long as the demand increases it can adapt to support all users rather than
needing to be replaced.
Availability: It is important to ensure the access to the system for the authorized users
interminably.
Robustness: In case of failure of any function of a system there should be an
alternative to provide relentless service. The fault should be detected and recovered
soon. It should not hamper the process.
Maintainability: With time a system needs to be updated. While updating, to ensure
the service the old version of the system should be on run.
Usability: A system should always be easy and friendly to use. The proposed system is
out of complexity. It provides very easy access of the required data to the authorized
user.
2.12 Input and Output Finding of the System
The possible inputs are the application with the required documents and image, the evolution
result, program contents and notices which the admin can enter or update.
The outputs are the registration number, admit card, status update etc.
1. An authorized admin has to first log in to the system with a given username and
password and afterword that person can change the password.
2. The authority then will open admission by declaring the session, programs to be
offered for that session, deadline for application submission and deadline for accepting
admission offer, admission test date.
3. An interested applicant for admission first has to pay an application fee and with the
transaction ID of the payment he/she has to sign up or register in the admission
system.
4. If the sign up is successfully done then the system will automatically generate a
registration ID which will be unique for each applicant applying for the declared
session.
5. Then the applicant has to login into the system and apply with required documents and
information. Before applying, it is recommended to go through the instructions on
―
How to Apply‖.
16
6. After a successful application the applicant can view his/her application status in
his/her own profile.
7. The administrator will start evaluating the applications after the last date of application
and qualify the qualified applicants for the written admission test.
8. Admit card will be generated and can be printed by the qualified applicants.
9. A written admission test will be conducted manually according to the seat plan and
after the test the score will be inserted in the system by the admin.
10. Finally, the qualified scored applicants will get an admission offer. The offer has to be
accepted within the declared date. Applicants who accept the offer, will get a roll no
generated by the system.
2.14 Implementation Tools and Technologies
A Web development platform that allows creating dynamic Web applications with Apache2,
PHP, MySQL is required for the project execution. WampServer will be used here as it is
applicable in Windows. The web based software will be developed using Hypertext
Preprocessor (PHP) as the dynamic scripting language. In the front end of the software,
HyperText Markup Language (HTML5), jQuery, Cascading Style Sheets (CSS3), Bootstrap
which is a library of CSS will be used. MySQL will be used as the database.
CHAPTER-III
System Design and Development
The designed online admission system has two modules. One is for the applicants and the
other is for the administrator. A centralized database is there in the system to keep records
of all the applicants. In the applicant‘s module a candidate has to first pay an application fee
and with the transaction number can register into the system. After a successful registration
the applicants can login to submit their application for admission to their desired programs.
In this module they can edit their profile within the specified deadline, check their
application status, print their admit cards for the written admission test if they get selected
for the test. The candidates who get offered for admission can also accept or deny the offer
through it. The authorized person of the administration can login through the admin portal
and then can update session, programs to offer, notices as well as can evaluate the
submitted applications of the applicants and generate admit cards for each short listed
candidates for their admission test.
The main features of the project are:
Applicants‘ registration
Online application
Upload required documents as well as image
Edit or update profile till a deadline
Change password
Update session, offered programs and deadline
Evaluation by the admin
Short listing
Seat plan
Admit card generation
18
Get Registration ID
05
Y
APPLICANT
ADMIN
S
Apply for admission Insert test scores of the
08 14
T admission test
Application locked
09
E
after deadline
M
Check status Select applicants
12 15 considering scores
Applicant Admin
Steps To System From System To System From System
01 Login, open
admission, generate
notice
02 Search for information
on how to apply
03 Get information,
view notices
04 Sign up with payment
transaction ID
05 Get registration ID
06 Login
07 Get application form
08 Apply for admission
09 Application locked
after deadline
10 Evaluate and select
applicants for test
11 Short list selected
and update status
12 Check status
13 Print admit card
14 Insert test scores of
the admission test
15 Select applicants
considering scores
16 Send offer for
admission
17 Accept / Deny offer
18 Upon acceptance get
new Roll no.
21
Change Password
Generate Notice
Applicant
Apply for admission Admin
Check status
Insert scores of
admission test
Print admit card
Start
Applicants Apply
No
Unique registration ID gets
Short lists o
generated for each applicant
applicants
Yes
Admin evaluates
application and selects
applicants for test Print admit card
Accept Deny
Offer
Fig-3.3:Flow chart
1. An authorized admin has to first log in to the system with a given username and
password and afterword that person can change the password.
23
2. The authority then will open admission by declaring the session, programs to be
offered for that session, deadline for application submission and deadline for accepting
admission offer, admission test date.
3. An interested applicant for admission first has to pay an application fee and with the
transaction ID of the payment he/she has to sign up or register in the admission
system.
4. If the sign up is successfully done then the system will automatically generate a
registration ID which will be unique for each applicant applying for the declared
session.
5. Then the applicant has to login into the system and apply with required documents and
information. Before applying, it is recommended to go through the instructions on
―
How To Apply‖.
6. After a successful application the applicant can view his/her application status in
his/her own profile.
7. The administrator will start evaluating the applications after the last date of application
and qualify the qualified applicants for the written admission test.
8. Admit card will be generated and can be printed by the qualified applicants.
9. A written admission test will be conducted manually according to the seat plan and
after the test the score will be inserted in the system by the admin.
10. Finally, the qualified scored applicants will get an admission offer. The offer has to be
accepted within the declared date. Applicants who accept the offer, will get a roll no
generated by the system.
A Data Flow Diagram, widely known as DFD as well as Bubble Chart is used to graphically
represent the movement of data between external entities and the processes and data stores
within an overall system. The elements required for the system and their changes are
represented by DFD. It is the starting point in system design that decomposes the
24
requirements specifications down to the lowest level detail. In the following, the DFDs of the
overall system are demonstrated.
and updated. . The main goal of a database is to provide a way to store and retrieve database
information that is both convenient and efficient. [11]
3.8.1 Classification
One way to classify databases involves the type of their contents, for example: bibliographic,
document-text, statistical, or multimedia objects. Another way is by their application area, for
example: accounting, music compositions, movies, banking, manufacturing, or insurance. A
third way is by some technical aspect, such as the database structure or interface type.
Databases are created to address all issues that arises from file system based information
management. Conceptually, databases were developed to overcome the problems of
traditional file environments, such as data redundancy, data inconsistency, program-data
dependence, lack of flexibility, poor-security and sharing etc, which are defined below.
Therefore, database is considered as a paradigm shift from file system to a centralized
management protocol.
Data redundancy: Data is said to be redundant if same data is copied at many places. Data
Inconsistency: Data is said to be inconsistent if multiple copies of same data does not match
with each other.
Lack of flexibility: A user should know the exact location of file to access data, so the
process is very cumbersome and tedious.
Program-data dependence: Programs rely on s specific format of data to work on.
Unauthorized Access: File System may lead to unauthorized access to data.
Sharing: The access of same data by multiple users at same time is known as concurrency.
File system does not allow concurrency as data can be accessed by only one user at a time.
No Backup and Recovery: File system does not incorporate any backup and recovery of data
if a file is lost or corrupted.
3.8.3 Main Phases of Database Design
Primary phases that create database design are as follows:
Conceptual design: A conceptual database plan is being created when every data
requirement is stored and analysed.
Logical design: This phase is also known as the data modelling mapping phase. We
can get ER diagram from this phase.
27
The Database Architecture is a set of rules and processes to how to data will be stored in the
database. This architecture describes organization of all the database objects. It effects on
integrity, performance and reliability. The architecture defines the nature of the data, structure
of the data and the data flow.
On the other hand, Database Management System (DBMS) refers to the technology solution
used to optimize and manage the storage and retrieval of data from databases. DBMS offers a
systematic approach to manage databases via an interface for users as well as workloads
accessing the databases via apps. The management responsibilities for DBMS encompass the
information within databases; the processes applied to databases such as access and
modification; as well as the logical structure of the database. DBMS also facilitates additional
administrative operations such as change management, disaster recovery, compliance and
performance monitoring, among others.
3.9.1 Key Components of Database Management System (DBMS)
DBMS has the following key components:
Software: DBMS is primarily a software system that can be considered as a management
console or an interface to interact with and manage databases. The interfacing also spreads
across real-world physical systems that contribute data to the backend databases. The OS,
networking software and the hardware infrastructure is involved in creating, accessing,
managing and processing the databases.
Data: DBMS contains operational data, access to database records and metadata as a resource
to perform the necessary functionality. The data may include files with such as index files,
administrative information and data dictionaries used to represent data flows, ownership,
structure and relationships to other records or objects.
Procedures: While not a part of the DBMS software, procedures can be considered as
instructions on using DBMS. The documented guidelines assist users in designing, modifying,
managing and processing databases.
Database Languages: These are components of the DBMS used to access, modify, store and
retrieve data items from databases; specify database schema; control user access and perform
28
other associated database management operations. Types of DBMS languages include Data
Definition Language (DDL), Data Manipulation Language (DML), Database Access
Language (DAL) and Data Control Language (DCL).
Query Processor: As a fundamental component of the DBMS, the Query Processor acts as an
intermediary between users and the DBMS data engine in order to communicate query
requests. When users enter an instruction in SQL language, the command is executed from the
high-level language instruction to a low-level language that the underlying machine can
understand and process to perform the appropriate DBMS functionality. In addition to
instruction parsing and translation, the Query Processor also optimizes queries to ensure fast
processing and accurate results.
Runtime Database Manager: A centralized management component of DBMS that handles
functionality associated with runtime data, which is commonly used for context-based
database access. This component checks for user authorization to request the query; processes
the approved queries; devises an optimal strategy for query execution; supports concurrency
so that multiple users can simultaneously work on same databases; and ensures integrity of
data recorded into the databases.
Database Manager: Unlike runtime database manager that handles queries and data at
runtime, the database manager performs DBMS functionality associated with the data within
databases. Database manager allows a set of commands to perform different DBMS
operations that include creating, deleting, backup, restore, cloning and other database
maintenance tasks. Database manager may also be used to update the database with patches
from vendors.
Database Engine: This is the core software component within the DBMS solution that
performs the core functions associated with data storage and retrieval. A database engine is
also accessible via APIs that allow users or apps to create, read, write and delete records in
databases.
Reporting: The report generator extracts useful information from DBMS files and displays it
in structured format based on defined specifications. This information may be used for further
analysis, decision making or business intelligence.
3.10 Information Modeling
Within the field of software engineering and data modeling an information model is usually
an abstract, formal representation of entity types that may include their properties,
relationships and the operations that can be performed on them. The entity types in the model
29
may be kinds of real-world objects, such as devices in a network, or occurrences, or they may
themselves be abstract, such as for the entities used in a billing system. Typically, they are
used to model a constrained domain that can be described by a closed set of entity types,
properties, relationships and operations. Information modeling pertains to the development of
model in information generation, storage, destruction, evaluation, manipulation, synthesis and
utilizations. These models help in systematization of information generation, flow,
interpretation synthesis of more information.
3.10.1 Concept of Information Modeling
Firstly, Entities has to be chosen in information modeling. An entity is any object in the
system that we want to model and store information about. Entities are atomic that they are
invisible. The parameters of entity are known as attributes. Attributes are known as quantum
of information, which describes the entity entirely.
Secondly, relationships among the entities have to be figured out.
The second step in information modeling is relationship among entities. It is the most
important in making sense of the entity and inter-entity relationship. The relationship is the
information, which links two entities. The relationship can be of four categories:
One-to-One (1:1) –One instance of the first entity can correspond to only one instance
of the second entity. It is known as binary relationship.
1:1
One-to-Many(1:M) – One instance of the first entity can correspond to more than one
of the second entity.
1:m
Many-to-One (M:1) – More than one instance of the first entity can corresponds to the
same one instance of the second entity
30
m:1
Many-to-Many (M:M) – More than one instance of the first entity can correspond to
more than one instance of the second entity.
m:m
A model is not just a way of structuring data: it also defines a set of operations that can be
performed on the data. The relational model, for example, defines operations such as select
(project) and join. Although these operations may not be explicit in a particular query
language, they provide the foundation on which a query language is built.
There are two major classes of data models – logical data models and physical data models.
These two classes reflect the fact that efficient physical storage and retrieval of data must be
designed around the physical characteristics of storage media and devices, but user of data
should be able to describe, think about and use data without being concerned of its physical
storage.
3.11.1 Types of Data Modeling
The data modeling consists of three interrelated pieces of information, the data object, the
attributes that describes the data object and the relationship that connects data objects to one
another. A data object is a representation of almost any composite information that must be
understood by software. Composite information means something that has a number of
different properties or attributes.
Six different types of data models are given below:
Entity-Relationship Model (E-R Model)
Relational Model
Object-Oriented Data Model
Object-Relational Data Model
31
ER model
ER model stands for an Entity-Relationship model. It is a high-level data model.
This model is used to define the data elements and relationship for a specified system. It
develops a conceptual design for the database. It also develops a very simple and easy to
design view of data.
An entity may be defined as a thing capable of an independent existence that can be uniquely
identified. An entity is an abstraction from the complexities of a domain. When we speak of
an entity, we normally speak of some aspect of the real world that can be distinguished from
other aspects of the real world. Entities can be thought of as nouns. Examples: a computer, an
employee, a song, a mathematical theorem.
A relationship captures how entities are related to one another. Relationships can be thought
of as verbs, linking two or more nouns.
The model's linguistic aspect described above is utilized in the declarative database query
language ERROL, which mimics natural-language, constructs. ERROL's semantics and
implementation are based on reshaped relational algebra (RRA), a relational algebra that is
adapted to the entity–relationship model and captures its linguistic aspect.
Entities and relationships can both have attributes. the proved relationship may have a date
attribute.
32
The entity's primary key is a minimal set of uniquely identifying attributes which every entity
(unless it is a weak entity) must have.
Entity–relationship diagrams don't show single entities or single instances of relations. Rather,
they show entity sets (all entities of the same entity type) and relationship sets (all
relationships of the same relationship type). Example: a particular song is an entity. The
collection of all songs in a database is an entity set. The eaten relationship between a child
and her lunch is a single relationship. [11] The relationship set is a set of all such child-lunch
in a database. In other words, a relationship set corresponds to a relation in mathematics,
while a relationship corresponds to a member of the relation.
`program_name` varchar(100)
`submission_deadline` date
`offer_deadline` date
`exam_date` date
`status` varchar(20)
`signature` varchar(60)
`entry_by` int(11)
`entry_time` timestamp
`update_by` int(11)
`update_time` timestamp
PRIMARY KEY (`id`)
`program_id` int(11)
`roll_no` varchar(20)
`title` varchar(10)
`name` varchar(80)
`dob` date
`marital` varchar(20)
`gender` varchar(20)
`fname` varchar(80)
`mname` varchar(80)
`nid` varchar(30)
`nationality` varchar(20)
`religion` varchar(20)
`address` varchar(20)
`postcode` varchar(10)
`email_id` varchar(50)
`mobile_no` varchar(20)
`appl_status` varchar(20)
`entry_time` timestamp
`edit_time` timestamp
`qualified4exam` tinyint(4)
`room_no` varchar(10)
`q4exam_time` timestamp
`test_score` double
`score_time` timestamp
`qualified4admission` tinyint(4)
`q4admission_time` timestamp
`accept` tinyint(4)
`a_time` timestamp
PRIMARY KEY (`id`)
`application_id` int(11)
`type` varchar(20)
`degree` varchar(20)
`discipline` varchar(40)
`board` varchar(80)
`institution` varchar(80)
`pyear` varchar(10)
`cgpa` varchar(10)
PRIMARY KEY (`id`)
A freeware web browser developed by Google is Google Chrome. It used the WebKit
layout engine until version 27 and, with the exception of its iOS releases, from version
28 and beyond uses the WebKit fork Blink.
The Microsoft Internet Explorer provides easier, faster, safer, flexible and reliable
browsing experience with enhanced web privacy features for all users.
Web Server: For this project, Wamp Server 3.1.9- 32bits will be used as the web
server. This server is required here to provide the client software at the server site.
WampServer is a Windows web development environment. It allows us to create web
applications with Apache2, PHP and a MySQL database. Alongside, PhpMyAdmin
allows us to manage easily our databases. A software stack denotes by WampServer
for the Microsoft Windows operating system, created by Romain Bourdon and
consisting of the Apache web server, OpenSSL for SSL support, MySQL database and
PHP programming language.
Web Development: PHP- 5.6.40 is going to be used. It is a product of PHP group
which is used for server-side web development. Usually it runs on a web server which
work with MySQL database and Apache server.
PHP is a mostly-used general-purpose scripting language that has improved object-
oriented capabilities especially suited for web development and can be embedded into
HTML.
Database: As database, for relational database server, MySQL-5.7.26 is planned to
use. It is the world's most popular and powerful open source relational database
software, with over 100 million copies of its software downloaded or distributed
throughout its history. With flexibility, superior speed, reliability, and ease of use,
MySQL has become the preferred choice of corporate IT managers because it
eliminates the major problems associated with downtime, maintenance, administration
and support.
3.15 Testing
Testing is a process of executing a system prior to hand over the project to the customer or
user in order to find errors or any kind of inconvenience. It is one of the most important parts
of any data entry system which explains the performance of the system and helps to examine
the newly developed system to come to a conclusion on whether the system is as per the
expectation of the stakeholder or not. As a result it delivers a good quality product to the end
38
user by fixing the bugs. Fig 3.10 depicts different levels of testing of a system. These levels
are briefly described below:
Acceptance Testing
System Testing
Integration Testing
Unit Testing
A test case for the testing of proposed software project is represented below:
Project Name: Online Postgraduate Admission System-A Case Study
Sample Test Case
Test Case ID: test_7 Test Designed By: Mr. X.
Test Priority: Medium Test Design Date: 17.06.2019
Module Name: System Login Screen Test Executed By: Mr. Y
Test Title: Verify Login with valid Test Execution Date: 17.06.2019
User_ID and Password
Description: Test the online admission System Login Page
Pre-conditions: User has valid User_ID and Password
Dependencies: N/A
Step Test Step Test Data Excepted Actual Status Notes
Result Result (Pass/Fail)
1 Navigate to User_ID: User Successful Pass
Login Page sana should be login
able to
login
2 Provide valid Password:
User Name 123456
3 Provide Valid
Password
4 Click on Login
Button
Post-Conditions: User is validated with database and successfully logged in to account.
The account session details are logged in database.
40
3.16.1 Verification
Verification is a static practice of verifying documents, design, code and program. It is the
process of evaluating software to fix whether the components of a development phase satisfy
the conditions executed at the start of that phase.
Verification will help to determine whether the software is of high quality, well-engineered,
error-free, but it will not ensure whether the system is useful. This process helps the developer
to answer the question “Did I build what I need?” [ 21]
3.16.2 Validation:
Validation is a process of evaluating software during or at the end of the development process
to determine whether it satisfies specified requirements.
It evaluates the product whether it has been built according to the design specifications and
requirements or not. It endures that the product actually meets the user‘s needs and that the
specifications were accurate in the first place. It is a dynamic mechanism of validating and
testing the actual product which helps to answer “Did I build what I said I would?” [21]
CHAPTER-IV
Implementation and Findings
4.1 Implementation
In the stage of Project Implementation or Project Execution, the proposed project comes
into reality. The logical conclusion is done after evaluating, deciding, visioning, planning,
applying for funds and finding the financial resources of a project [22].
In this process of implementation project inputs are converted to project outputs. It can be
done as follows:
Approaches listed below are the options from where the project manager can choose the best
approach for a project.
Bottom-up approach: Beneficiaries implement the project. Here outside agencies can provide
financial resources and technical assistance if needed.
Considering the situation or necessity of a project, the implementation methods can be:
42
Input:
Sign Up: Username, Email ID, Security Question, Security Answer, NID/Passport No,
Payment Transaction ID, Password, Re-type Password.
Personal Details: Full name, Date of Birth, Marital status, Gender, Father‘s name, Mother‘s
Name, Nationality, Religion, Address, Postal code, Email Address, Mobile No.
Educational Details: Degree name, Discipline, Institution, Board, CGPA.
Documents Upload: Category of the Document, Description and the Required Documents.
Session, Programs to Offer, Deadline for Application Submission, Deadline for Accepting
Offer, Examination Date, Test Scores.
Output:
Registration ID, Application Status, Admit Card, Roll No for Admission.
ii. Admin’s profile: An authorized person can login to the system as admin with a
predefined username and person. He/she can change the password afterword. Fig-4.2
shows the profile page of the admin after a successful login.
44
iii. Programs and session declaration page: The admin has to insert the session,
programs to be offered for that session with deadlines to open admission. The fig-4.3
below depicts the ―
Programs Offered‖ page where the admin can declare those in
order to open admission.
iv. List of offered programs: The declared programs will be shown with dates in
―
Programs List‖ (fig-4.4). The admin can delete or edit those fields.
v. Applicant’s Detail for Evaluation: Fig-4.5 reveals the page where all the
submitted applications can be found by clicking on the registration no, which had been
generated by the system upon signing up of the applicants. After evaluating those
profiles admin can select qualified candidates for admission test. The admin has to add
the room no for the admission test too. After clicking the submit button application
status will be updated.
46
vi. Test Score Entry: In the page shown in fig-4.6, the admin will enter test scores
to the system and by comparing the scores admin can select finally qualified
applicants for admission.
47
vii. Applicant’s Sign Up Page: The applicants need to sign up first with the required
information to get registered into the system. The sign up page is shown in fig-4.7. A
successful registration will generate a registration ID for each applicant. To avoid
unauthorized registrations, an applicant needs to provide transaction code of
application fee payment as a proof during sign-up stage.
48
viii. Profile of Applicant: After login a welcome page will be shown to the applicant
as the profile page (fig-4.8) with application status showing ―
No application is
submitted yet of your Registration ID‖. The application status will be updated upon
submission of application as well as selection by the admin. Applicants have the
option to change their passwords.
49
x. Admit Card and offered admission: An applicant will get an admit card to be
sited (fig-4.13) for admission test if he/she be qualified for the first round. There is an
option to print it out. The page which shows the admit card is shown in fig-4.14. After
the admission test if the applicant be qualified then he/she will get the admission offer
(fig-4.15). The offer needs to be accepted to get a roll no for final admission before the
deadline exceeds. Upon acceptance a roll no will be generated (fig-4.16).
54
This chapter mainly focused on the implementation of the project. Here the probable inputs,
outputs, system generated reports and findings have been pointed out. Finally some
screenshots of the output of the implemented system are shown.
56
CHAPTER-V
Conclusion and Recommendation
5.1.2 Limitations
The proposed system has some limitations as listed below:
5.1.3 Challenges
The major challenges to implement the proposed system are as follows:
Adaptability
57
5.2 Conclusion
With the advancement of society, a huge increment of educational institutions and students
are seen worldwide now-a-days. Globalization has made the world become a small village.
People are traveling from one side of the world to another just for the purpose of being
educated in a different culture and better ranked institutions. A web based admission system
of an institution can come out of a traditional manual system to more easy, less time
consuming and globally accessible digitalized admission system. It can facilitate both the
applicants as well as the organization.
The web based software has been developed using Hypertext Preprocessor (PHP) as the
dynamic scripting language. In the front end of the software, HyperText Markup Language
(HTML5), jQuery and Cascading Style Sheets (CSS3) have been used. For responsive and
attractive design, Bootstrap, library of CSS has been used. MySQL has been used as the
database. This system acts as an easy communication between the candidates who want to
apply for an admission and the authority who can offer educational degrees.
The developed system is a user-friendly system in many aspects. The online system reduces
the paper works and physical labor. One of the most noticeable advantages of this proposed
automated system is the easiness of the storage and retrieval of any information when
necessary. It is able to store a huge amount of information in a short time span and retrieve it
anytime too. The system also provides information and guidelines for the applicants.
5.3 Recommendation
There are some important observations regarding the developed web based system for food
products quality certification. The recommendations are stated below:
(i) Power and data backup for smooth performance.
(ii)Maintenance, supports and security issues
(iii)Java programming language can be used instead of PHP programming due to
its platform independency.
(iv)In this software, there is no way to pay fees online through the system. So,
payment option can be added for better performance.
58
(v) The written admission test is considered to be conducted manually but for
more accessibility, online admission test can be introduced to the system.
(vi)This software is only tested for some medium scale scenarios. If anyone wants
to implement it in a large-scale, Oracle can be used instead of MySQL for better
performance.
References
[1] Schwartz, S., ¨Fair admissions to higher education: recommendations for good practice,
Admissions to Higher Education Steering Group¨, (2004).
[2] Zan H. W. H., ¨Methodologies of student information management system.¨ report on
college information processing.978-0-7695- 4196-9/10 IEEE, (2010).
[3] Jusuf, S., Nevenka, T., & Miroslav, Z.,¨University without paper¨, 25th Int. Conf. IT
Interfaces ITI, Cavtat, Croatia, (2003).
[4] Yue Z, G., JIN Y., ¨The development and design of the student management system
based on the network strategies¨, International Conference on management system ,
978-07695- 4136-5/10 IEEE, (2010).
[5] Valacich, J., George J., & Hoffer J., ¨Essentials of Systems Analysis and Design 2nd
edition Pearson/Prentice Hall¨, (2004).
[6] Clark, M.C & Boyle R. D., ¨Discipline specific preparation for university study.
Teaching in Higher Education, In preparation¨, (2003).
[7] Norasiah M.A. and Norhayati A., ¨Intelligent student information system‖.4th
International conference on computer technology procedures, Shah Alam, singapore, 0-
7803-7773-7/03 IEEE¨, (2003).
[8] Konishi, K., Furukawa, N., & Ikeda, H., ¨Data Model and Architecture of a Paper-
Digital Document Management System, DocEng‘07, August 28- 31,Winnipeg,
Manitoba, Canada, ACM¨, (2007).
[9] Maciaszek, L., ¨Requirement Analysis and System Design, Addison Wesley¨, 3rd
edition, (2007).
[10] Bharamagoudar S.R., Geeta R.B., Totad S.G., ¨Web Based Student Information
Management System¨ International Journal of Advanced Research in Computer and
Communication Engineering Vol. 2, Issue 6, June (2013).
[11] Avi Silberschatz, Henry F. Korth and S. Sudarshan, Database System Concept, Fifth
Edition, published by McGraw-Hill
[12] Roger S. Pressman, Software Engineering, Fifth Edition, published by McGraw-Hill
Higher Edition
[13] http://www.investopedia.com/terms/f/feasibility-study.asp#ixzz4cJmaStIq
[14] http://www.businessdictionary.com/definition/feasibility-study.html
[15] http://www.totallycommunications.com/latest/how-to-define-the-scope-of-a-project/
60
[16] https://en.wikipedia.org/wiki/Requirements_analysis
[17] https://slideplayer.com/slide/9504727/
[18] http://www.en.allexperts.com/q/Management-Consulting-2802/2009/4/software-
development-methodology-bit.htm
[19] http://www.fao.org/docrep/q1085e/q1085e07.htm
[20] http://www.agilemodeling.com/artifacts/dataFlowDiagram.htm
[21] https://www.toolsqa.com/software-testing/difference-between-verification-and-
validation/
[22] http://www.sswm.info/content/project-implementation
[23] http://softwaretestingfundamentals.com/unit-testing/
[24] http://softwaretestingfundamentals.com/integration-testing/
[25] http://softwaretestingfundamentals.com/system-testing/
[26] http://softwaretestingfundamentals.com/acceptance-testing/