0% found this document useful (0 votes)
3 views

php document

The document outlines a project report for an online education system developed by a group of students as part of their BCA internship. It details the project's objectives, requirements, implementation goals, and the software development life cycle (SDLC) applied. Additionally, it includes sections on feasibility studies, project planning, and user management functionalities, emphasizing accessibility, flexibility, and quality content for learners.

Uploaded by

piud9791
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views

php document

The document outlines a project report for an online education system developed by a group of students as part of their BCA internship. It details the project's objectives, requirements, implementation goals, and the software development life cycle (SDLC) applied. Additionally, it includes sections on feasibility studies, project planning, and user management functionalities, emphasizing accessibility, flexibility, and quality content for learners.

Uploaded by

piud9791
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 36

1

Development of a feature-rich, Online Education System


A Project Report for Internship

Submitted by
1. Piu Das.
2. Trina Das.
3. Sumanta Bhattacharya.
4. Biswajit Das.
5. Namasti Biswas.

In partial fulfilment for the award of the degree of


BCA
Maulana Abul kalam Azad University of Technology, (WB)

College logo

At
Euphoria Genx
INTRENSHIP 2024
2

BONAFIDE CERTICATE
Certified that this project work was carried out under my supervision

“Development of a feature-rich, practical Online education system’’ is the


Bonafide work of

Name of the student: Piu Das. Signature:


Name of the student: Sumanta Bhattacharya.
Signature:
Name of the student: Biswajit Das. Signature:
Name of the student: Trina Das. Signature:
Name of the student: Namasti Biswas. Signature:

SIGNATURE

Name: Saumitra Das.


3

Project Mentor

Acknowledgement

I take this opportunity to express my deep gratitude and sincerest


thank to my project mentor, Mr. Saumitra Das for giving most valuable
suggestion, helpful guidance and encouragement in the execution of
this project work.

I will like to give a special mention to my colleagues. Last but not the
least I am grateful to all the faculty members of Euphoria GenX or
their support.

1. Title of the Project


2. Introduction and Objectives of the Project
3. Project Category (RDBMS/OOPS/Networking/Multimedia/Artificial
Intelligence/Expert Systems etc.)
4. Tools/Platform, Hardware and Software Requirement specifications
5. Goals of Implementation
6. SDLC Process Applied
7. Data Model
8. Functional Requirements (Use Case Diagram)
9. Non-functional Requirements
4

10. Feasibility Study


11. Project Planning
12. Project Scheduling
13. Software Engineering Paradigm applied
a. Data Flow Diagram (DFD)

14. Database design


15. User Interface Design
16. Coding
17. Testing
18. System Security measures (Implementation of security for the
project developed)
19. Database/Data security
20. Creation of User profiles and access rights
21. Cost Estimation of the Project along with Cost Estimation Model
22. Reports (sample layouts should be placed)
23. Future scope and further enhancement of the Project
24. Bibliography

1.Title of the Project


Development of a feature-rich, practical online education system
5

2. Introduction and Objectives of the Project

This project is aimed at developing an online internet knowledge mgmt. system


that is of importance to either an organization or a college. The system is an
internet based application that can be accessed throughout the organization.
This System can be used as a knowledge/information mgmt for the college.
Students logging should be able to upload any kind of technical information.
Students logging in may also access any information put up by others. Online
education should have super users for approval of documents uploaded by
others.

1. A person should be able to


• Access the information from the first page (only read access)
• Login to system through the first page of the application
• See the details (like how many reports or technical documents are submitted)
• Get help about the knowledge mgmt. system on how to use the differ features of
the system

2. An admin login should be present who can read, approve as well as remove any uploads.

Developing a user registration and login system for an online education system
requires additional considerations. This system should cater to different types of
users (e.g., students, teachers, and administrators) and integrate roles and
permissions to handle different functionalities. Below is a detailed guide for
building such a system
6

3.Registration

• Separate registration options for students and teachers


• Collect additional details (e.g., courses of interest, teaching
experience, etc.). Title of the Project
• Validate and verify data (e.g., email verification).
3. Login:

• Authenticate users and assign appropriate roles.


• Redirect users to their role-specific dashboard (e.g., students to enrolled
courses, teachers to manage courses).

4. Roles and Permissions:

• Students: Enroll in courses, view course materials, and track progress.


• Teachers: Create/manage courses, view enrolled students.
• Admins: Oversee system operations, manage users and courses.

3.Project Category
Web Application

4.Tools/Platform, Hardware and Software Requirement specifications.

Tools

1. VS Code, Browser
Platform
7

1. Microsoft Windows 10/11


Hardware Requirement Specification
Client Machine Server Machine

HDD 200 MB HDD 320 GB

Processor Pentium 4 or newer Processor Dual Core or newer


processor that processor
supports SSE2

Memory 512 MB Memory 2 GB

Software Requirement Specification


Client Machine Server Machine

Browser Any standard browser Software Apache


with
Javascript interpreter

Client side mark up / HTML, Javascript Database MySQL


scripting languages
Management System
Software

Specification MySQL 4.1

5.The implementation goals of an online education system can be summarized as:

1. Accessibility: Provide education for all learners, regardless of location or abilities.


2. Flexibility: Enable learning at any time, from anywhere, at the student’s pace.
3. Quality Content: Offer engaging and expert-created learning materials.
4. Engagement: Boost student participation with interactive tools.
5. Scalability: Ensure the platform can support a growing number of users.
6. Effective Assessment: Provide diverse tools for evaluating student progress.
8

7. Personalization: Tailor the learning experience to individual needs.


8. Affordability: Reduce costs for learners and make education more accessible.
9. Continuous Improvement: Regularly update the platform and content based on
feedback.
10. Global Reach: Support multilingual courses and international collaborations.

6. SDLC Process Applied

The SDLC diagram for an online education system includes these phases:

1. Planning: Define project scope, goals, and resources needed.


2. Requirements Analysis: Gather detailed user and system requirements.
3. Design: Create the system architecture, UI/UX design, and database schema.
4. Development: Code the backend, frontend, and integrate features.
5. Testing: Conduct various tests (unit, integration, user acceptance) to find and fix issues.
6. Deployment: Launch the system to users on production servers.
7. Maintenance: Monitor, update, and fix bugs for continuous improvement.

Often, a customer defines a set of general objectives for software but does not identify
detailed input, processing, or output requirements. In other cases, the developer may be
unsure of the efficiency of an algorithm, the adaptability of an operating system, or the form
that human/machine interaction should take. In these, and many other situations, a
prototyping paradigm may offer the best approach.
9

The prototyping paradigm begins with requirements gathering. Developer and customer
meet and define the overall objectives for the software, identify whatever requirements are
known, and outline areas where further definition is mandatory. A "quick design" then
occurs. The quick design focuses on a representation of those aspects of the software that
will be visible to the customer/user (e.g., input approaches and output formats). The quick
design leads to the

construction of a prototype. The prototype is evaluated by the customer/user and used to


refine requirements for the software to be developed. Iteration occurs as the prototype is
tuned. to satisfy the needs of the customer, while at the same time enabling the developer
to better

understand what needs to be done.. Ideally, the prototype serves as a mechanism for
identifying software requirements. If a working prototype is built, the developer attempts to
use existing program fragments or applies tools

(e.g., report generators, window managers) that enable working programs to be generated

quickly.
10

Functional Requirements of an Online Education System


1. User Management: Registration, login, and user profiles for students, instructors, and
admins.
2. Course Management: Create, edit, and manage courses with multimedia content.
3. Learning Tools: Live classes, recorded lectures, assignments, and quizzes.
4. Communication: Real-time chat, discussion forums, and notifications.
5. Payment: Secure fee processing and subscription options.
6. Assessment: Exams, grading, progress tracking, and certificates.
7. Accessibility: Mobile-friendly, multilingual support, and scalable infrastructure.
8. Admin Controls: Role-based permissions, content moderation, and system backups.
9. Integration: Support for third-party tools like Zoom or Google Classroom.
11

Use Case Descriptions


Use Case Name: Registration and Login System

Priority Essential

Trigger Menu selection

Precondition User is connected to the Internet and on the ONLINE EDU home page

Basic Path 1. User enters username and password.


2. The username and password is matched with the record in the
database.
12

3. If the authentication parameters are correct the user is directed to the


user’s main page, otherwise an error message is displayed.

Alternate Path NA

Post Condition The user is on the User Home Page

Exception Path If there is a connection failure the server returns to the wait state

Use Case Name: Admin Video Uploading

Priority Essential

Trigger Menu selection

Precondition User is connected to the Internet and on the user’s main page

Basic Path 1. User selects a document.


2. User clicks on the upload document button.
3. The server side program receives the document and saves it in the
server system’s filesystem.

Alternate Path NA

Post Condition The user uploads the document.

Exception Path If there is a connection failure the server returns to the wait state

Use Case Name: Search Our Courses

Priority Essential

Trigger Menu selection

Precondition User is connected to the Internet and on the user’s main page

Basic Path 1. User selects the browse document link.


2. The server side program returns the list of documents.
Alternate Path NA

Post Condition The user has the list of all documents.


13

Exception Path If there is a connection failure the server returns to the wait state

Non-functional requirements for an online education system define the quality attributes
and constraints of the system. Here’s a summarized list:

1. Performance Requirements:
The system should handle concurrent users efficiently without significant lag.Videos and
content should load within 2-3 seconds on average.
2.Scalability:
Ability to scale to accommodate increasing numbers of users, courses, and data.
3. Availability:
Ensure 99.9% uptime for uninterrupted learning experiences.
4.Usability
Provide an intuitive and user-friendly interface for all users.
Ensure compatibility with various devices (PCs, tablets, smartphones).
5. Security
Implement secure login, data encryption, and protection against unauthorized access.
Ensure safe payment processing for course purchases.
6. Reliability
The system should recover quickly from failures and minimize data loss.
7. Maintainability
Allow for easy updates, bug fixes, and integration of new features.
8. Compliance
Adhere to relevant legal, educational, and data protection standards (e.g., GDPR).
9. Portability
Support deployment on multiple platforms (web, iOS, Android).
10. Accessibility
Ensure the system is accessible to users with disabilities, adhering to WCAG guidelines.These
non-functional requirements ensure the system is robust, efficient, and user-centric.
14

A feasibility study for an online education system evaluates whether developing and
implementing the system is practical and beneficial. Here's an outline:
1. Technical Feasibility
Technology Requirements: Assess the availability of required technologies (e.g., web hosting,
Learning Management System platforms, video streaming).
Infrastructure: Evaluate servers, bandwidth, and scalability to handle user loads.
Skills and Expertise: Ensure developers, designers, and IT staff can implement and maintain
the system.
2. Economic Feasibility
Development Costs: Estimate the budget for software development, hosting, and
integrations.
Operational Costs: Include maintenance, support, and marketing expenses.
Revenue Potential: Analyze income sources (e.g., subscriptions, course purchases, ads).
Return on Investment (ROI): Compare expected profits with costs to ensure profitability.
3. Operational Feasibility
Market Demand: Assess the demand for online education in the target audience.
User Readiness: Evaluate the digital literacy of potential students and instructors.
Organizational Support: Determine if the organization can manage and sustain the system.
4. Legal and Regulatory Feasibility
Compliance: Ensure adherence to educational standards, copyright laws, and data protection
regulations like GDPR or FERPA.
Licensing: Check requirements for delivering accredited courses.
5. Schedule Feasibility
Timeline: Define a realistic development and deployment timeline.
Milestones: Plan key phases such as development, testing, and launch. 6.
Social Feasibility
User Acceptance: Gauge willingness of students and instructors to adopt the system.
Cultural Considerations: Address language, accessibility, and inclusivity.
7. Environmental Feasibility
Sustainability: Ensure the system minimizes energy consumption and supports green
practice.
15

Feasibility Study

System: online education System Date: 19 July, 2024

Author :Piu Das Page: 1

Product

The project requires a web application to be developed that will allow online
knowledge/document/paper sharing.

Technical Feasibility

The web application will be developed using PHP and MySQL. The team is competent in
that.
Social Feasibility

Some training for the users/admin are required but all users are IT literate.

Market Research

Market research says that this application would be useful for the users as it could seamlessly
help them to share documents.

Economic Feasibility

The application can be developed within budget.

Alternate Solution

Could be a desktop system but that would not allow documents to be shared online.

Project Planning for an Online Education System

Project planning involves defining the objectives, scope, timeline, and resources required to
develop and launch an online education system. Below is a structured plan:
1. Define Objectives
Provide a platform for students and instructors to interact and share knowledge. enable
course creation, enrollment, and assessments.
Support accessibility, scalability, and robust user experience.
2. Scope of the Project
16

Inclusions: User registration, course management, live sessions, discussion forums, payment
integration, and reporting features.
Exclusions: Offline content delivery, physical infrastructure for students.
Assumptions: Users have basic internet access and digital literacy.
3. Stakeholders
Internal: Project manager, developers, UX designers, testers, and administrators.
External: Instructors, students, regulatory authorities, and sponsors.
4. Work Breakdown Structure (WBS)
Phase 1: Requirements Gathering
Conduct stakeholder interviews and define functional/non-functional requirements.
Phase 2: Design
Create wireframes, user flows, and database schema.
Phase 3: Development
Build user interfaces, backend, and integrations (e.g., video conferencing, payment systems).
Phase 4: Testing
Conduct unit, system, and user acceptance testing (UAT).
Phase 5: Deployment
Host the system on servers and perform a soft launch.
Phase 6: Maintenance and Updates
Monitor performance and implement improvements.
7. Risk Management
Technical Risks: Downtime, bugs, or scalability issues.
Financial Risks: Overshooting the budget or low ROI.
User Risks: Resistance to adoption or lack of engagement.
Mitigation: Regular testing, user feedback, and contingency funds.
8. Quality Assurance
Use Agile methodologies for iterative development.
Conduct usability testing with target users.
Ensure compliance with legal and accessibility standards.
9. Communication Plan
17

Weekly progress meetings with the team.


Monthly updates to stakeholders.
Use tools like Slack, Jira, and Zoom for collaboration.
10. Deliverables
Fully functional online education platform.
Documentation for users, admins, and developers.
Post-launch support and analytics.

This plan can be tailored based on specific project needs and available resources. 12.

Project Scheduling

13.Software Engineering Paradigm Applied Data Flow Diagrams


18
19
20

LEVEL1 for ADMIN


21
22

14.Schema/Database Design(project) Table


Name admin:-
Name of Type Data Type Key Description
Attribute

id Int(11) Primary key Admin id


23

Username Varchar(200) Admin first name

Middlename Varchar(200) Admin middle name

lastname Varchar(200) Admin last name

email Varchar(30) Admin email

pwd Varchar(30) Admin password

dob Varchar(10) Admin date of birth

gender Varchar(10) Admin gender

squestion Varchar(40) Admin question

ans Varchar(30) Admin ans

Table Name Student Comments-

Column Data Type Constraints Description


Name
CommentID int PRIMARY Unique identifier
for each comment
KEY,AUTOINCREMEN
T

Student ID INT FOREIGN(Stu dent References the


ID) student making
the comment
24

Course ID INT FOREIGN (Optional)Refere


KEY(Course e nces the
ID) instructor, if
applicable

Commentext TEXT NOT NULL The text content


of the student
comment

Timestamp DATETIME DEFAULT The time the


CURRENT- comment was
TIMESTAMP created

ParentComm INT FOREIGN KEY (Optional)Allows


e nested/reply
ntID comments

Status ENUM(‘active’,’de Default Status of


l eted’) the
‘active’
comment

Admin Video Uploading System-


Video Id Data Type Constraints Description

Video Id INT PRIMARY KEY, Unique


AUTO identifier
INCREMENT for each
video
25

Admin Id int Foreign key Refences


the
administra
tor who
upload the
video

Course ID VARCHAR(255) Not Null Title of the


video

Descriptio Text NULL Optional


n
description
of the
video

Video Url VARCHAR(2083) NOT NULL The url or


file path to
acces the
video

Thumbnail VARCHAR(O283) NULL Option al


url URL for the

videos
thumb nail
image
26

UploadDat DATETIME DEFAULTCURRE The date


and time
e NT-TIMESTAMP
the video
was
uploaded

Duration TIME NULL Duration of


the video

Visibility ENUM(‘PUBLIC’,PRIVATE’) DEFAULT public Visibility


setting for
the video

Status ENUM(‘active’,’archive’,del Default ‘active’ Status


eted’) of
the video

User Interface Design

Home page
27
28
29

TESTING
30

a.Organize Project involves creating a System Test Plan, Schedule & Test Approach, and assigning
responsibilities.
b.

Design/Build System Test involves identifying Test Cycles, Test Cases, Entrance & Exit Criteria,
Expected Results, etc. In general, test conditions/expected results will be identified by the Test
Team in conjunction with the Development Team. The Test Team will then identify Test Cases
and the Data required. The Test conditions are derived from the Program Specifications
Document.
a. c.

Design/Build Test Procedures includes setting up procedures such as Error Management


systems and Status reporting.
b. d.

Build Test Environment includes requesting/building hardware, software and data set-ups. c.
e.

Execute System Tests – The tests identified in the Design/Build Test Procedures will be
executed. All results will be documented and Bug Report Forms filled out and given to the
Development Team as necessary.
d. f.

Signoff - Signoff happens when all pre-defined exit criteria have been achieved. e.

f.
g. Testing Strategy
h.
i. The following outlines the types of testing that will be done for unit, integration, and system
testing. While it includes what will be tested, the specific use cases that determine how the
testing is done will be detailed in the Test Design Document. The test cases that will be used
for designing use cases is shown in Figure 2.1 and onwards.

j.
31

k. Test Cases
l.

Tested By: Piu Das.

Test Type Unit Testing

Test Case Number 1

Test Case Name User Identification

Test Case Description The user should enter his/ her accurate userid and password so that
he/she can able to go for the further options. The test case will check
the application for the same since a user can only login with the correct
userid , password.

Item(s) to be tested

1 Verification of the userid and password with the record in the database.

Specifications

Expected
Output/Result
Input

1) Correct User id and password 1) Successful login

2) Failure Message
2) Incorrect Id or Password
32

Tested By:

Test Type Unit Testing

Test Case Number 2

Test Case Name Submit Document

Test Case Description The User submit document. For document submission the must
login.

Item(s) to be tested

1 Check whether the user id logged in.

2 Check if the user has selected a document and the size of that is < 5 MB.

Specifications

Expected

Input Output/Result

1) Trying to submit document without logging 1) The user is redirected to the login page.
in. 2) A message asks the user to select a
2) Check whether document is selected. document.
3) Check whether the size of the document is 3) Return an error message.
< 5 MB.
33

Unit Testing

Unit Testing is done at the source or code level for language-specific programming errors such as bad
syntax, logic errors, or to test particular functions or code modules. The unit test cases shall be
designed to test the validity of the programs correctness.

White Box Testing

In white box testing, the UI is bypassed. Inputs and outputs are tested directly at the code level and
the results are compared against specifications. This form of testing ignores the function of the
program under test and will focus only on its code and the structure of that code. Test case designers
shall generate cases that not only cause each condition to take on all possible values at least once, but
that cause each such condition to be executed at least once. To ensure this happens, we will be
applying Branch Testing. Because the functionality of the program is relatively simple, this method will
be feasible to apply.

Each function of the binary tree repository is executed independently; therefore, a program flow for
each function has been derived from the code.

Black Box Testing

Black box testing typically involves running through every possible input to verify that it results in the
right outputs using the software as an end-user would. We have decided to perform Equivalence
Partitioning and Boundary Value Analysis testing on our application.

System Testing

The goals of system testing are to detect faults that can only be exposed by testing the entire integrated
system or some major part of it. Generally, system testing is mainly concerned with areas such as
performance, security, validation, load/stress, and configuration sensitivity. But in our case well focus
only on function validation and performance. And in both cases we will use the black-box method of
testing
34

19. System Security measures (Implementation of security for the project


developed)

• Only authorized users are allowed.


• Without signing in users are not allowed to go an intermediate page by typing an URL. For all
such efforts, users will be redirected to the home page.

20. Database/Data security

• Database is present in remote machine.


• Oracle’s default securities are applied.

21. Creation of User profiles and access rights

• The admin must create users manually


• The admin can create more admins

22. Cost Estimation of the Project along with Cost Estimation Model

Analogous estimate of effort or cost

Used for Early Estimate or Individual Activity Estimate

Sample example shown below is for two major deliverables of a software project. You use a previous
project as a benchmark for analogous estimation. Using your experience you will estimate a multiplier.

Multipliers:

1. Prototyping: 0.75.
2. Testing: 0.5
3. Deployment: 0.5

Finally, if you want to convert to cost, you would use current rates for the resource.
35

WBS Previous Previous Current Multiplier Effort Cost (Rs.


500/hr.)
ID
Similar Project Effort Project (Previous
Effort *
Activity Estimate
0.75)

1 Prototyping 40 Work- Prototyping 0.75 30 Rs. 15000/-


Workhours
Hours

2 Testing 20 Work- Testing 0.50 10 Work- Rs. 5000/-


Hours Hours

Total 40 Work- Rs. 20000/-


Hours

Note: Effort is also called Size and unit of estimation is called either Work-Hour, person-hours.

23. Future scope and further enhancement of the Project

ONLINE EDU has lot of enhancement options. In future documents may be classified category-wise. It
may try to analyze the user behavior and preferences and accordingly suggest document categories.
AI concepts be applied to make ONLINE EDU intelligent.

In future we will be able to upload any files other than pdf and it will be password encrypted. We will
be able to upload, download video tutorial.
36

24. Bibliography

1. Roger S. Pressman. Software Engineering: A Practioner's Approach (Sixth Edition, International


Edition). McGraw-Hill, 2005.
2. Ian Sommerville. Software Engineering (Seventh Edition). Addison-Wesley, 2004.
3. Frederick P. Brooks. The Mythical Man-Month: Essays on Software Engineering, Anniversary
Edition. Addison-Wesley Pub Co; 1st edition (August 2, 1995).

4. Introducing HTML5 by Bruce Lawson,Remy Sharp.


5. HTML5 for Web Designer by Jeremy Keith.
6. HTML for World Wide Web(Visual Quick Start Guide) by Elizabeth Castro.
7. HTML5 Up And Running by Mark Pilgrim.
8. The Definitive Guide To HTML5 by Adam Freeman.
9. Pro HTML5 Programing:Powerful APIs for RcherInternet Aplication Development by Peter
Lubbers.

10. Dynamic HTML:The Definitive Reference by Danny Godman.


11. CSS:Definitive Guide by Eric.A.Mayer.
12. CSS Cook Book by Christopher Schmitt.
13. CSS:Missing Manual by David Sawyer Mcfarland.
14. CSS Mastery:Advance Web Standard Sollution by Andy Budd, CameronMoll, Simon Collision.
15. CSS Anthology by Rachel Andrew.
16.Hancrafted CSS:More Bulletproof Web Design/Bulletproof Essentialsby Dan Caderholm,
EthanMarcotte.
17. Programing PHP by RasmusLardoff, KevinTatroe, PeterMacIntyre.
18. PHP Cook Book by Adam Trachtenberg, DavidSkalar.
19. Essential PHP Security by Chris Shifflett, NathanTorkington, Tatiana Diaz.
20. Professional PHP Programing by SaschaSchumann, HarishRawat, JesusCastagnetto.
21. PHP Object, Patterns, And Practice by Matt Zandstra.

22. Database System Concepts by Abraham Silverchatz, Henry. F. Korth, S.Sudarshan

You might also like