


PHP - BCA Practical
PHP - BCA All Practical
- Practical 1 : Write a PHP Program To Print Hello Message Print Hello Message
- Practical 2 : Write a Java Script Code For Take Different Control on Web Form like Textbox or Button
- Practical 3 : Write a JavaScript Code for take two textbox ,one button and enter value into text box if textbox is null then print message �Enter the Text�
- Practical 6 : Write a PHP program for print �Hello World�
- Practical 7 : Write a PHP program which is define different variable
- Practical 10 : Write a PHP program for print variable value into text box.
- Practical 11 : Write a PHP program for check given number is positive or negative or zero
- Practical 12 : Write a PHP program which is execute SWITCH statement
- Practical 13 : Write a PHP program which is execute while and do. while loop
- Practical 14 : Write a PHP program which excite with the for loop
- Practical 15 : Write a PHP program for take array variable and enter the value
- Practical 16 : Write a PHP program for crate a user define function.
- Practical 17 : Write a PHP program which is define different variable function
- Practical 18 : Write a PHP program for set cookies
- Practical 19 : Write a PHP program for connection with My Sql.
- Practical 20 : Write a PHP Program for Add Record into Database
- Practical 21 : Write a PHP program for search record from the Database
- Practical 22 : Write a PHP program for delete , update record from the database
- Practical 23 : Write a PHP program for display all record from the database
- Practical 24 : Write a PHP program for create CSS file
- Practical 25 : Write a PHP program for the user the CSS file
E-Commerce Project
Create E-Commerce Project in php
Step: 1 create database name shopping_db
Step: 2 Create Table
- registration :-
category:-
sub_category :-
product_master :-
order_master :-
order_detail :-
contact :-
country :-
state:-
city :-
Step: 3 Download Template Here : Gentallela Alela :-
Set template in your projectStep: 4 Create Php page :
- header.php
- footer.php
- login.php
- logout.php
- forgot_pass.php
- change_pass.php
- city_list.php
- city_entry.php
- master_list.php
Online Examination System
Online
Examination System fulfill the requirements of the institutes to
conduct the exams online. It saves time as it allows number of students
to give the exam at a time and display the results as the test gets
over, so no need to wait for the result. It is automatically generated
by the server.
Project Documentation Of Online Examination System
1. Acknowledgment
We hereby take this opportunity to thank everyone who has directly or indirectly helped us in preparing our project on “Online Examination System”.
First and foremost thanks to our Director (HOD Name) keeping
this project in my term work and giving me a chance to show my caliber
and talents. He has been a major source of inspiration and advice for
me.
I
am also very much thankful to our professors and all other technical
and office staff member who have proved to be a constant motivation for
the knowledge acquisition and moral support during MCA curriculum.
Last
but not least my heartily thanks is to my friends and batch-mates, who
have provided me with innumerable discussions on many technicalities and
friendly tips. Without their cordial and friendly support, this
activity would have been much tougher.
I
would once again like to express my heartiest gratitude to my family
who has always guided us towards the path of success and all those
persons who have directly or indirectly helped me in making this project
work successful.
Our sincere regards to respect ( Internal Guide Name ) whose
depth of knowledge and encouragement led to the completion of this
project successfully. We hope you would undoubtedly find the matter
interesting and informative as well. At last thanks to all readers for
their keen interest in our work.
Your Faithfully,
(Student Name - 1)
(Student Name - 2)
2. Abstract
The
online examination is mainly designed to reduce the human effort in
checking exam papers and also save lots of paper material so this
project also belongs to the message of “save trees”. This project does
assessment of students by conducting objection tests online. The test
would be highly customizable and user friendly. The institutes can
generate test and post questions and can see automatically generated
result by individual candidates.
This website allows candidates to select the exam from exam list which
he/she wants to conduct. Admin can post exam and question papers and
also save answers for those questions. It would enable educational
institutes to perform quiz, tests and feedback forms. The institute and
student or candidate can see their past exams and analyze the result.
The result would show question paper, total questions , total attempted
question and total true answers out of attempted questions of individual
candidate.
To subscribe for exam, the candidate is required to register first then
login into the website and after login into the websitehe/she will have
to buy an exam which he/she wants to conduct. The candidate must have
sufficient balance in his/her account for give the exam. If candidate
has not sufficient balance then he/she must have to pay money through
paypal. The candidate can buy exams from available balance. This website
would be used to check your knowledge about particular subject.
The
main objective of online exam simulator is to efficiently evaluate the
candidate thoroughly through a fully automated system that not only
saves lot of time but also gives fast results. For students they give
papers according to their convenience and time and there is no need of
using extra thing like paper, pen etc.
3. Project Profile
Project Title | Online Examination System |
Project Definition | Online Exams Systemfulfill the requirements of the institutes to conduct the exams online. It saves time as it allows number of students to give the exam at a time and display the results as the test gets over, so no need to wait for the result. It is automatically generated by the server. |
Developed for | Company Name |
External Project Guide | Faculty Name |
Internal Project Guide | Faculty Name |
Team Size | 2 Member. |
Team Members | Student Name 1Student Name 2 |
Hardware Configuration | CPU, RAM, Hard Disk, Display. |
Front End | PHP with apache2.i server, Jquery, Javascript |
Back End | MYSQL Server |
Operation System | Windows 7 |
Project Duration | 6 Month |
4. Existing System Study
- Examination is necessary for any College or Institute for Mapping the Student Abilities, so currently the students have to give exam on their college campus only.
- The whole work done manually, so they want upgrades their System. So they can make it more users friendly and faster.
- It contains more Paper work.
- It is very time consuming process.
- Existing system have more work load.
5.Need for the New System
- The new system is needed because the whole exiting system work is totally manually and the strength of the student is increases day to day and work became very tedious and hard to maintain, so the need is arises for the new system.
- These new system main Goal is that not to give in their college if may be anywhere of their predefined center.
- The Student Complain for the late Result so that problem can also be solved.
- Faculty work for the Paper Checking is also reducing.
- Maintain confidentiality and avoid paper leaks.
6.Functional Specification
6.1 Introduction
6.1.1 Purpose
- The
main purpose of online exam simulator is to efficiently evaluate the
candidate through a fully automated system that not only saves lot of
time but also gives fast results. For students they give papers
according to their convenience and time and there is no need of using
extra thing like paper, pen etc.
6.1.2 Scope
- This project would be very useful for educational institutes where regular evaluation of student’s is required. Further it can also be useful for anyone who requires feedback based on objective type responses. Scope of this project is very broad in terms of other manually taking exams.
- Few of them are:-
- This Web Application provides facility to conduct online examination world-wide.
- It saves time as it allows number of students to give the exam at a time and displays the results as the test gets over, so no need to wait for the result. It is automatically generated by the server.
- This can be used in educational institutions as well as in corporate world.
- Can be used anywhere any time as it is a web based application(user Location doesn’t matter).
- No restriction that examiner has to be present when the candidate takes the test.
6.2 General Description
6.2.1 Function Description
- Exam
- Add, Update, Delete, and View Exam.
- Test
- Add, Update, Delete, and View Test.
- Subject
- Add, Update, Delete, and View Subject.
- Report
- View Reports According To Date,Exam Name,Balance.
6.2.2 User Characteristics
- Administrator
- Administrator is the Core part of the System.
- Administrator First Login and see the registered student detail.
- Administrator have all the rights for any Operation like add Exam,Subject,Test And upload paper.
- Administrator can also edit and delete exam,test and subject.
- Administrator can see the Student balance.
- Administrator can also view the student result report.
- He can change his password.
7. Hardware & Software Specification
7.1 Hardware requirement (Recommended)
Server Side | |
CPU | Intel P4 or above. |
RAM | 256 MB or more. |
HARD DISK | 2 GB (Min). |
DISPLAY | 16bit color with 1280 X 800 resolution. |
Client Side | |
CPU | Intel P4 or above |
RAM | 128 MB(min) or more. |
DISPLAY | 16bit color with 1024 X 768 resolution |
7.2 Software Requirement
Server Side | |
Web server software | Apache Tomcat |
Server side scripting tools | PHP |
Database tools | Mysql |
Compatible operating system | Linux, windows with IIS |
Client Side |
Web browser supporting JavaScript, Enable cookies |
7. Detailed Design
7.1 Structure Chart (Hierarchical diagram)
7.2 Data Dictionary
The
data dictionary of any system is an integral component of structure
analysis, since data flow diagrams by themselves do not fully describe
the subject under investigation about the system.
A
data dictionary is a catalogue – a repository – of the elements in the
system. These elements center on data and the way they are structured to
meet user requirements and college needs of an employee. This step of
creating a data dictionary is simultaneous with the process of making
data flow diagram(s). Here all the data fields in their respective
tables are allotted so as to access these data in the system. Here in
the Online Examination System we are using tables created in MYSQL as
it is the back-end tool used in the system.
The
data dictionary consists of different major elements like Data
Elements, Data Store [Tables Used], Data Flow, Processes and other
External entities used in the system. The data dictionary stores details
and description of these elements.
It
is developed during data flow analysis and assists the analysts
involved in determining the system requirements. Analysts use data
dictionary for the following important reasons:
- To manage the details in large system.
- To communicate a common meaning for all system elements.
- To document the features of the system.
- To facilitate analysis of the details in order to evaluate the characteristics and determine where system changes should be made.
- To locate errors and omissions in the system.
The data dictionary contains different types of descriptions for the data flowing through the system:
Data Elements
is the most fundamental level which is also considered as the building
block for all other data in the system. It refers to all the different
data used like fields, data item, etc. to make the system fully
functional irrespective to the table used in the system. Here all the
different type of fields used to make table are written sequentially
without referring to the tables. This process helps in the process of Normalization of tables.
Next to Data Elements comes the Data storage which
provides the information of where and how each data element is stored
in which table and it also give information of any constraints if there.
This step also gives knowledge of different data types used for
different field and their size. All the normalized tables are showed in
data storage.
Data Flow
stage shows the flow of data in the system. This step is can be already
seen in the data flow diagrams above in this document. This step refers
to all the data flow paths were transactions are done in the
computerized system.
The data flow step also includes different processes used in the system and it is followed by External Entities used in the system.
1) Student_master :-
Primary Key:-Stud_Id
Foreign Key:-City_id,State_id,Country_id
Description:-Store the information about the Student Registration.
Field | Data Type | Length | Constraint | Description |
Stud_id | Varchar | 5 | P.K | Id of student |
First_name | Varchar | 15 | Not null | Contain First Name of Student. |
Middle_name | Varchar | 15 | Not null | Contain Middle Name of Student |
Last_name | Varchar | 15 | Not null | Contain Last Name of Student . |
Birth_date | Date/time | - | Not null | Contain Birth date. |
Gender | Varchar | 1 | Not null | Gender of Student |
Mobile | Integer | 10 | Not null | Contain Student mobile Number. |
Varchar | 35 | Not null | Contain Student E-mail Address. | |
Password | Varchar | 15 | Not null | Contain Student Password. |
Pwd_Question | Varchar | 30 | Not null | Contain password hint Question. |
Pwd_Answer | Varchar | 15 | Not null | Contain password hint Answer. |
Address | Varchar | 50 | Not null | Contain Student Address |
Country_id | Varchar | 5 | F.K | Country of Student. |
State_id | Varchar | 5 | F.K | State of Student |
City_id | Varchar | 5 | F.K | City of Student |
Pin_code | Integer | 6 | Not null | Student pin code. |
Institute | Varchar | 50 | Not null | Contain institute name. |
lastDegree | Varchar | 15 | Not null | Contain Student last pass out degree |
Degreeyear | Varchar | 15 | Not null | Contain Student last pass out degree year |
Degreepercentage | Varchar | 15 | Not null | Contain Student last pass out degree percentage |
Amount | double | (7,2) | Not null | Balance of student |
Reg_date | Date | Not null | Registration date of student |
2) Exam_master :-
Primary Key :Exam_Id
Description :-Store the information about Exam.
Field | Data Type | Length | Constraint | Description |
Exam_id | Varchar | 5 | P.K | Contain Exam id |
Exam_name | Varchar | 10 | Not null | Contain Exam Name. |
Desc | Varchar | 25 | Not null | Contain Exam Description |
Fees | Double | (7,2) | Not null | Contain Fees of Exam. |
Marks | Integer | 3 | Not null | Contain Total Marks of exam. |
Maxtime | Integer | 3 | Not null | Contain Time of Exam. |
addeddate | Date/time | - | Not null | Define Date of Exam. |
3) Exam_test_master:-
Primary Key : Test_Id
ForeginKey : Exam_Id
Description :-Store the information about test.
Field | Data Type | Length | Constraint | Description |
Test_id | Varchar | 5 | P.K | Contain Test Id. |
Exam_id | Varchar | 5 | F.K | Contain Exam Id. |
Test | Varchar | 5 | Not null | Exam Test Name. |
Descr | varchar | 25 | Not null | Description of Test. |
Marks | Integer | 3 | Not null | Total Number of Marks. |
Maxtime | Integer | 3 | Not null | Maximum Time. |
Status | Varchar | 8 | Not null | Status of Test |
4) Subject_master:-
Primary Key :Subject_Id
Description :-Store Detail of Subject
Field | Data Type | Length | Constraint | Description |
Subject_id | Varchar | 5 | P.K | Contain Subject Id. |
Subject_name | Varchar | 30 | Not null | Contain Subject Name. |
Desc | Text | 50 | Not null | Contain Description of subject. |
5)Exam_test_subject :
Primary key :Est_id
Foreign Key :Test_id,Exam_id.,subject_id
Description :-Store the information about the Subject Exam.
Field | Data Type | Length | Constraint | Description |
Ets_id | Varchar | 5 | P.K | Contain Paper id |
Subject_id | Varchar | 5 | FK | Contain Subject Id. |
Exam_id | Varchar | 5 | F.K | Contain Exam Id. |
Test_id | Varchar | 5 | F.K | Contain Test Id. |
Marks | Integer | 3 | Not null | Total Marks of subject. |
Question | Varchar | 300 | Not null | Contain Location Of PDF file. |
True_ans | Varchar | 50 | Not null | Answer of Question. |
6) Pwd_question:-
Primary Key :question_Id
Description :-Store the information about forgot password question.
Field | Data Type | Length | Constraint | Description |
question_id | Varchar | 5 | P.K | Contain question Id. |
Question | varchar | 100 | Not null | Contain Question. |
7) Student_exam_test:-
Primary Key :Test_Id
ForeginKey :Exam_Id
Description :-Store the information about Exam subject
Field | Data Type | Length | Constraint | Description |
Studentexam_id | Varchar | 3 | P.K | Contain student exam Id. |
Ets_id | Varchar | 5 | F.K | Contain exam Id. |
True_ans | Integer | 3 | Not null | Total True Answer. |
Start_time | Datetime | Not null | Exam Start Time. | |
Time_taken | Datetime | Not null | Time Taken by student to complete the test. | |
Started_date | Datetime | Not null | Date of Exam. | |
Total_Question | Integer | 3 | Not null | Total Number of Question. |
Attended | Integer | 4 | Not null | Number of question attended by student. |
Stud_marks | Varchar | 3 | Not null | Marks of student |
Answer | Varchar | 3 | Not null | Answer attended by student. |
8) Inquiry:-
Description :-Store Information of Inquiry.
Field | Data Type | Length | Constraint | Description |
Name | Varchar | 15 | Not null | Name of Person. |
Varchar | 35 | Not null | Contain Email. | |
Phone | Varchar | 10 | Not null | Contain Phone Number. |
Country | Varchar | 5 | Not null | Define Country id. |
Enquery | Varchar | 100 | Not null | Query of user. |
Adddate | Datetime | - | Not null | Contain Date. |
9) Payment:-
Primary Key: Payment_ id
Foreign Key :Stud_id
Description :-Store the Information about Student Account.
Field | Data Type | Length | Constraint | Description |
Payment_id | Varchar | 20 | P.K | Contain Payment Id. |
Stud_id | Integer | 5 | F.K | Contain Student Id. |
Amount | Double | (6,2) | Not null | Contain Total Amount. |
Status | Varchar | 10 | Not null | Display Account Status. |
Transdate | Date/time | - | Not null | Date of Transaction. |
10)Admin:-
Primary Key:-username
Description :-Store Detail of Admin.
Field | Data Type | Length | Constraint | Description |
Username | Varchar | 25 | P.K | Admin Username. |
Password | Varchar | 10 | Not null | Admin Password. |
11) Country:-
Primary Key :Country_Id
Description :-Store the Country Detatil.
Field | Data Type | Length | Constraint | Description |
Country_id | Varchar | 5 | P.K | Id of Country |
Country_name | Varchar | 15 | Not null | Name of country |
12)State:-
Primary Key :State_Id
Foreign Key :Country_id
Description :-Store the State Details
Field | Data Type | Length | Constraint | Description |
State_id | Varchar | 5 | P.K | Id of State |
State_name | Varchar | 15 | Not null | Name of State |
Country_id | Varchar | 5 | F.K | Code of country |
13) City:-
Primary Key :City_Id
Foreign Key :State_id,Country_id
Description :-Store Detail of city.
Field | Data Type | Length | Constraint | Description |
City_id | Varchar | 5 | P.K | Id of City |
City name | Varchar | 15 | Not null | Name of City |
Country_id | Varchar | 5 | F.K | Code of Country |
State_id | Varchar | 5 | F.K | Code of State |
9. UML Diagram
- The UML Is a Language
A
language provides a vocabulary and the rules for combining words in
that vocabulary for thepurpose of communication. A modelinglanguage is a
language whose vocabulary and rulesfocus on the conceptual and physical
representation of a system. A modeling language such asthe UML is thus a
standard language for software blueprints.
9.1 Class Diagram
What is class diagram?
A class diagramshows
a set of classes, interfaces, and collaborations and their
relationships. These diagrams are the most common diagram found in
modeling object-oriented systems. Class diagrams address the static
design view of a system. Class diagrams that include active classes
address the static process view of a system.
A
class diagram is a picture for describing generic descriptions of
possible systems. Class diagrams and collaboration diagrams are
alternate representations of object models. Class diagrams contain
classes and object diagrams contain objects, but it is possible to mix
classes and objects when dealing with various kinds of metadata, so the
separation is not rigid we applied that concepts over here. In Automated
Test Case Generator the class diagram depicts the way classes are
interrelated to one another and dependency among the class with their
attributes towards them. The relationship among them depicts the way
they are interlinked with each other. So the Class diagram plays an
important role in sequence diagram as the function of class diagram is
used in sequence diagram.
9.2 Use Case Diagram
A use case diagram is “a diagram that shows the relationships among actors and use cases within a system.” Use case diagrams are often used to:
- Provide an overview of all or part of the usage requirements for a system or organization in the form of an essential model or a business model.
- Communicate the scope of a development project.
- Model your analysis of your usage requirements in the form of a system use case
A
use case model is comprised of one or more use case diagrams and any
supporting documentation such as use case specifications and actor
definitions. Within most use case models the use case specifications
tend to be the primary artifact with use case diagrams filling a
supporting role as the “glue” that keeps your requirements model
together. Use case models should be developed from the point of view of
your project stakeholders and not from the (often technical) point of
view of developers.
- Use-case diagrams depict:
- Use cases.
- System boundary boxes (optional).
- Packages (optional).
A sequence diagram
shows elements as they interact over time, showing an interaction or
interaction instance. Sequence diagram are organized along two axes:
horizontal axis shows the elements that are involved in the interaction
and the vertical axis represents time proceeding down the page.
Object
interaction diagram includes the activity diagrams which are used to
document workflows in a system, from the business level down to the
operational level. Activity diagram is a variation in the state diagram
where the “states” represent operations, and the transitions represent
the activities that happen when the operation is complete.
Graphical Notation
- Activity States
Activity states mark an action by an object. The notation for these states is rounded rectangles.
- Transition
When an activity state is completed, processing moves to another Activity state. Transitions are used to mark this movement.
- Initial state
The
initial state marks the entry point and the initial Activity state. The
notation for the initial state is a solid circle. There can be only
one initial state in a diagram.
- Final State
Final
states mark the end of the modeled workflow. There can be multiple
final States on a diagram and these states are modeled using a solid
circle surrounded by another circle.
Activity Diagram (Admin )
Activity Diagram(Student)
9.5 State Diagram
State Diagram(Admin)
State Diagram(Student)
9.6 Deployment Diagram
Deployment
modeling is a specialized type of structure modeling concerned with
modeling the implementation environment of a system. In contrast to
modeling the component of a system, a deployment model shows you the
external resources that those components require.
10. Input & Output Design
10.1 Input Design
The quality of system input determines the quality of system output.
- To design forms that people find useful, four guidelines for form design should be observed:
- Make forms easy to fill in.
- Ensure that forms meet the purpose for which they are designed.
- Design forms to ensure accurate completion.
- Keep forms attractive.
The four guidelines for display design are important but not exhaustive.
- Keep the display simple.
- Keep the display presentation consistent.
- Facilitate user movement among display screens and pages.
- Create an attractive and pleasing display.
- Home Page
Description:
This form display the home page. It will display when user visit the site
Student Registration
Description:
This Page allows new User to Get Registered on the site for the first time.
Input:
User details, Personal information.
Purpose:
To get Registered on the site.
Next Page:
Redirect on “ Successfully Registration” page.
- Successfully Registration
- Description:
This Page display after successfully Student Registration.
- Student Forgot Password
- Description:
This form Help to know the login Detail When Student Forgot Password.
Input:
Student Email id, Security Question, Security Answer.
Purpose:
To get forgot password back
- Student Login
Description:
This Page used student to login in the system .
Input:
Student Email id, password.
Purpose:
To login into the system.
Next Page:
Redirect on “ student area” page.
- Student Login Successful.
- Description:
This Page display that student have no balance in his/her account to give exam.
- Student See the Exam list.
- Description:
This Page display the exam list and pay money option to the student to pay money.
Input:
Student has to click on the pay money button.
Purpose:
To pay money for give the exam.
Next Page:
Redirect on “ add money” page.
10. Implementation Methodology
When
the Implementation Phase concludes, the system begins operating and
continues to do so until the organization determines it has outlived its
usefulness and starts planning for a replacement system. The approval
of the Implementation Phase deliverables and the completion of the
Implementation project status review, and the execution of project
close-out activities, signify the end of the Implementation Phase.
When
implementing a new system the method of changeover also has to be taken
into account. Possible options include direct, phased, pilot, and
parallel, although the decision is dependent upon cost, speed of
changeover, and ability to risk disruption to staff and productivity.
Here, I amuses Online Examination Systemfor implementing front-end and back-end
10.1 Front End Description:-
PHP:
- PHP is the Web development language written by and Web developers. PHP stands for PHP: Hypertext Preprocessor. The product was originally named Personal Home Page Tools,
- PHP is server-side scripting language, which can be embedded in HTML or used as a standalone binary. Some tech journalists used to call PHP “the open source ASP” because its functionality is similar to the Microsoft product
- You can use PHP to add common headers and footers to all the pages on a site or to store form-submitted data in a database. Strictly speaking, PHP has little to do with layout, events, on the fly DOM manipulation, or really anything about what a Web page looks and sounds like. In fact, most of what PHP does is invisible to the end user.
- Someone looking at a PHP page will not necessarily be able to tell that it was not written purely in HTML, because the result of PHP is HTML.
- PHP is an official module of Apache HTTP Server, the market-leading free Web server that runs about 67% of the World Wide Web. This means that the PHP scripting engine can be built into the Web server itself, leading to faster processing, more efficient memory allocation, and greatly simplified maintenance.
- Like Apache server, PHP is fully cross-platform, meaning it runs native on several flavors of UNIX, as well as on Windows and now on Mac OS X. All projects under the aegis of the Apache Software Foundation including PHP -- are open source software.PHP support large number of protocols such as POP3, IMAP and LDAP.
JavaScript:
JavaScript
is used in millions of Web pages to improve the design, validate forms,
and much more. JavaScript was developed by Netscape and is the most
popular scripting language on the internet.
The JavaScript language was developed by Netscape Communications
Corporation as an extension of the Hypertext Mark-up Language (HTML) to
facilitate the development of interactive, full-featured applications on
the World Wide Web. JavaScript statements are embedded in an HTML page
and run directly as interpreted commands within the Web Client or on the
Web Server. You can write JavaScript just like HTML code using a simple
text editor.
- JavaScript was designed to add interactivity to HTML pages.
- JavaScript is a scripting language – that is a scripting language is a lightweight programming language.
- A JavaScript is lines of executable computer code.
- A JavaScript is usually embedded directly in HTML pages.
- JavaScript is an interpreted language (means that scripts execute without preliminary compilation).
- Everyone can use JavaScript without purchasing a license.
- JavaScript is supported by all major browsers, like Netscape and Internet Explorer.
- JavaScript gives HTML designers a programming tool - HTML authors are normally not programmers, but JavaScript is a scripting language with a very simple syntax! Almost anyone can put small "snippets" of code into their HTML pages.
- JavaScript can put dynamic text into an HTML page - A JavaScript statement like this: document. write ("<h1>" + name + "</h1>") can write a variable text into an HTML page.
- JavaScript can react to events - A JavaScript can be set to execute when something happens, like when a page has finished loading or when a user clicks on an HTML element.
- JavaScript can read and write HTML elements - A JavaScript can read and change the content of an HTML element.
- JavaScript can be used to validate data - A JavaScript can be used to validate form data before it is submitted to a server, this will save the server from extra processing.
10.2 Back End Description:-
My SQL:
- MySQL (pronounced My EssQEl) is an open source, SQL Relational Database Management System (RDBMS) that is free for many uses. Early in its history, MySQL occasionally faced opposition due to its lack of support for same core SQL constructs such as sub selects and foreign keys. Ultimately, however, MySQL found a broad, enthusiastic user base for its liberal licensing terms, perky performance, and ease of use.
Its
acceptance was aided in part by the wide variety of other technologies
such as PHP, Java, Perl, Python, and the like that have encouraged its
use through stable, well-documented modules and extensions. MySQL has
not failed to reward the loyalty of these users with the addition of
both sub selects and foreign keys frontend.
11.Testing & Results
11.1 Introduction
A
strategy for software testing integrates software test case design
methods into a well-planned series of steps that result in the
successful construction of software. The strategy provides a road map
that describes the steps to be conducted as part of testing, when these
steps are planned and then undertaken, and how much effort, time, and
resources will be required. Therefore, any testing strategy must
incorporate test planning, test case design, test execution, and
resultant data collection and evaluation.
11.1.1 Testing
The
aim of the testing is to identify all defects exiting in a software
product. However, for most practical systems, even after satisfactorily
carrying out the testing phase, it is not possible to guarantee that the
software is error free. This is because the input data domain of most
software products is very large. It is not practical to test the
software exhaustively with respect to each value that the input data may
assume. Even with this practical limitation of the testing process, we
should not underestimate the importance of testing. We must remember
that testing does expose many defects exiting in a software product.
Therefore, we can safely conclude that testing provides a particle way
of reducing defects in a system and increasing the user’s confidence in a
development system.
- Testing Plan
Test
plan is a systematic approach to testing a system such as a machine or
software. The role of a test plan is to guide all testing activities. It
defines what is to be tested and what is to be overlooked, how the
testing is to be performed (described on a general level) and by whom.
It is therefore a managerial document, not technical one - in essence;
it is a project plan for testing. Test plan template, based on IEEE 829
format which are defined as follow:
For this project, two types of tests were followed:
- Unit Test
Here
each module was tested thoroughly using white box testing method. White
box testing means the cases did sneak peak in the code snippets and
check whether the result coming out of the case is correct or not. Also
proper error checking is done or not. This kind of test was done along
with the development of the module. Each module has its long list of
test cases and must pass all of them.
For
the display module along with the white box test, we had black box test
also. As this module was the one with which a user interacts more, so
this type of testing must be done for this module. Also both – white box
and black box testing – was also needed to be done; and to make the
testing more optimal, we did white box for unit testing and black box at
integration testing.
- Integration Test
This
module was done after all the modules were developed and tested
thoroughly. After the development of all modules, each module was
attached to the main module and then tested again for the proper working
of it. Here at the integration level, we did the black box testing.
That will give a new dimension for the testing purpose. After the
testing was done and all the errors were completed, next module was
assigned for the integration process.
For
all kinds of tests, if any error found in during the test, then the
process was to correct that error first, then do all the test from the
scratch and then go to next test case.
- Testing Methods
Software
Testing involves executing an implementation of the software with test
data and examining the outputs of the software and its operational
behavior to check that it is performing as required.
- Statistical Testing
Statistical
Testing is used to test the program’s performance and reliability and
to check how it works under operational conditions. Tests are designed
to reflect the actual user inputs and their frequency.
The stages involved in the static analysis for this system are follows.
- Control flow analysis
- Unreachable code
- Unconditional branches into loops
- Data use analysis
- Variable used before initialization
- Variables declared but never used
- Variables assigned twice but never used between assignments
- Possible array bound violations
- Declared variables
- Interface analysis
- Parameter type mismatches
- Parameter number mismatches
- Non-usage of the results of functions
- Uncalled functions and procedures
- Storage management faults
- Images not Stored in Resources
- Insufficient memory space
- Defect Testing
Defect
Testing is intended to find inconsistencies between a program and its
specification. These inconsistencies are usually due to the program
faults or defects.
- Unit Testing
The
developer carries out unit testing in order to check if the particular
module or unit of code is working fine. The Unit Testing comes at the
very basic level as it is carried out as and when the unit of the code
is developed or a particular functionality is built.
- Loop Testing
Tester
has tested the some conditions in code of application. So they test the
looping in source code of application for finding miss rout or any
error or wrong direction of flow in code.
- Black Box Testing
The
black-box approach is a testing method in which test data are derived
from the specified functional requirements without regard to the final
program structure. It is also termed data-driven, input/output driven ,
or requirements-based testing. Because only the functionality of the
software module is of concern, black-box testing also mainly refers to
functional testing -- a testing method emphasized on executing the
functions and examination of their input and output data. The tester
treats the software under test as a black box -- only the inputs,
outputs and specification are visible, and the functionality is
determined by observing the outputs to corresponding inputs. In testing,
various inputs are exercised and the outputs are compared against
specification to validate the correctness. All test cases are derived
from the specification. No implementation details of the code are
considered.
It
is obvious that the more we have covered in the input space, the more
problems we will find and therefore we will be more confident about the
quality of the software. Ideally we would be tempted to exhaustively
test the input space. But as stated above, exhaustively testing the
combinations of valid inputs will be impossible for most of the
programs, let alone considering invalid inputs, timing, sequence, and
resource variables. Combinatorial explosion is the major roadblock in
functional testing. To make things worse, we can never be sure whether
the specification is either correct or complete. Due to limitations of
the language used in the specifications (usually natural language),
ambiguity is often inevitable. Even if we use some type of formal or
restricted language, we may still fail to write down all the possible
cases in the specification. Sometimes, the specification itself becomes
an intractable problem: it is not possible to specify precisely every
situation that can be encountered using limited words. And people can
seldom specify clearly what they want they usually can tell whether a
prototype is, or is not, what they want after they have been finished.
Specification problems contribute approximately 30 percent of all bugs
in software.
The
research in black-box testing mainly focuses on how to maximize the
effectiveness of testing with minimum cost, usually the number of test
cases. It is not possible to exhaust the input space, but it is possible
to exhaustively test a subset of the input space. Partitioning is one
of the common techniques. If we have partitioned the input space and
assume all the input values in a partition is equivalent, then we only
need to test one representative value in each partition to sufficiently
cover the whole input space. Domain testing partitions the input domain
into regions, and considers the input values in each domain an
equivalent class. Domains can be exhaustively tested and covered by
selecting a representative value(s) in each domain. Boundary values are
of special interest. Experience shows that test cases that explore
boundary conditions have a higher payoff than test cases that do not.
Boundary value analysis requires one or more boundary values selected as
representative test cases. The difficulties with domain testing are
that incorrect domain definitions in the specification cannot be
efficiently discovered.
Good
partitioning requires knowledge of the software structure. A good
testing plan will not only contain black-box testing, but also white-box
approaches, and combinations of the two.
- White Box Testing
Also called ‘Glass Box’ or ‘Structural’ testing Tester has access to the system design.
They can examine the Design document
- View source code
- Individual path examine
- Logical path examine one time
- Logical decision on their true and false
The
intention in white box testing is to ensure that all possible feasible
flow of control paths through a subprogram is traversed while the
software is under test. This is not the same as saying that all
statements in the subprogram will be executed as it is possible for all
statements to be executed but for not all of the possible paths to be
traversed. However, the converse is true; if all possible paths through a
subprogram are traversed then all statements in the subprogram will
necessarily be executed.
When
considering the number of possible paths through a subprogram two other
factors need to be remembered. The first is that some of the possible
paths through a subprogram turn out upon investigation to be
non-feasible paths.
The
second consideration is that the number of possible paths through a
subprogram indicated by a flow graph analysis will indicate the minimum
number of paths to ensure complete coverage. This may be less than the
total number of paths which are possible when combinations of paths are
allowed.
White
Box testing is used as an important primary testing approach. Here code
is inspected to see what it does; tests are designed to exercise the
code. Code is tested using code scripts, driver, etc which are employed
to directly interface with and drive the code.
The tester can analyze the code and use the knowledge about the structure of a component to derive the test data.
Advantages of White box testing are:
- As the knowledge of internal coding structure is prerequisite, it becomes very easy to find out which type of input/data can help in testing the application effectively.
- The other advantage of white box testing is that it helps in optimizing the code
- It helps in removing the extra lines of code, which can bring in hidden defects.
- Structural Testing
Developer
has done path testing to exercise every independent execution path
through a component or program. If every independent path is executed
then all statements in the components must have been executed at least
once. The structure of our program is also checked.
- Integration Testing
After
our individual modules Developer tested out Developer go to the
integrated to create a complete system. This integration process
involves building the system and testing the resultant system for
problems that arise from component interactions.
- Specifications: - In this testing, compare specific requirement of organization with our integrated system.
- Navigation: - Sometimes the integrated system checked out for the navigation then to be described the process and navigation of the initial level to be precise for the tier system.
- Check Business Rules: - In All the system first of all you need to understand business rules and then it verifies whether each business rules are followed or not.
- Add, Modify, Delete: - After integrating all the module you require to check whether add, modify, delete functionality is worked as per specification or not After completion of all the type of above mentioned testing types, carry out the testing for add, modify, Delete functionality of system. Here you have to test whether you can add the data in database modify the data in database and delete the data from the database.
Developer
has applied top-down strategy to validate high-level components of a
system before design and implementations have been completed. Because,
our development process started with high-level components and Developer
worked down the component hierarchy.
- Performance Testing
Performance
testing is designed to test the runtime performance of the system
within the context of the system. These tests Developer performed as
module level as Developer as system level. Individual modules Developers
tested for required performance.
- Condition Testing
Condition
testing is a test case design method that exercises the logical
conditions contained in a program module. If the condition is incorrect,
then as least one part of the condition is incorrect. It may include
- Boolean variable error
- String Index out of Bound error
- Null Pointer Assignment
- Input Output Connection Exceptions
- Images or Map Unloaded errors
- Arithmetic expression error
- Interface Testing
Interface testing is integral part of Integration testing. Therefore Developer checked for the following:
- Interface misuse
- Interface misunderstanding
Developer
examined the code to be tested and explicitly list each call to an
external component. In the system, standards tests for GUIs have been
performed, which are as follows.
- The position and related labels for all controls checked.
- All menu functions and sub functions verified for correctness.
- Validations for all inputs done.
- Each menu functions tested, whether it invokes the corresponding functionality properly.
- Pull down controls was verified for proper functionality.
- Whether the non-editable text control is disabling and it was also verified that it doesn’t exceed the maximum length.
- Whether the system prompts the user with appropriate message as and when invalid information is entered.
- All required fields aren’t left blank.
- Object Testing
Object
testing is to test object as individual components, which are often
larger than single function. Here following activities have taken place.
- Testing the individual operations associated with object.
- Testing individual object classes.
- Testing cluster of objects
- Testing object-oriented system.
Now we will discuss how testing and debugging is done of this application. Our application can be divided into parts like:
- Values of some attributes of forms are coming from database so no chance of wrong selection of that.
- To make queries to database and retrieve information from it.
- Maintain database’s such that its accessing speed becomes fast.
- Reduce memory requirements for the database.
- Maintain proper integration among database.
11.2 Screen Shots
- Check for valid email id and password
- Admin login failure
- Admin login Successful
- Student login failure
- Student login successful
- Require field validation
- Require field leave blank
- Check valid email address format
- When enter invalid format of email address
- When enter duplicate email address.
- Check valid mobile number and length.
- When enter invalid numbers
- When enter invalid length.
- Check password length and match with conformation password
- When password length invalid
- When password does not match
- Check for Date Format.
- When date entered is invalid.
- Check for selected country, state and city.
- When city, country and state are not selected
- Check for character only input.
- When Enter numeric value or special character.
- Check for numeric only input.
- When enter the character.
- Check for custom validation.
- When enter wrong emailid and question
12. Limitations & Future Scope
12.1 Limitations
Present system carries certain drawbacks and limitations as listed below.
- Current system provides only multiple choices but single correct answer selection. Admin may wish to provide multiple choices multiple selection responses.
- Incase questions and/or answers need to be in graphics, current system has no provision.
- There is no negative marking in this system so, student cannot know his actual result as real exam.
12.2 Future Scope
- The System can be enhanced to support other QA types like fill in the blanks, true/ false.
- System can be enhanced by deploying it to the world wide web. So , user can use system from distant place.
- There is proposition for adding an extra functionality for checking the subjective answer to with this system.
- In future Result analysis will show in graphical forms.
13. Conclusion
The
Online examination System is developed using PHP and MYSQL fully meets
the objectives of the system for which it has been developed. The system
has reached a steady state where all bugs have been eliminated. The
system is operated at a high level of efficiency and all the teachers
and userassociated with the system understands its advantage. The system
solves the problem. It was intended to solve as requirement
specification.
The
Online examination System is developed using PHP and MYSQL fully meets
the objectives of the system for which it has been deveoped. The system
has reached a steady state where all bugs have been eliminated. The
system is operated at a high level of efficiency and all the teachers
and userassociated with the system understands its advantage. The system
solves the problem. It was intended to solve as requirement
specification.
14.References
WebSite
- www.php.net
- www.mysql.com.
- www.tizag.com/phptutorial
- www.W3school.com
- http://www.slideshare.net/dolly_g/report-on-online-exam-system-8917348
- http://www.deftinfosystems.com/index.php/application/e-education-system/online-examination-system.html
- http://www.ehow.com/facts_5156877_preface-book.html
Books
- 1) System Analysis and Design.
By: James A Sen.
- 2) Software Engineering.
By: Roger Pressman.
Subscribe to:
Posts (Atom)