You are on page 1of 69

1.

INTRODUCTION AND OBJECTIVES OF THE PROJECT

a)Title of the Project:

INTERACTIVE LEARNING
(b) Introduction

Advances in technology and the growth of Interactive Learning to provide educators


and trainers with unique opportunities to enhance learning and teaching in corporate,
government, healthcare, and higher education.  This application serves as a forum to facilitate
the exchange of information on the current research, development, and practice of Interactive
Learning in the sectors. It includes the research, development, and practice of Interactive
Learning related to the following multi-dimensional topics and sub-topics.

Interactive Learning comes in different configurations that dictate the depth of a


needs assessment. The simple Interactive Learning implementation, such as those following
an application service provider (ASP) model, won't necessarily look any different from a
resource requirement perspective than traditional classroom training. That's Interactive
Learning.

Interactive Learning can be an enormous undertaking and, require significantly more


preparation due to its increased scope, higher interdependence, and visibility. These factors--
described below--are the reason a needs assessment for an Interactive Learning initiative looks
different from one for a traditional classroom program

The main modules in this website are

 Administration Module
 Student Module
 Instructor Module
 University Module
 Exam Controller Module

1
(c) Objectives
The scope of computerization in any field is increasing. The main objective of the new
system is to overcome the difficulties and demerits of the existing system or the manual
system. The new system was proposed with the following objectives:

1. To manage the Leads through the entire life cycle, from prospect to qualified opportunity
to order
2. To help the companies understand, as well as anticipate, the needs of current and potential
users
3.To manage lead information, identifying the opportunities of the organization
4. To reduce transaction cost and processing time.
5. To get global coverage
6. To utilize the advantages of the Internet business opportunity.
7. Develop and implement a completely automated system.
8. Interactive and user friendly environment.
9. Information flow should be developed.
10.Data validation, integrity and security should be maintained.
11.Easy to use, consistency and simplicity.
12.The system can retrieve data easily.
13.Money saving and interactive user communication.
14.Easy future expansion without effecting existing

2
2. SYSTEM ANALYSIS

System analysis is the process of gathering and interpreting data and facts diagnosing
problems to the system. System analysis is, otherwise, the detailed investigation of the
various operations performed by the existing system. It is concerned with investigating,
analysis, designing, implementation and evaluating information systems in the organization
objectives. System Analysis is the application of the systems approach to problem solving
using computers. The ingredients are system elements, processes and technology. This means
that to do systems work, one need to understand the system concept and how organizations
operate as a system, and then design appropriate computer based systems that will meet an
organization’s requirements. It is actually a customized approach to the use of computer for
problem solving

Overview Of Analysis

The objectives of the system analysis phase are the establishment of the requirements for
the system to be acquired, developed and installed. Analyzing the project to understand the
intricacy forms the vital part of the system study. Problematic areas are identified and
information is collected. It is necessary that the analyst familiarize himself with objectives,
activities and the functions of the organizations in which the system is to be implemented.
System analysis is conducted with the following objectives in mind:
 Analyze the necessity of the new system
 Analyze the features of the system
 Evaluate the system concept for feasibility

Requirement Analysis

Required analysis bridges the gap between the system engineering and software design.
After studying the results of the preliminary investigation management may decide to
continue the development provides, so user needs are studied. The system requirements that
must be met to satisfy the new or the changed user needs are produced. This step is called
requirement analysis or system analysis.
The key strategies or general approaches for eliciting information regarding the user
requirements are:
- Data Collection
- Questionnaires and Communication
Proposed system is very much efficient than the existing system in many aspects. The
output can be prepared at a faster rate. Also, we are able to achieve the required output of a
particular period. Analysis based on various items can be made.

3
2.1 IDENTIFICATION OF NEED

At present there is no centralized system for helping the public to handle the learning
System. So it’s very difficult and time consuming. Since all these services are carried out by
the normal people they are suffered from long distance journey. The response time is very
long. So the students can wait for even 2 or 3 days and it does not have user authentication
security

2.2 PRELIMINARY INVESTIGATION


The existing system is all type of service entries are registered to directly by people.
And all records are keeping manually. At present there is no centralized system for helping
the public to handle the learning System. So it’s very difficult and time consuming. Since all
these services are carried out by the normal people they are suffered from long distance
journey. The response time is very long. So the students can wait for even 2 or 3 days and it
does not have user authentication security. Here, non registered Users can access the site and
many kinds of validations are implemented so it is difficult to access.
Client side validations are performed to check entry of invalid fields or incorrect
format. The user id and password are checked thoroughly for existing users to ensure
security. Stored procedures and classes are used to increase the speed of processing.

Disadvantages

 The existing system needs a number of registers for handling the records. This leads
to tedious manual labor highly time consuming.
 Cost consumption.
 Low accuracy.
 Data processing is very low.
 Document preparation and accounting are time consuming and difficult.
 Redundancy of records may occur.

2.3. FEASIBILITY STUDY


The objective of a feasibility study is to test the technical, social
and economic feasibility of developing a computer system. This is done by investigating the
existing system and generating ideas about a new system. The computer system must be

4
evaluated from a technical viewpoint first, and if technically feasible, their impact on the
organization and the staff must be accessed. If a compatible, social and technical system can
be devised, then it must be tested for economic feasibility. The 3 important tests for
feasibility are studied and described below

 Operational feasibility
 Technical feasibility
 Economic feasibility

Operational Feasibility
Proposed projects are beneficial only if they can be turned into
information systems that will meet the operating requirements of the organization. The test of
feasibility asks if the system will work when it is developed and installed. Some of the
important questions that are useful to test the operational feasibility of a project are given
below

 Is there sufficient support for the project from the management? From users? If the
present system is well liked and used to the extent that people would not be able to see
reasons for a change, there may be a resistance
 Are current methods acceptable to the users? If they are not, users may welcome a
change that will bring about a more operational and useful system.
 Have the users been involved in the planning and development of the project, and then
the changes of resistance can be possibly reduced.
 Issues that appear to be quite minor at the early stage can grow into major problems
after implementation.

Technical Feasibility
The assessment of technical feasibility must be based on the outline of the
system requirements in terms of inputs, outputs, files, programs, procedures and staff. This
can be quantified in terms of volumes of data, trends, frequency of updating, etc. Having
identified an outline system, the investigator must go on to suggest the type of equipment
required, methods of developing the system and methods of running the system.
With regard to the processing facilities, the feasibility study will need to
consider the possibility of using a bureau or, if in-house equipment is available, the nature of
the hardware to be used for data collection, storage, output and processing.
There are number of technical issues, which are generally raised during
the feasibility stage of the investigation. They are as follows

Does a necessary technology exist to do what is suggested?


Does the proposed equipment have the capacity to hold the data required to use the new
system?
Can the system be upgraded if developed?

5
Are there technical guarantees of accuracy, reliability, ease of access and security?

Economic Feasibility
A system that can be developed technically and that will be used if
installed must still be profitable for the organization. Financial benefits must equal or exceed
the costs. Justification for any outlay is that it will increase profit and reduce expenditure.

Behavioral Feasibility

People are inherently resistant to change and computers have been known to
facilitate changes. The new tool does not require any staff maintenance. It doesn’t need any
extra training. The interfaces designed are easy to use. The proposed system is very user
friendly. It reduces the drawbacks of the existing system. All these reasons make the new
system behaviorally feasible.

Software Feasibility

The module was developed in ASP. NET as framework and SQL Server 2008
as back end. The presentation layer includes HTML, Ajax and JavaScript. Since the IDE
used is Visual Studio 2010, it is highly user friendly.

Hardware Feasibility
The software can be developed with resource already existing. Here the
consideration that the existing hardware resources support the technologies that is to be used
by the new system. No hardware was newly brought for the project and hence software is
said to achieve hardware feasibility.

2.5.SOFTWARE REQUIREMENT SPECIFICATIONS(SRS)

How the Proposed System Helps to Overcome the Drawbacks in the Existing System?
The proposed system is the one which reduces the normal burden of the
existing system. The proposed system is a dynamic, user-friendly and interactive web site,
intended to increase the present custom base multifold so that the institute can show others
the ideal way in customer care.
The web site should give the customer a warm welcome and make him
feel comfortable while navigating through the site looking for information providing
necessary guidelines.
The proposed system is developed using .Net framework .Microsoft released .net framework
in February 2002. It’s biggest initiative since the launch of windows in 1991. .Net is a
revolutionary Multilanguage platform that kints various aspects of application development
together with the internet. The framework covers all layers of software development above

6
the operating system.Several software’s have been developed by Microsoft to achive this
goal.It is accepted that every player in the industry, be it a software developer or a device
manufacture,adopt .Net so that they can be integrated. The .Net initiative is all about enabling
data transfer between networks, PCs and devices seamlessly, independent of the
platforms,architechture and solutions
 .Net is Microsoft’s new internet and web strategy.
 .Net is not a new internet and web based infrastructure.
 .Net delivers software as web service.
 .Net is a frame work for universal services.
 .Net is server centric computing model.

A web application is a place where information is served to the world. This Website
Automate the Functions of INTERACTIVE LEARNING, which works as an intermediate
between people and a Service Providers. It supports the Online Registration facilities for
People. Here users can register online and they can interact with each other in a user friendly
environment. Students can ask question and can appear in the examinations. All the staff may
have to engaged in live chatting.

7
OBJECTIVES OF PROPOSED SYSTEM

 Easy access to information.


 Healthy Interaction between users.
 Reduces workload
 Less time consuming
 Provide a user friendly environment
Advantage of proposed system

.  This application serves as a forum to facilitate the exchange of information


on the current research, development, and practice of Interactive Learning in the sectors. It
includes the research, development, and practice of Interactive Learning related to the
following multi-dimensional topics and sub-topics.
Interactive Learning comes in different configurations that dictate the depth of a needs
assessment.

Advantages

 Minimizes time of processing


 Maximizes Availability
 No Geographical Boundary
 No Long Queues
 Reduces Paper Work
 Only Eligible Candidate Apply
 Support for both online and manual applications
 Reduces Human Involvement
 Accurate and Reliable
 Customizable Reports.

2.6. SOFTWARE ENGINEERING PARADIGM APPLIED

To solve actual problems in an industry setting, a software engineer or a team of


engineers must incorporate a development strategy that encompasses the process, methods
and tools layer and the generic phases. This strategy is often referred to as a process model or
a software engineering paradigm. A process model for software engineering is chosen based

8
on the nature of the project and application, the methods and tools to be used, and the
controls and deliverables that are required.All software development can be characterized as
a problem solving loop in which four distinct stages are encountered: status quo, problem
definition, technical development and solution integration. Status quo “represents the current
state of affairs”; problem definition identifies the specific problem to be solved; technical
development solves the problem through the application of some technology, and solution
integration delivers the results to those who requested the solution in the first place. In the
case of this project, the software engineering paradigm applied is Waterfall Model. Exactly
speaking it is closer to waterfall model.

Waterfall Model (The Paradigm used by INTERACTIVE LEARNING)

The waterfall model also called classic life cycle model or linear sequential
model, it suggests a systematic, sequential approach to software development that begins at
the system level and progresses through analysis, design, coding, testing and support. Figure
below illustrates the linear sequential model:

System / Information
Engineering

Analysis Design Code Test

System / Information Engineering and Modeling: Because software is always part of a


larger system, work begins by establishing requirements for all system elements and then
allocating some subset of these requirements to software. System engineering and analysis
encompass requirements gathering at the system level with a small amount of top level
design and analysis

Analysis: The requirements gathering process is intensified and focused specifically on


software. To understand the nature of the program(s) to be built, the software engineer must
understand the information domain for the software, as well as required function, behavior,
performance and interface.

Design: Software design is a multi-step process that focuses on four distinct attributes of a
program: data structure, software architecture, interface representations and procedural detail.

9
The design process translates requirements into a representation of the software that can be
assessed for quality before coding begins.

Testing: Once code has been generated, program testing begins. The testing process focuses
on the logical internals of the software, ensuring that all statements have been tested, and on
the functional externals; that is, conducting tests to uncover errors and ensure that defined
input will produce actual results that agree with required results.

Support: Software support/maintenance reapplies each of the preceding phases to an


existing program rather than a new one.

2.7 SOFTWARE AND HARDWARE REQUIREMENTS

SOFTWARE REQUIREMENTS
Operating System : Microsoft Windows 7
Web Server : Microsoft Development Center
Server Code : C#.Net
Front End : ASP. Net
Back End : SQL Server 2008

HARDWARE REQUIREMENTS
Processor : Pentium 1V 2.3 GHZ
Main Memory : 256 MB RAM
Hard Disk Drive : 20 GB
Monitor : SVGA COLOR
Available FDPS : 1.44 MB
Keyboard : 108 Keys
Mouse : Logitech
CD ROM Drive : LG 52 X

10
2.8 DIAGRAMS

i) DATA FLOW DIAGRAMS

LEVEL 0 DFD

11
12
13
14
15
16
17
18
ii) USE CASE DIAGRAMS

Usecase Diagram for Admin

Approve Student

Approve Instructor

add University

Add Category

View Reports

Vie
w View Places
Admin
Pro
jec
ts
Vie
w
Wo
rk
Or
Vie
der
w
Pa
ym
ent

19
Usecase Diagram for Student

View Tutorials

View Question Papers

Attend Exam

Mailing

Download Tutorials

Vie
w Play Videos
Pro
jec
ts
Vie
Student
w
Wo View Result
rk
Or
Vie
der
w
Pa
ym
ent

20
Usecase Diagram for University

Add Course

Profile Update

Add subject

Vie
w
Pro
jec
University ts
Vie
w
Wo
rk
Or
Vie
der
w
Pa
ym
ent

21
Usecase Diagram for Instructor

View Student

Add Tutorials

Add Question Papers

Reply Answers

Profile Edit
Vie
w
Pro
jec
Instructor ts
Vie
w
Wo
rk
Or
Vie
der
w
Pa
ym
ent
22
Usecase Diagram for Exam Controller

Add Exam

Profile Update

Generate Results

Vie
w
Pro
jec
Exam Controller ts
Vie
w
Wo
rk
Or
Vie
der
w
Pa
ym
ent

23
iii)ER Diagram

24
iv)STRUCTURE OF THE MODULE

25
3. SYSTEM DESIGN

3.1. MODULARIZATION DETAILS

ADMIN MODULE

This module provides the administrator to control the whole website. He can view the
database and control the flow of the project. He is the super user who can delete any user or
any reports. All reports can be updated and deleted by admin. This module will provide four
types of login. They are instructor login, student login, university login, exam controller
login.. It also maintains the details of these four users.
Sub Modules
 Student Approval
 Unregister user

 Payment Details
 Quick Contact

STUDENT MODULE

In this module, students from different locations interact with the instructor simultaneously
through online mode in real time. After registration they can login and view the course details
in order to build their carrier. They can select any course and enrolled the course by
registering  their details. The Course enrolled can be viewed by the student and they can edit.
Student can view the course material and learn through  online and appear for exam. The
results of the exams are also declared just after taking the test.
Sub Modules
 Update student details.
 Register Course
 View tutorials
 View Question Papers
 Chatting
 Mailing
 View Results

26
INSTRUCTOR MODULE

In this module, instructor view the student registration, course enrolled status and student
doubts. The student can clear the doubts by choosing the domain and entering the question.
The instructor view the student doubt and sends reply according to the queries. The Questions
will be hosted for the student in order to take exams. Instructor will host question paper
according to the domain and  send to the student.

UNIVERSITY MODULE

In this module, university add the different courses and their corresponding subjects. The
course structure, fees, syllabus etc are also included in this module.

EXAM CONTROLLER MODULE

In this module, participant will appear for taking exam according to the course would they
enrolled. The student should clearly read the instruction once before they appear for exam.
Click on start exam button to start the exam. Questions are basically of Multiple choice type
i.e., only one answer is correct, these answers  are represented by four Radio Buttons. After
clicking start exam button time would count simultaneously. Once the student completed their
exam they should enter the particular details what they given. Then the result will be viewed
along your particular details.

3.2 DATA INTEGRITY AND CONSTRAINTS

Integrity simply means to maintain the consistency of data. Thus, integrity constraints
in a database ensure that changes, made to the database by authorized users do not comprise
data consistency. Thus, integrity constraints do not allow damage to the database. There are
primarily two integrity constraints: the entity integrity constraint and the referential integrity
constraint. In order to define these two, it is necessary to define a term key with respect to the
data base management system.
First type candidate key of a relation R, having properties: uniqueness and irreducible. The
primary key is a type of candidate key that is chosen by the database designer as the principal
means if identifying entities within an entity set. The remaining candidate keys, if any are

27
called alternate keys. Another type of candidate key, ie, forign key which is included in a
table is actually the primary key of another table in the same database.
The implemented system should run on the windows environment. The web site should
incorporate into it as much new features as possible while keeping in mind that different
people will be using different browsers and those too possibly widely different versions. As
far as the site is concerned, it should cater to the behavior of the most common browsers viz.
Microsoft Internet Explorer and Netscape Navigator of any version.
Since several aspects of the internet such as network congestion, type of browser, user etc are
beyond, the control of the system. It is difficult to give actual measures of the performance
expected. However, some general criteria expected to be fulfilled by the developers are:
Multiple concurrent accesses to the site should be possible The system should optimize usage
of the resources of the server, such as memory & processing time. The server side
components developed must be thread- safe and assured not to bring the server down under
nay circumstances. Time taken for searching the data base must be as minimum as possible.
The speed of downloading the graphics must not appreciably slower than that of
downloading the rest of the page.
The storage and retrieval of data from the data base must be optimal.
Independent of the browser used, the system must be able to display all the matter content.
3.3 DATABASE DESIGN

The most important aspect of building an application is the design of tables or the
database schema. The data stored in the tables must be organized in some manner, which is
meaningful. The overall objective in the process of table design has been to treat data as an
organizational resource and as an integrated whole. The organization of data in a database
aims to achieve three major objectives, which are given below.
1. Data Integration
2. Data Integrity
3. Data Independence
Several degrees of normalization have to be applied during the process of table design.
The major aim of the process of normalization is to reduce data redundancy and prevent
losing data integrity. Redundancy refers to unwanted and unnecessary repetition of data. Data
integrity has to be converted at all levels. Poor normalization can cause problems related to
storage and retrieval of data. During the process of normalization, dependencies can be
identified which cause serious problems during deletion and updating. Normalizing also
helps in simplifying the structure of tables. The theme behind a database is to handle
information as an integrated whole thus making access to information easy, quick,
inexpensive and flexible for users. The entire package depends on how the data are
maintained in the system .Each table has been designed with a perfect vision. Minor tables

28
have been created which though takes much space facilitates the process of querying fast and
accurate.
To group the given data and to give them a logical structure, a database design is
necessary. The overall objective in the development of a database is to treat data as an
organized resource and as an integrated whole. A database is a repository of information. It is
a collection of interrelated data stored with minimum redundancy to serve many users
quickly and efficiently. The general objective is to make information access easy, quick,
inexpensive and flexible for the users. In this project, we are mainly concentrated into
relational databases.
Another important consideration needed to be made is the fact that redundancy in data
must be reduced to an absolute minimum. The more redundant data present in a system the
more burdening and inefficient the system becomes in due course of time. Therefore,
immense thought must be put into the designing of the database for the system in
consideration.
The databases are implemented using DBMS package. Each particular DBMS has
unique characteristics and general techniques for database design. A table is a primary
database of SQL and is used to store data. A table holds data in the form of rows and
columns is given a column name, data type performance calculations, list column can also
format query results in the forms of a report.Each table contains key fields that establish
relationships in an SQL databases and how the records are stored. There are primary key
fields that uniquely identify a record in a table. There are also fields that contain the primary
key from another table called foreign keys

29
TABLE DESIGN
1. Table Name : User

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*userid Int 4 PRIMARY KEY User Identity
name Varchar 50 NOT NULL Name
address Varchar 50 NOT NULL Address
phone Bigint 8 NOT NULL Phone
email Varchar 50 NULL Email
uname Varchar 50 NOT NULL Username
password Varchar 50 NOT NULL Password
gender Varchar 50 NOT NULL Gender
dob datetime NOT NULL Date Of Birth
**state Int 4 FOREIGN KEY State id
**cntry Int 4 FOREIGN KEY Country id
**dist Int 4 FOREIGN KEY District id
qualification Varchar 50 NOT NULL Qualification
yearofpassing Varchar 50 NOT NULL Year Of Passing
course Varchar 50 NOT NULL Course
Photo Varchar 50 NOT NULL Photo
status Int 4 NOT NULL Status
regno BigInt 4 NULL Register Number

30
2. Table Name : Staff

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*sid Int 4 PRIMARY KEY Staff Identity
sname Varchar 50 NOT NULL Staff name
saddress Varchar 50 NOT NULL Address
semail Varchar 50 NOT NULL Email
suname Varchar 50 NOT NULL Username
spwd Varchar 50 NOT NULL Password
sgender Varchar 50 NOT NULL Gender
sdob Varchar 50 NOT NULL Date Of Birth
**state Int 4 FOREIGN KEY State id
**cntry Int 4 FOREIGN KEY Country id
**dist Int 4 FOREIGN KEY District id
squal Varchar 50 NOT NULL Qualification
sexp Varchar 50 NOT NULL Experience
sdes Varchar 50 NOT NULL Designation
ccname Varchar 50 NOT NULL Course Name
Photo Varchar 50 NOT NULL Photo
Status Int 4 NOT NULL Staff Status

31
3. Table Name : University

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*univ_id Int 4 PRIMARY KEY UniversityIdentity
unname Varchar 50 NOT NULL University name
uniaddrs Varchar 50 NOT NULL Address
uniemail Varchar 50 NOT NULL Email
uniname Varchar 50 NOT NULL Username
unipwd Varchar 50 NOT NULL Password
**state Int 4 FOREIGN KEY State id
**cntry Int 4 FOREIGN KEY Country id
**dist Int 4 FOREIGN KEY District id
image Varchar 50 NOT NULL Emblem

4. Table Name : Controller

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*cid Int 4 PRIMARY KEY Controller Identity
**univ_id Int 4 FOREIGN KEY University Identity
cname Varchar 50 NOT NULL Controller name
caddress Varchar 50 NOT NULL Address
cphone Bigint 8 NOT NULL Phone
cemail Varchar 50 NOT NULL Email
cuname Varchar 50 NOT NULL Username
cpwd Varchar 50 NOT NULL Password

32
5. Table Name : ExamCenter

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*ec_id Int 4 PRIMARY KEY Exam Center Identity
ecname Varchar 50 NOT NULL Exam Center name
ecaddrs Varchar 50 NOT NULL Address
ecemail Varchar 50 NOT NULL Email
uname Varchar 50 NOT NULL Username
upwd Varchar 50 NOT NULL Password
**state Int 4 FOREIGN KEY State id
**cntry Int 4 FOREIGN KEY Country id
**Dist Int 4 FOREIGN KEY District id
place Varchar 50 NOT NULL Place

6. Table Name : Account_Details

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*accno Bigint 8 PRIMARY KEY Account Number
uid Int 4 FOREIGN KEY User Identity

7. Table Name : Course

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*courseid Int 4 PRIMARY KEY Course Identity
cname Varchar 50 NOT NULL Course Name
Duration Varchar 50 NOT NULL Duration
fees Varchar 50 NOT NULL Fees

33
8. Table Name : Subject

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*subid Int 4 PRIMARY KEY Subject identity
**courseid Int 4 FOREIGN KEY Course Identity
subcode Varchar 50 NOT NULL Subject code
subname Varchar 50 NOT NULL Subject Name

9. Table Name : Modules

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*mid Int 4 PRIMARY KEY Module identity
**subid Int 4 FOREIGN KEY Subject Identity
mname Varchar 50 NOT NULL Module Name
filename Varchar 50 NOT NULL File Name

10. Table Name : Payment

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*payid Int 4 PRIMARY KEY Payment Identity
regno BigInt 8 NOT NULL Register Number
**courseid Int 8 FOREIGN KEY Course Id
date datetime NOT NULL Date
amount Float NOT NULL Amount
**accno Bigint 8 FOREIGN KEY Account Number

34
11. Table Name : Exam

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*eid Int 4 PRIMARY KEY Exam Identity
**subid Int 4 FOREIGN KEY Subject Identity
**courseid Int 4 FOREIGN KEY Course Identity
**regno Int 4 FOREIGN KEY Register Number
result Varchar 50 NOT NULL Result

12. Table Name : Apply_Exam

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*aeid Int 4 PRIMARY KEY Apply Exam Identity
regno BigInt 8 NOT NULL Register Number
**courseid Int 8 FOREIGN KEY Course Id
date datetime NOT NULL Date
time Varchar 50 NOT NULL Time
**state Int 4 FOREIGN KEY Country id
**cntry Int 4 FOREIGN KEY District id
**Dist Int 4 FOREIGN KEY Place
place Varchar 50 NOT NULL Exam Center id
**ec_id Int 4 FOREIGN KEY Exam status
status Int 4 NOT NULL

35
13. Table Name : Course_Register

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*crid Int 4 PRIMARY KEY Course Register Identity
**userid Int 8 FOREIGN KEY User Identity
**courseid Int 8 FOREIGN KEY Course Id
date datetime NOT NULL Date
regno BigInt 8 NULL Register Number
status Int 4 NOT NULL Exam status

14. Table Name : Category

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*catid Int 4 PRIMARY KEY Category Identity
cname Varchar 50 NOT NULL Category Name

15. Table Name : Tutorial

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*tutid Int 4 PRIMARY KEY Tutorial Identity
** catid Int 4 FOREIGN KEY Category Identity
tutname Varchar 50 NOT NULL Tutorial Name
topic Varchar 50 NOT NULL Topic
filename Varchar 50 NOT NULL File Name

36
16. Table Name : Qutnpaper

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*qstnid Int 4 PRIMARY KEY Question Identity
**courseid Int 4 FOREIGN KEY Course Identity
**subid Int 4 FOREIGN KEY Subject Identity
qstncode Varchar 50 NOT NULL Question Code
sub Varchar 50 NOT NULL Subject
qp Varchar 50 NOT NULL Upload

17. Table Name : Question

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*qid Int 4 PRIMARY KEY Question Identity
**courseid Int 4 FOREIGN KEY Course Identity
**subid Int 4 FOREIGN KEY Subject Identity
quest Varchar 50 NOT NULL Question
choice1 Varchar 50 NOT NULL Choice1
choice2 Varchar 50 NOT NULL Choice2
choice3 Varchar 50 NOT NULL Choice3
choice4 Varchar 50 NOT NULL Choice4
answer Varchar 50 NOT NULL Answer

37
18. Table Name : Ask_Questions

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*qid Int 4 PRIMARY KEY Question Identity
**userid Int 4 FOREIGN KEY User Identity
**catid Int 4 FOREIGN KEY Category id
qns Varchar MAX NOT NULL Question
ans Varchar MAX NULL Answer

19. Table Name : Country

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*cntryid Int 4 PRIMARY KEY Country Identity
cname Varchar 50 NOT NULL Country Name

20. Table Name : State

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*stateid Int 4 PRIMARY KEY State Identity
sname Varchar 50 NOT NULL State Name
**cntryid Int 4 FOREIGN KEY Country Identity

21. Table Name : District

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


*districtid Int 4 PRIMARY KEY District Identity
dname Varchar 50 NOT NULL District Name
**stateid Int 4 FOREIGN KEY State Identity

38
22. Table Name : Video

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


**tid Int 4 FOREIGN KEY Tutorial Identity
video Varchar 50 NOT NULL Video Name

23. Table Name : PPT

FIELD NAME DATA TYPE SIZE CONSTRAINTS DESCRIPTION


**tid Int 4 FOREIGN KEY Tutorial Identity
PPT Varchar 50 NOT NULL PPT Name

3.4 USER INTERFACE DESIGN

The website must be attractive and should include the latest features wherever
possible. But this should not make the pages any less attractive to the older browsers. The
pages should be compatible with the most common browsers in the market. While integrating
many features of HTML into the pages, care should be taken to ensure that the loading of the
pages is fast as possible. The purpose of the site should be clear at glance. Though all
information need not be available at once it shall be provided as and when asked for. The
links for navigation through the pages should be evident in the first glance.
The interfaces for must be designed in the most user friendly way. Registration form is
available in the system. Error message intended to guide the users must be displayed where
ever necessary.
Error Message:
 Invalid Identification
 Incorrect Pass word
 Invalid Key word

The objectives guide the design of the input focus on

 Effectiveness
 Accuracy
 Ease to use
 Consistency
 Simplicity

39
Input Design
Input Design is the most important part of the overall system design which
requires very careful attention. Often the collection of input data is most expensive part of the
system. Many errors may occur during this phase of the design. So to make the system study,
the input given by the user is strictly validated before making a manipulation with it. Thus by
validation it is possible to produce a cost effective method of input. Achieve the highest
possible level of accuracy.Ensure that input is acceptable to and understood by users. Input
design is concentrated on estimating what the inputs are and how often they are to be
arranged on the input screen, how frequently the date are to be collected etc. The activity of
putting the data into the computer for processing can be achieved by instructing the computer
to read the data from a written or printed document or it can occur by having people keying
the data directly into the system. The design of input focuses on controlling the amount of
input required, controlling errors, avoiding delay etc. Every effort is made to ensure the
accuracy of input data. Computer input procedure are designed to delete errors in the data at
lower level of details which is beyond the capability of the control procedures.

Output Design

The Output Design is another very important phase. The outputs are mainly
used to communicate with a user, processing the input data given by the user etc. A quality
output is one, which meets the requirements of the end user and presents the information
clearly. In any system results of processing are communicated to the users and to other
through outputs. In the Output design it is determined how the information is to be displayed
for immediate need and also hardcopy out.
Efficient, intelligible output design should improve the system’s relationship with the user
and the help in decision making.
The outputs have been designed as per the needs for the management. The suggestions of the
users are also take in to consideration while designing the layouts and the fields that are to
included in the report. Considering the future use of the output required and depending on the
nature, the output is either displayed on the monitor for immediate need or a hard copy of it
is obtained.

40
4. CODING
4.1. COMPLETE PROJECT CODING

CLASS FILE.CS

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

/// <summary>
/// Summary description for logistic
/// </summary>
public class IL
{
public SqlConnection con = new SqlConnection();
public SqlCommand cmd;
public SqlDataReader dr;
public SqlDataAdapter ada = new SqlDataAdapter();
public DataTable dt = new DataTable();
public DataTable dt1 = new DataTable();

public void DBConnection()


{
if (con.State == ConnectionState.Open)
{
con.Close();
}
con.ConnectionString =
ConfigurationManager.ConnectionStrings["InteractiveLearningConnectionString"].Connecti
onString;
con.Open();

}
public void ReadData(string sql)
{
DBConnection();
cmd = new SqlCommand(sql, con);
dr = cmd.ExecuteReader();

}
public void PutData(string sql)
{
DBConnection();
cmd = new SqlCommand(sql, con);
cmd.ExecuteNonQuery();

}
public int GetId(string pk, string table)
{

41
DBConnection();
string sql = "SELECT ISNULL(MAX(" + pk + ")+1,1000) FROM " + table;
cmd = new SqlCommand(sql, con);
int id = Convert.ToInt32(cmd.ExecuteScalar());
return id;
}
public string MessageBox(string msg)
{
string message = "<script language='javascript'> alert('" + msg +
"')</script>";
return message;

}
public void FillDropdownList(string txtfield, string valuefield, string table,
DropDownList drplst, string Condition)
{
if (Condition == "")
{
dt.Rows.Clear();
string SQL = "SELECT " + txtfield + "," + valuefield + " FROM " + table +
" ORDER BY " + txtfield + " ASC";
DataAdapter(SQL);
if (dt.Rows.Count > 0)
{
drplst.DataSource = dt;
drplst.DataTextField = txtfield;
drplst.DataValueField = valuefield;
drplst.DataBind();
}
}
else
{
dt.Rows.Clear();
string SQL = "SELECT " + txtfield + "," + valuefield + " FROM " + table +
" WHERE " + Condition + " ORDER BY " + txtfield + " ASC";
DataAdapter(SQL);
if (dt.Rows.Count > 0)
{
drplst.DataSource = dt;
drplst.DataTextField = txtfield;
drplst.DataValueField = valuefield;
drplst.DataBind();
}
}
}

public void DataAdapter(string sql)


{
DBConnection();
dt.Rows.Clear();
cmd = new SqlCommand(sql, con);
ada.SelectCommand = cmd;
ada.Fill(dt);

}
public void Adapter_Track(string sql)
{
DBConnection();
dt1.Rows.Clear();
cmd = new SqlCommand(sql, con);

42
ada.SelectCommand = cmd;
ada.Fill(dt1);

public DataTable selectcmd(string arg)


{
DBConnection();
SqlCommand cmd = new SqlCommand(arg, con);
SqlDataAdapter sd = new SqlDataAdapter(cmd);
DataTable dtnew = new DataTable();
sd.Fill(dtnew);
return dtnew;
}

public void closecon()


{
con.Close();
}

public void FillGrid(string SQL, GridView GView)


{
dt.Rows.Clear();
DataAdapter(SQL);
if (dt.Rows.Count > 0)
{
GView.DataSource = dt;
GView.DataBind();
}

}
public void FillDetails(string SQL, DetailsView DView)
{
dt.Rows.Clear();
DataAdapter(SQL);
if (dt.Rows.Count > 0)
{
DView.DataSource = dt;
DView.DataBind();
}
}

public int GetPrimaryKey(string pkey, string tblname)


{
DBConnection();
string sql = "SELECT ISNULL(max(" + pkey + ")+1,1000) FROM " + tblname;
cmd = new SqlCommand(sql, con);
int ID = Convert.ToInt32(cmd.ExecuteScalar());
return ID;
}
}

INSTRUCTOR REGISTRATION

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

43
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;

public partial class Instructor_Reg : System.Web.UI.Page


{
IL obj = new IL();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
obj.FillDropdownList("cname", "cid", "country", ddlcountry,"");
ddlcountry.Items.Insert(0, "--SELECT--");
}
}
protected void ddlcountry_SelectedIndexChanged(object sender, EventArgs e)
{
if (ddlcountry.SelectedIndex == 0)
{
Response.Write(obj.MessageBox("Please select a country"));
ddlstate.Items.Clear();

}
else
{
obj.FillDropdownList("sname", "sid", "state", ddlstate, "cid=" +
ddlcountry.SelectedItem.Value);
ddlstate.Items.Insert(0, "--SELECT--");
}
}
protected void ddlstate_SelectedIndexChanged(object sender, EventArgs e)
{
if (ddlstate.SelectedIndex == 0)
{
Response.Write(obj.MessageBox("Please select a state"));
ddldistrict.Items.Clear();

}
else
{
obj.FillDropdownList("district", "did", "district", ddldistrict, "sid=" +
ddlstate.SelectedItem.Value);
ddldistrict.Items.Insert(0, "--SELECT--");
}
}
protected void Button1_Click(object sender, EventArgs e)
{
obj.ReadData("select * from Login where uname='" + txt_uname.Text + "'");
if (obj.dr.Read())
{
Response.Write(obj.MessageBox("Username already exists........!"));
}
else
{
if (FileUpload1.HasFile)
{
FileUpload1.SaveAs(Server.MapPath("") + "//IPhoto//" +
FileUpload1.FileName);
int Id = obj.GetPrimaryKey("sid", "staff_reg");

44
obj.PutData("insert into staff_reg values(" + Id + ",'" +
txt_name.Text + "','" + txt_address.Text + "','" + txt_phone.Text + "','" +
txt_email.Text + "','" + RadioButtonList1.SelectedItem.Text + "','" + txt_dob.Text +
"','" + ddlcountry.SelectedItem.Text + "','" + ddlstate.SelectedItem.Text + "','" +
ddldistrict.SelectedItem.Text + "','" + txt_qual.Text + "','" + txt_exp.Text + "','" +
txt_designation.Text + "'," + txt_year.Text + ",'" + FileUpload1.FileName + "','" +
txt_uname.Text + "','" + txt_pwd.Text + "',0)");
Response.Write(obj.MessageBox("Registration completed successfully"));
txt_address.Text = "";
txt_designation.Text = "";
txt_dob.Text = "";
txt_email.Text = "";
txt_exp.Text = "";
txt_name.Text = "";
txt_phone.Text = "";
txt_pwd.Text = "";
txt_qual.Text = "";
txt_uname.Text = "";
txt_year.Text = "";
}
else
{
Response.Write(obj.MessageBox("Please upload a Photo"));
}
}
}
}

STUDENT REGISTRATION

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;

public partial class Instructor_Reg : System.Web.UI.Page


{
IL obj = new IL();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
obj.FillDropdownList("cname", "cid", "country", ddlcountry,"");
ddlcountry.Items.Insert(0, "--SELECT--");
}
}
protected void ddlcountry_SelectedIndexChanged(object sender, EventArgs e)
{
if (ddlcountry.SelectedIndex == 0)
{
Response.Write(obj.MessageBox("Please select a country"));
ddlstate.Items.Clear();

}
else
{

45
obj.FillDropdownList("sname", "sid", "state", ddlstate, "cid=" +
ddlcountry.SelectedItem.Value);
ddlstate.Items.Insert(0, "--SELECT--");
}
}
protected void ddlstate_SelectedIndexChanged(object sender, EventArgs e)
{
if (ddlstate.SelectedIndex == 0)
{
Response.Write(obj.MessageBox("Please select a state"));
ddldistrict.Items.Clear();

}
else
{
obj.FillDropdownList("district", "did", "district", ddldistrict, "sid=" +
ddlstate.SelectedItem.Value);
ddldistrict.Items.Insert(0, "--SELECT--");
}
}
protected void Button1_Click(object sender, EventArgs e)
{
obj.ReadData("select * from Login where uname='" + txt_uname.Text + "'");
if (obj.dr.Read())
{
Response.Write(obj.MessageBox("Username already exists........!"));
}
else
{
if (FileUpload1.HasFile)
{
FileUpload1.SaveAs(Server.MapPath("") + "//SPhoto//" +
FileUpload1.FileName);
int Id = obj.GetPrimaryKey("userid", "user_reg");
obj.PutData("insert into user_reg values(" + Id + ",'" + txt_name.Text
+ "','" + txt_address.Text + "','" + txt_phone.Text + "','" + txt_email.Text + "'," +
"'" + RadioButtonList1.SelectedItem.Text + "','" + txt_dob.Text +
"','" + ddlcountry.SelectedItem.Text + "','" + ddlstate.SelectedItem.Text + "'," +
"'" + ddldistrict.SelectedItem.Text + "','" + txt_qual.Text + "',"
+ txt_year.Text + ",'" + txt_course.Text + "','" + FileUpload1.FileName + "'," +
"'" + txt_uname.Text + "','" + txt_pwd.Text + "',0,0)");
Response.Write(obj.MessageBox("Registration completed successfully"));
txt_address.Text = "";
txt_course.Text = "";
txt_dob.Text = "";
txt_email.Text = "";
txt_name.Text = "";
txt_phone.Text = "";
txt_pwd.Text = "";
txt_qual.Text = "";
txt_uname.Text = "";
txt_year.Text = "";
}
else
{
Response.Write(obj.MessageBox("Please upload a Photo"));
}
}
}
}

46
LOGIN

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class SignIn : System.Web.UI.Page


{
IL obj = new IL();
protected void Page_Load(object sender, EventArgs e)
{

}
protected void Button1_Click(object sender, EventArgs e)
{
obj.ReadData("select utype from login where uname='" + txt_userid.Text + "'
and pwd='" + txt_pwd.Text + "'");
if (obj.dr.Read())
{
Session["uname"] = txt_userid.Text;
string utype = obj.dr.GetValue(0).ToString();
if (utype == "1")
{
Response.Redirect("~/admin/home.aspx");
}
else if (utype == "2")
{
obj.ReadData("select sid from staff_reg where uname='" +
txt_userid.Text + "'");
if (obj.dr.Read())
{
Session["userid"] = obj.dr.GetValue(0).ToString();
}
Response.Redirect("~/Instructor/home.aspx");
}
else if (utype == "3")
{
obj.ReadData("select userid from user_reg where uname='" +
txt_userid.Text + "'");
if (obj.dr.Read())
{
Session["userid"] = obj.dr.GetValue(0).ToString();
}
Response.Redirect("~/Student/home.aspx");
}
else if (utype == "4")
{
obj.ReadData("select univid from university where uname='" +
txt_userid.Text + "'");
if (obj.dr.Read())
{
Session["userid"] = obj.dr.GetValue(0).ToString();
}
Response.Redirect("~/University/home.aspx");

47
}
else if (utype == "5")
{
Response.Redirect("~/University/Controller/home.aspx");
}
else if (utype == "6")
{
Response.Redirect("~/Examcenter/home.aspx");
}
}
else
{
Response.Write(obj.MessageBox("Invalid Login...!"));
}
}
}

APPROVE INSTRUCTOR

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class Admin_ApproveFaculty : System.Web.UI.Page


{
IL obj = new IL();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
obj.FillGrid("select *,'~/Iphoto/'+photo as im from staff_reg where
status=0", GridView1);
}
}
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "1")
{
Response.Redirect("~/Admin/ApproveFacultyDetails.aspx?Fid=" +
e.CommandArgument.ToString());
}
}
}

APPROVE INSTRUCTOR DETAILS

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class Admin_ApproveFacultyDetails : System.Web.UI.Page

48
{
IL obj = new IL();
public static string fid;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
fid = Request.QueryString["Fid"].ToString();
obj.ReadData("select * from staff_reg where sid=" + fid);
if (obj.dr.Read())
{
lblname.Text = obj.dr.GetValue(1).ToString();
lbladdress.Text = obj.dr.GetValue(2).ToString();
lblphone.Text = obj.dr.GetValue(3).ToString();
lblemail.Text = obj.dr.GetValue(4).ToString();
lblgender.Text = obj.dr.GetValue(5).ToString();
lbldob.Text = obj.dr.GetValue(6).ToString();
lblcountry.Text = obj.dr.GetValue(7).ToString();
lblstate.Text = obj.dr.GetValue(8).ToString();
lbldistrict.Text = obj.dr.GetValue(9).ToString();
lblqual.Text = obj.dr.GetValue(10).ToString();
lblexp.Text = obj.dr.GetValue(11).ToString();
lbldesignation.Text = obj.dr.GetValue(12).ToString();
lblyear.Text = obj.dr.GetValue(13).ToString();
Image1.ImageUrl = "~/IPhoto/" + obj.dr.GetValue(14).ToString();
lbluname.Text = obj.dr.GetValue(15).ToString();
}
}
}
protected void LinkButton1_Click(object sender, EventArgs e)
{
obj.PutData("update staff_reg set status=1 where sid=" + fid);
Response.Write(obj.MessageBox("Approved Successfully"));
}
protected void LinkButton2_Click(object sender, EventArgs e)
{
obj.PutData("update staff_reg set status=2 where sid=" + fid);
Response.Write(obj.MessageBox("Approved Successfully"));
}
}

APPROVE STUDENT

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class Admin_ApproveFaculty : System.Web.UI.Page


{
IL obj = new IL();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
obj.FillGrid("select *,'~/Sphoto/'+photo as im from user_reg where
status=0", GridView1);

49
}
}
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "1")
{
Response.Redirect("~/Admin/ApproveStudentDetails.aspx?Sid=" +
e.CommandArgument.ToString());
}
}
}

APPROVE STUDENT DETAILS

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class Admin_ApproveFacultyDetails : System.Web.UI.Page


{
IL obj = new IL();
public static string Sid;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Sid = Request.QueryString["Sid"].ToString();
obj.ReadData("select * from user_reg where userid=" + Sid);
if (obj.dr.Read())
{
lblname.Text = obj.dr.GetValue(1).ToString();
lbladdress.Text = obj.dr.GetValue(2).ToString();
lblphone.Text = obj.dr.GetValue(3).ToString();
lblemail.Text = obj.dr.GetValue(4).ToString();
lblgender.Text = obj.dr.GetValue(5).ToString();
lbldob.Text = obj.dr.GetValue(6).ToString();
lblcountry.Text = obj.dr.GetValue(7).ToString();
lblstate.Text = obj.dr.GetValue(8).ToString();
lbldistrict.Text = obj.dr.GetValue(9).ToString();
lblqual.Text = obj.dr.GetValue(10).ToString();
lblyear.Text = obj.dr.GetValue(11).ToString();
lblcourse.Text = obj.dr.GetValue(12).ToString();
Image1.ImageUrl = "~/SPhoto/" + obj.dr.GetValue(13).ToString();
lbluname.Text = obj.dr.GetValue(14).ToString();
}
}
}
protected void LinkButton1_Click(object sender, EventArgs e)
{
obj.PutData("update user_reg set status=1 where userid=" + Sid);
Response.Write(obj.MessageBox("Approved Successfully"));
}
protected void LinkButton2_Click(object sender, EventArgs e)
{
obj.PutData("update staff_reg set status=2 where sid=" + Sid);

50
Response.Write(obj.MessageBox("Approved Successfully"));
}
}

ADD CATEGORY
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class Admin_Addcountry : System.Web.UI.Page


{
IL obj = new IL();
protected void Page_Load(object sender, EventArgs e)
{

}
protected void btn_add_Click(object sender, EventArgs e)
{
string selectsql, insertsql;
selectsql = "SELECT * FROM category where cname='" + txt_cat.Text + "'";
obj.ReadData(selectsql);
if (obj.dr.Read())
{
obj.dr.Close();
Response.Write(obj.MessageBox("Category name already exists..!!"));
}
else
{
obj.dr.Close();
int id = obj.GetId("catid", "category");
insertsql = "insert into category values(" + id + ",'" + txt_cat.Text +
"')";
obj.PutData(insertsql);
txt_cat.Text = "";
Response.Write(obj.MessageBox("Category name Added successfully"));
}
}
}
}

4.2. COMMENTS AND DESCRIPTION


Comments are used for the detailed description of the section of
corresponding code. They are mainly denoted by giving ‘//’ symbol on the left hand side of
the line of code. If we want to comment more than one line of code, give ‘/*’ on the
beginning and ‘*/’ on the ending of the code. An example from the proposed software is
given below:
'NOTE: The following placeholder declaration is required by the Web Form Designer.
'Do not delete or move it.

51
This comment informs us not delete that corresponding place eventhough we are not writing
any code there. These lines are not need to run the program. But needs to inform the
programmer.

4.3. STANDARDIZATION OF THE CODING/ CODE EFFICIENCY

The INTERACTIVE LEARNING supports efficient code for the proper


functioning of the whole system. Efficiency can be improved by the use of several features
available in ASP.NET like object class methodology.
ASP.NET provides the programmer to define and use procedures, which can be declared
either in appropriate code window of the form or in the module section of the project. The
advantage of defining procedures is that it can be called and executed from any form
provided that the procedure must be declared using public scope. The main advantage of
using this facility is it reduces lines of code. It promotes code restructuring. Restructuring
does not modify the overall program architecture. It also avoids repetition of code. It tends to
focuses on the design details of individual modules and on local data structures defined
within modules. Apart from procedures, data variables that are used for the entire project can
be defined in module. That is, it facilitates defining the variables globally.
The project uses the objects associated with the sql server objects library. SQL server
provides better overall performance than earlier object models. It provides more
opportunities to fortune the data cursor of a record set. The data cursor can change position to
point to a different row of data. It is more resource efficient an provides more universal data
access using the connection object that contributes to the data base connection. The
connection object provides a secure connection to the data base.
Efficiency is an internal quality and refers to how economically the software utilizes the
resourses of the computer. In other words, efficiency is the degree to which the software
makes optimal use of system resources as indicated by the attributes time behavior.
Efficiency affects and often determines the performance of the system. Optimizing code is
one way to make it efficient. By making the code efficient it can be rum faster, with
minimum resources.

4.4 ERROR HANDLING


There are various ways of handling errors open to the designer, which includes
rejection of the item of input or processing the next item, writing error record and signaling
the appropriate message to the user. Error procedures must be specified in detail showing
decisions, actions and exceptions.
In INTERACTIVE LEARNING, few alternatives are arranged. In most of the cases where
error occurs an error message is popped to the user who is supposed to realize the fact and do
the necessary steps. The program developed is checked clarified. The entry form field size is
set in accordance with the table column width so that the user should not enter data longer

52
than the field size. Any NULL value entered in the input will be checked with in the form
itself

53
4.5 VALIDATION CHECKS
The major decisions of a validation stage are concerned with handling errors
and distribution of data. There are various ways of handling errors open to the designer,
which includes rejection of the item of input or processing the next item, writing error record
and signaling the appropriate message to the user. Error procedures must be specified in
details showing decision, action and exceptions.
In this project few alternatives are arranged. The entry format field size in the input forms of
the software is set in accordance with the table column width. This restricts the user from
entering data longer than the field size. Before saving the input values all values for the not
null fields are checked to ensure that the fields will have values.Thus form level validation is
ensured. Also checks have been introduced for restricting users from entering characters
which are not allowed for particular fields.Thus field level validation is also ensured.
Several validation checks are applied to all the tables also. The RDBMS powerfully support
this concept by employeeloying a mechanism referred as integrity constraints. It is used by
the RDBMS to prevent invalid or inaccurate entries in to the tables.
Following are the various types of integrity constraints:
1. Domain integrity constraints
2. Entity integrity constraints
3. Referential integrity constraints.
4. The major constraints used in the system fall under the aforesaid categories. One of
the major constraints imposed is the not null constraint. When such a constraint is imposed o
a column or set of columns in a table, it will not accept null values. Another constraint is
unique constraint. Its main job is to prevent duplication of values within rows of a specified
column or set of columns in a table.
Primary key constraint avoids duplication of rows and does not allow null values when
enforced in a column or set of columns. As a result it is used to identify row. Referential
integrity constraints are used to establish a master child relationship between two tables with
one having column(s) which is the primary key of another table.

54
5. TESTING

Testing is one of the most important phases in the development of any successful
software. Testing helps a great deal in identifying the errors and discrepancies in the
software developed. Various kinds of testing techniques are being used nowadays by
software engineers.
Different tools for automated testing like Win Runner, Load Runner etc. are
available for testing the software using specialized tools.
But as my project is of academic nature only and as the resources available to
me like software, tools etc. are very limited, I have used manual testing for all the modules
and forms in this project INTERACTIVE LEARNING.
For this, basically I obtained the help of many of my colleagues working in
different sections coming under the preview of this software. Occasionally, I displayed the
various user interfaces and data relating to different aspects of the software to them. They
gave many valuable suggestions which helped a great deal in improving the system.
Once the software was ready for actual implementation, I asked some of my
friends to use the software for performing their duties which they have already done
manually in their sections. The results where quite encouraging and I have consolidated
these reports into the test cases details in tabular format below.
Code improvement and debugging were done based on these test cases and
suggestions made by many of my colleagues.
It may please be noted that as the time allotted for this project is only very
limited, it has not be possible to include all the valid test cases for all the forms and modules
in the project which will actually run to hundreds in number. Hence for academic purposes
and for the purpose of submitting a concise and abridged report, I have consolidate some of
the important test cases in to the test reports.

TESTING TECHNIQUES AND TESTING STRATEGIES


This forms another major part of any System Development process. Care should be given
during the whole process of testing. The performance of the system is measured in this phase.
Testing is a set activity that can be planned and conducted systematically.
TESTING OBJECTIVES
There are several rules that can serve as testing objectives. They are:
1. Testing is a process of executing a program and finding a BUG.
2. A good test case is one that has a high probability of finding an undiscovered error.
3. A successful test is one that uncovers an undiscovered error.
If testing is conducted successfully according to the objectives as stated above, it would
uncover errors in the software. Also testing demonstrates that software functions appear to

55
the working according to the specification, that performance requirements appear to have
been met.
There are three ways to test a program:
1. for Correctness.
2. For Implementation efficiency.
3. for Computational Complexity.
Tests for correctness are supposed to verify that a program does exactly what it was designed
to do. This is much more tedious than it may at first appear, especially for large programs.
Tests for implementation efficiency attempt to find ways to make a correct program faster or
use less storage. It is a code-refining process, which re-examines the implementation phase
of algorithm development. Tests for computational complexity amount to an experimental
analysis of the complexity of an algorithm or an experimental comparison of two or more
algorithms, which solve the same problem.
A quality team deputed by the management verified all the necessary documents and tested
the Software while entering the data at all levels.
Software testing is a critical element of the software development cycle. The testing is
essential for ensuring the Quality of the software developed and represents the ultimate view
of specification, design and code generation. Software testing is defined as the process by
which one detects the defects in the software. Testing is a set activity that can be planned
and conducted systematically. Testing begins at the module level and work towards the
integration of entire computers based system.
A good test case is one that has a high probability of finding an
as-yet undiscovered error. A successful test is one such uncovers or finds such errors. If
testing is conducted successfully, it will uncover errors in the software. It also demonstrates
that software functions are being performed according to specifications and also behavioral
and performance requirements are satisfied. For this, test plans have to be prepared. The
implementation of a computer system requires that test data has to be prepared and that the
‘VPN‘as well as its elements is being tested in a planned and efficient manner. Nothing is
complete without testing, as it is vital success of the system
TESTING STRATEGIES
The four strategies of testing are:
1. Unit Testing
2. Integrated Testing
3. Validation Testing
4. System Testing

56
Unit testing
This testing strategy considers the concept of unit changes. The focus is on the
algorithmic detail of a module and the data flow across the module interface. Each module is
considered as separate unit. The input given and output generated by each module is studied
separately. Every possibility of input that can be supplied is considered. nit testing focuses
verification effort on the smallest unit of software designs the module. To check whether
each module in the software works properly so that it gives desired outputs to the given
inputs. All Validations and conditions are tested in the module level in the unit test. Control
paths are tested to ensure the information properly flows into, and out of the program unit
and out of the program unit under test. Boundary condition is tested to ensure that the
modules operates at boundaries, establishes that it restricts processing. All independent paths
through the control structure ensure that all statements in a module have been executed at
least once. In conclusion, all errors handling paths are tested.
Integration Testing
This testing strategy combines all the modules involved in the system. After the
independent modules are tested, dependent modules that use the independent modules are
tested. This sequence of testing layers of dependent modules continues until the entire system
is constructed.
Though each program works individually, they should work after linking them together. This
is also referred to as Interfacing. Data may be lost across interface and one module can have
an adverse effect on another. Subroutines, after linking, may not do the desired function
expected by the main routine. Integration testing is a systematic technique for constructing
program structure while at same time, conducting test to uncover errors associated with the
interface. In the testing, the programs are constructed and tested in small segments
Data Validation Testing
Data validation is done to see whether the corresponding entries made in the
tables are correct. Proper validation checks are done in case of insertion and updating of
tables. Duplication of data has to be avoided to the maximum extent. White Box testing is a
test case design method that uses the control structure of other procedural designs to divide
the test cases. The different test cases are,
1. Guarantee that all independent parts within a module have been exercised at least once.
2. Exercise all logical decisions on their true/false side.
3. Execute all loops at their boundaries and within their operational bounds.
4. Exercise internal data structure to ensure their validity.
Each module was tested and the tested modules were linked and integration test was carried
out.

57
Password testing
The Logon process is tested with some separate logon trials. Password is mainly
meant for security. Passwords are stored in tables. Incorrect entries will be screened. Already
created passwords will not be allowed to use again.
Data validation testing
Data validation is done to see whether the corresponding entries made in the tables
are correct. Proper validation checks are done in case of insertion and updating of tables.
Duplication of data has to be avoided to the maximum extent. White Box testing is a test case
design method that uses the control structure of other procedural designs to divide the test
cases. The different test cases are,
* Guarantee that all independent parts within a module have been exercised at least once.
* Exercise all logical decisions on their true/false side.
* Execute all loops at their boundaries and within their operational bounds.
* Exercise internal data structure to ensure their validity.
* Each module was tested and the tested modules were linked and integration test was carried
out.
Final/system testing
This is the final step in testing. In this, the entire system was tested as a whole
with all forms, code, modules and class modules. This form of testing is popularly known as
Black Box testing or system tests. Black Box testing methods focus on the functional
requirement of the software. That is, Black Box testing enables the software engineer to
derive sets of input conditions that will fully exercise all functional requirements for a
program. Black Box testing attempts to find errors in the following categories; incorrect or
missing functions, interface errors, errors in data structures or external database access,
performance errors and initialization errors and termination errors. In this system, Black box
testing has been successfully handled.

58
SAMPLE TEST CASES

SERIAL TEST PAGE PROCEDURE EXPECTED SUCCESS/FAILURE


NO: OUTPUT
1 Login Click on the Show alert Success
login button massage input
without entering userid and
userid and password
password
2 Login Click on the Show alert Success
login button with message
entering wrong incorrect userid
userid or or password
password
3 Instructor Click on the Show alert Success
Registration register button message to
with out entering enter the details
details
4 Student Click on the Show alert Success
Registration register button message to
with out entering enter the details
details
5 University Click on the Show alert Success
Registration register button message to
with out entering enter the details
details
6 Exam Click on the Show alert Success
Controller register button message to
Registration with out entering enter the details
details
7 Profile Edit Click on the edit Show alert Success
button and enter message enter
Without entering the details of
User Details the User

59
Test data
Test data should be prepared carefully since the data only determines the
efficiency and accuracy of the system. Artificial data are prepared solely for the purpose of
testing. Every program validates the input data.
Validation
Providing validation checks is one of the important part in the software
development activity. The major decisions of a validation stage are concerned with handling
errors and distribution of data. There are various ways of handling errors open to the
designer, which includes rejection of the item of input or processing the next item, writing
error record and signaling the appropriate message to the user. Error procedures must be
specified in detail showing decisions, actions and exceptions.
Several validation checks are applied to all the tables. The RDBMS powerfully supports this
concept by employing a mechanism referred as ‘INTEGRITY CONSTRAINTS’. It is used
by RDBMS to prevent invalid or inaccurate entries in two tables. Following are the various
types of Integrity constraints used Domain Integrity Constraints, Entity Integrity Constraints
and Referential Integrity Constraints.
The major constraints used in the falls under the fore said categories. One of the major
constraints imposed is the NOT NULL constraint. When such a constraint is imposed on a
column or set of columns in a table, it will not accept null values. Another constraint is the
UNIQUE constraint. Its main job is to prevent duplication of values within rows of a
specified column or set of columns in a table.
PRIMARY KEY constraint avoids duplication of rows and does not allow NULL values
when enforced in a column or set of columns. As a result, it is used to identify a row.
Referential integrity constraints are used to establish a Master-Child relationship between
two tables having common columns. To implement this, we should define the column in the
parent table as Primary key and the same column in the child table as a Foreign Key in the
child table referring to the corresponding parent entry. ON DELETE CASCADE clause is
also used. If all the rows under the referenced key column in a parent table are deleted, then
all the rows in the child table with dependent foreign key columns will also be deleted
automatically.

60
6. SYSTEM SECURITY MEASURES

A computer system is secure if neither its ability to attain its objectives nor its availability to
survive can be adversely affected by an unwanted event. A computer-based security is a
combination of many assets or resources designed to perform some function or to provide
service. The facility to impose strict authorization is completely vested in the hands of the
system administrator. He/She has the full authority to add or delete user to and from the
system respectively. Only valid users can enter into the system. They have to provide a valid
user name, password and privileges to prove that they are valid users. If any one of them is
wrong, access is denied to the system.
6.1 DATA SECURITY
A computer system is secure if neither its ability to attain its objectives nor its
availability to survive can be adversely affected by an unwanted event. A computer-based
security is a combination of many assets or resources designed to perform some function or
to provide service. The facility to impose strict authorization is completely vested in the
hands of the system administrator. He/She has the full authority to add or delete user to and
from the system respectively. Only valid users can enter into the system. They have to
provide a valid user name and password to prove that they are valid users. If any one of them
is wrong, access is denied to the system.
6.2 CREATION OF USER PROFILES AND ACCESS RIGHTS
The setting of connection is controlled by calling a public procedure in the
main module. It is not allowed to set connection to the database from anywhere else in the
code. The password and username are used there only such no manipulations are possible by
the end user.
It is safeguarded that a valid DSN is set. However the DSN doesn’t contain the password
setting to the database. The password is internally supplied by the program and it is hard
coded. Thus security measures are taken to set the connection to the database.
To log on to the program the user has to enter the userid and password. No
other user is permitted to enter into the program unless a valid username and password is
given. This is the next security measure taken. When the user supplies the userid and
password the program checks to see that they are valid and allows entry into the facilities of
the program after the checking.

61
7. COST ESTIMATION OF THE PROJECT

For a given set of requirements, it is desirable to know how much it will cost
to develop the software to satisfy the given requirements, and how much time development
will take. These estimates are needed before development is initiated. The primary reason for
cost estimation is to enable the client or the developer to perform a cost-benefit analysis. A
more practical use of cost estimation is in bidding for software projects, where the developers
must give cost estimates to a potential client for the development contact.
Cost in a project is due to requirements for software, hardware and human resources.
Hardware resources are such things as the computer time, terminal time and memory
required for the project, where as software resources include the tools and compilers that are
needed during development. However the bulk of the cost of software development is due to
the human resources needed and most cost models focuses on this aspect. Most cost
estimates are determined in terms of person-months (PM), which can easily be translated in
the actual dollar or rupees cost.
Software cost and effort estimation will never be an exact science. Too many variables-
human, technical, environment, political can affect the ultimate cost of software and effort
applied to develop it. To achieve reliable cost and effort estimates a number of options arise.
1. Delay estimation until late in the project ( obviously we can achieve
100% accurate estimates after the project is complete)
2. Base estimates on similar projects that have already been complete.
3. Use relatively simple decomposition techniques to generate project
cost and effort estimates.
4. Use one or more empirical models for software cost and effort
estimation.
Unfortunately the first option however attractive is not practical. Cost estimates must be
provided “up front”.
The second option can work reasonably well, if the current project is quite similar to
past efforts and other project influences are equivalent. Unfortunately, past experience has
not always been a good indicator of future results.
The remaining options are viable approaches to software project estimation. Ideally,
the techniques noted for each option should be applied in tandem, each used as a cross check
for the other. Decomposition techniques take a divide and conquer approach to software
project estimation. By decomposing a project into major functions and related software
engineering activities, cost and effort estimation can be performed in a step wise fashion.
Problem Based Estimation
LOC (Line of Code) is a distinct estimation technique. The project planner begins with
a bounded statement of software scope and from this statement attempts to decompose
software into problem functions that can each be estimated individually. LOC is then

62
estimated for each function. Alternatively, the planner may choose another component for
sizing such as classes or objects, changes or business process affected.

63
9.PERT CHART, GANTT CHART

Pert Chart
PERT is a project management tool that provides a graphical
representation of a project’s timeline. PERT, or Program Evaluation Review Technique, was
developed by the United States Navy for the Polaris submarine missile program in the 1950s.
PERT charts allow the tasks in a particular project to be analyzed, with particular attention to
the time required to complete each task, and the minimum time required to finish the entire
project.
A PERT chart is a graphic representation of a project’s schedule, showing the sequence of
tasks, which tasks can be performed simultaneously, and the critical path of tasks that must be
completed on time in order for the project to meet its completion deadline. The
chart can be constructed with a variety of attributes, such as earliest and latest start dates for
each task, earliest and latest finish dates for each task, and slack time between tasks. A PERT
chart can document an entire project or a key phase of a project. The chart allows a team to
avoid unrealistic timetables and schedule expectations, to help identify and shorten tasks that
are bottlenecks, and to focus attention on most critical tasks.
1. Requirements Study
2. System study
3. Designing table
4. Designing Forms
5. Coding
6. Report Designing
7. Testing
8. Documentation

GANTT CHART
A Gantt chart, commonly used in project management, is one of the most popular and
useful ways of showing activities (tasks or events) displayed against time. On the left of the
chart is a list of the activities and along the top is a suitable time scale. Each activity is

64
represented by a bar; the position and length of the bar reflects the start date, duration and end
date of the activity.
Once the project plan is complete, enter the data into the Gantt application that will create the
chart:
 Define the project settings, such as its start date, end date and scheduling mode. The most
common scheduling mode is forwards from the project start date. In this mode the default is
for tasks to start as soon as possible, which means that the whole project finishes at the
earliest possible date.
 Define the project calendar. This sets the number of working days in the week, the number of
working hours in the day, and so on.
 Set up a global resources list and assign resources to tasks. Although you can often define the
resources as you need them, it is usually quicker to start by setting up a global resources list
from which you can then select resources to assign to the various project tasks.
 Create links to specify the dependencies between the project tasks..
 Set constraints on the tasks as necessary.
 Make final adjustments to the project plan.
 Once the project has actually started, inspect it at regular intervals to detect potential
problems or scheduling conflicts and make any corrections required. With all the data entered,
the Gantt application displays the chart. Any change in the timing of a task affects all the
tasks that depend on it. If a task runs ahead of schedule, the Gantt application automatically
recalculates the dates of all the tasks that depend on it in order to take advantage of the time
gained. Conversely, if a task is delayed, all the tasks that depend on it are automatically
rescheduled which may or may not impact the overall end date of the project.

Following table illustrates the various project tasks and time (in weeks) required for the
development of the system

Sl.No ACTIVITIES WEEKS

1 Project Requirements 1

2 System study 1

3 Designing Tables 2

65
4 Designing Forms 1

5 Coding 5

6 Report Designing 1

7 Testing 1

8 Documentation 2

66
10. FUTURE SCOPE AND FURTHER ENHANCEMENT

To survive from the competition each system has to produce


some modifications to it in the future. New features will provide the system a new fresh look,
by which it can attract a lot of users. Due to this reason it’s necessary that the system need to
be modified.

The World of computer is not always static. It is always subject to change. The
software too has to suit the requirements of the future. The system is open to reasonable
changes and these changes can be bought very easily. But drastic changes like changes in
the processing flow, changes in system functioning etc. may not able to accommodate in
the existing system. It can be strongly said that the system has a fair scope for future
development that doesn’t affect the complete process flow severely

Efficiency can be further enhanced and boosted up to a great extent by normalizing


and de-normalizing the database tables used in the project as well as taking the kind of the
alternative set of data structures and advanced calculation algorithms available. We can in
future generalize the application from its current customized status wherein other vendors
developing and working on similar applications can utilize this software and make
changes to it according to their business needs.

The most important benefit of software applications is that they can be easily
extended in the future. As new technologies are coming in every day it is necessary to
build the system suitable for easy expansion.

67
 
11. BIBILIOGRAPHY

1.Elias M Awad “System Analysis and Design” Galgotia Publications Pvt. Ltd
2001
2. Naveen Prakash “Introduction to Database Management System”
Tata McGraw-Hill Publishing Company Limited 2000
3. Roger S Pressman “Software Engineering a Practioners approach”
McGraw-Hill Publishing Company Limited 2000
Links

CONCLUSION

The fundamental goal of the project is to develop an INTERACTIVE LEARNING


System. The software was developed and tested with sample data and outputs obtained
according to the requirements. The performance of the system is evaluated and is found to
be much more efficient than the existing system though it cannot be claimed that it is not
an ideal project, it will meet the primary requirements of the concern. So the project has
to be improved by having modifications as and when the necessity arises in due course.
Any system, which has been in use for a number of years, gradually, decays and become
less effective because of the change in environment to which one has to adapt. For a time
it is possible to overcome problems by amendments and minor modification to
acknowledge the need of fundamental changes. Computerization was proposed as a
solution to the problem of being outdated with the fast present technologies. The project
meets all the requirements as described in the proposed system and satisfies user
requirements to a great extent. The software thus developed is easy to maintain and is
quite user friendly.

68
12. GLOSSARY

Activity : The task to be performed.


Analysis : Analysis is the process of collecting and interpreting facts, understanding
problems and using the information to suggest improvements on the system.
Business
Information System: A System that use resources to convert data into information to
accomplish the purpose of business.
Code :A group of characters used to identify an item of data.
Coding:The process of writing instructions in a programming language.
Conversion :The process of performing all of the operations that results in the turn over of
the new system.
Data Dictionary :It provides a description of all data items in the database.
Design:Design involves translating information requirements and conceptual design into
technical specification and general flow of processing.
Evaluation: Performance is monitored to determine whether they perform functions as
planned.
Feasibility :Feasibility is the determination of whether or not a project is worth doing.
GANNT Chart :It is used to show a project schedule and to report progress on that
schedule.
Implementation :Implementation is the stage of the project when the theoretical design is
turned into a working system.
Maintenance :A system modification that does no require performance review board
action.

69

You might also like