PHP Project

Download as pdf or txt
Download as pdf or txt
You are on page 1of 52
At a glance
Powered by AI
The key takeaways are that this project developed an online feedback system using technologies like HTML, Java Server Pages, Cascading Style Sheets, Java Scripts, Apache Tomcat and MySQL.

The purpose of this project was to develop an online application to get feedback from students and faculty about lecturers' performance and the college respectively.

The technologies implemented in developing this project included HTML, Java Server Pages (JSP), Cascading Style Sheets (CSS), Java Scripts, Apache Tomcat, and MySQL.

ONLINE FEEDBACK SYSTEM

Main Project submitted in partial fulfillment Of the requirements for the award of the degree of

BACHELOR OF TECHNOLOGY IN INFORMATION TECHNOLOGY


By

P.Anjaneyulu Mohd Abdul Mujeeb V. Madhavdinakar V .Siva Krishna

09241A1202 09241A1217 10245A1205 10245A1206

Under the Esteemed Guidance of

Dr. T.V. RajiniKanth HEAD OF THE DEPARTMENT

DEPARTMENT OF INFORMATION TECHNOLOGY GOKARAJURANGARAJU INSTITUTE OF ENGINEERING AND TECHNOLOGY Bachupally, Kukatpally, Hyderabad 500 090 1

CERTIFICATE
This is to certify that it is a bonafide record of MainProject work entitled ONLINE FEEDBACK SYSTEM done byP.Anjaneyulu (09241A1202), Mohd Abdul Mujeeb (09241A1217),V.MadhavDinakar (10245A1205),V.Siva Krishna (10245A1206),students of B.Techin the Department of Information Technology, GokarajuRangaraju Institute of Engineering and Technology during the period 20122013 in the partial fulfillment of the requirements for the award of degree of B.Tech in Information Technology. The results presented in this dissertation have been verified and are found to be satisfactory. This work is not submitted to any other university for the award of any Degree/Diploma.

Internal Guide Department Dr. T.V.RajiniKanth Professor and Head Department of IT GRIET Hyderabad-500090

Head of the

Dr. T.V.RajiniKanth Professor and Head Department of IT GRIET Hyderabad-500090

External Examiner

ACKNOWLEDGEMENT
I wish to express our deep gratitude to our guide Dr.T.V.RajiniKanth, Professor & Head, Department of IT, for all the advice, encouragement and constant support he has given us throughout our project work. This work would not have been possible without his support and valuable suggestions. We are grateful to Dr.T.V.RajiniKanth, Professor & Head Department of IT and the Members of the Project Review Committee, for their valuable suggestions. We are also grateful to Dr. Jandhyala N Murthy, Principal and Prof P.S.Raju, Director of GRIET for giving us the necessary facilities to carry out our project work successfully. We would like to thank all our friends for their help and constructive criticism during our project work.

P.Anjaneyulu

09241A1202

Mohd Abdul Mujeeb 09241A1217 V. Madhavdinakar10245A1205 V.Siva Krishna 10245A1206

ABSTRACT

The purpose of this application is to get the feedback from the students and faculty. Student feedback is about the performance of lecturers in a college& faculty feedback is about the college. This is a client-Server application deployed into colleges web-server. This application consists of: Student, Faculty, Administrator.

Clients for this application are students & faculty from different branches and courses. Each student/faculty is identified with his unique ID provided by the college. A link is provided for them wherethey gets logged in into their account with their ID and Password. The student/faculty then has to fill the feedback form and submit it.Login information entered by them are retrieved and verified by the server to allow the access to the website. Based on details an appropriate feedback form is displayed. When they submit the form,the feedback is checked for errors. Errors are displayed to the user to rectify. On completion of the feedback form, server stores the user details to avoid multiple feedback submission from a single user. Administrator can start a new feedback, can edit the details, can upload data, can insert data, and can download the data. There is anadministrator for each branch. Every administrator has access to their respective branch only.After completion of the feedback for that year, administrator can take a printout or can download the report.

CONTENTS

Introduction 1.1 Purpose of the Project 1.2 Project Approach 1.3 Project Goals and Objectives 1.4 Scope 1.5 Roles and Responsibilities Project Analysis 2.1 Functional Requirements 2.2 Software and Hardware Requirements Technologies Implemented 3.1 HTML 3.2 Java Server Pages (JSP) 3.3 Cascading Style Sheets (CSS) 3.4 Java Scripts 3.5 Apache Tomcat 3.6 My SQL Project Design 4.1 UML Diagrams 4.1.1 Class diagrams 4.1.2 Usecase diagrams 4.1.3 Sequence diagrams 4.1.4 Activity diagrams 4.2 Project Scenario 4.2.1 Student Login 4.2.1.1 Home 4.2.1.2 Details 4.2.1.3 Subjects 4.2.1.4 Feedback Form 4.2.1.4.1 Existed 4.2.2 Administrator Login 4.2.2.1 Settings 4.2.2.1.1 Questions 5

01 01 01 01 02 02 03 03 03 04 04 06 08 10 13 14 16 16 16 16 18 20 22 22 22 23 23 24 24 25 25 26

4.2.2.1.2 Faculty 4.2.2.1.3 Subjects 4.2.2.1.3.1 select semester 4.2.2.1.3.2 view subjects 4.2.2.1.4 Semesters 4.2.2.1.5 Start New Feedback Form 4.2.2.1.5.1 select semester 4.2.2.1.5.2 set subjects 4.2.2.1.5.3 Ready to take Feedback 4.2.2.2 Reports 4.2.2.2.1 Individual Report 4.2.2.2.1.1Individual Print 4.2.2.2.1.2 Individual Excel 4.2.2.2.2 Overall Report 4.2.2.2.2.1 Overall Print 4.2.2.2.2.2 Overall Excel 4.2.2.3 Change Password 4.2.2.3.1.1 modify password 4.2.2.3.1.2 password changed 5. Testing 5.1 Testing 5.2 Testing Methods 5.2.1 Black Box Testing 5.2.2 White Box Testing 5.3 Level in Testing 5.3.1 Unit Testing 5.3.2 Integrating Testing 5.4 Final Testing 5.4.1 Alpha Testing 5.4.2 Beta Testing 5.5 Testing of Online Feed Back System 5.6 Result Analysis 5.6.1 Scope of Testing 6 37 36 36 36 36 36 36 35 35 35 35 35 35 34 34 34 35 30 31 32 32 33 33 28

26 27 27 27 28

28 29 29 30

5.6.2 Qualitative Grading

38

6. Conclusion 6.1 Future scope 39

39

Bibliography

40

Appendix

41

LIST OF FIGURES

4.1 UML Diagrams 4.1.1 Class diagrams 4.1.2 Usecase diagrams 4.1.3 Sequence diagrams 4.1.4 Activity diagrams

16 16 16 18 20

4.2 Screen Shots 4.2.1 Student Login 4.2.1.1 Home 4.2.1.2 Details 4.2.1.3 Subjects 4.2.1.4 Feedback Form 4.2.1.4.1 Existed 4.2.2 Administrator Login 4.2.2.1 Settings 4.2.2.1.1 Questions 4.2.2.1.2 Faculty 4.2.2.1.3 Subjects 4.2.2.1.3.1 select semester 4.2.2.1.3.2 view subjects 4.2.2.1.4 Semesters 7

22 22 22 23 23 24 24 25 25 26 26 27 27 27 28

4.2.2.1.5 Start New Feedback Form 4.2.2.1.5.1 select semester 4.2.2.1.5.2 set subjects

28 28 29

4.2.2.1.5.3 Ready to take Feedback 4.2.2.2 Reports 30 4.2.2.2.1 Individual Report 30 4.2.2.2.1.1Individual Print 31 4.2.2.2.1.2 Individual Excel 32 4.2.2.2.2 Overall Report 32 4.2.2.2.2.1 Overall Print 33 4.2.2.2.2.2 Overall Excel 33 4.2.2.3 Change Password 4.2.2.3.1.1 modify password 34 4.2.2.3.1.2 password changed 34 34

29

1. INTRODUCTION 1.1 Purpose of the Project This project is developed to take feedback from students& faculty of GRIET and is a complete online project. For a firm to run successfully it is compulsory to take feedback from its clients. 1.2 Project Approach This section gives an outline of the way we developed the application, including the highest level milestones: 8

Phase I: Gathering of information regarding the various technologies to be develop a online feedback system.

used to

Phase II: We learned the technologies to be used for the developed during this phase by listening to tutorials which helped us gain knowledge about the implementation of the technologies.

Phase III: Coding was next aspect and did it by using various technologies like HTML,CSS 3,JAVAScripts,Mysql etc

Phase IV: After running the application in the Apache Tomcat Server,we installed the application on a server to check for the proper working of the functionalities that the application was aimed at.

Phase V: As this application was meant to be a cross-platform one,we had to ensure that it works on different platforms.For this,we made it run on various operating systems and on different browsers.

Phase VI: Testing of the application was done by installing the application on college server to check whether all the functionalities were being satisfied or not.

1.3 Project Goals and objectives The application goals and objectives for this project will focus on implementing online feedback system that will do the following:

Facilitates

coordination and

information sharing between both the

administrators and the users.


Provides an open, flexible, reliable technology base. Is easy to use. Ensuring that end users have input into the design of the application through the feedback forms provided.

1.4Scope

As the feedback which is taken at the end of every semester, the same process is followed in this project. This project is designed to reduce the paper work, human resources and manual calculation.

1.5 Roles and Responsibilities The student/faculty logs in with his unique ID and password,selects the feedback form and gives the feedback. The administrator generates the final reports after the feedback is obtained from the students& faculty. He can generate the individual reports as well as overall reports depending on his need.

2. PROJECT ANALYSIS
2.1 Functional Requirements: 2.1.1 Output Design The appearance of the application is designed using HTML.

2.1.2 Input Design

10

Input design is a part of overall system design. The application is designed to take input only through the feedback forms provided in the Contacts section. The user can give his input in the feedback forms easily as it has been designed using various HTML form elements like select, etc.

2.2Hardware Specifications: Processor: Intel P-VI based system or higher. CPU speed: 833 MHz to 2.53GHz or more. RAM: min 120 MB. Hard Disk: min60GB.

2.3Software specifications: Operating system: Linux, windows 2000,2003, XP,vista,7 or later. Technologies: HTML, CSS, JavaServerPages, JavaScripts. Web Server: Apache Tomcat server 5 or later. DataBase: MySQL.

3. TECHNOLOGIES IMPLEMENTED
HTML Java Server Pages (JSP) Cascading Style Sheets (CSS) Java Scripts Apache Tomcat 11

3.1 HTML

My SQL

Hypertext Markup Language (HTML) is the main markup language for displaying web pages and other information that can be displayed in a web browser. HTML is written in the form of HTML elements consisting of tags enclosed in angle brackets (like <html>), within the web page content. HTML tags most commonly come in pairs like <h1> and </h1>, although some tags, known as empty elements, are unpaired, for example <img>. The first tag in a pair is the start tag , the second tag is the end tag(they are also called opening tags and closing tags). In between these tags web designers can add text, tags, comments and other types of text-based content. The purpose of a web browser is to read HTML documents and compose them into visible or audible web pages. The browser does not display the HTML tags, but uses the tags to interpret the content of the page. HTML elements form the building blocks of all websites. HTML allows images and objects to be embedded and can be used to create interactive forms. It provides a means to create structured by denoting structural semantics for text such as headings, paragraphs, lists, links, quotes and other items. It can embed scripts in languages such as JavaScript which affect the behavior of HTML web pages. 3.1.1 Elements: HTML documents are composed entirely of HTML elements that, in their most general form have three components: a pair of tags, a "start tag" and "end tag"; some attributes within the start tag; and finally, any textual and

graphical content between the start and end tags, perhaps including other nested elements. The HTML element is everything between and including the start and end tags. Each tag is enclosed in angle brackets. The general form of an HTML element is therefore: <tag attribute1="value1" attribute2="value2"> content</tag>. Some HTML elements are defined as empty elements and take the form <tag attribute1="value1" attribute2="value2" >. Empty elements may enclose no content, for instance, the BR tag or the inline IMG tag. The name of an

12

HTML element is the name used in the tags. Note that the end tag's name is preceded by a slash character, "/", and that in empty elements the end tag is neither required nor allowed. If attributes are not mentioned, default values are used in each case. The World Wide Web is composed primarily of HTML documents transmitted from web servers to web browsers using the Hypertext Transfer Protocol (HTTP). However, HTTP is used to serve images, sound, and other content, in addition to HTML. To allow the Web browser to know how to handle each document it receives, other information is transmitted along with the document. This data usually includes the MIME type (e.g. text/html or application/xhtml+xml) and the character encoding (see Character encoding in HTML). In modern browsers, the MIME type that is sent with the HTML document may affect how the document is initially interpreted. A document sent with the XHTML MIME type is expected to be well-formed XML; syntax errors may cause the browser to fail to render it. The same document sent with the HTML MIME type might be displayed successfully, since some browsers are more lenient with HTML. 3.1.2 Structural markup describes the purpose of text For example, <h2>Golf</h2> establishes "Golf" as a second-level heading. Structural markup does not denote any specific rendering, but most web browsers have default styles for element formatting. Content may be further styled using Cascading Style Sheets (CSS). 3.1.3 Presentational markup describes the appearance of the text, regardless of its purpose For example <b>boldface</b> indicates that visual output devices should render "boldface" in bold text, but gives little indication what devices that are unable to do this (such as aural devices that read the text aloud) should do. In the case of both<b>bold</b> and <i>italic</i>, there are other elements that may have equivalent visual renderings but which are more semantic in nature, such as <strong>strong text</strong> and <em>emphasised text</em> respectively. It is easier to see how an aural user agent should interpret the latter two elements. However, they are not equivalent to their presentational counterparts: it would be undesirable for a screenreader to emphasize the name of a book, for instance, but on a screen such a name would be italicized. Most 13

Presentational markup elements have become deprecated under the HTML 4.0 specification, in favor of using CSS for styling. 3.1.4 Data types HTML defines several data types for element content, such as script data and style sheet data, and a plethora of types for attribute values, including IDs, names, URIs, numbers, units of length, languages, media descriptors, colors, character encodings, dates and times, and so on. All of these data types are specializations of character data. 3.2 JAVA SERVER PAGES (JSP) Java Server Pages (JSP) is a technology that helps software

developers create dynamically generated web pages based on HTML, XML, or other document types. Released in 1999 by Sun Microsystems, JSP is similar to PHP, but it uses the Java programming language. To deploy and run Java Server Pages, a compatible web server with a servlet container, such as Apache Tomcat or Jetty, is required.

Fig2.2 The JSP Model 2 architecture. Architecturally, JSP may be viewed as a high-level abstraction of Java servlets. JSPs are translated into servlets at runtime; each JSP's servlet is cached and re-used until the original JSP is modified. JSP can be used independently or as the view component of a serverside modelviewcontroller design, normally with JavaBeans as the model and Java servlets (or a framework such as Apache Struts) as the controller. This is a type of Model 2 architecture. 14

JSP allows Java code and certain pre-defined actions to be interleaved with static web markup content, with the resulting page being compiled and executed on the server to deliver a document. The compiled pages, as well as any dependent Java libraries, use Java byte code rather than a native software format. Like any other Java program, they must be executed within a Java virtual machine (JVM) that integrates with the server's host operating system to provide an abstract platform-neutral environment. JSP pages are usually used to deliver HTML and XML documents, but through the use of Output Stream, they can deliver other types of data as well. JSP pages use several delimiters for scripting functions. The most basic is <% ... %>, which encloses a JSP scriptlet. A scriptlet is a fragment of Java code that is run when the user requests the page. Other common delimiters include <%= ... %> for expressions, where the value of the expression is placed into the page delivered to the user, and directives, denoted with <%@ ... %>. Java code is not required to be complete or self-contained within its scriptlet element block, but can straddle markup content providing the page as a whole is syntactically correct. For example, any Java if/for/while blocks opened in one scriptlet element must be correctly closed in a later element for the page to successfully compile. Markup which falls inside a split block of code is subject to that code, so markup inside an if block will only appear in the output when the if condition evaluates to true; likewise, markup inside a loop construct may appear multiple times in the output depending upon how many times the loop body runs. A Java Server Pages compiler is a program that parses JSPs, and transforms them into executable Java Servlets. A program of this type is usually embedded into the application server and run automatically the first time a JSP is accessed, but pages may also be precompiled for better performance, or compiled as a part of the build process to test for errors. Some JSP containers support configuring how often the container checks JSP file time stamps to see whether the page has changed. Typically, this timestamp would be set to a short interval (perhaps seconds) during software development, and a longer interval (perhaps minutes, or even never) for a deployed Web application. 3.3 CASCADING STYLE SHEETS (CSS)

15

Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation semantics (the look and formatting) of a document written in a markup language. Its most common application is to style web pages written in HTML and XHTML, but the language can also be applied to any kind of XML document, including plain XML,SVG and xul CSS is designed primarily to enable the separation of document content (written in HTML or a similar markup language) from document presentation, including elements such as the layout, colors, and fonts. This separation can improve content accessibility, provide more flexibility and control in the specification of presentation characteristics, enable multiple pages to share formatting, and reduce complexity and repetition in the structural content (such as by allowing for table less web design). CSS can also allow the same markup page to be presented in different styles for different rendering methods, such as on-screen, in print, by voice (when read out by a speech-based browser or screen reader) and on Braille-based, tactile devices. It can also be used to allow the web page to display differently depending on the screen size or device on which it is being viewed. While the author of a document typically links that document to a CSS style sheet, readers can use a different style sheet, perhaps one on their own computer, to override the one the author has specified. CSS specifies a priority scheme to determine which style rules apply if more than one rule matches against a particular element. In this so-called cascade, priorities or weights are calculated and assigned to rules, so that the results are predictable.CSS has a simple syntax and uses a number of English keywords to specify the names of various style properties. A style sheet consists of a list of rules. Each rule or rule-set consists of one or more selectors, and a declaration block. A declaration-block consists of a list of declarations in braces. Each declaration itself consists of a property, a colon (:), and a value. If there are multiple declarations in a block, a semi-colon (;) must be inserted to separate each declaration CSS information can be provided from various sources.

16

CSS style information can be in a separate document or it can be embedded into an HTML document. Multiple style sheets can be imported. Different styles can be applied depending on the output device being used; for example, the screen version can be quite different from the printed version, so that authors can tailor the presentation appropriately for each medium. Priority scheme for CSS sources (from highest to lowest priority): Author styles (provided by the web page author), in the form of: Inline styles, inside the HTML document, style information on a single element, specified using the style attribute Embedded style, blocks of CSS information inside the HTML itself External style sheets, i.e., a separate CSS file referenced from the document

3.3.1 Separation of content from presentation CSS facilitates publication of content in multiple presentation formats based on nominal parameters. Nominal parameters include explicit user preferences, different web browsers, the type of device being used to view the content (a desktop computer or mobile Internet device), the geographic location of the user and many other variables.

3.3.2 Site-wide consistency When CSS is used effectively, in terms of inheritance and "cascading," a global style sheet can be used to affect and style elements site-wide. If the situation arises that the styling of the elements should need to be changed or adjusted, these changes can be made by editing rules in the global style sheet. Before CSS, this sort of maintenance was more difficult, expensive and time-consuming.

3.3.3 Bandwidth A style sheet, internal or external, will specify the style once for a range of HTML elements selected by class, type or relationship to others. This is much more efficient than repeating style information inline for each occurrence of the element. An external style sheet is usually stored in the browser cache, and can therefore be used on multiple pages without being reloaded, further reducing data transfer over a network. 17

3.3.4 Page reformatting With a simple change of one line, a different style sheet can be used for the same page. This has advantages for accessibility, as well as providing the ability to tailor a page or site to different target devices. Furthermore, devices not able to understand the styling still display the content.

3.3.5 Accessibility Without CSS, web designers must typically lay out their pages with techniques that hinder accessibility for vision-impaired users, like HTML tables (see Table less web design Accessibility). 3.4 JAVA SCRIPTS JavaScript (sometimes abbreviated JS) is a prototype-based scripting

language that is dynamic, weakly typed and has first-class functions. It is a multiparadigm language, programming styles. JavaScript was formalized in the ECMA Script language standard and is primarily used in the form of client-side JavaScript, implemented as part of a Web browser in order to give enhanced user interfaces and dynamic websites. This enables programmatic access to computational objects within a host environment. JavaScript's use in applications outside Web pages for example supporting object-oriented,imperative, and functional

in PDF documents, site, and desktop widgets is also significant. Newer and faster JavaScript VMs and frameworks built upon them (notably Node.js) have also increased the popularity of JavaScript for server-side web applications. JavaScript uses syntax influenced by that of C. JavaScript copies many names and naming conventions from Java, but the two languages are otherwise unrelated and have very different semantics. The key design principles within JavaScript are taken from the self and scheme programming languages. 3.4.1 Imperative and structured JavaScript supports much of the structured programming syntax

from C (e.g., if statements, while loops, switch statements, etc.). One partial exception is scoping: C-style block-level scoping is not supported (instead, JavaScript has function-level scoping). JavaScript 1.7, however, supports block-level scoping with 18

the let keyword.

Like

C,

JavaScript

makes

distinction

between

expressions and statements. One syntactic difference from C is automatic semicolon insertion, in which the semicolons that terminate statements can be omitted. 3.4.2 Dynamic 3.4.2.1 Dynamic typing As in most scripting languages, types are associated with values, not

with variables. For example, a variable x could be bound to a number, then later rebound to a string. JavaScript supports various ways to test the type of an object, including duck typing. 3.4.2.2 Object based Java is entirely object-based. JavaScript objects are associative arrays,

augmented with prototypes (see below). Object property names are string keys:obj.x = 10 and obj['x'] = 10 are equivalent, the dot notation being syntactic sugar. Properties and their values can be added, changed, or deleted at run-time. Most properties of an object (and those on its prototype inheritance chain) can be enumerated using a for...in loop. JavaScript has a small number of built-in objects such as Function and Date. 3.4.2.3 Run-time evaluation JavaScript includes an eval function that can execute statements provided as strings at run-time. 3.4.3 Functional 3.4.3.1 First-class functions Functions are first-class; they are objects themselves. As such, they have properties and methods, such as length and call (); and they can be assigned to variables, passed as arguments, returned by other functions, and manipulated like any other object. Any reference to a function allows it to be invoked using the () operator. 3.4.3.2 Nested functions and closures "Inner" or "nested" functions are functions defined within another function. They are created each time the outer function is invoked. In addition to that, each created function forms a lexical closure the lexical scope of the outer function, including any constants, local variables and argument values, become part of the internal state of each inner function object, even after execution of the outer function concludes. 19

Use in web pages The most common use of JavaScript is to write functions that are embedded in or included from HTML pages and that interact with the Document Object

Model (DOM) of the page. Some simple examples of this usage are: Loading new page content or submitting data to the server via AJAX without reloading the page (for example, a social network might allow the user to post status updates without leaving the page) Animation of page elements, fading them in and out, resizing them, moving them, etc. Interactive content, for example games, and playing audio and video Validating input values of a web form to make sure that they are acceptable before being submitted to the server. Transmitting information about the user's reading habits and browsing activities to various websites. Web pages frequently do this for web analytics, ad tracking, personalization or other purposes. 3.4.4 Security JavaScript and the DOM provide the potential for malicious authors to deliver scripts to run on a client computer via the web. Browser authors contain this risk using two restrictions. First, scripts run in a sandbox in which they can only perform web-related actions, not general-purpose programming tasks like creating files. Second, scripts are constrained by the same origin policy: scripts from one web site do not have access to information such as usernames, passwords, or cookies sent to another site. Most JavaScript-related security bugs are breaches of either the same origin policy or the sandbox.

3.5 APACHE TOMCAT Apache Tomcat (or simply Tomcat, formerly also Jakarta Tomcat) is an open source web server and servlet container developed by the Apache Software Foundation (ASF). Tomcat implements the Java servlet and the Java Server Pages(JSP) specifications from Oracle Corporation, and provides a "pure Java" HTTP web server environment for Java code to run. 20

Apache Tomcat

Screenshot [show] Developer(s) Stable release Development status Programming language used Operating system Type License Cross-platform Servlet containerHTTP web server Apache License 2.0 Fig: 2.5 Tomcat is not the same as the Apache web server, which is Apache Software Foundation 7.0.29[1] / July 3, 2012; 34 days ago Active Java

a C implementation of an HTTP web server; these two web servers are not bundled together, although they are frequently used together as part of a server application stack. Apache Tomcat includes tools for configuration and management, but can also be configured by editing XML configuration files 3.5.1 Used in this way: After the installation is completed, we placed our project in webapps folder. Then we have set a new path as CLASSPATH in control panel. After that we configured the Apache tomcat server. Then we opened a browser and in entered the url as localhost:8080 it redirected us to a page where projects can be seen We clicked our project name and it redirected us to a home page our project. This is common method for using apache tomcat server and can followed for other projects also.

3.6 My SQL

21

MySQL("My S-Q-L" officially, but also called My Sequel") is the world's most usedopen source relational database management system(RDBMS) that runs as a server providing multi-user access to a number of databases. It is named after co-founder Michael Widenius daughter, MYSQL phrase stands for Structured Query Language. The MySQL development project has made its source code available under the terms of the GNU General Public License, as well as under a variety of proprietary agreements. MySQL was owned and sponsored by a single non-profit firm, the Swedish company MySQL AB, now owned by Oracle Corporation. Free-software open source projects that require a full-featured database management system often use MySQL. For commercial use, several paid editions are available, and offer additional functionality. Applications which use MySQL databases include: TYPO3, Joomla ,Word Press, phpBB, MyBB , Drupal and other software built on the LAMP software stack. MySQL is also used in many highprofile, large-scale World wide web products, including Wikipedia,Google (though not for searches), Facebook and Twitter

MySQL implements the following features, which some other RDBMS systems may not:

Multiple storage engines, allowing one to choose the one that is most effective for each table in the application (in MySQL 5.0, storage engines must be compiled in; in MySQL storage engines can be dynamically loaded at run time):

Native storage engines (MyISAM, Falcon, Merge, Memory (heap), FederatedArchive, CSV, Blackhole, Cluster, EXAMPLE,Maria, andInnoDB which was made the default a)

Partner-developed

storage

engines

(solid

DB

NitroEDB,

ScaleDB,

TokuDB,Infobright (formerly Brighthouse),Kickfire,XtraDB,IBM DB2).Inno used to be a partner-developed storage engine, but with recent

acquisitions,Oracle now owns both MySQL core and InnoDB.

Community-developed PBXT,Revision Engine)

storage

engines

memcacheengine

,httped

Custom storage engines

22

Commit grouping, gathering multiple transactions from multiple connections together to increase the number of commits per second. (PostgreSQl has an advanced form of this functionality)

3.6.1. Used in this way We used MySQL to insert information into the databases regarding the details of the students and faculty so that it can be displayed in respective sections of the application. We also used it to store the feedback ratings given by the students.

4 PROJECT DESIGN
4.1 UML Diagrams: 4.1.1 Class Diagram:

23

4.1.2 Usecase Diagrams : 4.1.2.1 Usecase diagram for Student:

4.1.2.2 Usecase Diagram For Faculty:

24

4.1.2.3 Usecase Diagram For Administrator:

4.1.2.4 Usecase Diagram For Administrator-2: 25

The above uml diagram is the usecase diagram of administrator-2. When the administrator logs in he/she have six modules namely, manual, settings, reports, Message Box,Account andlogout. The manual module contains a walk through of the project. The settings module contains five more sub-modulesfaculty data, questions,upload,download and start new feedback. The Use case diagram will help us to easily find out the required result.

4.1.3 Sequence Diagrams: 26

4.1.3.1 Sequence Diagram for Student:

4.1.3.2 Sequence Diagram for Faculty:

4.1.3.3 Sequence Diagram for Administrator: 27

4.1.3.4 Sequence Diagram for Administrator-2: 28

4.1.4 Activity Diagrams: 29

4.1.4.1 Activity Diagram for student:

Click on Internet Button

Enter site address

Choose student or addmin login

Click on studentlogin

Enter userid&password

If submitted feedback

Alredy submitted feedback

submit feedback

Choose feedback option

See the ratings of the feedback

Give the feedback

Submit & logout

4.1.4.2 Activity diagram for Administrator 30

Click on Internet Button

Enter admin login

Choose manual,settings,reports,change psw

Settings of questions,faculty,subjects,initial,new feedback

Choose reports Select particular semister

Overall faculty report

Check result

Individual report Check result

4.2 PROJECT SCENARIO


31

4.2.1 STUDENT LOGIN:

Fig: 4.2.1 student login

4.2.1.1 Home

Fig 4.2.1.1 student home

4.2.1.2 Details: 32

Fig: 4.2.1.2 Student Details

4.2.1.3 SUBJECTS:

Fig: 4.2.1.3student subjects

33

4.2.1.4 Feedback Form:

Fig: 4.2.1.4 feedback form

4.2.1.4.1 Already feedback given:

Fig: 4.2.1.4.1 already given the feedback

4.2.1.5 Account: 34

Fig: 4.2.1.5 student account

4.2.2Faculty Login:

Fig: 4.2.2 Faculty Login

35

4.2.2.1 Faculty Home:

Fig: 4.2.2.1 faculty home

4.2.2.2Faculty Details:

Fig: 4.2.2.1 faculty details

36

4.2.2.3Faculty feedback:

Fig: 4.2.2.3 Faculty feedback

4.2.2.3.1 Already feedback given :

Fig: 4.2.2.3.1 Already given the feedback

37

4.2.2.4 Faculty Account:

Fig: 4.2.2.4 Faculty Account

4.2.3 Administrator Login:

Fig: 4.2.3 Administrator Login

38

4.2.3.1 Administrator Home:

Fig: 4.2.3.1 Administrator Home

4.2.3.2 Reports :

Fig: 4.2.3.2 Reports

4.2.3.2.1 Individual Reports : 39

Fig: 4.2.3.2.1 Individual Reports

4.2.3.2.1.1 Individual Print:

Fig: 4.2.3.2.1.1 Individual Print

40

4.2.3.2.1.2 Individual Excel:

Fig: 4.2.3.2.1.2 Individual Excel

4.2.3.2.2 Overall Report:

Fig: 4.2.3.2.2 Overall Report

4.2.3.2.2.1 Overall Print: 41

Fig: 4.2.3.2.2 .1 Overall Print

4.2.3.2.2.2 Overall Excel:

Fig: 4.2.3.2.2 .2 Overall Excel

42

4.2.3.3 Administrator Account:

Fig: 4.2.3.3 Administrator account

4.2.4 Administrator-2 Login:

Fig: 4.2.4Administrator-2 Login

43

4.2.4.1 Administrator-2 Home:

Fig: 4.2.4.1Administrator-2 Home

4.2.4.2 Reports:

Fig: 4.2.4.2 Reports 4.2.4.2.1 Question wise Reports: 44

Fig: 4.2.4.2.1 Question wise Report

4.2.4.2.2 Overall Report:

Fig: 4.2.4.2.2 OverallReport

4.2.4.3 :Administrator-2 Account: 45

Fig: 4.2.4.3 Administrator-2 Account

5. TESTING
46

5.1 Testing Software testing is process used to assess the quality of computer software. It is an empirical technical investigation conducted to provide stakeholders with information about the quality of the product or service under test, with respect to the context in which it is intended to operate. This includes but not limited to, the process of executing the program or application with the intent of finding software bugs. 5.2 Testing Methods Software testing methods are traditionally divided into white box testing and black box testing. These two approaches are used to describe the point of view that a test engineer takes when designing test cases. 5.2.1 Black Box Testing Black box testing treats the software as a black box without the knowledge of internal behaviour. It aims to test the functionality according to the requirements. Thus the tester only inputs data and sees the output from the test object. This kind of testing requires through test cases to be provided to the tester who then can simply verify that for a given input, the output value is the same as the expected value specified in the test cases. 5.2.2 White Box Testing White box testing is however, is when the tester has access to the internal data structures, code and the algorithms. These methods include creating tests to satisfy some code coverage criteria. For example the test designer can create test to cause all statements in the program to be executed atleast once. Other examples of white box testing are mutation testing and fault injection method. 5.3 Levels in Testing Soft ware testing levels are given below 5.3.1 Unit Testing This tests the minimal software component of the module. Each unit of the software is tested to verify the detailed design for the unit has been correctly implemented.

47

In an object oriented environment, this is usually at the class level and the minimal unit tests include the constructors and destructors.

5.3.2 Integrating Testing This exposes defects in the interfaces and interaction between integrated components. Progressively larger groups of tested software components

corresponding to elements of the architectural design are integrated and tested until the software works as a system. 5.4 Final Testing Before shipping the final version of the software, alpha and beta testing are often done additionally. 5.4.1 Alpha Testing This is a simulated or actual operation testing with the potential users or an independent testing at the developers site. Alpha testing is often employed for off the shelf software as a form of internal acceptance testing before the software goes to beta testing. 5.4.2 Beta Testing This comes after alpha testing. Versions of the software, known as beta versions, are released to limited audience outside the programming team. The software is released to groups of people so that further testing can ensure that the product has few faults or bugs. Sometimes, beta versions are made available to the open public to increase the feedback field to a maximal number of future users. Finally, acceptance testing can be conducted by the end user, customer or client to validate whether or not to accept the product. Acceptance testing may be performed as part of the hand off process between any two phases of development. 5.5 Testing of online feedback System Testing by us (developers) was done by deploying our project in college server to check whether all the modules are working properly. 5.6 Results Analysis The role of the results section is clear enough, it should be an accurate account of the experimental findings.

48

5.6.1. Scope of Testing It is very important to communicate to the reader of the report the scope of testing.One could provide,

In scope of testing Out scope of testing Any deviations from the planned scope

It makes a lot of difference to handle each of these aspects while reporting the results.Each of them has its own impact on the state of the application. Strengths and limitations of a product can be better presented to the customer only if they are handled individually.

S.No Type of Testing 1 2 3 4 5 6 7 8 9 10 Functionality Regression Security Performance

Priority(High/Med/Low) High High Med Med

Scalability/Reliability High Usability/GUI High

Conversion/Migration High Platform System Interoperability Installation Independent High High

It makes a lot of difference to handle each of these aspects while reporting the results.Each of them has its own impact on the state of the application. Strengths and limitations of a product can be better presented to the customer only if they are handled individually.

49

5.6.2.Qualitative Grading: The section presents the reader at a high level a qualitative picture of various parameters.The table below could list all the parameters related to a software so that the reader is able to get a glance and an idea about those aspects which are working as expected and those which are having issues.

S.No Attribute 1 2 3 4 5 6 7 8 9

Grade(High/Med/Low) Remarks Good

Confirmity to Standards High and Requirements Consistency Supports Concurrency GUI Usability Performance Security Robustness Error Handling Med Med High High Med Med Med High

Requirements documented well. Could be better.

not

50

6. CONCLUSION AND FUTURE SCOPE Conclusion


The project has given the me immense knowledge of various technologies (HTML, JSP, Apache Tomcat,and MySql etc.) that can be used to develop such applications with ease rather than making use of the existing complex modules. The application developed by us is also supported on various Operating Systems (Windows Xp, Windows 7, Linux) which makes the application be used on various devices. We also made the application interactive by taking feedback from the user so that we can improve our application based on the suggestions given and also suggest on improving the events conducted.

Future Scope
As the number of institutions are following the process of taking the feedback from its clients in order to know how best their service is. In this context our application can be used. So this means that our project can found its use in many customer service organisations that may include:

Any Private Business Organisation IT Firm Government Firm It can also be used in Online Shopping World allowing the users who are registered with their site to give their feedback regarding the quality of services provided to them.

Many Organizations take feedback from their clients on a paper and later manually calculate the ratings individually.This consumes more time and there are many possibilities of commiting mistakes. Hence to overcome all these difficulties they require an automated application which calculates the ratings at the background and displays only the result in their required format.For this purpose our application can be used.

51

BIBLIOGRAPHY
REFERENCES: References for the project development were taken from the following books and websites: th JAVA Complete Reference by Herbert Schildt ,7 edition

Java Script Programming by Yehuda Shiran Mastering JAVA Security by rich Helton JAVA2 Networking by Pistoria 2 nd Edition JAVA Security by Scotl oak 2 nd Edition SQL Handbook by Judith S. Bowman 4th Edition SQL Fundamentals by John J. Pattrick 3 rd Edition MySQL by Baron Schwartz 3rd Editionsss JAVA Server pages by Nick Todd HTML Black Book by Holzner JDBC Java Database Programming with JDBC by Patel moss. Software Engineering by Roger Pressman.

WEBSITES: http://www.w3schools.com/ http://www.roseindia.net/programming/tutorials/MysqlTutorials.shtml


http://poi.apache.org/ http://www.roseindia.net/jdbc/Jdbc-odbc-connection.shtml

52

You might also like