Sei sulla pagina 1di 72

Project Report 2019 ROOTS OF EDUCATION

INTRODUCTION

ROOTS OF EDUCATION is a web application. This project is useful for students and
parents to obtain information regarding various universities, colleges, courses and syllabus
details of that courses. It can be used by students, parents and teachers. It also provides a
communication link between students and educational institution and also a communication
with parents and education institution. It provides information about all universities, colleges
and courses in Kerala. Additionally Roots of Education helps students to making decisions on
the current courses and best colleges under different universities. Information regarding
major courses and prevalent best education for the students are published on a regular basis.
And also students can directly see and understand about the environment of different
educational institutions.
ROOTS OF EDUCATION deals with the details of University and Colleges under
them and their courses. It also provides categorization of colleges like Aided, Un-aided,
Affiliated colleges etc. Any person can use this software at any time and from anywhere from
a digital device.
This system will provide a comprehensive online solution by providing information
for students who wish to take Engineering or Medical or any bachelor/master degree after
plus two or equivalent completion. This online system consists of information about different
universities across Kerala and colleges under it and what course they offer. This system also
has some key features like Syllabus, Fee structure, Eligibility checking etc.
By developing software that provides all these information the whole problems can
be solved. The software consists of popular universities under Kerala state and different
colleges under it. The software also provides some unique key features like Fees structure,
Eligibility checking, and syllabus etc. The software also provides categorization of colleges
like Aided, Un-aided, Affiliated colleges etc. Any person can use this software at any time
and from anywhere from a computer. The user can also read and post their comments or
review about each college or university which again helps other users to know more about the
college or university. The system also consist the location of the university and college so
that you can easily get directions to the desired university and college. The system also
support feedback and share options.

1
Project Report 2019 ROOTS OF EDUCATION

SYSTEM STUDY AND ANALYSIS

SYSTEM ANALYSIS

System analysis is the process of gathering and interpreting facts, diagnosing


problems the facts to improve the system. System analysis deals with a detailed study of the
various performed by the system and their relationship within and outside of the system.
System analysis is the heart of the process. Analysis helps us to understand the present
system. System specifies what system should do. A system is a set of components that
interact to accomplish purpose.

PROBLEM IDENTIFICATION

EXISTING SYSTEM

In the current education system in Kerala after completing plus two or equivalent the next
step for the students should be a graduation Degree or Medicine or Engineering field. For that
they choose the best university and best college of their choice. But the problem is to choose
which university and college and if he/she chooses a university the next problem he/she faces
is which course and which college he/she should choose in basis of their qualification, skills
and abilities. For that he/she should have to visit each university and college and enquire
about each course and are they eligible for to study that course or not. And to learn that
course how much fee does it cost.

FEASIBILITY STUDY

A feasibility study is a preliminary study undertaken to determine and document


projects viability. Results of this study are used to make a decision whether to proceed with
the project, or not. If it indeed leads to a project being approved, it will-before the real work
of problem and the recommendation on the best alternative. The feasibility study was carried
Out to find whether the proposed system can be developed and implemented without any
problem within the time limit. The following feasibility was considered for the project in

2
Project Report 2019 ROOTS OF EDUCATION

order to ensure that the project is viable and it does not have any major obstructions. In this
regard the following feasibility analysis was conducted.

 Technical Feasibility
 Behavioral Feasibility
 Economic Feasibility
 Operational Feasibility

Technical Feasibility

In this technical feasibility was done to find out whether the necessary technology
exist the equipment have the capacity to hold data required by the use of new system.
Checker can develop by using the existing technology .NET and Microsoft SQL server.
Plagiarism checker uses ASP.NET with C#.NET for front end development and SQL Server
for storage purpose. ASP.NET support different type of tools for UI design and programming
and these are easily available. Programming in C#.NET is so easy. Also major part is that it is
guaranteed for accuracy, reliability, ease of access and data security.

Behavioral Feasibility

When doing project in an external firm there can be in cooperation and other un-
predictable egoism from the colleagues especially when a new idea is being introduced.
These are behavioral and depend upon individual behavior of person involved. Behavioral
feasibility were done in order to analyze the attitude of the people who are directly involved
with my project.

Economic Feasibility

In this project economic feasibility were carried out to find whether are sufficient for
doing the project. Economic feasibility also counts any extra h/W which is should be
affordable in terms of cost. It also stress whether the system can be built specified time
interval. Establish cost and schedule constraints. Economic feasibility positive result as no
equipment was needed to purchase additionally.

3
Project Report 2019 ROOTS OF EDUCATION

Operational Feasibility

The proposed project is said to be beneficial only if they can be modules and carved
out in to a system that will meet all the requirement .The best for the feasibility prohibits if
the system would run without faults when it is deployed or there are any major hurdles to be
the implementations of the proposed system. The proposed system is not supposed to cause
any harm to the user or the computer that is being used and the system is safe and secure.

REQUIREMENT ANALYSIS

Study about the existing system and identification of its drawbacks lead to the
proposed system. It will be compatible with the existing one. It is implemented in ASP.Net,
which makes the network platform independent.

PROPOSED SYSTEM

The problems of existing system can be solved by providing an information system


which can provide all information about different universities and colleges under each
university and how much money costs to study each course.
By developing software that provides all these information the whole problems can
be solved. The software consists of popular universities under Kerala state and different
colleges under it. The software also provides some unique key features like Fees structure,
Eligibility checking, and syllabus etc. The software also provides categorization of colleges
like Aided, Un-aided, Affiliated colleges etc. Any person can use this software at any time
and from anywhere from a computer. The user can also read and post their comments or
review about each college or university which again helps other users to know more about the
college or university. The system also consist the location of the university and college so
that you can easily get directions to the desired university and college. The system also
support feedback and share options.

 Easily accessible.

 Less time consuming.

 Less expense.

4
Project Report 2019 ROOTS OF EDUCATION

SYSTEM REQUIREMENTS SPECIFICATION

MODULE DESCRIPTION
After careful analysis the system has been identified to have the following
modules,

 ADMIN.
 MEMBER.
 GUEST.

1. ADMIN
 Admin manages all the details about university, college and courses.
 Admin can add, edit and view details.
 Admin can view feedbacks about university, college and course given by
members.

2. MEMBER
 Member is registered in this webpage and get User ID.
 User ID is automatically generated by the system.
 Member can view university, college, course and syllabus details.
 Member can give and view feedback.
 Member can use search option to get the details of desired university,
College and course.

3. GUEST
 Guest can register on the webpage to become a member.
 Guest can view university, college and course details.

5
Project Report 2019 ROOTS OF EDUCATION

SYSTEM ENVIORNMENT

Hardware Requirements

Processor: Intel Dual Core

Hard Disk: 40 GB

Input Devices: Keyboard, Mouse

Output Devices: Monitor

Software Specification for Development

Operating System: Windows 7

IDE: Visual Studio 2012

Front End: ASP.Net

Back End: Microsoft SQL Server

Design Tool: Microsoft Visual Studio 2012

Language: C#.Net

TECHNOLOGY SPECIFICATION

Software selection is an important work in a project development cycle. Software


must be selected in accordance with the application and the latest technology available. My
choice is C#.NET, HTML and CSS as Front end and MYSQL as back end.

.NET
The .NET Framework is a software framework that runs primarily on Microsoft
windows. The .NET Framework is an environment for building, deploying, and running Web
Applications and Web Services. It includes a large library and supports several programming
language interoperability (each language can use code written in other languages). for the
.NET Framework execute in a software environment (as contrasted environment), known as
the Common language Runtime (CLR), an application virtual machine that provides
important such as security, memory management, and exception handling. The class library

6
Project Report 2019 ROOTS OF EDUCATION

and the together constitute the .NET Framework. The .NET Framework's Base Class Library
provides user interface, data access, database connectivity, cryptography, web application
development numeric algorithms, and network communications. Programmers produce
software by combining their own source code with the .NET Framework and other libraries.
The .NET Framework is intended to be used by most new applications created for the largely
Windows platform. Microsoft also produces a popular integrated development environment
largely for .NET software called Visual Studio.

.NET Frameworks keywords:

 Easier and quicker programming


 Reduced amount of code
 Declarative programming model
 Richer sewer control hierarchy with events
 Larger class library
 Better support for development tools

ASP.NET

This project uses Asp.NET as a framework. ASP.NET is a web application frame


work developed and marketed by Microsoft to allow programmers to build dynamic web
sites, web applications and web services. It was first released in January 2002 with version
1.0 of the.NET Framework, and is the successor to Microsoft’s Active Server Pages (ASP)
technology the .NET Framework (pronounced dot net) is a software framework that runs
primarily on Microsoft Windows. It includes a large library and supports several
programming languages which allow language interoperability (each language can use code
written in other languages). Programs written for the .NET Framework execute in a software
environment (as contrasted environment), known as the Common Language Runtime (CLR),
an application provides important services such as security, memory management, and
exception class library and the CLR together constitute the .NET Framework. The .NET
Framework's Base Class Library provides user interface, data access, connectivity,
cryptography, web application development, numeric algorithms, and network
Communications. Programmers produce software by combining their own source code with
the .NET Framework and other libraries. The .NET Framework is intended to be used by
most new applications created for the Windows platform. Microsoft also produces a popular

7
Project Report 2019 ROOTS OF EDUCATION

integrated development environment largely for .NET software called Visual Studio.
ASP.NET is built on the Common Language Runtime (CLR), allowing programmers to write
ASP.NET code.
Using any supported .NET language. ASP.NET processes all code on the server. When
theASP.NET code has been processed, the sewer returns the resultant HTML to the client. If
the client supports JavaScript, then the server will use it to make the clients browser
experience quicker and easier. ASP.NET still manages to bring true Object Oriented
Programming to the Internet.

Design features

l. Interoperability.
2. Common Language Runtime Engine.
3. Language independence.
4. Base Class Library.
5. Simplified Deployment.
6. Security.
7. Portability.

C# .NET

In this project, C# is used to do the coding part. C# syntax is highly expensive, yet it
is also simple and easy to learn. The curly-brace syntax of C# will be instantly familiar with
C, C++ or Java. Developers who know any of these languages are begin to work productively
in C# within a very short time. C# syntax simplifies many complexities of C++ and provides
powerful features such as null able value types, delegates, lambda expressions and direct
memory access, which are not found in Java. C# generic methods and types, which provide
increased type safety and performance, and iterations, which enable implementers of
collection classes to define custom iteration behaviors that are simple to use by client code
Language-Integrated Query (LINQ) expressions make the strongly-typed query a first-class
language construct.

8
Project Report 2019 ROOTS OF EDUCATION

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


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

In addition to these basic object-oriented principles, C# makes it easy to develop


software components through several innovative language constructs, including the
following:
 Encapsulated method signatures called delegates, which enable type-safe
event notifications.
 Properties, which serve as assessors for private member variables.
 Attributes, which provide declarative metadata about types at run
documentation comments

Language-Integrated Query (LINQ) which provides capabilities across a variety of


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

C# programs run on the .NET Framework, an integral component of Windows that


includes a virtual execution system called the common language runtime (CLR) and a unified
set of class libraries. The CLR is the commercial implementation by Microsoft of the
common language infrastructure (CLI), an international standard that is the basis for creating
execution and development environments in which languages and libraries work together
seamlessly.

Source code written in C# is compiled into an intermediate language (IL) that


conforms to the CLI specification. The IL code and resources, such as bitmaps and strings,
are stored on disk in an executable file called an assembly, typically with an extension of .exe

9
Project Report 2019 ROOTS OF EDUCATION

or .dll. An assembly contains a manifest that provides information about the assembly's types,
version, culture, and security requirements.

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

Features of C#

 Pointers are missing in C#.


 Unsafe operations such as direct memory manipulation are not allowed.
 In C# there is no usage of " :: " or " " operators.
 Since it’s on .NET, it inherits the features of automatic memory management
and garbage collection.
 C# has been based according to the current trend and is very powerful building
 Interoperable, scalable, robust applications.

 C# includes built in support to turn any component into a web service that
invoked over the Internet from any application running on any platform.
 C# supports Data Encapsulation, inheritance, polymorphism, interfaces.
 In C# we cannot perform unsafe casts like convert double to a Boolean.
Mail Gateway

The mail gateway is a machine that handles connections between networks that run
different communications protocols or communications between different networks that use
the same protocol. For example, a mail gateway might connect a TCP/IP network to a
network that runs the Systems Network Architecture (SNA) protocol suite. The simplest mail
gateway to set up is one that connects two networks that use the same protocol or mailer. This
system handles mail with an address for which sendmail cannot find a recipient in your
domain. If a mail gateway exists, sendmail uses it for sending and receiving mail outside your
domain.
10
Project Report 2019 ROOTS OF EDUCATION

Microsoft Visual Studio

In ancient days of web programming, developers created web pages with simple text
editors such as Notepad. Other choices were available, but each suffered from its own
limitations. Visual Studio changes all that. It’s extendable and can work with other HTML
editors. Another feature it has many time saving features. Visual Studio even includes a built
in test web server, which allows us to create and test a complete ASP.NET website without
worrying about web server settings. Microsoft Visual Studio is an integrated development
environment (IDE) from Microsoft. It is used to develop console and graphical user interface
applications along with Windows Forms applications, web sites, web applications, and web
services in both native code together with managed code for all platforms supported by
Microsoft Windows, Windows Mobile, Windows CE,.NET Framework, .NET Compact
Framework and Microsoft Silver light.

Visual Studio includes a code editor supporting IntelliSense as well as code integrated
debugger works both as a source-level debugger and a machine-level debugger. Other built-in
tools include a forms designer for building GUI applications, web designer, class and
database schema designer. It accepts plug-ins that enhance the functionality at almost level-
including adding support for source-control systems (like Subversion and Visual SourceSafe)
and adding new toolsets like editors and visual designers for domain-specific languages or
toolsets for other aspects of the software development lifecycle (like the Team Foundation
Server client: Team Explorer). Visual Studio supports different programming languages by
means of language services, which allow the code editor and debugger to support (to varying
degrees) nearly any programming language, provided a language-specific service exists.
Built-in languages include C/C++ (via Visual C4-P), VB.NET (via Visual Basic .NET), C#
(via Visual C#), and F# (as of Visual Studio 2010). Support for other languages such as
Python, and Ruby among others is available via languages. Services installed separately. It
also supports XML/XSLT, HTML/XHTML, JavaSc1ipt and Individual language-specific
versions of Visual Studio also exist which provide more language services to the user:
Microsoft Visual Basic, Visual J #, Visual C#, and Visual C++.

11
Project Report 2019 ROOTS OF EDUCATION

Microsoft SQL Server

Microsoft SQL Server is used as a back end for developing this project. Microsoft
SQL Server is a relational database management system (RDBMS) that offers various tools
to perform tasks such as database development, maintenance and administration. They are
designed to run on platforms ranging from laptops to large multiprocessor servers. MS SQL
Server is commonly used as the back end system for various websites and corporate CRM’s
and can support thousands of multiple users.
Microsoft SQL Sewer provides an environment used to generate databases that can be
accessed from workstations, the Internet, or other media such as a personal digital assistant
(PDA). It is comprehensive, integrated data management and analysis software that enables
organizations to reliably manage mission-critical information and confidently run today’s
increasingly complex business applications.

ADO.NET

ADO.NET is a data access technology from the Microsoft .NET Framework that
provides communication between relational and non-relational systems through a common
set of components. ADO.NET is a set of computer software components that programmers
can use to access data and data services from a database. It is a part of the base class library
that is included with the Microsoft .NET Framework. It is commonly used by programmers to
access and modify data stored in relational database systems, though it can also access data in
non-relational data sources. ADO.NET is sometimes considered an evolution of ActiveX
Data Objects (ADO) technology, but was changed so extensively that it can be considered an
entirely new product.

SYSTEM DESIGN

Module design:

Software design sits at the technical kernel of the software engineering process and is
applied regardless of the development paradigm and area of application. Design is the first
step in the development phase for any engineered product or system. The designer’s goal is to
produce a model or representation of an entity that will later be built. Beginning, once system

12
Project Report 2019 ROOTS OF EDUCATION

requirement have been specified and analyzed, system design is the first of the three technical
activities -design, code and test that is required to build and verify software. The important
can be stated with a single word “Quality”. Design is the place where quality is fostered in
software development. Design provides us with representations of software that can assess
for quality. Design is the only way that we can accurately translate a customer`s view into a
finished software product or system. Software design serves as a foundation for all the
software engineering steps that follow. Without a strong design we risk building an unstable
system – one that will be difficult to test, one whose quality cannot be assessed until the last
stage. During design, progressive refinement of data structure, program structure, and
procedural details are developed reviewed and documented. System design can be viewed
from either technical or project management perspective. From the technical point of view,
design is comprised of four activities – architectural design, data structure design, inter face
design and procedural design.

DATA FLOW DIAGRAMS:

A data flow diagram is graphical tool used to describe and analyze movement of data
through a system. These are the central tool and the basis from which the other components
are developed. The transformation of data from input to output, through processed, may be
described logically and independently of physical components associated with the system.
These are known as the logical data flow diagrams. The physical data flow diagrams show
the actual implements and movement of data between people, departments and workstations.
A full description of a system actually consists of a set of data flow diagrams. Using two
familiar notations Yourdon, Gane and Sarson notation develops the data flow diagrams. Each
component in a DFD is labeled with a descriptive name. Process is further identified with a
number that will be used for identification purpose. The development of DFD’S is done in
several levels. Each process in lower level diagrams can be broken down into a more detailed
DFD in the next level. The lop-level diagram is often called context diagram. It consist a
single process bit, which plays vital role in studying the current system. The process in the
context level diagram is exploded into other process at the first level DFD.

The idea behind the explosion of a process into more process is that understanding at
one level of detail is exploded into greater detail at the next level. This is done until further

13
Project Report 2019 ROOTS OF EDUCATION

explosion is necessary and an adequate amount of detail is described for analyst to understand
the process.

Larry Constantine first developed the DFD as a way of expressing system


requirements in a graphical from, this lead to the modular design.

A DFD is also known as a “bubble Chart” has the purpose of clarifying system
requirements and identifying major transformations that will become programs in system
design. So it is the starting point of the design to the lowest level of detail. A DFD consists of
a series of bubbles joined by data flows in the system.

DFD SYMBOLS:
In the DFD, there are four symbols
1. A square defines a source (originator) or destination of system data
2. An arrow identifies data flow. It is the pipeline through which the information flows
3. A circle or a bubble represents a process that transforms incoming data flow into outgoing
4. An open rectangle is a data store, data at rest or a temporary repository of data.

Process

Data Flow

Data store

CONSTRUCTING A DFD:

Several rules of thumb are used in drawing DFD’S:


1. Process should be named and numbered for an easy reference. Each name should be
representative of the process.

14
Project Report 2019 ROOTS OF EDUCATION

2. The direction of flow is from top to bottom and from left to right. Data traditionally flow
from source to the destination although they may flow back to the source. One way to
indicate this is to draw long flow line back to
a source. An alternative way is to repeat the source symbol as a destination .Since it is used
more than once in the DFD it is marked with a short diagonal.
3. When a process is exploded into lower level details, they are numbered.
4. The names of data stores and destinations are written in capital letters. Process and data
flow names have the first letter of each work capitalized
A DFD typically shows the minimum contents of data store. Each data store should contain
all the data elements that flow in and out. Questionnaires should contain all the data elements
that flow in and out. Missing interfaces redundancies and like is then accounted for often
through interviews.

SAILENT FEATURES OF DFD’S

1. The DFD shows flow of data, not of control loops and decision are controlled
considerations do not appear on a DFD.
2. The DFD does not indicate the time factor involved in any process whether the dataflow
take place daily, weekly, monthly or yearly.
3. The sequence of events is not brought out on the DFD.

RULES GOVERNING THE DFD’S

PROCESS
1) No process can have only outputs.
2) No process can have only inputs. If an object has only inputs, than it must be a sink.
3) A process has a verb phrase label.

DATA STORE
1) Data cannot move directly from one data store to another data store, a process must move
data.
2) Data cannot move directly from an outside source to a data store, a process, which receives
must move data from the source and place the data into data store
15
Project Report 2019 ROOTS OF EDUCATION

3) A data store has a noun phrase label.

SOURCE OR SINK

The origin and/or destination of data.


1) Data cannot move direly from a source to sink it must be moved by a process
2) A source and /or sink have a noun phrase land.

DATA FLOW
1. A Data Flow has only one direction of flow between symbols. It may flow in both
directions between a process and a data store to show a read before an update. The later is
usually indicated however by two separate arrows since these happen at different type.
2. A join in DFD means that exactly the same data comes from any of two or more different
processes data store or sink to a common location.
3. A data flow cannot go directly back to the same process it leads. There must be at least one
other process that handles the data flow produce some other data flow returns the original
data into the beginning process.
4. A Data flow to a data store means update (delete or change).
5. A data Flow from a data store means retrieve or use.
A data flow has a noun phrase label more than one data flow noun phrase can appear
one single arrow as long as all of the flows on the same arrow move together as one package.

16
Project Report 2019 ROOTS OF EDUCATION

DATA FLOW DIAGRAMS

17
Project Report 2019 ROOTS OF EDUCATION

Level 0

Level 1 Admin

18
Project Report 2019 ROOTS OF EDUCATION

Level 1 Member

Level 1 Guest

19
Project Report 2019 ROOTS OF EDUCATION

Level 2 Admin

Level 2 Member

20
Project Report 2019 ROOTS OF EDUCATION

ENTITY RELATIONSHIP DIAGRAM


An Entity Relation of (ER) Diagram is a specialized graphics that illustrates the
interrelationship between entities in a database. ER diagrams often use symbols to represent
3different types of information. Boxes are commonly used to represent entities. Diamonds are
normally used to represent relationships and ovals are used to represent attributes. An entity
Relationship model (ERM), in software engineering is an abstract and conceptual represent of
data. Entity Relationship modeling is a relational schema database modeling method, used to
produce a type of conceptual schema or semantic data model of a system, often a relation
database, and its requirements in a top-down fashion.

Entity:
Entity is the thing which we want to store information. It is an elementary basic building
block of storing information about business process. An entity represents an object defined
within the information system about which you want to store information. Entities are distinct
things in the enterprise.

Relationships
A relationship is a named collection or association between entities or used to relate two or
more entities with some common attributes or meaningful interaction between the objects

Attributes
Attributes are the properties of the entities and relationship, Descriptor of the entity.
Attributes are elementary pieces of information attached to an entity.

21
Project Report 2019 ROOTS OF EDUCATION

ER-DIAGRAM

22
Project Report 2019 ROOTS OF EDUCATION

ENTITY RELETIONSHIP DIAGRAM

23
Project Report 2019 ROOTS OF EDUCATION

USE CASE-DIAGRAM

24
Project Report 2019 ROOTS OF EDUCATION

25
Project Report 2019 ROOTS OF EDUCATION

DATA BASE DESIGN

Database design is an important place in designing a system. During this phase care should be
taken to avoid redundancy of information storing into a database, since it leads to wastage of
memory space.

Normalization Techniques:
Normalization is a process of simplifying the relationship between data elements in a
record. Through normalization a collection of data in a records structure is replaced by
successive record structures that are simpler and more predictable and therefore more
manageable.
First Normal Form
A relation is said to be in first normal form if the values in the relation are atomic for
every attribute in the relation .By this we mean simply that no attribute value can be a set of
values or as it sometimes expressed, a repeating group.
Second Normal Form
A relation is said to be in second normal form if it is in first normal form and it should
satisfy any one of the following rules.
Primary key is a not a composite primary key
No non-key attribute is fully functionally dependent on full set of primary key

26
Project Report 2019 ROOTS OF EDUCATION

Third Normal Form


A relation is said to be in third normal form if it is in second normal form and if their
exits no transitive dependencies.
Transitive Dependency
If two non-key attributes depends on each other as well as on the primary key then
they are said to be transitively dependent. The above normalization principles where applied
to decompose the data in multiple tables there by making the data to be maintained in a
consistent state.

TABLE SPECIFICATION

Register

Column name Data type Key


User id int Primary key
First Name varchar(30)
Last Name varchar(30)
Gender varchar(10)
DOB varchar(20)
Age int
Address varchar(100)
Qualification varchar(100)
State varchar(50)
District varchar(50)
Phone Number bigint
Email varchar(60)
Image varchar(max)

27
Project Report 2019 ROOTS OF EDUCATION

University Details

Column name Data type Key


University id int Primary key
University Name varchar(50)
Vice Chancellor varchar(30)
Address varchar(100)
District
Phone Number bigint
Email varchar(30)
Website varchar(50)
Description varchar(200)
Photo varchar(max)

College Details

Column name Data type Key


College id int Primary key
College Name varchar(100)

Address varchar(255)

Working Days int

Hostel Facility varchar(100)

Transport System varchar(20)

Working Hours int

Phone Number bigint

Email varchar(150)

Website varchar(50)

Photo varchar(max)

Description varchar(500)

28
Project Report 2019 ROOTS OF EDUCATION

Course Details
Column name Data type Key
Course id int Primary key
Course Name varchar(100)
Course Type varchar(50)
Duration int
Photo varchar(max)

University Courses
Column name Data type Key
UCID int Primary key
University id int Foreign key
Course id int Foreign key
Eligibility varchar(255)

College Courses

Column name Data type Key


CCID int Primary key
UCID int Foreign key
College id int Foreign key
Total Fee varchar(30)
Total Seat int
Total Hours int
Total Mark int
Total Paper int

Syllabus Details

Column name Data type Key


SYID int Primary key
UCID int Foreign key
Subject varchar(255)
Reference varchar(200)

29
Project Report 2019 ROOTS OF EDUCATION

Feedback

Column name Data type key


User id int Primary key
Feedback varchar(500)
Rating varchar(30)
Type varchar(50)
Type id int
Date varchar(20)

Login

Column name Data type key


Log id int Primary key
Username varchar(30)
Password varchar(20)
User Type varchar(20)

Forgot Password

Column name Data type key


User id int
New Link varchar(255)
Date date

Qualification
Column name Data type key
Category varchar(100)
Type varchar(100)

State
Column name Data type key
State id int Primary key
State name varchar(30)

30
Project Report 2019 ROOTS OF EDUCATION

District
Column name Data type key
Dist id int Primary key
Dist name varchar(60)
State id int Foreign key

Type
Column name Data type key
Type id int
Name varchar(30)

SYSTEM TESTING AND IMPLEMENTATION

SYSTEM DEVELOPMENT

System development is a series of operations performed to manipulate data to produce


output from a computer system. This highly depends on the programming language used.
Programming techniques include the concept of "object-oriented programming." Object-
oriented programming centers on the development of reusable program routines (modules)
and the classification of data types (numbers, letters, dollars, etc.) and data structures
(records, files, tables, etc.). Linking pre-scripted module objects to predefined data-class
objects reduces development times and makes programs easier to modify.
The development phase involves converting design specifications into executable
programs. Effective development standards include requirements that programmers and other
project participants discuss design specifications before programming begins. The procedures
help ensure programmers clearly understand program designs and functional requirements.
The principle activities performed during the development phase can be divided into two
major related sequences. They are:

 External system development.


 Internal system development.

31
Project Report 2019 ROOTS OF EDUCATION

The major External system development activities are:


 Implementation
 Planning
 Preparation of manual
 Personal training
 Equipment acquisition
 Installation

The major system internal development activities are:


 Computer program development
 Performance testing

TESTING
System testing of software or hardware is testing conducted on a complete, integrated
system to evaluate the system's compliance with its specified requirements. System testing
falls within the scope of black box testing, and as such, should require no knowledge of the
inner design of the code or logic.
As a rule, system testing takes, as its input, all of the "integrated" software
components that have successfully passed integration testing and also the software system
itself integrated with any applicable hardware system(s). The purpose of integration testing is
to detect any inconsistencies between the software units that are integrated together (called
assemblages) or between any of the assemblages and the hardware. System testing is a more
limiting type of testing; it seeks to detect defects both within the "inter-assemblages" and also
within the system as a whole.

1.1 Testing the whole system

System testing is performed on the entire system in the context of a Functional


Requirement Specification(s) (FRS) and/or a System Requirement Specification (SRS).
System testing is an investigatory testing phase, where the focus is to have almost a
destructive attitude and tests not only the design, but also the behavior and even the believed
expectations of the customer. It is also intended to test up to and beyond the bounds defined
in the software/hardware requirements specification(s). A primary purpose for testing is to

32
Project Report 2019 ROOTS OF EDUCATION

detect software failures so that defects may be uncovered and corrected. This is a non-trivial
pursuit. Testing cannot establish that a product functions properly under all conditions but
can only establish that it does not function properly under specific conditions.

Software Testing

Software Testing is an empirical investigation conducted to provide stakeholders with


information about the quality of the product or service under test[1], with respect to the
context in which it is intended to operate. Software Testing also provides an objective,
independent view of the software to allow the business to appreciate and understand the risks
at implementation of the software.

Test techniques include, but are not limited to, the process of executing a program or
application with the intent of finding software bugs. It can also be stated as the process of
validating and verifying that a software program/application/product meets the business and
technical requirements that guided its design and development, so that it works as expected
and can be implemented with the same characteristics.

Software Testing, depending on the testing method employed, can be implemented at


any time in the development process, however the most test effort is employed after the
requirements have been defined and coding process has been completed.

Static vs. dynamic testing

There are many approaches to software testing. Reviews, walkthroughs or inspections


are considered as static testing, whereas actually executing programmed code with a given set
of test cases is referred to as dynamic testing. The former can be, (and unfortunately in
practice often is) omitted, whereas the latter takes place when programs begin to be used for
the first time - which is normally considered the beginning of the testing stage. This may
actually begin before the program is 100% complete in order to test particular sections of
code. Typical techniques for this are either using stubs drivers, or execution from a debugger
environment. For Example, Spreadsheet programs are, by their very nature, tested to a large
extent "on the fly" during the build process as the result of some calculation or text
manipulation is shown interactively immediately after each formula is enter.

33
Project Report 2019 ROOTS OF EDUCATION

1.2 Testing methods


Software testing methods are traditionally divided into black box testing and white
box testing. These two approaches are used to describe the point of view that a test engineer
takes when designing test cases.

Black box testing


Black box testing treats the software as a "black box"—without any knowledge of
internal implementation. Black box testing methods include: equivalence partitioning,
boundary value analysis, all-pairs testing, fuzz testing, model-based testing, traceability
matrix, exploratory testing and specification-based testing.
Specification-based testing

Specification-based testing aims to test the functionality of software according to the


applicable requirements. Thus, the tester inputs data into, and only sees the output from, the
test object. This level of testing usually requires thorough test cases to be provided to the
tester, who then can simply verify that for a given input, the output value (or behavior), either
"is" or “is not" the same as the expected value specified in the test case. Specification-based
testing is necessary, but it is insufficient to guard against certain risk.

Advantages and disadvantages

The black box tester has no "bonds" with the code, and a tester's perception is very
simple a code must have bugs. Using the principle, "Ask and you shall receive," black box
testers find bugs where programmers don't. But, on the other hand, black box testing has been
said to be "like a walk in a dark labyrinth without a flashlight," because the tester doesn't
know how the software being tested was actually constructed. That's why there are situations
when (1) a black box tester writes many test cases to check something that can be tested by
only one test case, and/or (2) some parts of the back end are not tested at all. Therefore, black
box testing has the advantage of "an unaffiliated opinion," on the one hand, and the
disadvantage of "blind exploring," on the other.

34
Project Report 2019 ROOTS OF EDUCATION

White box testing

White box testing is when the tester has access to the internal data structures and
algorithms including the code that implement these.

Types of white box testing


The following types of white box testing exist:

 API testing (application programming interface) - Testing of the application


using Public and Private APIs.
 Code coverage - creating tests to satisfy some criteria of code coverage. For
example, the test designer can create tests to cause all statements in the
program to be executed at least once.
 Fault injection methods.
 Mutation testing methods.
 Static testing - White box testing includes all static testing.

Code completeness evaluation

White box testing methods can also be used to evaluate the completeness of a test
suite that was created with black box testing methods. This allows the software team to
examine parts of a system that are rarely tested and ensures that the most important function
points have been tested.
Two common forms of code coverage are:

 Function coverage, which reports on functions executed


 Statement coverage, which reports on the number of lines executed to
complete the test.

They both return coverage metric, measured as a percentage.

35
Project Report 2019 ROOTS OF EDUCATION

Grey Box Testing

Grey box testing involves having access to internal data structures and algorithms for
purposes of designing the test cases, but testing at the user, or black-box level. Manipulating
input data and formatting output do not qualify as grey box, because the input and output are
clearly outside of the "black-box" that we are calling the system under test. This distinction is
Particularly important when conducting integration testing between two modules of code
written by two different developers, where only the interfaces are exposed for test. However,
modifying a data repository does qualify as grey box, as the user would not normally, not be
able to change the data outside of the system under test. Grey box testing may also include
reverse engineering to determine, for instance, boundary values or error messages.

Acceptance testing
Acceptance testing can mean one of two things:

 A smoke test is used as an acceptance test prior to introducing a build to the main
testing process.
 Acceptance testing performed by the customer is known as user acceptance testing
(UAT).

Regression Testing

Regression testing is any type of software testing that seeks to uncover software
regressions. Such regression occurs whenever software functionality that was previously
working correctly stops working as intended. Typically regressions occur as an unintended
consequence of program changes. Common methods of regression testing include re-running
previously run tests and checking whether previously fixed faults have re-emerged.

Non Functional Software Testing


Special methods exist to test non-functional aspects of software.

 Performance testing checks to see if the software can handle large quantities of
data or users. This is generally referred to as software scalability. This activity
of Non Functional Software Testing is often referred to as Endurance Testing.
36
Project Report 2019 ROOTS OF EDUCATION

 Stability testing checks to see if the software can continuously function well in
or above an acceptable period. This activity of Non Functional Software
Testing is often times referred to as load (or endurance) testing.
 Usability testing is needed to check if the user interface is easy to use and
understand.
 Security testing is essential for software which processes confidential data and
to prevent system intrusion by hackers.
 Internationalization and localization is needed to test these aspects of software,
for which a pseudo localization method can be used.

In contrast to functional testing, which establishes the correct operation of the


software (correct in that it matches the expected behavior defined in the design requirements),
non-functional testing verifies that the software functions properly even when it receives
invalid or unexpected inputs. Software fault injection, in the form of fussing, is an example of
non-functional testing. Non-functional testing, especially for software, is designed to
establish whether the device under test can tolerate invalid or unexpected inputs, thereby
establishing the robustness of input validation routines as well as error-handling routines.
Various commercial non-functional testing tools are linked from the Software fault injection
page; there are also numerous open-source and free software tools available that perform
nonfunctional testing.

IMPLEMENTATION

Implementation is the stage of the project where the theoretical design is turned into a
working system. At this stage the main work load, the greatest upheaval and the major
impaction the existing system shifts to the user department. If the implementation is not
carefully planned or controlled, it can cause chaos and confusion. Implementation includes all
those activities that take place to convert from the old system to the new one. The new system
may be totally new, replacing an existing manual or automated system or it may be a major
modification to an existing system. Proper implementation is essential to provide a reliable
system to meet the organization requirements. Successful implementation may not guarantee
Improvement in the organization using the new system, but improper installation will
preventing. The process of putting the developed system in actual use is called system

37
Project Report 2019 ROOTS OF EDUCATION

implementation. This includes all those activities that take place to convert from the old
system to the new system. The system can be implemented only after thorough testing is
done and if it is found to be working according to the specifications. The system personnel
check the feasibility of the system. The most crucial stage is achieving a new successful
system and giving confidence on the new system for the user that it will work efficiently and
effectively. It involves careful planning, investigation of the current system and its constraints
on implementation, design of methods to achieve the changeover. The system
implementation has three main aspects. They are education and training, system testing and
changeover.
The implementation stage involves following tasks.

 Careful planning.
 Investigation of system and constraints.
 Design of methods to achieve the changeover.
 Training of the staff in the changeover phase.
 Evaluation of the changeover method.

The method of implementation and the time scale to be adopted are found out
initially. Next the system is tested properly and the same time users are trained in the new
procedures.

Implementation Procedures
Implementation of software refers to the final installation of the package in its real
environment, to the satisfaction of the intended users and the operation of the system. In
many organizations someone who will not be operating it, will commission the software
development project. In the initial stage, they doubt about the software but we have to ensure
that the resistance does not build up as one has to make sure that

 The active user must be aware of the benefits of using the system.
 Their confidence in the software is built up.
 Proper guidance is imparted to the user so that he is comfortable in using the
application.

38
Project Report 2019 ROOTS OF EDUCATION

SYSTEM MAINTENANCE

The maintenance phase of the software cycle is the time in which a Software product
performs useful work. After a system is successfully implemented, it should be maintained in
a proper manner. System maintenance is an important aspect in the software development
lifecycle. The need for system maintenance is for it to make adaptable to the changes in the
system environment. There may be social, technical and other environmental changes, which
affects a system, which is being implemented. Software product enhancements may involve
providing new functional capabilities, improving user displays and mode of interaction,
upgrading the performance characteristics of the system. So only through proper system
maintenance procedures, the system can be adapted to cope up with these changes. Software
maintenance is of course, far more than “finding mistakes”. We may define maintenance by
describing four activities that are undertaken to after a program is released for use.

The first maintenance activity occurs because it is unreasonable to assume that


software testing will uncover all latent errors in a large software system. During the use of
any large program, errors will occur and be reported to the developer. The process that
includes the diagnosis and correction of one or more errors is called corrective maintenance.

The second activity that contributes to a definition of maintenance occurs because of


the rapid change that is encountered in every aspect of computing. Therefore, adaptive
maintenance an activity that modifies software to properly interfere with a changing
environment is both necessary and common place.

The third activity that may be applied to a definition of maintenance occurs when a
software package is successful. As the software is used, recommendations for new
capabilities, modifications to existing functions, and general enhancements are received from
users. To satisfy requests in this category, perfective maintenance is performed.

The fourth maintenance activity occurs when software is changed to improve future
maintainability or reliability, or to provide a better basis for future enhancements. Often
called preventive maintenance, this activity is characterized by reverse engineering and
reengineering techniques.

39
Project Report 2019 ROOTS OF EDUCATION

CONCLUSION
This system will provide a comprehensive online solution by providing information for
students who wish to take Engineering or Medical or any bachelor/master degree after plus
two or equivalent completion. This online system consists of information about different
universities across Kerala and colleges under it and what course they offer. This system also
has some key features like Syllabus, Fee structure, Eligibility checking etc.

BIBLIOGRAPHY

Visual Studio .NET Programming, Mridula Parihar, Yesh


Singhal, Nitin Pandey

www.stackoverflow.com
www.aspsnippets.com
www.codeproject.com
www.w3schools.com

40
Project Report 2019 ROOTS OF EDUCATION

APPENDIX

41
Project Report 2019 ROOTS OF EDUCATION

SCREEN SHOT
Home Page

Login

42
Project Report 2019 ROOTS OF EDUCATION

Register

43
Project Report 2019 ROOTS OF EDUCATION

Admin Home

Admin Add University

44
Project Report 2019 ROOTS OF EDUCATION

Admin Add College

45
Project Report 2019 ROOTS OF EDUCATION

Admin Add Course

Admin Add Syllabus

46
Project Report 2019 ROOTS OF EDUCATION

Admin Allocate University Courses

Admin Allocate College Courses

47
Project Report 2019 ROOTS OF EDUCATION

View Profile

48
Project Report 2019 ROOTS OF EDUCATION

View University

49
Project Report 2019 ROOTS OF EDUCATION

View College

50
Project Report 2019 ROOTS OF EDUCATION

View Course

51
Project Report 2019 ROOTS OF EDUCATION

Search University

Search College

52
Project Report 2019 ROOTS OF EDUCATION

Search Course

Chatbot

53
Project Report 2019 ROOTS OF EDUCATION

Forgot Password

Reset Password

54
Project Report 2019 ROOTS OF EDUCATION

Guest Home

Guest View Of University

55
Project Report 2019 ROOTS OF EDUCATION

Guest View Of College

56
Project Report 2019 ROOTS OF EDUCATION

Guest Course

57
Project Report 2019 ROOTS OF EDUCATION

SOURCE CODE

58
Project Report 2019 ROOTS OF EDUCATION

Login
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace Roots_of_education
{
public partial class Login : System.Web.UI.Page
{
string cs = ConfigurationManager.ConnectionStrings["Database
Connection"].ConnectionString;
protected void Page_Load(object sender, EventArgs e)
{

}
protected void btnlogin_Click(object sender, EventArgs e)
{
try
{
SqlConnection con = new SqlConnection(cs);
con.Open();
string Qstr = "select usertype from login where username='" +
txtuname.Text + "' and password='" + txtpasswd.Text + "'";
SqlCommand cmd = new SqlCommand(Qstr, con);

String usertype = Convert.ToString(cmd.ExecuteScalar());


if (usertype=="Member")
{
//Session["Owner_ID"] = id;
string Qstr1 = "select userid from register where email='" +
txtuname.Text + "'";
SqlCommand cmd1 = new SqlCommand(Qstr1, con);
int userid = Convert.ToInt32(cmd1.ExecuteScalar());
Session["userid"] = userid;
Response.Redirect("~/Member/home.aspx");
}
else if (usertype == "Admin")
{
Session["username"] = txtuname.Text;
Response.Redirect("~/Admin_Home.aspx");
}

else
{
lblMsg.Visible = true;
}
con.Close();
}
catch (Exception ex)
{
Response.Write(ex);
}

}
}
}

59
Project Report 2019 ROOTS OF EDUCATION

Register
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data.SqlClient;
using System.IO;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace Roots_of_education.Register
{
public partial class Register : System.Web.UI.Page
{
string cs = ConfigurationManager.ConnectionStrings["Database
Connection"].ConnectionString;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
loadState();
img.ImageUrl = "~/Register/default.jpg";

}
}
void loadDistrict()
{
SqlConnection con = new SqlConnection(cs);
con.Open();
string str = "select distid,distname from district where stateid='" +
ddlstate.SelectedItem.Value + "'";
SqlCommand cmd = new SqlCommand(str, con);
SqlDataReader dr = cmd.ExecuteReader();
ddldist.DataSource = dr;
ddldist.DataTextField = "distname";
ddldist.DataValueField = "distid";
ddldist.DataBind();
con.Close();
ddldist.Items.Insert(0, new ListItem("--Select District--", "-1"));
}
void loadState()
{
SqlConnection con = new SqlConnection(cs);
con.Open();
string str = "select stateid,statename from state";
SqlCommand cmd = new SqlCommand(str, con);
SqlDataReader dr = cmd.ExecuteReader();
ddlstate.DataSource = dr;
ddlstate.DataTextField = "statename";
ddlstate.DataValueField = "stateid";
ddlstate.DataBind();
con.Close();
ddlstate.Items.Insert(0, new ListItem("--Select State--", "-1"));
}
void loadquali()
{
SqlConnection con = new SqlConnection(cs);
con.Open();
string str = "select category from qualification where type='" +
rdbtnlstquali.SelectedItem.Value + "'";

60
Project Report 2019 ROOTS OF EDUCATION

SqlCommand cmd = new SqlCommand(str, con);


SqlDataReader dr = cmd.ExecuteReader();
ddlqualitype.DataSource = dr;
ddlqualitype.DataTextField = "category";
ddlqualitype.DataBind();
con.Close();
ddlqualitype.Items.Insert(0, new ListItem("--Select Type--", "-1"));
}

protected void txtemail_TextChanged(object sender, EventArgs e)


{
try
{
lblunique.Visible = false;
SqlConnection con = new SqlConnection(cs);
con.Open();
SqlCommand cmd = new SqlCommand("select count(*) from login where
username='" + txtemail.Text + "'", con);
int v = Convert.ToInt32(cmd.ExecuteScalar());
if (v == 1)
{
lblunique.Visible = true;

}
con.Close();
}
catch (Exception ex)
{
Response.Write(ex);
}
}
protected void clear()
{
txtfnme.Text = "";
txtlname.Text = "";
txtemail.Text = "";
txtadrs.Text = "";
txtphone.Text = "";
txtdob.Text = "";
txtage.Text = "";
if (rdbtngender.SelectedValue != "")
{
rdbtngender.SelectedItem.Selected = false;
rdbtnlstquali.SelectedItem.Selected = false;
}
ddlstate.SelectedItem.Selected = false;
ddldist.SelectedItem.Selected = false;

txtpaswd.Text = "";
txtrepaswd.Text = "";
img.ImageUrl = "~/Register/default.jpg";
}

protected void txtdob_TextChanged(object sender, EventArgs e)


{
DateTime now;
DateTime dob;
int result = 0;
now = DateTime.Now;
dob = Convert.ToDateTime(txtdob.Text);
// dob = Convert.ToDateTime(txtdob.Text
result = now.Year - dob.Year;

61
Project Report 2019 ROOTS OF EDUCATION

if (now.Month < dob.Month)


{
result = result - 1;
}
txtage.Text = Convert.ToString(result);
}

protected void btnupload_Click(object sender, EventArgs e)


{
string folderPath = Server.MapPath("~/Files/");

//Check whether Directory (Folder) exists.


if (!Directory.Exists(folderPath))
{
//If Directory (Folder) does not exists Create it.
Directory.CreateDirectory(folderPath);
}

//Save the File to the Directory (Folder).


FileUpload1.SaveAs(folderPath + Path.GetFileName(FileUpload1.FileName));

//Display the Picture in Image control.


img.ImageUrl = "~/Files/" + Path.GetFileName(FileUpload1.FileName);
img.Visible = true;
HiddenField1.Value = "~/Files/" + Path.GetFileName(FileUpload1.FileName);
}

protected void btnreg_Click(object sender, EventArgs e)


{
try
{
SqlConnection con = new SqlConnection(cs);
con.Open();
SqlCommand cmd = new SqlCommand("insert into register values('" +
txtfnme.Text + "','" + txtlname.Text + "','" + rdbtngender.SelectedItem.Text + "','" +
txtdob.Text + "','" + txtage.Text + "','" + ddlqualitype.SelectedItem.Text + "','" +
ddldist.SelectedItem.Text + "','" + ddlstate.SelectedItem.Text + "','" + txtemail.Text
+ "','" + txtphone.Text + "','" + txtadrs.Text + "','" + HiddenField1.Value +
"');select scope_identity();", con);
Session["userid"] = cmd.ExecuteScalar();
SqlCommand cmd1 = new SqlCommand("insert into login values('" +
txtemail.Text + "','" + txtpaswd.Text + "','Member')", con);
cmd1.ExecuteNonQuery();
clear();
con.Close();
Response.Redirect("~/Member/home.aspx");
Response.Write("<script>alert('Registration Completed
Successfully')</script>");

}
catch (Exception ex)
{
Response.Write(ex);
}
}

protected void ddlstate_SelectedIndexChanged(object sender, EventArgs e)


{
loadDistrict();
}

protected void rdbtnlstquali_SelectedIndexChanged(object sender, EventArgs e)

62
Project Report 2019 ROOTS OF EDUCATION

{
loadquali();
}

protected void Button1_Click(object sender, EventArgs e)


{
Response.Redirect("../Login.aspx");
}
}
}

Search
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace Roots_of_education
{
public partial class Search1 : System.Web.UI.Page
{
string cs = ConfigurationManager.ConnectionStrings["Database
Connection"].ConnectionString;
protected void Page_Load(object sender, EventArgs e)
{

protected void ddlselect_SelectedIndexChanged(object sender, EventArgs e)


{

protected void btnsearch_Click(object sender, EventArgs e)


{
string str;
if(ddlselect.SelectedItem.Text=="University")
{
str = "select * from universitydet where name_of_university like
'"+txtsearch.Text+"%' or address like '"+txtsearch.Text+"%' or phone_no like
'"+txtsearch.Text+"%' or email like '"+txtsearch.Text+"%' or website like
'"+txtsearch.Text+"%' or vice_chancellor like '"+txtsearch.Text+"%' or description
like '"+txtsearch.Text+"%' or district like '"+txtsearch.Text+"%'";
grdsearch.Visible = true;
LoadGridview(str, grdsearch);
grdsearchclg.Visible = false;
grdsearchcou.Visible = false;
}
else if(ddlselect.SelectedItem.Text=="College")
{
str = "select * from collegedet where college_name like
'"+txtsearch.Text+"%' or address like '"+txtsearch.Text+"%' or email like
'"+txtsearch.Text+"%' or working_days like '"+txtsearch.Text+"%' or hostel_facility
like '"+txtsearch.Text+"%' or transport_system like '"+txtsearch.Text+"%' or

63
Project Report 2019 ROOTS OF EDUCATION

working_hours like '"+txtsearch.Text+"%' or contact like '"+txtsearch.Text+"%' or


website like '"+txtsearch.Text+"%' or description like '"+txtsearch.Text+"%'";
grdsearchclg.Visible = true;
LoadGridview(str, grdsearchclg);
grdsearch.Visible = false;
grdsearchcou.Visible = false;
}
else
{
str = "select distinct
course_name,college_name,course_type,duration,eligibility,totalfee,totalseat,totalhour
s,totalpaper,totalmark from coursedet C join university_courses UC on
UC.course_id=C.course_id join college_courses CC on CC.ucid=UC.ucid join collegedet CL
on CL.college_id=CC.college_id where course_name like '" + txtsearch.Text + "%' or
course_type like '" + txtsearch.Text + "%' or duration like '" + txtsearch.Text +
"%'";
grdsearchcou.Visible = true;
LoadGridview(str, grdsearchcou);
grdsearchclg.Visible = false;
grdsearch.Visible = false;

private void LoadGridview(string str ,GridView gv)


{
SqlConnection con = new SqlConnection(cs);
con.Open();
SqlCommand cmd = new SqlCommand(str, con);
SqlDataReader dr = cmd.ExecuteReader();
gv.DataSource = dr;
gv.DataBind();
con.Close();
}

protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)


{

protected void grdsearch_RowCommand(object sender, GridViewCommandEventArgs e)


{
int rowindex =
((GridViewRow)((LinkButton)(e.CommandSource)).NamingContainer).RowIndex;
string uniname = (grdsearch.Rows[rowindex].FindControl("LinkButton1") as
LinkButton).Text;
Session["University_name"]=uniname;
Response.Redirect("View_University.aspx");

protected void grdsearchclg_RowCommand(object sender, GridViewCommandEventArgs


e)
{
int rowindex =
((GridViewRow)((LinkButton)(e.CommandSource)).NamingContainer).RowIndex;
string clgname = (grdsearchclg.Rows[rowindex].FindControl("LinkButton2")
as LinkButton).Text;
Session["College_name"] = clgname;

64
Project Report 2019 ROOTS OF EDUCATION

Response.Redirect("View_College.aspx");
}

protected void grdsearchcou_RowCommand(object sender, GridViewCommandEventArgs


e)
{
int rowindex =
((GridViewRow)((LinkButton)(e.CommandSource)).NamingContainer).RowIndex;
string couname = (grdsearchcou.Rows[rowindex].FindControl("LinkButton3")
as LinkButton).Text;
Session["Course_name"] = couname;
Response.Redirect("View_Course.aspx");
}

protected void grdsearchclg_SelectedIndexChanged(object sender, EventArgs e)


{

protected void grdsearchcou_SelectedIndexChanged(object sender, EventArgs e)


{

}
}
}

Forgot Password
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Net;
using System.Net.Mail;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace Roots_of_education
{
public partial class WebForm17 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

protected void Button1_Click(object sender, EventArgs e)


{
string cs = ConfigurationManager.ConnectionStrings["Database
Connection"].ConnectionString;
using (SqlConnection con = new SqlConnection(cs))
{
SqlCommand cmd = new SqlCommand("select * from register where email =
'" + txtemail.Text + "'", con);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
da.Fill(dt);

65
Project Report 2019 ROOTS OF EDUCATION

if(dt.Rows.Count!=0)
{
String guid = Guid.NewGuid().ToString();
DateTime datetime = Convert.ToDateTime(System.DateTime.Now);
int uid = Convert.ToInt32(dt.Rows[0][0].ToString());
String mailTo =txtemail.Text.Trim();
String username = dt.Rows[0][9].ToString();
String mailsubject = "Reset Password";
String mailbody = "Hi " + username + ", <br/> Please click below
link to reset password" + "<br/><br/>http://localhost:49669/Reset_Password.aspx?Uid="
+ guid;
MailMessage mailmsg = new
MailMessage("rootsofeducation@outlook.com", mailTo);
mailmsg.Subject = mailsubject;
mailmsg.Body = mailbody;
mailmsg.IsBodyHtml = true;
SmtpClient smtp = new SmtpClient("smtp-mail.outlook.com",587);
smtp.Credentials = new NetworkCredential
{
UserName = "rootsofeducation@outlook.com",
Password = "roe3rdbca"

};
smtp.EnableSsl = true;
smtp.Send(mailmsg);

SqlCommand cmd2 = new SqlCommand("insert into forgot_password


values(@uid,@guid,@rdate)", con);
cmd2.Parameters.AddWithValue("@guid",guid);
cmd2.Parameters.AddWithValue("@uid",uid);
cmd2.Parameters.AddWithValue("@rdate", datetime);
con.Open();
cmd2.ExecuteNonQuery();
Response.Redirect("Reset_Password.aspx");
}
}
}
}
}

Reset Password
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace Roots_of_education
{
public partial class WebForm16 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string guid;

66
Project Report 2019 ROOTS OF EDUCATION

guid = Request.QueryString["Uid"];

if (guid != null)
{
string cs = ConfigurationManager.ConnectionStrings["Database
Connection"].ConnectionString;
using (SqlConnection con = new SqlConnection(cs))
{
SqlCommand cmd = new SqlCommand("select * from forgot_password
where id='" + guid + "'", con);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
da.Fill(dt);
if (!IsPostBack)
{
if (dt.Rows.Count != 0)
{

}
else
{
lblmsg.Text = "Invalid link ";
lblmsg.ForeColor = System.Drawing.Color.Red;
}
}
}
}
else
{
}
}

protected void btnreset_Click(object sender, EventArgs e)


{
string guid;
guid = Request.QueryString["Uid"];

string cs = ConfigurationManager.ConnectionStrings["Database
Connection"].ConnectionString;

using (SqlConnection con = new SqlConnection(cs))


{
con.Open();
SqlCommand cmdupdate = new SqlCommand("select uid from forgot_password
where newlink='" + guid + "'", con);
string userid =Convert.ToString( cmdupdate.ExecuteScalar());
SqlCommand cmdupdate2 = new SqlCommand("select email from register
where userid='" + userid + "'", con);
string email = Convert.ToString(cmdupdate2.ExecuteScalar());
SqlCommand cmdupdate1 = new SqlCommand("update login set password ='"
+ txtnew.Text + "' where username='" + email + "'", con);
cmdupdate1.ExecuteNonQuery();
// cmdupdate.CommandText = "Delete from forgot_password where id = '" +
guid + "'";
// cmdupdate.ExecuteNonQuery();
lblmsg.Text = "Password updated succesfully";
lblmsg.ForeColor = System.Drawing.Color.Red;
}
}
}
}

67
Project Report 2019 ROOTS OF EDUCATION

View University
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
namespace Roots_of_education
{
public partial class WebForm12 : System.Web.UI.Page
{
string cs = ConfigurationManager.ConnectionStrings["Database
Connection"].ConnectionString;
protected void Page_Load(object sender, EventArgs e)
{
show();
if (!IsPostBack)
{

loaduniversitydata();
BindData();

}
protected void BindData()
{
using (SqlConnection con = new SqlConnection(cs))
{

DataSet ds = new DataSet();


DataTable dt = new DataTable();
string cmdstr = "select distinct course_name,photo from
university_courses UC join college_courses CC on UC.ucid=CC.ucid join coursedet C on
C.course_id=UC.course_id where university_id= " + HiddenField1.Value;
con.Open();
SqlCommand cmd = new SqlCommand(cmdstr, con);
SqlDataAdapter adp = new SqlDataAdapter(cmd);
// SqlDataAdapter da = new SqlDataAdapter(query, con);
adp.Fill(ds);
DataList1.DataSource = ds.Tables[0];
DataList1.DataBind();
// Session["ProductName"] = ds.Tables[0].Columns["PName"];
}
}
private void loaduniversitydata()
{
SqlConnection con = new SqlConnection(cs);
con.Open();
string Qstr = "select * from universitydet where name_of_university='" +
Session["University_name"].ToString()+"'";

SqlCommand cmd = new SqlCommand(Qstr, con);


SqlDataReader dr = cmd.ExecuteReader();
if (dr.Read())
{
HiddenField1.Value = dr["university_id"].ToString();

68
Project Report 2019 ROOTS OF EDUCATION

lblname.Text = dr["name_of_university"].ToString();
Imguni.ImageUrl = dr["photo"].ToString();
txtaddress.Text = dr["address"].ToString();
txtdist.Text = dr["district"].ToString();
txtemail.Text = dr["email"].ToString();
txtphone.Text = dr["phone_no"].ToString();
txtvice.Text = dr["vice_chancellor"].ToString();
txtweb.Text = dr["website"].ToString();
txtdesc.Text = dr["description"].ToString();

}
dr.Close();

protected void ddldist_SelectedIndexChanged(object sender, EventArgs e)


{

protected void btncmnt_Click(object sender, EventArgs e)


{
SqlConnection con = new SqlConnection(cs);
con.Open();
SqlCommand cmd = new SqlCommand("insert into
feedback(userid,feedback,type,typeid,date) values('" + Session["userid"].ToString() +
"','" + txtcmnts.Text + "','" + Session["University_name"].ToString() + "',1,'" +
System.DateTime.Now + "')", con);
cmd.ExecuteNonQuery();
//to page refresh
con.Close();
Response.Redirect(Request.Url.AbsoluteUri);
}
protected void show()
{
SqlConnection con = new SqlConnection(cs);
con.Open();
SqlCommand cmd = new SqlCommand("select R.first_name,F.feedback,F.date
from feedback F join register R ON R.userid =F.userid where F.type ='" +
Session["University_name"].ToString()+"'", con);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
Repeater1.DataSource = ds;
Repeater1.DataBind();
con.Close();

protected void DataList1_SelectedIndexChanged(object sender, EventArgs e)


{

protected void viewunicou_Click(object sender, EventArgs e)


{
DataList1.Visible = true;
}

}
}

69
Project Report 2019 ROOTS OF EDUCATION

Add University
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data.SqlClient;
using System.IO;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace Roots_of_education
{
public partial class WebForm4 : System.Web.UI.Page
{
string cs = ConfigurationManager.ConnectionStrings["Database
Connection"].ConnectionString;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
loadDistrict();

protected void btnupload_Click(object sender, EventArgs e)


{
try
{
string folderPath = Server.MapPath("~/Files/");

//Check whether Directory (Folder) exists.


if (!Directory.Exists(folderPath))
{
//If Directory (Folder) does not exists Create it.
Directory.CreateDirectory(folderPath);
}

//Save the File to the Directory (Folder).


fuphoto.SaveAs(folderPath + Path.GetFileName(fuphoto.FileName));

//Display the Picture in Image control.


imgphoto.ImageUrl = "~/Files/" + Path.GetFileName(fuphoto.FileName);
imgphoto.Visible = true;
HiddenField1.Value = "~/Files/" + Path.GetFileName(fuphoto.FileName);
}
catch
{
}
}
protected void clear()
{
txtname.Text = "";
txtaddress.Text = "";
txtemail.Text = "";
txtphone.Text = "";
txtvice.Text = "";
txtweb.Text = "";
txtdesc.Text = "";

70
Project Report 2019 ROOTS OF EDUCATION

imgphoto.ImageUrl = "";
ddldist.SelectedItem.Selected = false;
}

protected void btnadd_Click(object sender, EventArgs e)


{
try
{
SqlConnection con = new SqlConnection(cs);
con.Open();
SqlCommand cmd = new SqlCommand("insert into universitydet values('" +
txtname.Text + "','" + txtaddress.Text + "','" + txtphone.Text + "','" + txtemail.Text
+ "','" + txtweb.Text + "','" + txtvice.Text + "','" + txtdesc.Text + "','" +
HiddenField1.Value + "','" + ddldist.SelectedItem.Text + "')", con);
cmd.ExecuteNonQuery();
clear();
con.Close();
Response.Write("<script>alert('Allocation Successful')</script>");
}
catch (Exception ex)
{
Response.Write(ex);
}
imgphoto.Visible = false;
}

protected void btnclear_Click(object sender, EventArgs e)


{
clear();
}

protected void ddldist_SelectedIndexChanged(object sender, EventArgs e)


{

}
void loadDistrict()
{
SqlConnection con = new SqlConnection(cs);
con.Open();
string str = "select distid,distname from district where stateid=112";
SqlCommand cmd = new SqlCommand(str, con);
SqlDataReader dr = cmd.ExecuteReader();
ddldist.DataSource = dr;
ddldist.DataTextField = "distname";
ddldist.DataValueField = "distid";
ddldist.DataBind();
con.Close();
ddldist.Items.Insert(0, new ListItem("--Select District--", "-1"));
}
}
}

71
Project Report 2019 ROOTS OF EDUCATION

Select University
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace Roots_of_education.Member
{
public partial class WebForm1 : System.Web.UI.Page
{
string cs = ConfigurationManager.ConnectionStrings["Database
Connection"].ConnectionString;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//binding data into datalist
BindData();
}
}
protected void BindData()
{
using (SqlConnection con = new SqlConnection(cs))
{

DataSet ds = new DataSet();


DataTable dt = new DataTable();
string cmdstr = "SELECT name_of_university,photo FROM universitydet";
con.Open();
SqlCommand cmd = new SqlCommand(cmdstr, con);
SqlDataAdapter adp = new SqlDataAdapter(cmd);
// SqlDataAdapter da = new SqlDataAdapter(query, con);
adp.Fill(ds);
DataList1.DataSource = ds.Tables[0];
DataList1.DataBind();
// Session["ProductName"] = ds.Tables[0].Columns["PName"];
}
}

protected void DataList1_ItemCommand(object source, DataListCommandEventArgs


e)
{
//stroing selected productname into session variable
int RowIndex = e.Item.ItemIndex;

Session["University_name"] =
((Label)DataList1.Items[RowIndex].FindControl("Label1")).Text;
//Redircting into new page
Response.Redirect("View_University.aspx");
}

}
}

72

Potrebbero piacerti anche