Report - Online Learning System
Report - Online Learning System
Under subject of
Summer Internship (3170001)
Semester – VII (Computer Engineering)
Submitted by:
Jani Bhargav M
181100107010
Academic Year
2021-22
CERTIFICATE
Date:16/02/2021
This is to Certify that this Summer Internship Project Titled “Online Learning
Platform”,has been carried out by Bhargav Jani (181100107010) under my
guidance in partial fulfilment of the degree of Bachelor of Engineering in
Computer Engineering (7th Semester) at GIDC Degree Engineering
College,Abrama during the academic year 2021-22.
External Examiner
ACKNOWLEDGEMENT
The satisfaction that accompanies the successful completion of any task would be incomplete
without the mention of people whose ceaseless corporation made it possible, whose constant
guidance and encouragement grown all effort with success.
Our sincere thanks to our faculty guide Kaushal T. Kevadia, and HOD Archana M. Nayak for
providing valuable guidance throughout our project work. Whenever we were confused about
anything, they were always there to help us.
We are thankful to Gujarat Technological University to giving the opportunity for assigning
this Miniproject(Online Learning Platform) work.
Abstract
The purpose of Online Learning System is to automate the existing manual system by the
help of computerized equipments and computer software, fulfilling their requirements, so that
their valuable data/information can be stored for a longer period with easy accessing and
manipulation of the same. The required software and hardware are easily available and easy
to work with. With the help of this project institution can easily keep data of admin, faculties,
students etc. teachers can upload assignments, take test, submit important materials. Similarly
students can download assignment question, submit completed assignments, give test and
view online lectures...etc.
CONTENTS
1. INTRODUCTION 08
2. SYSTEM ANALYSIS 09
2.1 PROJECT IDENTIFICATION OF NEED 09
2.2 PRELIMINARY INVESTIGATION 09
2.2.1 STUDY OF EXISTING SYSTEM 09
2.2.2 PROPOSED SYSTEM 10
2.2.3 ADVANTAGES OF ONLINE SYSTEM 10
3. SCOPE OF THE PROJECT 11
4. SOFTWARE AND HARDWARE REQUIREMENT 11
SPECIFICATION
4.1 REQUIREMENT SPECIFICATION 11
4.1.1 ANALYSIS OF ACTUAL DATA 11
4.2 DEFINITION OF INPUT REQUIREMENTS 12
4.3 DEFINITION OF PROCESSING REQUIREMENTS 13
4.4 DEFINITION OF OUTPUT REQUIREMENTS 14
4.5 OBJECTIVE OF SRS 14
4.6 OVERVIEW OF SRS 14
4.6.1 OVERALL DESCRIPTION 15
4.6.2 SPECIFIC REQUIREMENTS 15
4.7 HARDWARE CONFIGURATION 15
4.8 SOFTWARE CONFIGURATION 15
5. SYSTEM DESIGN 16
5.1 SYSTEN FLOW DIAGRAM 16
5.1.1 ER DIAGRAM 18
6.1 DESIGN METHODOLOGY 18
1.INTRODUCTION
User
Administrator
Staff/Faculty
Students registration is to apply for the admission and course by filling an registration form
provided in the website. College Faculty/administrator can also perform certain activities by
logging in and also access/search information uploaded by the students.
2. SYSTEM ANALYSIS
System analysis aims at establishing requests for the system to be acquired, developed
and installed. It involves studying and analyzing the ways of an organization currently
processing the data to produce information. Analyzing the problem thoroughly forms the vital
part of the system study. In system analysis, prevailing situation of problem carefully
examined by breaking them into sub problems. Problematic areas are identified and
information is collected. Data gathering is essential to any analysis of requests. It is necessary
that this analysis familiarizes the designer with objectives, activities and the function of the
organization in which the system is to be implemented.
◦ In this hard times and pandemic situation no one can go outside and attend offline lectures
due to which there is huge loss of studies.Other thing is that you have to travel a lot to
study at your desired location/university/college which leads to waste of time in travelling
as well as also waste of money. Other problem is that if you want to XYZ course from
ABC college/institute located at another city you have visit their and find room at any
hostel or should live at any place as PG which leads to extra expenses
4. Filled form is first checked with documents like merit list an details came from
university and verified by an official person , if there is any mistake then it is
corrected.
5. At the time of submission of it the fees is deposited by the candidate.
6. At the time of submission of admission form admission no. is assigned to the
candidate by the institute.
7. Candidate gets the receipt of fees deposition.
The main goal of the system is to automate the process carried out in the organization
with improved performance and realize the vision of online studying and paperless
admission. Some of the goals of the system are listed below:
Manage large number of student/Faculty details.
Activities like updating, modification, deletion of materials, data and records should be
easier.
1) The Scope of this project is e-learning which is easily available for students and also
helpful to faculties.
2) With the help of our website user can easily study at their desired location and important
factor is that one can easily online there is no need of travelling and also no need of hostel
which directly leads to saving of time and money.
3) We have made a PHP Portal for the use student/admin/faculty in which student can
download assignment, give test, download e-book, pdf etc. similarly admin can enrol new
students, add information as well as faculty can arrange test, upload different modules and
video, declare results etc.
locked for editing will be when it has been submitted for admission process that is after date
of last submission, after which point the applicationwill no longer be accessible by the user.
The most important function is to make the short list of student who got admission
under the circumstances made by the college
In some cases, decisions about an application will be simple, given that the
application might be exceptionally good or exceptionally bad. If, however, an application is
similar to other, previous applications, the tutor may have a more difficult decision to make
and inconsistencies may be introduced. Using the automatic ranking of applications a tutor
will be able to see a list of applications with a similar ranking. This list will have a default
length of 5, for example, but this will be extendible if more comparisons are needed, and the
list will include applications of the same rank as well as slightly higher and lower ranks.
document from start to finish will start with a vague description and get more specific and
detailed as changing sections and reading further.
⮚ System : Multimedia PC
⮚ Processor : Intel coreI3
⮚ Memory : 2GB RAM
⮚ Hard Disk : 32GB or above
⮚ Keyboard : 104 standards
⮚ Monitor : SVGA
⮚ Network : Internet Connection/Broadband
5. SYSTEM DESIGN
The system design develops the architectural detail required to build a system or
product. As in the case of any systematic approach, this software too has undergone the best
possible design phase fine tuning all efficiency, performance and accuracy levels. The first
step in system designing is to determine how the output is to be produced and in what format.
Samples of the output and input are also presented. In the second step, input data and master
files are to be designed to meet requirement of the proposed output. The processing phases
are handled through program construction and testing, including a list of the programs needed
to meet the system’s objectives and complete documentation.
LEVEl-
1
ER-diagram
During logical design phase the analyst describes inputs (sources), out puts
(destinations), databases (data sores) and procedures (data flows) all in a format that meats
the uses requirements. The analyst also specifies the user needs and at a level that virtually
determines the information flow into and out of the system and the data resources. Here the
logical design is done through data flow diagrams and database design.
The physical design is followed by physical design or coding. Physical design
produces the working system by defining the design specifications, which tell the
programmers exactly what the candidate system must do. The programmers write the
necessary programs that accept input from the user, perform necessary processing on
accepted data through call and produce the required report on a hard copy or display it on the
screen.
6.1.2PHYSICAL DESIGN
The process of developing the program software is referred to as physical design. We
have to design the process by identifying reports and the other outputs the system will
produce. Coding the program for each module with its logic is performed in this step. Proper
software specification is also done in this step.
A software system is always divided into several sub systems that makes it easier for
the development. A software system that is structured into several subsystems makes it easy
for the development and testing. The different subsystems are known as the modules and the
process of dividing an entire system into subsystems is known as modularization or
decomposition.
A system cannot be decomposed into several subsystems in any way. There must
some logical barrier, which facilitates the separation of each module. The separation must be
simple but yet must be effective so that the development is not affected.
The system under consideration has been divided into several modules taking in
consideration the above-mentioned criteria. The different modules are
1.user module
2..administrator module
design should improve the system's relationship with the user and help in decision making.
Since the reports are directing referred by the management for taking decisions and to draw
conclusions they must be designed with almost care and the details in the reports must be
simple, descriptive and clear to the user. So while designing output the following things are to
be considered.
• Determine what information to present
• Arrange the presentation of information in an acceptable format
Depending on the nature and future use of output required, they can be displayed on
the monitor for immediate need and for obtaining the hardcopy. The options for the output
reports are given in the appendix.
record in a table. There are also fields that contain primary key from another table called
foreign keys.
6.4.1 NORMALIZATION
6.4.2 TABLES
1. ADMIN
Column Type nulll default Description
Admin_id(primary Int primarykay - Id of admin
)
Admin_name Varchar no - Name of admin
Admin_emailid Varchar no - Emil id of admin
Admin_password Varchar no - Password admin
2. FACULITY
Column Type null Default Description
3. STUDENT
Column Type null Default Description
Student_ERNO(primary int primarykay - Id student
)
Student_name Varchar no - Name of student
Student_phone no Varchar no - Phone no of
student
Student_city varchar no - City of student
Student _current sem varchar no - C sem of student
4 Course
Column Type null default Description
Course_id varchar primarykay - Id of Course
Course_name varchar No - Name of course
5. SUBJECT
Column Type null default Description
Sub_code Varchar primarykay - Sub code
Sub_name varchar no - Sub name
6. SUBJECT_DETAILS
Column type null default description
Course_id Foreign key primarykay - Course id of sub
Sub_code Varchar no - Scode of details
Sem _no Varchar No - Sem of details
Faculty_id varchar No - Faculty id details
7. FORGET_MASTER
Column Type Null default Description
Forget_id int primarykay - Question id
Forget_pwd varchar no - Question pwd
Status varchar no - Question status
7.CODING
● Uniqueness
● Meaningfulness
● Stability
● Uniform Size and Format
● Simplicity
● Conciseness
● Versatility
The goal of the coding or programming phase is to translate the design of the system
produced during the design phase into code in a given programming language, which can be
executed by a computer and that performs the computation specified by the design. The
coding phase affects both testing and maintenance profoundly. As we saw earlier, the time
spent in coding is a small percentage of the total software cost , while testing and
maintenance consume the major percentage. Thus it should be clear the goal during coding
should not be to reduce the implementation cost, but the goal should be to reduce the cost of
later phases, even if it means that the cost of this phase has to increase. In other words, the
goal during this phase is not to simplify the job of the programmer. Rather the goal should be
to simplify the job of the tester and the maintainer.
7.1.1CORRECTNESS
The tester and the maintainer are not the programmers itself. Therefore it is very
important to produce correct and simple code. The code for the proposed system is correct
and simple. Anyone who knows HTML and PHP can understand the code very easily.
7.1.2 RELIABILITY
The program must be reliable, that is, it must be execute reliably in a variety of
systems. The code for proposed system is consistent.
7.1.3 ROBUSTNESS
The robustness of the code is associated with memory management and exception
handling. Since he proposed system is developed with HTML this feature is not ensured
profoundly.
The PHP ensures development efficiency by providing compatibility with almost all
web servers used today. Extending PHP is pretty easy. It is a full-fledged development
environment consisting of a several megabytes of source code. PHP scripts are browser
neutral, the script cannot be captured via a eb browser’s ’View Source’ capabilities.
PHP is easy to learn and runs efficiently and quickly on any compatible web server.
The PHP is a parsed language. The parser which execute PHP produce the desired result as
HTML code. The code written for the proposed system consists of many PHP files which
execute on the web server and return output as HTML to the browser.
Security
PHP is a powerful language and the interpreter, whether included in a web server
as a module or executed as a separate CGI binary, is able to access files, execute
commands and open network connections on the server. These properties make anything
run on a web server insecure by default. PHP is designed specifically to be a more secure
language for writing CGI programs than Perl or C, and with correct selection of
compile-time and runtime configuration options, and proper coding practices, it can give
you exactly the combination of freedom and security you need.
As there are many different ways of utilizing PHP, there are many configuration
options controlling its behavior. A large selection of options guarantees you can use PHP
for a lot of purposes, but it also means there are combinations of these options and server
configurations that result in an insecure setup.
The configuration flexibility of PHP is equally rivaled by the code flexibility. PHP
can be used to build complete server applications, with all the power of a shell user, or it
can be used for simple server-side includes with little risk in a tightly controlled
environment. How you build that environment, and how secure it is, is largely up to the
PHP developer.
Features
PHP manages freeing all resources. Users does not required to free file handle
resource, database resources, memory, etc, unless programmer need to free resource
during script execution. All resources are released after script executionPHP4 also have
reference count feature. For example, memory for variables is shared when it assigned to
other variable. If contents have been changed, PHP4 allocate new memory for it.
Programmer does not have to use pass by reference for large parameters for better
performance with PHP4.It would be a nice section for new PHP users, if there is
"Resource Handling" section or like. Explanation about reference count feature in PHP4
would be very helpful to write better PHP4 scripts also.
7.2.3 My SQL
My SQL query () sends a unique query (multiple queries are not supported) to the
currently active database on the server that's associated with the specified link_identifier.
The query string should not end with a semicolon. If the link identifier is not specified, the
last link opened by My SQLconnection is assumed. If no such link is found, it will try to
create one as if mysql_connect () was called with no arguments. If by chance no
connection is found or established, an E_WARNING level warning is generated.
7.3OPTIMIZATION OF CODE
The ‘Online Admission system ‘ optimizes the code by using the optimization
techniques such as dead code elimination and frequency reduction. Thus improves the
execution efficiency.
7.4VALIDATION CHECKS
Validation means observing the behavior of the system. The verification and
validation means that will ensure that the output of a phase is consistent with its input and
that the output of the phase is consistent with the overall requirements of the system. The
‘College Alumni’ system performed validation by verifying the output of each phase. This is
done to ensure that it is consistent with the required output. If not we apply certain
mechanisms for repairing and thereby achieved the requirement.
The major activities in implementation plan are cost estimation, schedule andmilestone
determination, project staffing, quality control plans, and controllingand monitoring plansThe
implementation plan involves the following:
● Testing to confirm effectiveness.
● Detection and correction of errors.
The system has two modules. They are
● User
● Administrator
Students logging is to apply for the course by filling an applycation form provided by
online. College principal/administrator logging in may also access/search information put up
by the students.
If the implementation is changed from one data structure to another, the internals of
the object need to be changed, that is the data definitions and the implementation of the
operations. From the outside, the directory object can continue to be used in the same manner
as before, because its interface is not changed.
8.3 TESTING
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 of activities that work towards
the integration of entire computer 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 all the
elements in the system are tested in a planned and efficient manner. Nothing is complete
without testing, as it is vital success of the system.
There are several rules that can serve as testing objectives. They are:
A good test case is one that has a high probability of finding an undiscovered.
Unit testing is carried out screen-wise, each screen being identified as an object.
Attention is diverted to individual modules, independently to one another to locate errors.
This has enabled the detection of errors in coding and logic.
This is the first level of testing. In this, codes are written such that from one module,
we can move on to the next module according to the choice we enter.
In this, the entire system was tested as a whole with all forms, code, modules and
class modules. System testing is the stage of implementation, which is aimed at ensuring that
the system works accurately and efficiently before live operation commences. It is a series of
different tests that verifies that all system elements have been properly integrated and
perform allocated functions. System testing makes logical assumptions that if all parts of the
system are correct, the goal will be successfully achieved. Testing is the process of executing
the program with the intent of finding errors. Testing cannot show the absence of defects, it
can only show that software errors are present.
This testing strategies 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 module individually, they should work after linking them together. Data
may be lost across interface and one module can have 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 the same time,
conducting test to uncover errors associated with the interface. In the testing the programs are
contructed and tested in the small segments.
There are three different approaches to structural testing: control flow-based testing,
data flow-based testing, and mutation testing.
In black-box testing the structure of the program is not considered. Test cases are
decided solely on the basis of the requirements or specifications of the program or module,
and the internals of the module or the program are not considered for selection of test cases.
In black-box testing, the tester only knows the inputs that can be given to the system
and what output the system should give. This form of testing is also called functional or
behavioural testing.
The most obvious functional testing procedure is exhaustive testing. One criterion for
generating test cases is to generate them randomly. There are no formal rules for designing
test cases for functional testing. In fact, there are no precise criteria for selecting test cases.
Any system developed should be secured and protected against possible hazards.
Security measures are provided to prevent unauthorized access of the database at various
levels. An uninterrupted power supply should be so that the power failure or voltage
fluctuations will not erase the data in the files.
This is associated with computer failure, system crash, disk failure. Physical problems
and catastrophes refers to an endless list of problems that includes power air conditioning
failure, fire, theft, damage, overwriting disk or tape by mistake.
This security is concerned with offering security to the persons who are developing
and using the system. This is offered by providing username and password for each and every
person using the system.
11. SCREENSHOTS :
13. CONCLUSION
◦ In conclusion, we can say that this application is going to be helpful during the hard
times.
◦ This online learning platform is meant to serve students, teachers and admins to
perform the learning system seamlessly.
◦ It would give better knowledge through online videos and 3D view and more
important thing it saves money.
◦ People situated at different location can take the benefit of same course at the same
time.
14.BIBLIOGRAPHY
✔ https://www.techulator.com
✔ https://www.computer.org
✔ https://chatbotslife.com
✔ https://www.coursera.org
✔ https://www.edx.org