Final Bug Tracking 02-05-2010
Short Description
Download Final Bug Tracking 02-05-2010...
Description
Project Report Bug Tracking System
PROJECT REPORT ON
BUG TRACKING SYSTEM SUBMITTED IN PARTIAL FULFILMENT OF THE REQUIREMENT FOR THE AWARD OF THE DEGREE OF BACHELOR OF TECHNOLOGY (COMPUTER SCIENCE & ENGINEERING) SUBMITTED BY I.V. SURENDRA VARUN KUMAR NAGIREDDY JANARDANA RAO A.HARI PRASAD GUPTA S.SRIKANTH D.PRASHANTH
(06861A0530) (06861A0559) (06861A0501) (06861A0580) (06861A0523)
UNDER THE ESTEEMED GUIDANCE OF
Mr. A SRINIVAS
COPMUTER SCIENCE & ENGINEERING
MOTHER THERESSA COLLEGE OF ENGINEERING & TECHNOLOGY
1
Project Report Bug Tracking System PEDDABONKUR, PEDDAPALL KARIMNAGAR DIST, AP.
CERTIFICATE
This is to certify that the project work entitled BUG TRACKING SYSTEM that is being submitted by I.V.SURRENDRA VARUN KUMAR (06861A0530), NAGIREDDY JANARDANA RAO (06861A0559), A.HARI PRASAD GUPTA (06861A0501), S.SRIKANTH (06861A0580), D.PRASHANTH (06861A0523).In partial fulfillment of the requirement for the award Degree Bachelor of Technology in COPMUTER SCIENCE & ENGINEERING in MOTHER THERESSA COLLEGE OF ENGINEERING & TECHNOLOGY affiliated to Jawaharlal Nehru Technical University is a record of Bonafide work carried out by them under my guidance and supervision . The results are embodied in this project work have not been submitted to any University or Institute for the award of any degree or diploma.
INTERNAL GUIDE
PRINCIPAL
HOD OF CSE
Mr. A SRINIVAS
Mr. P. SRINIVASULU
Mr.B.VEERAPRATHAP
2
Project Report Bug Tracking System
KNOWLEDGEMENT We wish to take this opportunity to express our deep gratitude to all the people who have extended their cooperation in various ways during our project work .It is our pleasure to acknowledge the help of all those individuals. We would like to thank our project guide Mr. K.HAREESH, SHRIKAR & SUNIL for his guidance and help throughout the development of this project work by providing us required information .Without his guidance , cooperation and encouragement, we couldn’t learn many new things during our projects tenure. We express our profound gratitude to our guide Mr. A.SRINIVAS Assistant Professor, Computers Department for his support and encouragement in completing our project. We would like to thank Mr. B. VEERAPRATHAP for his encouragement and valuable guidance in bringing shape to this dissertation.
3
Project Report Bug Tracking System
DECLARATION We hereby declare that the project report titled “BUG TRACKING SYSTEM” is an original work done at “INFOCUS SOFTWARE SOLUTIONS”, HYDERABAD, submitted in partial fulfillment of the requirements for the award of the degree of Bachelor of Technology in Computer Science and Engineering from MOTHER THERESSA COLLEGE OF ENGINEERING & TECHNOLOGY (Affiliated to JAWAHARLAL NEHRU TECHNOLOGICAL UNIVERSITY, Hyderabad). We assure you that this project has not been submitted by any degree anywhere in any college or university so far.
I.V. SURENDRA VARUN KUMAR NAGIREDDY JANARDANA RAO A.HARI PRASAD GUPTA S.SRIKANTH D.PRASHANTH
(06861A0530) (06861A0559) (06861A0501) (06861A0580) (06861A0523)
4
Project Report Bug Tracking System
CONTENTS Page-No 1. Abstract
7-8
2. Introduction Profile
9-22
2.1. Introduction to BUG TRACKING SYSTEM 2.1.1 Scope 2.1.2 Existing system with limitations 2.1.3 Proposed System Features 2.2. Introduction to Environment. 2.3 Definitions 2.4 Overview 2.5 System Requirements 2.6 Feasibility Study 3. Software Development Methodology
22-25
3.1 Software Requirement Specification 3.2 Problem Frame 3.3 Interface Requirements 3.4 Functional Requirements 3.5 Nonfunctional Requirements 4. Software Development Environment
25-43
4.1 About HTML 4.2 about PHP 4.3 About JavaScript 4.4 About My sql 4.5 Pseudo Code
5
Project Report Bug Tracking System 5. Overall Description About modules
44-48
5.1 Admin module 5.2 Test Manager 5.3 Test Engineer 5.4 Develop Manager 5.5 Develop Engineer 6. Behavioral Description
48-74
6.1 Data Flow 6.1.1 Data Flow Diagrams 6.1.2 Use-Case Documentation 6.2 Process Flow 6.2.1 System flow Chart 6.2.2 Activity Diagrams 7. Design
75-83
7.1 Sequence Diagrams 7.2 Collaboration Diagrams 7.3 E-R Diagrams 8. Database tables Documentation
84-87
9. Screens
88-106
10. System Testing
107
11. Conclusion
108
12. Bibliography
109
1.Abstract 6
Project Report Bug Tracking System Project title
:
“BUG TRACKING SYSTEM”
A bug tracking system is a software application that is designed to help quality assurance and programmers keep track of reported software bugs in their work. It may be regarded as a sort of issue tracking system. Many bug-tracking systems, such as those used by most open source software projects, allow users to enter bug reports directly. Other systems are used only internally in a company or organization doing software development. Typically bug tracking systems are integrated with other software project management applications. Having a bug tracking system is extremely valuable in software development, and they are used extensively by companies developing software products. A major component of a bug tracking system is a database that records facts about known bugs. Facts may include the time a bug was reported, its severity, the erroneous program behavior, and details on how to reproduce the bug; as well as the identity of the person who reported it and any programmers who may be working on fixing it. Typical bug tracking systems support the concept of the life cycle for a bug which is tracked through status assigned to the bug. A bug tracking system should allow administrators to configure permissions based on status, move the bug to another status, or delete the bug. The system should also allow administrators to configure the bug statuses and to what status a bug in a particular status can be moved. Our project “BUG TRACKING SYSTEM” provides services to the employees, managers as well as Administrator of that particular Software Company. The primary objective of this system is to help the quality assurance and keep track of reported bugs in their work. Mainly the BUG TRACKING SYSTEM acts as a bridge between the Test Team Professionals and Develop Team Professionals. Administrator is responsible of performing various tasks like adding, removing an Employee, viewing status of an Employee and requests from Employees. In a corporate environment, a bug-tracking system may be used to generate reports on the productivity of programmers at fixing bugs. However, this may sometimes yield inaccurate results
7
Project Report Bug Tracking System because different bugs may have different levels of severity and complexity. The severity of a bug may not be directly related to the complexity of fixing the bug.
In the olden days the communication between the employees would have been done through emails to over come this problem we are developing this kind of applications to help the software professionals. Due to this, report generation becomes accurate and fast. On the whole our System benefits Software departments /Organizations.
.
Software Constraints: Backend
: My SQL, PHP.
Front End
: HTML, CSS, JAVA SCRIPT.
Hardware Constraints
: The system is compatible for
1. 1GB RAM 2. 1.44 Floppy Disk Drive
3. 80 GB Hard Disk Drive 4. CPU : Pentium IV 2G.B MHZ or more 5. Cache : 512kb
This volume presents the manner in which the software was developed and how the various problems are tackled at the different levels to convince the user. We hope that this package would prove to be an excellent environment for managing web sites.
2. INTRODUTION PROFILE
8
Project Report Bug Tracking System
2.1 Introduction about “BUG TRACKING SYSTEM” Bug tracking system is a web-based application designed to help a work group keep track of issues and tasks via a shared central resource. The system was designed specifically with the IT deportment in mind, both from an internal organizational perspective, as well as to fulfill the needs of the customers. The main benefit of a bug-tracking system is to provide a clear centralized overview of development requests (including both bugs and improvements, the boundary is often fuzzy), and their state. It provides one roof solution for all the bug issues in the software development. It doesn’t provide any kind of solution to any kind of problem. It only acts as a means to transmit the issues and their details to the concerned programmers with accuracy. It is a tool that helps in providing the solution in right time . The resource of the “Bug Tracking System” is accessible to anyone (employee) With in an Organization .
2.1.1 Scope: 2.1.2 Existing system with limitations: Varied types of practices can be found in bug issue handling. Different software organizations follow different methods to resolve bugs, issues and other software development problems. The methods they choose depends upon the nature and criticality of the project they are handling. But most commonly, almost all the medium to large software development organizations follow a similar method, which we described above. But these solutions for handling the bugs and issues are going to be different.
Manual way of handling seems to be impossible in these modern days of high speed. Issue / bug finder, generator, specialist are all located in different places making the timely solutions difficult. Keeping track of all these issue related activities is another big area where maintenance is tougher.
9
Project Report Bug Tracking System As these bugs/issues management solutions will come with different price tags and implementation bottlenecks, which make them not so adoptable for all the organizations involved in development. Few solutions may need more processing power, few demand separate systems, and even few needs separate personnel to handle these issues. And few automated processes insist complete structural changes in the organization. But nevertheless, few readymade packages, which really solve all these, will cost more.
2.1.3 Proposed system Features
10
Project Report Bug Tracking System Though the proposed system doesn’t answer all the above- mentioned drawbacks, it certainly answers many. The suggested solution will tackle the entire major issues related to transmitting, tracking, updating the statuses with minimal overheads.
The proposed solution contains a simple intranet or Internet based website, which will be accessible to all the programmers participating in the development project. All these personnel will have to authenticate themselves to report any kind of problem aroused in developing the specified project. These problems will be carried to the concerned developer for solution. It also makes the administrator to administer these issues or bugs centrally to ensure these issues or bugs are answered in time by the concerned programmers.
Related issue details, but at the same time proper security is incorporated into the software enabling only the related developers can go to in depth details. And only these people can respond to those unanswered issues or bugs.
The centrally managed database makes the administration easy. It provides summarized information about the issues, bugs, and problems. It also provides standard bookmarks to find out related bug issues that logged developer. Bug Issue Management application also incorporates rigorous search engine to find out any kind of bug issue for its details.
Finally, it is planned in such a way that administration of the Bug Issue Management Application itself is in very easy and intuitive way giving the administrators an easy walk over it.
11
Project Report Bug Tracking System
2.2 Introduction to Environment: A. ADMINISTRATOR By using this Bug Tracking System facilitates to enroll the details of the newly joined employee into the database and maintains employee’s details up to date. The Administrator store and retrieve the Departmental details when required. Administrator can update the details if he wants to do so. He/she will do all these things. For this purpose he/she needs to login to the system by entering user_id and password. The employee can view all the details as per the requirement i.e., could generate reports of those details. And also he/she can do some various tasks. Some of those tasks are as shown below.
2.2.A.1 ADD EMPLOYEE This service enables the Admin to add the new employee details. And he/she can generate an employee serial no, and it sends to that particular employee what ever is created by him. He/she can also add the employees on the bases of their department. And also Admin create the user_id and password of the each and every employee and it send to their mail address. He/she can also view the employee details according to their department.
2.2.A.2 DELETE EMPLOYEE This service enables the Admin to delete the employee. He/she can also delete the employee based on their department. 2.2.A.3 MODIFY EMPLOYEE This service enables to the Admin to modify the employee details. He/she can also modify the employee based on their department. By using this scenario he/she can change or modify the details like addresses, expertise details, user_id, parent position, password, status of an employees etc …..
12
Project Report Bug Tracking System By using this module he/she can manage the total organization or a software companies details up to date by providing the status of those particular employees. 2.2.A.4 STATUS OF AN EMPLOYEE This service enables a user is in an active state or in an inactive state. If the user is in an active state it shows Active (1) otherwise it shows IN Active (0) state. By using this module he/she can manage the total organization or a software companies details up to date by providing the status of those particular employees. Admin can generate status of an employee. Whenever he/she creates that particular employee status must be generated. 2.2.A.5 VIEW EMPLOYEES By using this service enables the whole details of the employees who are working in that particular organization or a software company. And also by using this Admin can view the details of an employee according to their departments also. 2.2.A.6
VIEW REQUESTS
By using this service the administrator enables the whole requests of the current working employees those who want to make changes in their profile and then the administrator can update their profiles. 2.2.A.7 LOGOUT This service enables the Administrator to exit from the software.
13
Project Report Bug Tracking System B.TEST MANAGER: The test manager is assigned the work by the administrator. The work of the test manager is to assign the specific module to test engineer. Before going to assign the module to the test engineer test manager checks the availability of test engineer.
2.2.B.1.Assign module: Test manager assigns module to the test engineer.
2.2.B.2Notified bugs: In this test manager able to view the bugs which are reported by test engineer.
2.2.B.3.Request to admin: A request to admin regarding any queries or updates in the profile.
2.2.B.4.Logout: This service enables to exit from the application.
C.TEST ENGINEER: Test engineer performs the different test methods on the given module and bug reports to the test manager if any and he also receives the tested module from the develop engineer to perform retest and if he find and bugs in the given module he is going to perform the retest on it else closes the module.
2.2.C.1.Report bugs: Bug reporting is the main functionality of test engineer where he is going to report the bugs details to the test manager.
14
Project Report Bug Tracking System 2.2.C.2.Retest bugs: In retest of bugs test engineer gets the details of bugs which are find by develop engineer and test engineer perform retest.
2.2.C.3.Request to admin: A request to admin regarding any queries or updates in the profile.
2.2.C.4.Logout: This service enables to exit from the application.
D.DEVELOP MANAGER: The test manager assigns the notified bugs to develop manager and the work of the develop manager is assigns the particular module to develop engineer based on the priority of bugs.
2.2.D.1.Assign bugs: Develop manager assigns the bugs based on the category of the bugs.For instance, if a bug is raised in design section then the develop manager assigns to design professional.
2.2.D.2.Request to admin: A request to admin regarding any queries or updates in the profile.
2.2.D.3.Logout: This service enables to exit from the application.
15
Project Report Bug Tracking System E.DEVELOP ENGINEER: The work of develop engineer is to debug the logged bugs that are present in the given module and maintain the details of that particular bug details and also forward the bug details to the test engineer the person who is raised the bug.
2.2. E .1. Assigned bugs: In this section the develop engineer is able to view all the assigned bugs to him.
2.2.E.2.Request to admin: A request to admin regarding any queries or updates in the profile.
2.2.E.3.Logout: This service enables to exit from the application
16
Project Report Bug Tracking System
2.3 Definitions: Definition BUG TRACKING SYSTEM By the name it self it can provide the services to software Professionals. By using this software we can develop a product with high quality. It is more useful in the present software organizations or companies. The main use of this particular software is to used for debugging purpose. Today most of the software companies using this kind of applications to develop a good quality products with less amount of money. BUG TRACKING SYSTEM is used to keep track of reported bug in their work. It also keep track of product development process to provide quality assurance. It act as bridge between Test Professionals & Development Professionals.
2.4 Overview The Project BUG TRACKING SYSTEM over all deals with the tracking of bugs. The bug tracking system supports the concept of bug life cycle. The system has to manage the assignment of bug, submission of a bug and resolution of bug. Mainly the BUG TRACKING SYSTEM acts as a bridge between the test team and development team. Typically a bug tracking system begin when ever any vendor gives any project to the administrator then the admin is going to add the particular project in to their database and divides the project in to different type of modules and assign the modules to their respective team members to resolve the bugs. The privileges of administrator is adding, removing an Employee, view status of an Employee, Edit profile, View requests from employees and Add Project. The privileges of Test Manager is assign module and notified bugs. The privileges of Test Engineer is report bugs and re-test of bugs. 17
Project Report Bug Tracking System The privileges of Develop manager is to assign module to test engineer. The privileges of Test Engineer is to report bugs and re-test bugs. The project which has been divided into modules the modules are assigned to test manager the test manager is again going to assign the module to test engineer for testing. The Test Engineer perform different type of test methodologies to find the bugs and he is going to report the details of the bug if any to the test manager. The Test Manager is now going to assign the module which has been received from test engineer to Develop Manager. The Develop Manager is now assign the module to the Develop Engineer including the details of the module Id, module name, bug Id and the name of the person who raised. When ever the Develop Engineer logs in into his account he can able to view the details of bug and then he perform different type of methods to find out the reason for the bug and he forward that details to Test Engineer first the person who raised the bug. Then the test engineer perform test on the module and perform re-test if any bugs present and closes the module if no bugs present. System benefits Software departments /Organizations.
The Entire System/Software is divided into five modules those are: 1. ADMINISTRATOR 2. DEVELOP MANAGER 3. DEVELOP ENGINEER 4. TEST MANAGER 5.
TEST ENGINEER
18
Project Report Bug Tracking System
2.5 System Requirements HARDWARE The Hardware consists of physical components of the computer that input storage processing control, output devices. The software that manages the resources of computer is known as operating systems. Computer always includes an external storage system to store data in programs. The popular storage medium are floppy disk, other media are hard disks and magnetic tapes etc. The kind of hardware used in the project is
Server side Minimum : 120GB Hard Disk Pentium : P-IV Processor RAM
: 2GB
Windows Operating System with Apache preloaded.
Client side Minimum: 120GB Hard Disk Pentium: P-IV Processor RAM
: 2GB
Windows Operating System with Apache preloaded
19
Project Report Bug Tracking System
SOFTWARES Software is a set of programs to do a particular task. Software is an essential requirement of computer systems. The kind of software used in this project is: Operating System:
Red Hat Linux9
Language
:
PHP, HTML.
Database
:
MYSQL
Network
:
LAN
Type of server
:
Apache
Browser
: Internet explorer Mozilla firefox Google chrome Conqueror and Galleon…..
20
Project Report Bug Tracking System
2.4. Feasibility Study Feasibility study is a compressed capsule version of the entire System Analysis and Design Process. The study begins by clarifying the problem definition. Feasibility Study is not to solve the problem but to determine it is worth doing. Once an acceptable problem definition has been generated, the Analyst develops a logical model of as reference. Next the alternatives are carefully analyzed for feasibility. At least three different types of feasibility are considered.
2.4.1 ECONOMIC FEASIBILITY A system that can be developed technically and that will be used if installed must still be a good investment for the organization. Financial benefits must equal or exceed the cost. The cost of feasibility study should be approximately 5 to 10percent of the estimated cost. Next factor the cost of development of this sort of project is the cost per man-hour. In this case cost is nil and considering the time factor the project is to be completed in1month.Hence it is economically feasible
2.4.2 TECHNICAL FEASIBILITY The technical issues usually raised during feasibility are does the necessary technology exist to do what is suggested? Can the system be expanded if developed? The present object is being done after all the software requirements are met and also there is provision for further enhancement. Language that can reach to system level is needed to give a solution this problem. Scripting Language like javascript, PHP to provide this option. Minimum hard is enough to fulfill the requirements to develop this project hence we conclude that this project is technically reliable.
2.4.3 OPERATIONAL FEASIBILITY This test of feasibility asks if the system will work when it is developed and installed. Here are the questions that help tests the operational feasibility of a project. Is there sufficient
21
Project Report Bug Tracking System support for the project from management and users? Will the proposed system works under all conditions? Have the users been involved in the planning and development of the project. The project has been done with the involvement of management and users and it is tested to work in all conditions. So it can be considered as operationally feasible
3. SOFTWARE DEVOLOPMENT METHODOLOGY 3.1 Software Requirement Specification The Software Requirements Specifications (SRS) begins the translation process that converts the software requirements into the language that the developers use. The SRS draws on the use-cases from the User Requirement Document (URD) and analyses the situations from a number of perspectives to discover and eliminate inconsistencies, ambiguities and omissions before development progresses significantly under mistaken assumptions.
3.2 Problem Frame The main aim of this module is about creating an intranet connecting all the Government Departments in a district and to provide services for employees and also citizens in the district. This system automates various services presently done manually. It allows collector and higher officials to monitor various works going on in the district’s government departments.
3.3 Interface Requirements INTERFACE REQUIREMENTS • This section defines the parameters that the software product must follow while interacting with the outside world.
User Interfaces The constraints that the user interfaces must adhere here are:
22
Project Report Bug Tracking System •
This project consists of several forms through which the user can easily interact
with the system. •
The forms include Employee details entry form, all the viewing forms, etc.
Communication Interfaces Server System should have a Web server, which supports PHP as server scripting language and My SQL as database. Client System can be of any system with normal Operating System and Internet
Explorer.
There should be good Internet Connection.
The Proposed System uses Hyper Text Transfer Protocol (HTTP) and File
Transfer Protocol (FTP).
3.4 Functional Requirements
FUNCTIONAL REQUIREMENTS This section analyzes various angles of the functionality to be developed. You do not need to use each type of analysis for the entire system. Select only that analysis that best allow you to complete your understanding of the requirements. Feature Analysis Add (), View (), Update () functions are used in this system •
Add () function is used to add new information.
•
View () function is used to view the existing details.
•
Update () function is used to make any modifications on the existing
information,
target or incentive details. Formal Analysis In this section, logical analysis further refines the understanding of the features. The logic addresses properties of the use-cases or of the underlying databases. It can cover the pre- and the
23
Project Report Bug Tracking System post-conditions of the use-cases, thus helping to validate the state of the system before and after a particular operation. You should maintain a certain level of abstraction throughout this section to avoid representing implementation details.
3.5 Nonfunctional Requirements Performance Requirements •
Platform on which this project developed: Windows Operating System
Software Requirement •
Backend Requirement: MY SQL
•
Front-end Requirement: PHP, HTML, JAVASCRIPT,CSS.
•
Only the administration department uses this system.
Safety & Reliability Requirements
• To access this system, the user is provided with a login entry. If the employee is not present others in the same department can access the system with the login entry provided and hence the system is safe and reliable. Security Requirements •
To access this system, the user is provided with a login entry. If the user is not present others in the same department can access the system with the login entry provided and hence the system is secure.
Software Quality Attributes •
This system possess the quality characteristics that will be important to either the employee ,Administrator or Manager include adaptability, availability, accuracy, flexibility, interoperability, maintainability, portability, reliability, reusability, robustness, testability, and usability
24
Project Report Bug Tracking System
REFERENCES: •
For preparing the Software Requirement Specification the following documents are referred.
•
Feasibility system study report for Collect rate department as prepared by IEG.
4 Software Development Environments 4.1 About HTML HTML HTML is platform independent, meaning it can be written and viewed on any type of operating System (Windows, Mac, and UNIX/Linux, whatever!) Because HTML is platform independent, you'll need to save your HTML files in standard text format, sometimes known as ASCII. Start with a title Every HTML document needs a title. MTEC The title text is preceded by the start tag and ends with the matching end tag . The title should be placed at the beginning of your document Adding interest to your pages with images Images can be used to make your Web pages distinctive and greatly help to get your message across. The simple way to add an image is using the tag Adding links to other pages What makes the Web so effective is the ability to define links from one page to another, and to follow links at the click of a button. A single click can take you right across the world! Links are defined with the tag. The text between the and the is used as the caption for the link.
25
Project Report Bug Tracking System Preformatted Text One of the advantages of the Web is that text is automatically wrapped into lines fitting within the current window size. Sometimes though, you will want to disable this behavior. You do this using the pre element Preformatted text Preformatted text is generally rendered using a moonscapes font where each character has the same width. If you define a style rule for the pre element, some browsers forget to use the mono space font, necessitating the use of the font-family property. Flowing text around images With HTML, you can choose whether any given image is treated as part of the current text line or is floated to the left or right margins. You control this via the align attribute. If the align attribute is set to left the image floats to the left margin. If it is set to right the image floats to the right margin.
4.2 About PHP PHP TECHNOLOGY PHP recursive acronym for PHP Hypertext Preprocessor is a widely used Open Source general-purpose scripting language that is especially suited for Web development and can be embedded into HTML.
The best things in using PHP It is extremely simple for a newcomer, but offers many advanced features for a professional programmer.
PHP's features
26
Project Report Bug Tracking System PHP is mainly focused on server-side scripting, so you can do anything any
other CGI
program can do, such as collect form data, generate dynamic page content, or send and receive cookies. But PHP can do much more.
There are three main areas where PHP scripts are used. Server-side scripting This is the most traditional and main target field for PHP. You need three things to make this work: •
The PHP parser (CGI or server module)
•
A web server
•
A web browser
You need to run the web server, with a connected PHP installation. You can access the PHP program output with a web browser, viewing the PHP page through the server.
Command line scripting You can make a PHP script to run it without any server or browser. You only need the PHP parser to use it this way scripts can also be used for simple text processing tasks.
Writing desktop applications PHP is probably not the very best language to create a desktop application with a graphical user interface, but if you know PHP very well, and would like to use some advanced PHP features in your client-side applications you can also use PHP-GTK to write such programs. You also have the ability to write cross-platform applications this way. PHP-GTK is an extension to PHP, not available in the main distribution. With PHP you have the freedom of choosing an operating system and a web server. Furthermore, you also have the choice of using procedural programming or object oriented programming, or a mixture of them. Although not every standard OOP feature is implemented in PHP 4, many code libraries and large applications (including the PEAR library) are written only
27
Project Report Bug Tracking System using OOP code. PHP 5 fixes the OOP related weaknesses of PHP 4, and introduces a complete object model. With PHP you are not limited to output HTML. PHP's abilities include outputting images; PDF files and even flash movies (using libswf and Ming) generated on the fly. You can also output easily any text, such as XHTML and any other XML file. PHP can auto generate these files, and save them in the file system, instead of printing it out, forming a server-side cache for your dynamic content.
-- One of the strongest and
most significant features in PHP is its support for a wide range of databases. -- PHP also has support for talking to other services using protocols such as LDAP, IMAP, SNMP, NNTP, POP3, and HTTP.
Smarty Smarty is a template engine for PHP.
It facilitates a manageable way to separate
application logic and content from its representation. This is best described in a situation where the programmer and the template designer play different roles. They are passed into Smarty by the application, and then the template designer edits the templates and uses a combination of HTML tags and template tags to format the presentation of these elements (HTML tables, background colors, font sizes, style sheets, etc.) If the programmer needs to change the way the article content is retrieved (a change in application logic.) This change does not affect the template designer; the content will still arrive in the template exactly the same. Likewise, if the template designer wants to completely redesign the templates, this requires no changes to the application logic. Therefore, the programmer can make changes to the application logic without the need to restructure templates, and the template designer can make changes to templates without breaking application logic.
28
Project Report Bug Tracking System One design goal of Smarty is the separation of business logic and presentation logic. This means templates can certainly contain logic under the condition that it is for presentation only. Things such as including other templates, altering table row colors, uppercasing a variable, looping over an array of data and displaying it, etc. are all examples of presentation logic. This does not mean that Smarty forces a separation of business and presentation logic. One of the unique aspects about Smarty is the template compiling. This means Smarty reads the template files and creates PHP scripts from them. Once they are created, they are executed from then on. Therefore there is no costly template file parsing for each request, and each template can take full advantage of PHP compiler cache solutions such as Send Accelerator
Some of Smarty's features • It is extremely fast. • It is efficient since the PHP parser does the dirty work. • No template-parsing overhead, only compiles once. • It is smart about recompiling only the template files that have changed. • It is possible to embed PHP code right in your template files, although this may not be needed since the engine is so customizable. • Built-in caching support • Plug in architecture
Requirements Smarty requires a web server running PHP 4.0.6 or later.
29
Project Report Bug Tracking System
4.3 About JavaScript JavaScript JavaScript is a compact, object-based scripting language for developing client and server Internet applications. JavaScript statements can be embedded directly in an HTML page. These statements can recognize and respond to user events such as mouse clicks, form input, and page navigation. For example, you can write a JavaScript function to verify that users enter valid information into a form. Without any network transmission, an HTML page with embedded JavaScript can interpret the entered text and alert the user with a message dialog if the input is invalid. Or you can use JavaScript to perform an action (such as play an audio file, execute an applet, or communicate with a plug-in) in response to the user opening or exiting a page. JavaScript is a programmable API that allows cross-platform scripting of events, objects, and actions. It allows the page designer to access events such as startups, exits, and users' mouse clicks. JavaScript extends the programmatic capabilities of most browsers to a wide range of authors, and is easy enough for anyone who can compose HTML. Using JavaScript, even less-experienced developers will be able to direct responses from a variety of events, objects, and actions. It provides anyone who can compose HTML with the ability to change images and play different sounds in response to specified events, such as a users' mouse click or screen exit and entry. JavaScript code is typically embedded into an HTML document using the SCRIPT tag. You are free to embed as many scripts into a single document as you like, using multiple SCRIPT tags. A script embedded in HTML with the SCRIPT tag uses the format:
30
Project Report Bug Tracking System Scripts can be placed inside comment fields to ensure that your JavaScript code is not displayed by old browsers that do not recognize JavaScript. The markup to begin a comment field is . JavaScript code, much like other programming languages, is made up of statements, which serve to make assignments, compare values, and execute other sections of code.
4.4 About My SQL My SQL is a highly scalable, SQL compliant, open source object-relational database management system (ORDBMS), Version 4.2, developed at the University of California at Berkeley Computer Science Department. It supports SQL92 and SQL99 It offers many modern features: •
complex queries
•
foreign keys
•
triggers
•
views
•
transactional integrity
•
multiversion concurrency control
•
Additionally, My SQL can be extended by the user in many ways:
By adding new •
data types
•
functions
•
operators
•
aggregate functions
•
index methods
•
procedural languages
31
Project Report Bug Tracking System
Advantages My SQL offers many advantages for your company or business over other database systems.
Immunity to over-deployment Over-deployment is what some proprietary database vendor’s regard as their #1 license compliance problem. With My SQL, no-one can sue you for breaking licensing agreements, as there is no associated licensing cost for the software. This has several additional advantages: •
More profitable business models with wide-scale deployment.
•
No possibility of being audited for license compliance at any stage.
•
Flexibility to do concept research and trial deployments without needing to include additional licensing costs.
Better support than the proprietary vendors In addition to our strong support offerings, we have a vibrant community of My SQL professionals and enthusiasts that your staff can draw upon and contribute to.
Significant saving on staffing costs Our software has been designed and created to have much lower maintenance and tuning requirements than the leading proprietary databases, yet still retain all of the features, stability, and performance. In addition to this our training programs are generally regarded as being far more cost effective, manageable, and practical in the real world than that of the leading proprietary database vendors.
Legendary reliability and stability Unlike many proprietary databases, it is extremely common for companies to report that My SQL has never, ever crashed for them in several years of high activity operation. Not even once. It just works.
32
Project Report Bug Tracking System Extensible The source code is available to all at no charge. If your staffs have a need to customize or extend My SQL in any way then they are able to do so with a minimum of effort, and with no attached costs. This is complemented by the community of My SQL professionals and enthusiasts around the globe that also actively extend My SQL on a daily basis.
Cross platform My SQL is available for almost every brand of Unix (34 platforms with the latest stable release), and Windows compatibility is available via the Cygwin framework. Native Windows compatibility is also available with version 8.0 and above.
Designed for high volume environments We use a multiple row data storage strategy called MVCC to make My SQL extremely responsive in high volume environments. The leading proprietary database vendor uses this technology as well, for the same reasons.
GUI database design and administration tools Several high quality GUI tools exist to both administer the database and do database design.
4.5 Pseudo Code Login php code:
View more...
Comments