php document
php document
Submitted by
1. Piu Das.
2. Trina Das.
3. Sumanta Bhattacharya.
4. Biswajit Das.
5. Namasti Biswas.
College logo
At
Euphoria Genx
INTRENSHIP 2024
2
BONAFIDE CERTICATE
Certified that this project work was carried out under my supervision
SIGNATURE
Project Mentor
Acknowledgement
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.
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
3.Project Category
Web Application
Tools
1. VS Code, Browser
Platform
7
The SDLC diagram for an online education system includes these phases:
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
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
Priority Essential
Precondition User is connected to the Internet and on the ONLINE EDU home page
Alternate Path NA
Exception Path If there is a connection failure the server returns to the wait state
Priority Essential
Precondition User is connected to the Internet and on the user’s main page
Alternate Path NA
Exception Path If there is a connection failure the server returns to the wait state
Priority Essential
Precondition User is connected to the Internet and on the user’s main page
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
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
Alternate Solution
Could be a desktop system but that would not allow documents to be shared online.
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
This plan can be tailored based on specific project needs and available resources. 12.
Project Scheduling
videos
thumb nail
image
26
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.
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.
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
2) Failure Message
2) Incorrect Id or Password
32
Tested By:
Test Case Description The User submit document. For document submission the must
login.
Item(s) to be tested
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.
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 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
22. Cost Estimation of the Project along with Cost Estimation Model
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
Note: Effort is also called Size and unit of estimation is called either Work-Hour, person-hours.
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