Anda di halaman 1dari 79

Chapter1

INDEX

CONTENTS Page no.


1. Abstract 2

2. Problem description 5

3. System Specification 7

4. System Study 9

5. DFD 12

6. ER diagram 16

7. Software design 18

8. Coding 45

9. Outputs 58

10. Testing 68

11. Conclusion 75

12. Bibilography 77

1
ABSTRACT

2
CHAPTER-1

ABSTRACT

Our project named “STUDENT-TEACHER PORTAL” provides a simple interface for the
maintainance of student-faculty information. It can be used by any educational institutions or
colleges to maintain the academic details of the students and thereby provide them their details
by using the portal. The creation and management of accurate, update information regarding the
student’s academic career is critically important in the universities or institutes or colleges. The
students of the particular institution are provided with each and every information like student
details, academic related reports, course details, their timetable and the material required to
prepare for their academics. It provides all the details of the student from day one to the end of
the course which can be used completing the semesters, curriculum details, timetables, previous
and term question papers. It will also be very helpful to the staff and students to communicate
with each other in an effective way to get their material to prepare for their academics. All the
information mentioned above can be provided through a well secured, online interface embedded
in the college’s site. The head of the college (namely admin in this project) will be the one who
adds the details of the staff and students. So, their will also be a maintainance of the information
related to the staff as well as students. This portal also provides logins for both staff and students
where we provide options for the staff to update the information, details and material required by
them. The student login is provided options where the students can view their fee details, time
table and can also download their notes of their academics and the previous, term question
papers will be given to make them prepare for their exams easily.
The impact of computers and online websites in our lives is probably much more than we are
actually known to. Getting good information and sharing it quickly into products that consumers
want to buy is the essential key to sustain in business and this is all done nowadays using
Computers and Application software. Student teacher portal defines as an application(more
likely web-based), that provides capabilities for multiple users with different permission levels to
manage all or a section of the content, data or information of a website project, or
internet/application. The software helps the institutions to communicate and provide the
information to the students and to update their details. It provides a regular flow of information
for managerial flow of control.
The aim in designing this project is to make the communication between teacher and student in a
smooth and effective problem. This entire process will take place manually in many of the
institutions, so there are many chances that every student cannot get the information correctly
and on time, this may affect the academics of the student. This is also a time consuming activity
by using portal the time and paper work required to send the information to students will be
reduced and we can assure that each and every student gets the information equally. Specific
divisions are provided to maintain the details of the staff and students. Our system also provides
an easy way not only for the students to get their information but also the college administration

3
to maintain the record of the people working in it and for the people they are working for. Easy
operations for the operator of the system. User interfaces are user friendly and attractive; it takes
very less time for the operator to use the system.
This type of web portal is suitable for any educational institutions to update the information
related to the students and send it to them rapidly.

4
PROBLEM DESCRIPTION

5
CHAPTER-2
PROBLEM DESCRIPTION
The Student-Teacher portal introduction in educational institutions to give good and better
services to the students for the easy retrival of their details. Today’s education scenario is rapidly
changing and demanding. The system demands greater levels of communication between the
student and the teacher to have optimum use of resources. Present industry talent demands are
soaring with more and more skill requirement in every aspect. Colleges and institutions are
generating creative students that needs focused approach on such talents and industries so as to
avail the best of their candidates passing out. This portal helps the student to get their notes and
thereby preparation can be done easily. This portal enacts as a bridge between the student and the
teachers. Today technology being the main driving force for businesses has made banking
customers to sit back at home and run their accounts without walking into the banks for anything
and everything.

Work Division
The work was split into three areas: front-end design, backend actions. The front end design was
done using the HTML, CSS, PHP is used to provide actions to the controllers and the application
is deployed in a . The work was split in this manner because it gets easy to develop a separate
layer of the system. Initially, the web-service was assigned as part of the website development.

Proposed System
The aim of the project is build a portal which makes it easy for the student to retrieve
information quickly even when they are not present in the college. This makes the
communication of them with the teachers very effectively.

Report Outline
This report is divided into several sections that include: background chapter which reviews
general web application development, requirement analysis that covers user requirements for the
web application, design and implementation chapters that cover mobile development, user
testing and evaluation, future work and conclusion which includes a discussion of certain
problems encountered in the project.

6
SYSTEM SPECIFICATION

7
CHAPTER-3
SYSTEM SPECIFICATION

1. Hardware Requirements
Processor : Intel Pentium IV 2.4 GHZ or above

Clock speed : 500 MHZ

System bus : 32 bits

RAM : 500MB of RAM

2. Software Requirements

OS : MS WINDOWS XP SP2

Front End : HTML,CSS

Back end : PHP,My SQL

8
SYSTEM STUDY

9
CHAPTER-4
SYSTEM STUDY

INTRODUCTION
The goal of any system development is to develop and implement the system cost effectively;
user-friendly and most suited to the user’s analysis is the heart of the process. Analysis is the
study of the various operations performed by the system and their relationship within and outside
of the system. During analysis, data collected on the files, decision points and transactions
handled by the present system. Different kinds of tools are used in analysis of which interview is
a common one.

INITIAL INVESTIGATION
The first step in system development life cycle is the identification of need of change to improve
or enhance an existing system. An initial investigation on existing system was carried out. The
present system of communication between students and staff is completely manual. Many
problems were identified during the initial study of the existing system.

EXISTING SYSTEM
System analysis is a detailed study of the various operations performed by a system and their
relationships within and outside of the system. Here the key question is – What all problems
exist in the present system? What must be done to solve the problem? Analysis begins when a
user or manager begins a study of the program using existing system.

During analysis, data collected on the various files, decision points and transactions handled by
the present system. The commonly used tools in the system are Data Flow Diagram, interviews,
etc. training, experience and common sense are required for collection of relevant information
needed to develop the system. The success of the system depends largely on how clearly the
problem is defined, thoroughly investigated and properly carried out through the choice of
solution. A good analysis model should provide not only the mechanisms of problem
understanding but also the framework of the solution. Then the proposed system should be
analyzed thoroughly in accordance with the needs.

System analysis can be categorized into four parts.

 System planning and initial investigation

 Information gathering

10
 Applying analysis tools for structured analysis

 Feasibility study

 Cost/benefit analysis.

11
DATA FLOW DIAGRAMS

12
CHAPTER-5
DFD

DFD can represent Source, destination, storage and flow of data using the following set
of components -

 Entities - Entities are source and destination of information data. Entities are represented
by a rectangles with their respective names.

 Process - Activities and action taken on the data are represented by Circle or Round-
edged rectangles.

 Data Storage - There are two variants of data storage - it can either be represented as a
rectangle with absence of both smaller sides or as an open-sided rectangle with only one
side missing.

 Data Flow - Movement of data is shown by pointed arrows. Data movement is shown
from the base of arrow as its source towards head of the arrow as destination.

13
DATA FLOW DIAGRAMS
LEVEL-0:

14
LEVEL-1:

15
ER DIAGRAM

16
CHAPTER-6

ENTITY RELATIONSHIP DIAGRAMS

17
SOFTWARE DESIGN

18
Chapter

CHAPTER-7

Software Design

Html

What is HTML?
HTML is the standard markup language for creating Web pages. HTML stands for Hyper Text
Markup Language. It specify the following
 HTML describes the structure of Web pages using markup
 HTML elements are the building blocks of HTML pages
 HTML elements are represented by tags
 HTML tags label pieces of content such as "heading", "paragraph", "table", and so
on
 Browsers do not display the HTML tags, but use them to render the content of the
page
The definition of HTML is Hyper Text Markup Language.

 Hyper Text is the method by which you move around on the web — by clicking on
special text called hyperlinks which bring you to the next page. The fact that it
is hyper just means it is not linear — i.e. you can go to any place on the Internet
whenever you want by clicking on links — there is no set order to do things in.

 Markup is what HTML tags do to the text inside them. They mark it as a certain type of
text (italicized text, for example).

 HTML is a Language, as it has code-words and syntax like any other language.

Prerequisites:
You will need a text editor, such as Notepad and an Internet browser, such as Internet Explorer
or Netscape.
Q: What is Notepad and where do I get it?
A: Notepad is the default Windows text editor. On most Windows systems, click your
Start button and choose Programs then Accessories. It should be a little blue notebook.
Mac Users: SimpleText is the default text editor on the Mac. In OSX use TextEdit and
change the following preferences: Select (in the preferences window) Plain text instead of
Rich text and then select Ignore rich text commands in HTML files. This is very
important because if you don't do this HTML codes probably won't work.
One thing you should avoid using is a word processor (like Microsoft Word) for authoring your
HTML documents.

19
HTM or HTML Extension?
When you save an HTML file, you can use either the .htm or the .html extension. The .htm
extension comes from the past when some of the commonly used software only allowed three
letter extensions. It is perfectly safe to use either .html or .htm, but be consistent. mypage.htm
and mypage.html are treated as different files by the browser.
How to View HTML Source
A good way to learn HTML is to look at how other people have coded their html pages. To find
out, simply click on the View option in your browsers toolbar and select Source or Page Source.
This will open a window that shows you the actual HTML of the page. Go ahead and view the
source html for this page.
HTML Tags
What are HTML tags?
HTML tags are used to mark-up HTML elements
HTML tags are surrounded by the two characters < and >
The surrounding characters are called angle brackets
HTML tags normally come in pairs like <b> and </b>
The first tag in a pair is the start tag, the second tag is the end tag
The text between the start and end tags is the element content
HTML tags are not case sensitive, <b> means the same as <B>

Logical vs. Physical Tags


In HTML there are both logical tags and physical tags. Logical tags are designed to describe (to
the browser) the enclosed text's meaning. An example of a logical tag is the
<strong></strong>tag. By placing text in between these tags you are telling the browser that the
text has some greater importance. By default all browsers make the text appear bold when in
between the <strong>and </strong>tags.
Physical tags on the other hand provide specific instructions on how to display the text they
enclose. Examples of physical tags include:
<b>: Makes the text bold.
<big>: Makes the text usually one size bigger than what's around it.
<i>: Makes text italic.

20
Physical tags were invented to add style to HTML pages because style sheets were not around,
though the original intention of HTML was to not have physical tags. Rather than use physical
tags to style your HTML pages, you should use style sheets.
HTML Elements
Remember the HTML example from the previous page:
<html>
<head>
<title>My First Webpage</title>
</head>
<body>
This is my first homepage. <b>This text is bold</b>
</body>
</html>
This is an HTML element:
<b>This text is bold</b>
The HTML element begins with a start tag: <b>
The content of the HTML element is: This text is bold
The HTML element ends with an end tag: </b>
The purpose of the <b>tag is to define an HTML element that should be displayed as bold.
This is also an HTML element:
<body>
This is my first homepage. <b>This text is bold</b>
</body>
This HTML element starts with the start tag <body>, and ends with the end tag </body>. The
purpose of the <body>tag is to define the HTML element that contains the body of the HTML
document.
Nested Tags
You may have noticed in the example above, the <body>tag also contains other tags, like the
<b>tab. When you enclose an element in with multiple tags, the last tag opened should be the
first tag closed. For example:
<p><b><em>This is NOT the proper way to close nested tags.</p></em></b>
<p><b><em>This is the proper way to close nested tags. </em></b></p>
Note: It doesn't matter which tag is first, but they must be closed in the proper order.
Why Use Lowercase Tags?
You may notice we've used lowercase tags even though I said that HTML tags are not case
sensitive. <B>means the same as <b>. The World Wide Web Consortium (W3C), the group
responsible for developing web standards, recommends lowercase tags in their HTML 4
recommendation, and XHTML (the next generation HTML) requires lowercase tags.
Tag Attributes
Tags can have attributes. Attributes can provide additional information about the HTML
elements on your page. The <tag>tells the browser to do something, while the attribute tells the
browser how to do it. For instance, if we add the bgcolor attribute, we can tell the browser that
the background color of your page should be blue, like this: <body bgcolor="blue">.
This tag defines an HTML table: <table>. With an added border attribute, you can tell the
browser that the table should have no borders: <table border="0">. Attributes always come in

21
name/value pairs like this: name="value". Attributes are always added to the start tag of an
HTML element and the value is surrounded by quotes.

Basic HTML Tags

The most important tags in HTML are tags that define headings, paragraphs and line breaks.

Basic HTML Tags Tag Description

<html> Defines an HTML


document

<body> Defines the


document's body

<h1> to <h6> Defines header 1 to


header 6

<p> Defines a paragraph

<br> Inserts a single line


break

<hr> Defines a horizontal


rule

<!--> Defines a comment

Headings

Headings are defined with the <h1> to <h6> tags. <h1> defines the largest heading while <h6>
defines the smallest.

<h1>This is a heading</h1>

<h2>This is a heading</h2>

<h3>This is a heading</h3>

<h4>This is a heading</h4>

<h5>This is a heading</h5>

<h6> This is a heading</h6>

22
HTML automatically adds an extra blank line before and after a heading. A useful heading
attribute is align.

<h5 align="left">I can align headings </h5>

<h5 align="center">This is a centered heading </h5>

<h5 align="right">This is a heading aligned to the right </h5>

Paragraphs

Paragraphs are defined with the <p> tag. Think of a paragraph as a block of text. You can use the
align attribute with a paragraph tag as well.

<p align="left">This is a paragraph</p>

<p align="center">this is another paragraph</p>

Important: You must indicate paragraphs with <p> elements. A browser ignores any
indentations or blank lines in the source text. Without <p> elements, the document becomes one
large paragraph. HTML automatically adds an extra blank line before and after a paragraph.

Line Breaks

The <br> tag is used when you want to start a Would Display
new line, but don't want to start a new
paragraph. The <br> tag forces a line break
wherever you place it. It is similar to single
spacing in a document. This Code

<p>This <br> is a para<br> graph with line This is a paragraph with line breaks
breaks</p>

Comments in HTML

23
The comment tag is used to insert a comment in the Would Display
HTML source code. A comment can be placed
anywhere in the document and the browser will ignore
everything inside the brackets. You can use comments
to write notes to yourself, or write a helpful message to
someone looking at your source code. This Code

<p> This html comment would <!-- This is a comment This HTML comment would be
--> be displayed like this.</p> displayed like this.

Other HTML Tags

As mentioned before, there are logical styles that describe what the text should be and physical
styles which actually provide physical formatting. It is recommended to use the logical tags and
use style sheets to style the text in those tags.

Logical Tags Physical Tags Tag Description

<abbr> Defines an abbreviation

<acronym> Defines an acronym

<address> Defines an address element

<cite> Defines a citation

<code> Defines computer code text

<blockquote> Defines a long quotation

<del> Defines text

<dfn> Defines a definition term

<em> Defines emphasized text

<ins> Defines inserted text

<kbd> Defines keyboard text

<pre> Defines preformatted text

24
<q> Defines a short quotation

<samp> Defines sample computer code

<strong> Defines strong text

<var> Defines a variable

<b> Defines bold text

<big> Defines big text

<i> Defines italic text

<small> Defines small text

<sup> Defines superscripted text

<sub> Defines subscripted text

<tt> Defines teletype text

<u> Deprecated. Use styles instead

HTML Character Entities

Some characters have a special meaning in HTML, like the less than sign (<) that defines the
start of an HTML tag. If we want the browser to actually display these characters we must insert
character entities in place of the actual characters themselves.

The Most Common Description Entity Name Entity Number


Character Entities:
Result

non-breaking space &nbsp; &#160;

< less than &lt; &#60;

> greater than &gt; &#62;

& ampersand &amp; &#38;

" quotation mark &quot; &#34;

25
' apostrophe &apos; (does &#39;
not work in IE)

A character entity has three parts: an ampersand (&), an entity name or an entity number, and
finally a semicolon (;). The & means we are beginning a special character, the ; means ending a
special character and the letters in between are sort of an abbreviation for what it's for. To
display a less than sign in an HTML document we must write: &lt; or &#60; The advantage of
using a name instead of a number is that a name is easier to remember. The disadvantage is that
not all browsers support the newest entity names, while the support for entity numbers is very
good in almost all browsers.

Non-breaking Space

The most common character entity in HTML is the non-breaking space &nbsp;. Normally
HTML will truncate spaces in your text. If you add 10 spaces in your text, HTML will remove 9
of them. To add spaces to your text, use the &nbsp; character entity.

HTML Fonts

The <font> tag in HTML is deprecated. The World Wide Web Consortium (W3C) has removed
the <font> tag from its recommendations. In future versions of HTML, style sheets (CSS) will be
used to define the layout and display properties of HTML elements.

The <font> Tag Should NOT be used.

HTML Backgrounds

Backgrounds

The <body> tag has two attributes where you can specify backgrounds. The background can be a
color or an image.

Bgcolor

The bgcolor attribute specifies a background-color for an HTML page. The value of this attribute
can be a hexadecimal number, an RGB value, or a color name:

<body bgcolor="#000000"><body bgcolor="rgb(0,0,0)"><body bgcolor="black">

The lines above all set the background-color to black.

Background

26
The background attribute can also specify a background-image for an HTML page. The value of
this attribute is the URL of the image you want to use. If the image is smaller than the browser
window, the image will repeat itself until it fills the entire browser window.

<bodybackground="clouds.gif"><body
background="http://profdevtrain.austincc.edu/html/graphics/clouds.gif">

The URL can be relative (as in the first line above) or absolute (as in the second line above).

If you want to use a background image, you should keep in mind:

Will the background image increase the loading time too much?

Will the background image look good with other images on the page?

Will the background image look good with the text colors on the page?

Will the background image look good when it is repeated on the page?

Will the background image take away the focus from the text?

HTML Colors

Color Values

Colors are defined using a hexadecimal notation for the combination of red, green, and blue
color values (RGB). The lowest value that can be given to one light source is 0 (hex #00). The
highest value is 255 (hex #FF). This table shows the result of combining red, green, and blue:

Color Color RGB

#000000 rgb(0,0,0)

#FF0000 rgb(255,0,0)

#00FF00 rgb(0,255,0)

#0000FF rgb(0,0,255)

#FFFF00 rgb(255,255,0)

#00FFFF rgb(0,255,255)

#FF00FF rgb(255,0,255)

#C0C0C0 rgb(192,192,192)

27
#FFFFFF rgb(255,255,255)

Color Names

A collection of color names is supported by most browsers. To view a table of color names that
are supported by most browsers visit this web page

Web Safe Colors

A few years ago, when most computers supported only 256 different colors, a list of 216 Web
Safe Colors was suggested as a Web standard. The reason for this was that the Microsoft and
Mac operating system used 40 different "reserved" fixed system colors (about 20 each). This 216
cross platform web safe color palette was originally created to ensure that all computers would
display all colors correctly when running a 256 color palette.

16 Million Different Colors

The combination of Red, Green and Blue values from 0 to 255 gives a total of more than 16
million different colors to play with (256 x 256 x 256). Most modern monitors are capable of
displaying at least 16,384 different colors. To assist you in using color schemes.

HTML Lists

HTML provides a simple way to show unordered lists (bullet lists) or ordered lists (numbered
lists).

Unordered Lists

An unordered list is a list of items marked with bullets (typically small black circles). An
unordered list starts with the <ul> tag. Each list item starts with the <li> tag.

Ordered Lists

An ordered list is also a list of items. The list items are marked with numbers. An ordered list
starts with the <ol> tag. Each list item starts with the <li> tag.

Definition Lists

Definition lists consist of two parts: a term and a description. To mark up a definition list, you
need three HTML elements; a container <dl>, a definition term <dt>, and a definition description
<dd>.

HTML Links

HTML uses the <a> anchor tag to create a link to another document or web page.

28
The Anchor Tag and the Href Attribute

An anchor can point to any resource on the Web: an HTML page, an image, a sound file, a
movie, etc. The syntax of creating an anchor:

<a href="url">Text to be displayed</a>

The <a> tag is used to create an anchor to link from, the href attribute is used to tell the address
of the document or page we are linking to, and the words between the open and close of the
anchor tag will be displayed as a hyperlink.

The Target Attribute

With the target attribute, you can define where the linked document will be opened. By default,
the link will open in the current window. The code below will open the document in a new
browser window:

<a href=http://www.austincc.edu/ target="_blank">Visit ACC!</a>

Email Links

To create an email link, you will use mailto: plus your email address. Here is a link to ACC's
Help Desk:

<a href="mailto:helpdesk@austincc.edu">Email Help Desk</a>

To add a subject for the email message, you would add ?subject= after the email address. For
example:

<a href="mailto:helpdesk@austincc.edu?subject=Email Assistance">Email Help Desk</a>

The Anchor Tag and the Name Attribute

The name attribute is used to create a named anchor. When using named anchors we can create
links that can jump directly to a specific section on a page, instead of letting the user scroll
around to find what he/she is looking for. Unlike an anchor that uses href, a named anchor
doesn't change the appearance of the text (unless you set styles for that anchor) or indicate in any
way that there is anything special about the text. Below is the syntax of a named anchor:

<a name="top">Text to be displayed</a>

HTML Images

The Image Tag and the Src Attribute

29
The <img> tag is empty, which means that it contains attributes only and it has no closing tag.
To display an image on a page, you need to use the src attribute. Src stands for "source". The
value of the src attribute is the URL of the image you want to display on your page.

The Alt Attribute

The alt attribute is used to define an alternate text for an image. The value of the alt attribute is
author-defined text:

<imgsrc="graphics/chef.gif" alt="Smiling Happy Chef ">

The alt attribute tells the reader what he or she is missing on a page if the browser can't load
images. The browser will then display the alternate text instead of the image. It is a good practice
to include the alt attribute for each image on a page, to improve the display and usefulness of
your document for people who have text-only browsers or use screen readers.

Image Dimensions

When you have an image, the browser usually figures out how big the image is all by itself. If
you put in the image dimensions in pixels however, the browser simply reserves a space for the
image, then loads the rest of the page. Once the entire page is loads it can go back and fill in the
images. Without dimensions, when it runs into an image, the browser has to pause loading the
page, load the image, then continue loading the page. The chef image would then be:

<imgsrc="graphics/chef.gif" width="130" height="101" alt="Smiling Happy Chef">

Tables

Tables are defined with the <table> tag. A table is divided into rows (with the <tr> tag), and each
row is divided into data cells (with the <td> tag). The letters td stands for table data, which is the
content of a data cell. A data cell can contain text, images, lists, paragraphs, forms, horizontal
rules, tables, etc.

Headings in a Table

Headings in a table are defined with the <th> tag.

This code Would Display

<table Heading
border="1"><tr><th>Heading</th><th>Another
Heading</th></tr><tr><td>row 1, cell Another Heading
1</td><td>row 1, cell 2</td></tr><tr><td>row 2, cell
1</td><td>row 2, cell 2</td></tr></table> row 1, cell 1

30
row 1, cell 2

row 2, cell 1

row 2, cell

Cell Padding and Spacing

The <table> tag has two attributes known as cellspacing and cellpadding. Here is a table example
without these properties. These properties may be used separately or together.

Table Tags Tag Description

<table> Defines a table

<th> Defines a table header

<tr> Defines a table row

<td> Defines a table cell

<caption> Defines a table caption

<colgroup> Defines groups of table columns

<col> Defines the attribute values for one


or more columns in a table

What is XHTML?
XHTML is a variant of HTML that uses the syntax of XML, the Extensible Markup Language.
XHTML has all the same elements (for paragraphs, etc.) as the HTML variant, but the syntax is
slightly different. Because XHTML is an XML application, you can use other XML tools with it
(such as XSLT, a language for transforming XML content).
What is CSS?
CSS is the language for describing the presentation of Web pages, including colors, layout, and
fonts. It allows one to adapt the presentation to different types of devices, such as large screens,
small screens, or printers. CSS is independent of HTML and can be used with any XML-based
markup language. The separation of HTML from CSS makes it easier to maintain sites, share
style sheets across pages, and tailor pages to different environments. This is referred to as
the separation of structure (or: content) from presentation.
What is WebFonts?
WebFonts is a technology that enables people to use fonts on demand over the Web without
requiring installation in the operating system. W3C has experience in downloadable fonts
through HTML, CSS2, and SVG. Until recently, downloadable fonts have not been common on

31
the Web due to the lack of an interoperable font format. The WebFonts effort plans to address
that through the creation of an industry-supported, open font format for the Web (called
"WOFF").

PHP

PHP started out as a small open source project that evolved as more and more people

found out how useful it was. Rasmus Lerdorf unleashed the first version of PHP way back

in 1994.

 PHP is a recursive acronym for "PHP: Hypertext Preprocessor".


 PHP is a server side scripting language that is embedded in HTML. It is used to
manage dynamic content, databases, session tracking, even build entire ecommerce
sites.It is integrated with a number of popular databases, including MySQL,
PostgreSQL,Oracle, Sybase, Informix, and Microsoft SQL Server.
 PHP is pleasingly zippy in its execution, especially when compiled as an Apache
module on the Unix side. The MySQL server, once started, executes even very
complex queries with huge result sets in record-setting time.
 PHP supports a large number of major protocols such as POP3, IMAP, and LDAP.
 PHP4 added support for Java and distributed object architectures (COM and CORBA),
making n-tier development a possibility for the first time.
 PHP is forgiving: PHP language tries to be as forgiving as possible.
 PHP Syntax is C-Like.

Common Uses of PHP

PHP performs system functions, i.e. from files on a system it can create, open, read, write, and
close them. The other uses of PHP are:

PHP can handle forms, i.e. gather data from files, save data to a file, thru email you can send
data, return data to the user.

You add, delete, modify elements within your database thru PHP.

Access cookies variables and set cookies.

Using PHP, you can restrict users to access some pages of your website.

It can encrypt data.

Characteristics of PHP

32
Five important characteristics make PHP's practical nature possible:

 Simplicity
 Efficiency
 Security
 Flexibility
 Familiarity

In order to develop and run PHP Web pages, three vital components need to be installed on your
computer system.

Web Server - PHP will work with virtually all Web Server software, including Microsoft's
Internet Information Server (IIS) but then most often used is freely available Apache Server.
Download Apache for free here: http://httpd.apache.org/download.cgi

Database - PHP will work with virtually all database software, including Oracle and Sybase but
most commonly used is freely available MySQL database. Download MySQL for free

here: http://www.mysql.com/downloads/index.html

PHP Parser - In order to process PHP script instructions, a parser must be installed to generate
HTML output that can be sent to the Web Browser. This tutorial will guide you how to install
PHP parser on your computer.

PHP Parser Installation

Before you proceed, it is important to make sure that you have a proper environment setup on
your machine to develop your web programs using PHP.

Type the following address into your browser's address box.

http://127.0.0.1/info.php

If this displays a page showing your PHP installation related information, then it means you have
PHP and Webserver installed properly. Otherwise you have to follow given procedure to install
PHP on your computer.

This section will guide you to install and configure PHP over the following four platforms:

 PHP Installation on Linux or Unix with Apache


 PHP Installation on Mac OS X with Apache
 PHP Installation on Windows NT/2000/XP with IIS
 PHP Installation on Windows NT/2000/XP with Apache

33
PHP Installation on Windows NT/2000/XP with Apache

To install Apache with PHP 5 on Windows follow the following steps. If your PHP and Apache
versions are different, then please take care accordingly.

 Download Apache server from www.apache.org/dist/httpd/binaries/win32. You want the


current stable release version with the no_src.msi extension. Double-click the installer
file to install; C:\Program Files is a common location. The installer will also ask you
whether you want to run Apache as a service or from the command line or DOS prompt.
We recommend you do not install as a service, as this may cause problems with startup.
 Extract the PHP binary archive using your unzip utility; C:\PHP is a common location.
 Copy some .dll files from your PHP directory to your system directory (usually
C:\Windows). You need php5ts.dll for every case. You will also probably need to copy
the file corresponding to your Web server module-C:\PHP\Sapi\php5apache.dll. to your
Apache modules directory. It's possible that you will also need others from the dlls
subfolder, but start with the two mentioned previously and add more if you need them.
 Copy either php.ini-dist or php.ini-recommended (preferably the latter) to your Windows
directory, and rename it php.ini. Open this file in a text editor (for example, Notepad).
Edit this file to get configuration directives; At this point, we highly recommend that new
users set error reporting to E_ALL on their development machines.
 Tell your Apache server where you want to serve files from and what extension(s) you
want to identify PHP files (.php is the standard, but you can use .html, .phtml, or
whatever you want). Go to your HTTP configuration files (C:\Program Files\Apache
Group\Apache\conf or whatever your path is), and open httpd.conf with a text editor.
Search for the word DocumentRoot (which should appear twice) and change both paths
to the directory you want to serve files out of. (The default is C:\Program Files\Apache
Group\Apache\htdocs.). Add at least one PHP extension directive as shown in the first
line of the following code:

LoadModule php5_module modules/php5apache.dll

AddType application/x-httpd-php .php .phtml

 You may also need to add the following line:

AddModule mod_php5.c

 Stop and restart the WWW service. Go to the Start menu -> Settings -> Control Panel ->
Services. Scroll down the list to IIS Admin Service. Select it and click Stop. After it
stops, select World Wide Web Publishing Service and click Start. Stopping and restarting
the service from within Internet Service Manager will not suffice.

34
Since this is Windows, you may also wish to reboot.

 Open a text editor. Type: <?php phpinfo(); ?>. Save this file in your Web server's
document root as info.php.
 Start any Web browser and browse the file.you must always use an HTTP request
(http://www.testdomain.com/info.php or http://localhost/info.php or
http://127.0.0.1/info.php) rather than a filename (/home/httpd/info.php) for the file to
be parsed correctly

You should see a long table of information about your new PHP installation message

Congratulations!

Apache Configuration

If you are using Apache as a Web Server, then this section will guide you to edit Apache

Configuration Files.

PHP.INI File Configuration

The PHP configuration file, php.ini, is the final and most immediate way to affect PHP's

functionality.

Just Check it here: PHP.INI File Configuration

Windows IIS Configuration

To configure IIS on your Windows machine you can refer your IIS Reference Manual

shipped along with IIS.

Apache Configuration for PHP

Apache uses httpd.conf file for global settings, and the .htaccess file for per-directory

access settings. Older versions of Apache split up httpd.conf into three files (access.conf,

httpd.conf, and srm.conf), and some users still prefer this arrangement.

Apache server has a very powerful, but slightly complex, configuration system of its own.

Learn more about it at the Apache Web site: www.apache.org

The following section describes settings in httpd.conf that affect PHP directly and cannot

be set elsewhere. If you have standard installation, then httpd.conf will be found at

35
/etc/httpd/conf:

Timeout

This value sets the default number of seconds before any HTTP request will time out. If

you set PHP's max_execution_time to longer than this value, PHP will keep grinding away

but the user may see a 404 error. In safe mode, this value will be ignored; you must use

the timeout value in php.ini instead

DocumentRoot

DocumentRoot designates the root directory for all HTTP processes on that server. It looks

something like this on Unix:

DocumentRoot ./usr/local/apache_1.3.6/htdocs.

You can choose any directory as document root.

AddType

The PHP MIME type needs to be set here for PHP files to be parsed. Remember that you

can associate any file extension with PHP like .php3, .php5 or .htm.

AddType application/x-httpd-php .php

AddType application/x-httpd-phps .phps

AddType application/x-httpd-php3 .php3 .phtml

AddType application/x-httpd-php .html

Action

You must uncomment this line for the Windows apxs module version of Apache with shared

object support:

LoadModule php4_module modules/php4apache.dll

or on Unix flavors:

LoadModule php4_module modules/mod_php.so

AddModule

36
You must uncomment this line for the static module version of Apache.

AddModule mod_php4.c

PHP.INI file Configuration

The PHP configuration file, php.ini, is the final and most immediate way to affect PHP's

functionality. The php.ini file is read each time PHP is initialized.in other words, whenever

httpd is restarted for the module version or with each script execution for the CGI version.

If your change isn’t showing up, remember to stop and restart httpd. If it still isn’t showing

up, use phpinfo() to check the path to php.ini.

The configuration file is well commented and thorough. Keys are case sensitive, keyword

values are not; whitespace, and lines beginning with semicolons are ignored. Booleans can

be represented by 1/0, Yes/No, On/Off, or True/False. The default values in php.ini-dist

will result in a reasonable PHP installation that can be tweaked later.

Here we are explaining the important settings in php.ini which you may need for your PHP

Parser.

short_open_tag = Off

Short open tags look like this: <? ?>. This option must be set to Off if you want to use

XML functions.

safe_mode = Off

If this is set to On, you probably compiled PHP with the --enable-safe-mode flag. Safe

mode is most relevant to CGI use. See the explanation in the section "CGI compile-time

options". earlier in this chapter.

safe_mode_exec_dir = [DIR]

This option is relevant only if safe mode is on; it can also be set with the --with-exec-dir

flag during the Unix build process. PHP in safe mode only executes external binaries out

of this directory. The default is /usr/local/bin. This has nothing to do with serving up a

37
normal PHP/HTML Web page.

safe_mode_allowed_env_vars = [PHP_]

This option sets which environment variables users can change in safe mode. The default

is only those variables prepended with "PHP_". If this directive is empty, most variables

are alterable.

safe_mode_protected_env_vars = [LD_LIBRARY_PATH]

This option sets which environment variables users can't change in safe mode, even if

safe_mode_allowed_env_vars is set permissively.

disable_functions = [function1, function2...]

A welcome addition to PHP4 configuration and one perpetuated in PHP5 is the ability to

disable selected functions for security reasons. Previously, this necessitated hand-editing

the C code from which PHP was made. Filesystem, system, and network functions should

probably be the first to go because allowing the capability to write files and alter the

system over HTTP is never such a safe idea.

max_execution_time = 30

The function set_time_limit() won.t work in safe mode, so this is the main way to make a

script time out in safe mode. In Windows, you have to abort based on maximum memory

consumed rather than time. You can also use the Apache timeout setting to timeout if you

use Apache, but that will apply to non-PHP files on the site too.

error_reporting = E_ALL & ~E_NOTICE

The default value is E_ALL & ~E_NOTICE, all errors except notices. Development servers

should be set to at least the default; only production servers should even consider a lesser

value

error_prepend_string = [""]

With its bookend, error_append_string, this setting allows you to make error messages a

38
different color than other text, or what you have.

warn_plus_overloading = Off

This setting issues a warning if the + operator is used with strings, as in a form value.

variables_order = EGPCS

This configuration setting supersedes gpc_order. Both are now deprecated along with

register_globals. It sets the order of the different variables: Environment, GET, POST,

COOKIE, and SERVER (aka Built-in).

You can change this order around. Variables will be overwritten successively in left-toright

order, with the rightmost one winning the hand every time. This means if you left

the default setting and happened to use the same name for an environment variable, a

POST variable, and a COOKIE variable, the COOKIE variable would own that name at the

end of the process. In real life, this doesn't happen much.

register_globals = Off

This setting allows you to decide whether you wish to register EGPCS variables as global.

This is now deprecated, and as of PHP4.2, this flag is set to Off by default. Use superglobal

arrays instead. All the major code listings in this book use superglobal arrays.

gpc_order = GPC

This setting has been GPC Deprecated.

magic_quotes_gpc = On

This setting escapes quotes in incoming GET/POST/COOKIE data. If you use a lot of forms

which possibly submit to themselves or other forms and display form values, you may

to set this need directive to On or prepare to use addslashes() on string-type data.

magic_quotes_runtime = Off

This setting escapes quotes in incoming database and text strings. Remember that SQL

adds slashes to single quotes and apostrophes when storing strings and does not strip

39
them off when returning them. If this setting is Off, you will need to use stripslashes()

when outputting any type of string data from a SQL database. If magic_quotes_sybase is

set to On, this must be Off.

magic_quotes_sybase = Off

This setting escapes single quotes in incoming database and text strings with Sybase-style

single quotes rather than backslashes. If magic_quotes_runtime is set to On, this must be

Off.

auto-prepend-file = [path/to/file]

If a path is specified here, PHP must automatically include() it at the beginning of every

PHP file. Include path restrictions do apply.

auto-append-file = [path/to/file]

If a path is specified here, PHP must automatically include() it at the end of every PHP

file.unless you escape by using the exit() function. Include path restrictions do apply.

include_path = [DIR]

If you set this value, you will only be allowed to include or require files from these

directories. The include directory is generally under your document root; this is mandatory

if you.re running in safe mode. Set this to . in order to include files from the same directory

your script is in. Multiple directories are separated by colons:

.:/usr/local/apache/htdocs:/usr/local/lib.

doc_root = [DIR]

If you.re using Apache, you.ve already set a document root for this server or virtual host

in httpd.conf. Set this value here if you.re using safe mode or if you want to enable PHP

only on a portion of your site (for example, only in one subdirectory of your Web root).

file_uploads = [on/off]

Turn on this flag if you will upload files using PHP script.

40
upload_tmp_dir = [DIR]

Do not uncomment this line unless you understand the implications of HTTP uploads!

session.save-handler = files

Except in rare circumstances, you will not want to change this setting. So don't touch it.

ignore_user_abort = [On/Off]

This setting controls what happens if a site visitor clicks the browser.s Stop button. The

default is On, which means that the script continues to run to completion or timeout. If

the setting is changed to Off, the script will abort. This setting only works in module mode,

not CGI.

mysql.default_host = hostname

The default server host to use when connecting to the database server if no other host is

specified.

mysql.default_user = username

The default user name to use when connecting to the database server if no other name is

specified.mysql.

XAAMPP
XAMPP stands for Cross-Platform (X), Apache (A), MySQL (M), PHP (P) and Perl (P).
It is a simple, lightweight Apache distribution that makes it extremely easy for developers to
create a local web server for testing purposes. Everything you need to set up a web server –
server application (Apache), database (MySQL), and scripting language (PHP) – is included in a
simple extractable file. XAMPP is also cross-platform, which means it works equally well on
Linux, Mac and Windows. Since most actual web server deployments use the same components
as XAMPP, it makes transitioning from a local test server to a live server is extremely easy as
well. Web development using XAMPP is especially beginner friendly.

What’s Included in XAMPP?

XAMPP has four primary components. These are:

41
1. Apache: Apache is the actual web server application that processes and delivers web content
to a computer. Apache is the most popular web server online, powering nearly 54% of all
websites.

2. MySQL: Every web application, howsoever simple or complicated, requires a database for
storing collected data. MySQL, which is open source, is the world’s most popular database
management system. It powers everything from hobbyist websites to professional platforms like
WordPress.

3. PHP: PHP stands for Hypertext Preprocessor. It is a server-side scripting language that
powers some of the most popular websites in the world, including WordPress and Facebook. It is
open source, relatively easy to learn, and works perfectly with MySQL, making it a popular
choice for web developers.

4. Perl: Perl is a high-level, dynamic programming language used extensively in network


programming, system admin, etc. Although less popular for web development purposes, Perl has
a lot of niche applications.

Different versions of XAMPP may have additional components such as phpMyAdmin,


OpenSSL, etc. to create full-fledged web servers.

How to Install XAMPP?

Step1

Install XAMPP

Step2

Assume you installed xampp in C Drive.


Go to: C:\xampp\htdocs

Create your own folder, name it for example as adithya.

Step3

Now create your first php program in xampp and name it as “add.php”:

Step4

Now double click on “XAAMP CONTROL PANEL” on desktop and START “Apache”
(icon also appears on the bottom)

42
Step5

Type localhost on your browser and press enter:

It will show the following

Step6

Now type the following on browser:


http://localhost/Adithya/
Step7

43
Click on “add.php” and it will show the following:

44
CODING

45
CHAPTER-8
Coding
<html>

<head>

<title>ADMIN LOGIN</title>

<link rel="stylesheet" href="css/main.css">

</head>

<body background="images/bgc.jpg">

<center><br><br><br>

<fieldset>

<font face="stencil" size="+5" color="white">

STUDENT TEACHER PORTAL</font>

</fieldset><br><br>

<ul>

<li><a href="index.html">HOME</a></li>

<li><a href="about.html">ABOUT</a></li>

<li class="dropdown">

<a href="javascript:void(0)" class="dropbtn">LOGIN</a>

<div class="dropdown-content">

<a href="admin_login.html">ADMIN</a>

<a href="staff_login.html">STAFF</a>

<a href="student_login.html">STUDENT</a>

</div>

</li>

</ul><br><br>

46
<fieldset>

<center><BR><BR><BR>

<font face="Stencil" color="white"><h1>ADMIN LOGIN</h1></font>

<form method="post" action="administrator_login_checking.php">

<input type="text" placeholder="Username" name="administrator_name"><br>

<input type="password" placeholder="Password" name="password"><br>

<input type="submit" name="sub" value="LOGIN">

</form>

</body>

</html>

<html>

<title>About</title>

<link rel="stylesheet" type="text/css" href="css/main.css" />

</head>

<body background="images/bgc.jpg">

<center><br><br><br>

<fieldset>

<font face="stencil" size="+5" color="white">

STUDENT TEACHER PORTAL</font>

</fieldset><br><br>

<ul>

<li><a href="index.html">HOME</a></li>

<li><a href="about.html">ABOUT</a></li>

<li class="dropdown">

<a href="javascript:void(0)" class="dropbtn">LOGIN</a>

47
<div class="dropdown-content">

<a href="admin_login.html">ADMIN</a>

<a href="staff_login.html">STAFF</a>

<a href="student_login.html">STUDENT</a>

</div>

</li>

</ul><br><br>

<fieldset>

<font face="stencil" size="+3" color="white"><u>ABOUT THE PROJECT</u></font><br>

<font face="times" size="+2" color="white"><p>Our web portal is to provide a good


communication and information sharing between the student and college staff. Student teacher
portal reduces time consuming activity like sending a circular to the class,giving a notes to the
students in the class..etc.The student can know their time table , notes provided to them and fee
details.The teaching staff can upload the notes and non teaching staff can add fee details
.Thus,the Student teacher portal simplifies information sharing between the Student and
Staff.</p></font>

</fieldset>

</body>

</html>

<?php

session_start();

$b=mysql_connect("localhost","root","") or die("ksajdflk");

//echo "connected";

//mysql_query("create database adithya") ;

//echo"database created ";

mysql_select_db("adithya") or die("not selected");

$query=0;

48
$query1=0;

$d2=$_SESSION['id1'];

$uid="";

$dbuid="";

$dbuid1=0;

$query= mysql_query("SELECT * FROM staff_login ") ;

$numrows1=mysql_num_rows($query);

if($numrows1!=0)

while($row=mysql_fetch_assoc($query))

$dbuid= $row['id'];

if($dbuid==$d2)

$dbuid1=1;

if($dbuid1==1)

mysql_query("delete from staff_login WHERE id='$d2'") or die("120121");

?>

<script>

alert("DATA DELETED");

window.location.href="DELETE_Details_staff.html";

</script>

49
<?php

else

?>

<script>

alert("Check the details Before Enter");

window.location.href="DELETE_Details_staff.html";

</script>

<?php

else

?>

<script>

alert("NO DATA EXIST");

window.location.href="DELETE_Details_staff.html";

</script>

<?php

?>

<html>

<head>

<title>UPLOAD</title>

50
<link rel="stylesheet" href="css/style1.css">

<center><br><br><br>

<fieldset>

<font face="stencil" size="+5" color="white">

STUDENT TEACHER PORTAL</font>

</fieldset><br><br>

<body background="images/bgc.jpg">

<center><br><br><br>

<fieldset>

<font Face="stencil" color="white" size="+5">WELCOME FACULTY</font><br>

<image src="images/lookhere.gif"><br><br>

</fieldset>

<fieldset>

<ul>

<li><a href="main_instructions.html"> TIMETABLE</a></li>

<li><a href="upload_doc.html"> NOTES</a></li>

<li><a href="upload_papers.html"> QUESTION PAPERS</a></li>

<li><a href="staff_login.html">LOGOUT</a></li>

</div>

</li>

</ul><br><br>

</body>

</html>

<?php

51
session_start();

require('library/php-excel-reader/excel_reader2.php');

require('library/SpreadsheetReader.php');

require('db_config.php');

$b=mysql_connect("localhost","root","") or die("ksajdflk");

echo "connected";

//mysql_query("create database adithya") ;

echo"database created ";

mysql_select_db("adithya") or die("not selected");

$year1=$_POST['year'];

$sem1=$_POST['sem'];

$query= mysql_query("SELECT * FROM time_table_details where year=$year1 AND


sem=$sem1")or die("not selected");

$numrows=mysql_num_rows($query);

if($numrows>=7)

?><script>

alert("DATA EXIST ");

window.location.href="upload_file.html";

</script><?php

52
if(isset($_POST['Submit'])){

$mimes = ['application/vnd.ms-
excel','text/xls','text/xlsx','application/vnd.oasis.opendocument.spreadsheet'];

if(in_array($_FILES["file"]["type"],$mimes)){

ini_set('display_errors', 1);

ini_set('display_startup_errors', 1);

error_reporting(E_ALL);

$uploadFilePath = 'uploads/'.basename($_FILES['file']['name']);

move_uploaded_file($_FILES['file']['tmp_name'], $uploadFilePath);

$Reader = new SpreadsheetReader($uploadFilePath);

$totalSheet = count($Reader->sheets());

echo "You have total ".$totalSheet."sheets ".

$html="<table border='1'>";

$html.="<tr>year<th></th><th>sem</th><th>day</th><th>period1</th><th>period2</t
h><th>period3</th><th>period4</th><th>period5</th><th>period6</th></tr>";

/* For Loop for all sheets */

$i=0;

if($i<$totalSheet){

$Reader->ChangeSheet($i);

foreach ($Reader as $Row)

$html.="<tr>";

/* Check If sheet not emprt */

$day = isset($Row[0]) ? $Row[0] : '';

53
$period1 = isset($Row[1]) ? $Row[1] : '';

$period2 = isset($Row[2]) ? $Row[2] : '';

$period3 = isset($Row[3]) ? $Row[3] : '';

$period4= isset($Row[4]) ? $Row[4] : '';

$period5 = isset($Row[5]) ? $Row[5] : '';

$period6 = isset($Row[6]) ? $Row[6] : '';

if($period1!=NULL)

$html.="<td>".$year1."</td>";

$html.="<td>".$sem1."</td>";

$html.="<td>".$day."</td>";

$html.="<td>".$period1."</td>";

$html.="<td>".$period2."</td>";

$html.="<td>".$period3."</td>";

$html.="<td>".$period4."</td>";

$html.="<td>".$period4."</td>";

$html.="<td>".$period5."</td>";

$html.="<td>".$period6."</td>";

$i=$i+1;

//for each closed

$html.="</tr>";

if($day!=NULL)

54
if($day!=NULL && $period1!=NULL && $period2!=NULL && $period3!=NULL &&
$period4!=NULL && $period5!=NULL && $period6!=NULL)

$query= mysql_query("SELECT * FROM time_table_details where year=$year1 AND


sem=$sem1")or die("not selected");

$numrows=mysql_num_rows($query);

if($numrows>=7)

?><script>

alert("DATA EXIST ");

window.location.href="upload_file.html";

</script><?php

echo "what is this";

$query = ("insert into


time_table_details(year,sem,day,period1,period2,period3,period4,period5,period6)
values('".$year1."','".$sem1."','".$day."','".$period1."','".$period2."','".$period3."','".$period4."','".
$period5."','".$period6."')") or die("120120");

$mysqli->query($query);

else

?>

<script>

alert("The File Format Is Not Supported");

alert("The File Should Be AS FOR INSTRUCTION S Format");

55
window.location.href="upload_file.html";

</script>

<?php

}//foreach loop

}//total_sheet if is closed

$html.="</table>";

echo $html;

?>

<script>

alert("FILE IS UPLOADED");

window.location.href="faculty_uploading_data.html";

</script>

<?php

}//file checking if closed

else {

?>

<script>

alert("The File Is Not Supported Only .ODS Files Only");

window.location.href="upload_file.html";

</script>

<?php

56
}

//starting if closed

?>

57
OUTPUTS

58
CHAPTER-9
Outputs

59
60
61
62
63
64
65
66
67
TESTING

68
CHAPTER-10
TESTINGS

Software Testing is evaluation of the software against requirements gathered from users and
system specifications. Testing is conducted at the phase level in software development life cycle
or at module level in program code. Software testing comprises of Validation and Verification.

Software Validation
Validation is process of examining whether or not the software satisfies the user requirements.
It is carried out at the end of the SDLC. If the software matches requirements for which it was
made, it is validated.

 Validation ensures the product under development is as per the user requirements.
 Validation answers the question – "Are we developing the product which attempts all that
user needs from this software ?".
 Validation emphasizes on user requirements.
Software Verification
Verification is the process of confirming if the software is meeting the business requirements,
and is developed adhering to the proper specifications and methodologies.

 Verification ensures the product being developed is according to design specifications.


 Verification answers the question– "Are we developing this product by firmly following
all design specifications ?"
 Verifications concentrates on the design and system specifications.
Target of the test are -
 Errors - These are actual coding mistakes made by developers. In addition, there is a
difference in output of software and desired output, is considered as an error.
 Fault - When error exists fault occurs. A fault, also known as a bug, is a result of an
error which can cause system to fail.
 Failure - failure is said to be the inability of the system to perform the desired task.
Failure occurs when fault exists in the system.

Manual Vs Automated Testing


Testing can either be done manually or using an automated testing tool:

69
 Manual - This testing is performed without taking help of automated testing tools. The
software tester prepares test cases for different sections and levels of the code, executes
the tests and reports the result to the manager.
Manual testing is time and resource consuming. The tester needs to confirm whether or
not right test cases are used. Major portion of testing involves manual testing.
 Automated This testing is a testing procedure done with aid of automated testing tools.
The limitations with manual testing can be overcome using automated test tools.
A test needs to check if a webpage can be opened in Internet Explorer. This can be easily done
with manual testing. But to check if the web-server can take the load of 1 million users, it is
quite impossible to test manually.
There are software and hardware tools which helps tester in conducting load testing, stress
testing, regression testing.

Testing Approaches
Tests can be conducted based on two approaches –

 Functionality testing
 Implementation testing
When functionality is being tested without taking the actual implementation in concern it is
known as black-box testing. The other side is known as white-box testing where not only
functionality is tested but the way it is implemented is also analyzed.
Exhaustive tests are the best-desired method for a perfect testing. Every single possible value in
the range of the input and output values is tested. It is not possible to test each and every value
in real world scenario if the range of values is large.

Black-box testing
It is carried out to test functionality of the program. It is also called ‘Behavioral’ testing. The
tester in this case, has a set of input values and respective desired results. On providing input, if
the output matches with the desired results, the program is tested ‘ok’, and problematic
otherwise.

In this testing method, the design and structure of the code are not known to the tester, and
testing engineers and end users conduct this test on the software.
Black-box testing techniques:
 Equivalence class - The input is divided into similar classes. If one element of a class
passes the test, it is assumed that all the class is passed.

70
 Boundary values - The input is divided into higher and lower end values. If these values
pass the test, it is assumed that all values in between may pass too.
 Cause-effect graphing - In both previous methods, only one input value at a time is
tested. Cause (input) – Effect (output) is a testing technique where combinations of input
values are tested in a systematic way.
 Pair-wise Testing - The behavior of software depends on multiple parameters. In
pairwise testing, the multiple parameters are tested pair-wise for their different values.
 State-based testing - The system changes state on provision of input. These systems are
tested based on their states and input.

White-box testing
It is conducted to test program and its implementation, in order to improve code efficiency or
structure. It is also known as ‘Structural’ testing.

In this testing method, the design and structure of the code are known to the tester.
Programmers of the code conduct this test on the code.
The below are some White-box testing techniques:
 Control-flow testing - The purpose of the control-flow testing to set up test cases which
covers all statements and branch conditions. The branch conditions are tested for both
being true and false, so that all statements can be covered.
 Data-flow testing - This testing technique emphasis to cover all the data variables
included in the program. It tests where the variables were declared and defined and
where they were used or changed.

Testing Levels
Testing itself may be defined at various levels of SDLC. The testing process runs parallel to
software development. Before jumping on the next stage, a stage is tested, validated and
verified.
Testing separately is done just to make sure that there are no hidden bugs or issues left in the
software. Software is tested on various levels -

71
Unit Testing
While coding, the programmer performs some tests on that unit of program to know if it is error
free. Testing is performed under white-box testing approach. Unit testing helps developers
decide that individual units of the program are working as per requirement and are error free.

Integration Testing
Even if the units of software are working fine individually, there is a need to find out if the units
if integrated together would also work without errors. For example, argument passing and data
updation etc.

System Testing
The software is compiled as product and then it is tested as a whole. This can be accomplished
using one or more of the following tests:
 Functionality testing - Tests all functionalities of the software against the requirement.
 Performance testing - This test proves how efficient the software is. It tests the
effectiveness and average time taken by the software to do desired task. Performance
testing is done by means of load testing and stress testing where the software is put
under high user and data load under various environment conditions.
 Security & Portability - These tests are done when the software is meant to work on
various platforms and accessed by number of persons.

Acceptance Testing
When the software is ready to hand over to the customer it has to go through last phase of
testing where it is tested for user-interaction and response. This is important because even if the
software matches all user requirements and if user does not like the way it appears or works, it
may be rejected.
 Alpha testing - The team of developer themselves perform alpha testing by using the
system as if it is being used in work environment. They try to find out how user would
react to some action in software and how the system should respond to inputs.
 Beta testing - After the software is tested internally, it is handed over to the users to use
it under their production environment only for testing purpose. This is not as yet the
delivered product. Developers expect that users at this stage will bring minute problems,
which were skipped to attend.

Regression Testing
Whenever a software product is updated with new code, feature or functionality, it is tested
thoroughly to detect if there is any negative impact of the added code. This is known as
regression testing.

72
Testing Documentation
Testing documents are prepared at different stages -

Before Testing
Testing starts with test cases generation. Following documents are needed for reference –
 SRS document - Functional Requirements document
 Test Policy document - This describes how far testing should take place before
releasing the product.
 Test Strategy document - This mentions detail aspects of test team, responsibility
matrix and rights/responsibility of test manager and test engineer.
 Traceability Matrix document - This is SDLC document, which is related to
requirement gathering process. As new requirements come, they are added to this
matrix. These matrices help testers know the source of requirement. They can be traced
forward and backward.

While Being Tested


The following documents may be required while testing is started and is being done:
 Test Case document - This document contains list of tests required to be conducted. It
includes Unit test plan, Integration test plan, System test plan and Acceptance test plan.
 Test description - This document is a detailed description of all test cases and
procedures to execute them.
 Test case report - This document contains test case report as a result of the test.
 Test logs - This document contains test logs for every test case report.

After Testing
The following documents may be generated after testing :
 Test summary - This test summary is collective analysis of all test reports and logs. It
summarizes and concludes if the software is ready to be launched. The software is
released under version control system if it is ready to launch.

Testing vs. Quality Control, Quality Assurance and Audit


We need to understand that software testing is different from software quality assurance,
software quality control and software auditing.
 Software quality assurance - These are software development process monitoring
means, by which it is assured that all the measures are taken as per the standards of
organization. This monitoring is done to make sure that proper software development
methods were followed.

73
 Software quality control - This is a system to maintain the quality of software product.
It may include functional and non-functional aspects of software product, which enhance
the goodwill of the organization. This system makes sure that the customer is receiving
quality product for their requirement and the product certified as ‘fit for use’.
 Software audit - This is a review of procedure used by the organization to develop the
software. A team of auditors, independent of development team examines the software
process, procedure, requirements and other aspects of SDLC. The purpose of software
audit is to check that software and its development process, both conform standards,
rules and regulations.

74
CONCLUSION

75
CHAPTER-11
Conclusion
Future work for the student teacher portal will involve more options for the student to get
information of every notice that is been placed in the college notice board and the more.The
unimplemented feedback from the user evaluation:

 There can be a section for students to view the notices that are displayed in the college.
 The option for view of their attendance can also be placed.
 A section to provide feedbacks.

This project turned out to be a valuable experience in software development. The theory of how
the development should be carried out and the things that can go wrong in the development
process were experienced firsthand. Many little challenges were encountered and the
understanding of why managing software development is not an easy task grew during the course
of this project.

The successful factor in the project was the transition of doors. Having sprintsplanned out and
iteratively implementing the features allowed fast adaptation to changing scope and
requirements. Following the scrum methodology ensured that aworking feature was produced
and any changes or add-ons to the existing feature could be handled easily.

Software development is a complicated process and developing a full webpage product, gave
valuable lessons in managing time, understanding and capturing user requirements, defining
scope, estimating task completion, designing for user satisfaction, evaluating and through testing
and mitigating the changing requirements, which will contribute to a better management of the
software development.

76
BIBILOGRAPHY

77
CHAPTER-12
Bibliography

[HTML4]

"HTML 4.01 Specification", D. Raggett, A. Le Hors, I. Jacobs, 24 December 1999.


The latest version of the specification is available at http://www.w3.org/TR/html4/. The
Recommendation defines three document type definitions: Strict, Transitional, and Frameset, all
reachable from the Recommendation.

[XML10]

"Extensible Markup Language (XML) 1.0 (fifth edition)" T. Bray, J. Paoli, C.M. Sperberg-
McQueen, Eve Maler, François Yergeau, editors, 26 November 2008.
Available at http://www.w3.org/TR/REC-xml/.

[CHARSETS]

Registered charset values. Download a list of registered charset values


from http://www.iana.org/assignments/character-sets.

[CSS1]

"Cascading Style Sheets, level 1", H. W. Lie and B. Bos, 17 December 1996, revised 11 January
1999
The latest version is available at http://www.w3.org/TR/CSS1

[CSS2]

"Cascading Style Sheets, level 2, CSS2 Specification", B. Bos, H. W. Lie, C. Lilley and I.
Jacobs, 12 May 1998 (revised 11 April 2008),
http://www.w3.org/TR/2008/REC-CSS2-20080411/

[CSS3COLOR]

"CSS3 Color Module," TantekÇelik, Chris Lilley, 28 October 2010, W3C Proposed
Recommendation. Available at http://www.w3.org/TR/2010/PR-css3-color-20101028/

[CSS3LIST]

"CSS3 module: lists," TantekÇelik, Ian Hickson, 7 November 2002, W3C working draft (work
in progress). Available at http://www.w3.org/TR/2002/WD-css3-lists-20021107

78
[CSS3SEL]

"Selectors", D. Glazman, T. Çelik, I. Hickson, 15 December 2009


Available at http://www.w3.org/TR/2009/PR-css3-selectors-20091215/

[CSS3SPEECH]

"CSS3 Speech Module", David Raggett, Daniel Glazman, Claudio Santambrogio, Daniel Weck,
19 April 2011, W3C Working Draft (work in progress). Available
at http://www.w3.org/TR/2011/WD-css3-speech-20110419/

lines (WCAG) 2.0", Ben Caldwell, Michael Cooper, Loretta Guarino Reid, Gregg Vanderheiden,
11 December 2008.
Available at: http://www.w3.org/TR/2008/REC-WCAG20-20081211/.

[XHTML]

"XHTML 1.0 The Extensible HyperText Markup Language", various authors,


Available at: http://www.w3.org/TR/xhtml1/.

[XMLNAMESPACES]

"Namespaces in XML 1.0 (third edition)", T. Bray, D. Hollander, A. Layman, R. Tobin, H. S.


Thompson, 8 December 2009
Available at: http://www.w3.org/TR/2009/REC-xml-names-20091208/

79

Anda mungkin juga menyukai