Professional Documents
Culture Documents
Bug Tracking System
Bug Tracking System
Contents
1. INTRODUCTION
Introduction to Project
Purpose of the Project
Existing System & its Disadvantages
Proposed System & its Advantages
2. SYSTEM ANALYSIS
Study of the system
Input & Output Representation
System architecture
3. REQUIREMENT SPECIFICATIONS
Functional Requirements
Performance Requirements
Software Requirements
Hardware Requirements
4. SYSTEM DESIGN
Introduction
UML Diagrams
E-R Diagram
5. CONCLUSION
6. FUTURE ENHANCEMENT
7. BIBLIOGRAPHY
ABSTRACT
Bug Tracking System the system which enable to detect the bugs. It not merely detects the bugs
but provides the complete information regarding bugs detected. Bug Tracking System ensures
the user of it who needs to know about a provide information regarding the identified bug. Using
this no bug will be unfixed in the developed application. The developer develops the project as
per customer requirements. In the testing phase the tester will identify the bugs. Whenever the
tester encounter ‘n’ number of bugs he adds the bug id and information in the database. The
tester reports to both project manager and developer. The bug details in the database tables are
accessible to both project manager and developer.
CHAPTER 1
INTRODUCTION
[1]. Introduction:
When a customer puts request or orders for a product to be developed. The project manager is
responsible for adding users to Bus Tracking System and assigning projects to the users. The
project manager assigns projects to the developers. The developer develops the projects as per
customer requirements. The project manager itself assigns the developed applications to the
“Testers” for testing. The tester tests the application and identifies the bugs in the application.
When the tester encounters ‘n’ no. of bugs, he generates unique id number for each individual
bug. The bug information along with its id is mailed to the project manager and developer. This
is “Bug Report”. These are stored in the database. This is useful for further reference. Bug
information includes the bug id, bug name, bug priority, project name, bug location, bug type.
This whole process continues until all the bugs are got fixed in the application. The bug report is
mailed to the project manager and the developer as soon as the bug is identified. This makes that
no error will go unfixed because of poor communication. It makes ensure that anyone who
needs to know about a bug can learn of it soon after it is reported. Bug Tracking System plays a
vital role in the testing phase. But it supports assigning projects for the developer, tester by the
project manager. The Bug Tracking System maintains the different users separately i.e., it
provides separate environments for project manager, developer and tester.
[1.1] Rational:
The main benefit of a bug-tracking system is to provide a clear centralized overview of
development requests (including bugs and improvements, the boundary is often fuzzy), and their
state. The prioritized list of pending items (often called backlog) provides valuable input when
defining the product roadmap, or maybe just "the next release".
take. Application support professionals often use a local bug tracker (LBT) as well to monitor
users’ complaints that may be irrelevant in the actual software development process.
The software is a web application which can be run on a windows operating system having Java
platform ( JDK 1.6 or higher ) .
The users of Bug Tracking System:
•Project Manager
•Developer
•Tester
Chapter 1-Introduction
In this Contents the introduction of “Bug Tracking System”. What will our software do it’s
functioning and its technology in which the software is made.
Chapter 3-Analysis
Analysis phase contains the requirement analysis, use case, the activity and the Sequence
diagram.
Chapter 4-Design
In the Design phase we had explained about the our project” Bug Tracking System” with
the help of diagrams, we explained the various stages of the project through class diagram,
Component diagram, Sub System diagram etc.
CHAPTER 2
LITERATURE
SURVEY
[2.1] Survey 1:
Authors
Aiken Relay
American History, Smithsonian Institution.
"The First "Computer Bug
faults and difficulties are called—show themselves and months of intense watching, study and
labor are requisite before commercial success or failure is certainly reached.
[2.1.2] Conclusion
Conclusion we feel that our bug tracking system fill a unique niche for a bug tracking system
targeted at student groups. For future work it would be ideal to continue the development of our
bug tracking system by offering different implementations of the frontend. Also we feel that
study could be done to analyze the productivity of groups working without the help of our bug
tracking system and compare that to the productivity of groups working with our bug tracking.
[2.2] Survey 2:
Authors
Murray Hopper
Harvard University
Oxford English Dictionary entry for "debug" contains a use of "debugging" in the context of air-
plane engines in 1945.
[2.2.2] Conclusion:
Bugs are a consequence of the nature of human factors in the programming task. They arise from
oversights or mutual misunderstandings made by a software team during specification, design,
coding, data entry and documentation. Hence bugs are very dangerous for any program or any
software.
CHAPTER 3
ANALYSIS
[3.1] Analysis:
Analysis is the process of breaking a complex topic or substance into smaller parts to gain a
better understanding of it. 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 producer begins a study of the program using existing system.
In requirement Analysis, we have studied various existing software’s and their features.
We have studied all the websites applications and examined their drawbacks.
Functional requirements may be calculations, technical details, data manipulation and processing
and other specific functionality that define what a system is supposed to accomplish. Behavioral
requirements describing all the cases where the system uses the functional requirements are
The basic idea behind iterative enhancement is to develop a software system incrementally,
allowing the developer to take advantage of what was being learned during the development of
earlier, incremental, deliverable versions of the system. Learning comes from both the
development and use of the system, where possible. Key steps in the process were to start with
a simple implementation of a subset of the software requirements and iteratively enhance the
evolving sequence of versions until the full system is implemented. At each iteration, design
modifications are made and new functional capabilities are added.
become mired in a sea of “nice to have” features that are not essential to solve the problem, but
in themselves are highly attractive. This is the root cause of a large percentage of failed and/or
abandoned development efforts, and is the primary reason the development team utilizes the
Waterfall SDLC.
• The requirements gathering process takes as its input the goals identified in the
high-level requirements section of the project plan. Each goal will be refined into
a set of one or more requirements. These requirements define the major functions of the
intended application, define operational data areas and reference data areas, and define the
initial data entities. Major functions include critical processes to be managed, as well as
mission critical inputs, outputs and reports. A user class hierarchy is developed and
associated with these major functions, data areas, and data entities.
Each of these definitions is termed a Requirement. Requirements are identified by
unique requirement identifiers and, at minimum, contain a requirement title and
textual description.
• The design stage takes as its initial input the requirements identified in the
approved requirements document. For each requirement, a set of one or more
design elements will be produced as a result of interviews, workshops, and/or
prototype efforts. Design elements describe the desired software features in detail, and
generally include functional hierarchy diagrams, screen layout diagrams, tables of business
rules, business process diagrams, pseudo code, and a complete entity-relationship diagram
with a full data dictionary. These design elements are intended to describe the software in
sufficient detail that skilled programmers may develop the software with minimal
additional input.
• The development stage takes as its primary input the design elements described in
the approved design document. For each design element, a set of one or more
software artifacts will be produced. Software artifacts include but are not limited
to menus, dialogs, data management forms, data reporting formats, and specialized
procedures and functions. Appropriate test cases will be developed for each set of
functionally related software artifacts, and an online help system will be developed to guide
users in their interactions with the software.
• During the integration and test stage, the software artifacts, online help, and test
data are migrated from the development environment to a separate test
environment. At this point, all test cases are run to verify the correctness and
completeness of the software. Successful execution of the test suite confirms a
robust and complete migration capability. During this stage, reference data is finalized for
production use and production users are identified and linked to their appropriate roles. The
final reference data (or links to reference data source files) and production user list are
compiled into the Production Initiation Plan.
Object-oriented design is the process of planning a system of interacting objects for the purpose
of solving a software problem. It is one approach to software design. An object contains
encapsulated data and procedures grouped together to represent an entity. The 'object interface',
how the object can be interacted with, is also defined. An object-oriented program is described
by the interaction of these objects. Object-oriented design is the discipline of defining the objects
and their interactions to solve a problem that was identified and documented during object-
oriented analysis.
What follows is a description of the class-based subset of object-oriented design, which does not
include object prototype-based approaches where objects are not typically obtained by instancing
classes but by cloning other (prototype) objects.
The input for object-oriented design is provided by the output of object-oriented analysis. Realize that an
output artifact does not need to be completely developed to serve as input of object-oriented design;
analysis and design may occur in parallel, and in practice the results of one activity can feed the other in a
short feedback cycle through an iterative process. Both analysis and design can be performed
incrementally, and the artifacts can be continuously grown instead of completely developed in one shot.
Use case: Use case is a description of sequences of events that, taken together, lead to a
system doing something useful. Each use case provides one or more scenarios that
convey how the system should interact with the users called actors to achieve a specific
business goal or function. Use case actors may be end users or other systems. In many
circumstances use cases are further elaborated into use case diagrams. Use case diagrams
are used to identify the actor (users or other systems) and the processes they perform.
System Sequence Diagram: System Sequence diagram (SSD) is a picture that shows, for
a particular scenario of a use case, the events that external actors generate, their order,
and possible inter-system events.
User interface documentations (if applicable): Document that shows and describes the
look and feel of the end product's user interface. It is not mandatory to have this, but it
helps to visualize the end-product and therefore helps the designer.
Relational data model: A data model is an abstract model that describes how data is
represented and used. If an object database is not used, the relational data model should
usually be created before the design, since the strategy chosen for object-relational
mapping is an output of the OO design process. However, it is possible to develop the
relational data model and the object-oriented design artifacts in parallel, and the growth
of an artifact can stimulate the refinement of other artifacts.
The five basic concepts of object-oriented design are the implementation level features that are built into
the programming language. These features are often referred to by these common names:
Information hiding: The ability to protect some components of the object from external
entities. This is realized by language keywords to enable a variable to be declared as
private or protected to the owning class.
Inheritance: The ability for a class to extend or override functionality of another class.
The so-called subclass has a whole section that is derived (inherited) from the super class
and then it has its own set of functions and data.
Interface: The ability to defer the implementation of a method. The ability to define the
functions or methods signatures without implementing them.
Polymorphism: The ability to replace an object with its sub objects. The ability of an
object-variable to contain, not only that object, but also all of its sub objects.
Defining objects, creating class diagram from conceptual diagram: Usually map entity to
class.
Identifying attributes.
Identify persistent objects/data (if applicable): Identify objects that have to last longer
than a single runtime of the application. If a relational database is used, design the object
relation mapping.
Sequence Diagrams: Extend the System Sequence Diagram to add specific objects that
handle the system events. A sequence diagram shows, as parallel vertical lines, different
processes or objects that live simultaneously, and, as horizontal arrows, the messages
exchanged between them, in the order in which they occur.
User can freely redistribute the JRE with your application, according to the terms of the JRE
license. Once users have developed your application using the JDK, you can ship it with the JRE
so your end-users will have a Java platform on which to run your software.
Net Beans IDE is an integrated development environment (IDE) for writing, compiling, testing,
and debugging desktop applications and web applications for the Java platform. NetBeans IDE
includes a full-featured text editor with syntax highlighting and error checking, visual design
tools, Ant support, version control system support, and many other features.
Choose Start > All Programs > NetBeans 6.0 > NetBeans IDE.
Use the Add/Remove Programs utility. Do not manually delete the directories and files.
[3.2.3] Scope:-
Functional requirements may be calculations, technical details, data manipulation and processing
and other specific functionality that define what a system is supposed to accomplish. Behavioral
requirements describing all the cases where the system uses the functional requirements are
captured in use cases. Functional requirements are supported by non-functional requirements,
which impose constraints on the design or implementation. How a system implements functional
requirements is detailed in the system design. This information is used to help the reader
understand why the requirement is needed, and to track the requirement through the development
of the system.
The Non-functional Requirement which specify overall characteristics such as cost, time
management, reliability and quality of software. The main motto of this project is to save user
time and provide good communication. The total cost of this project is cheap as compare to
manual work done by the person in filling the details of users. Software working in very reliable
which help to voter to fill the form and communicate easily. Due to less complexity and user
friendly the quality is maintained by all over the project.
Technology-Java
The computers must be equipped with web browsers such as Internet explorer.
The product must be stored in such a way that allows the client easy access to it.
Response time for loading the product should take no longer than five minutes.
This Software is a web based application. To run the project java should be installed on the
system that should be jdk1.6.0 and its above versions. Our project can also be run on the
NetBeans. It should also the NetBeans6.0 and its above version.
Each part of the user interface intends to be as user friendly as possible. The fonts and buttons
used will be intended to be very fast and easy to load on pages. The pages will be kept light in
space so that it won’t take a long time for the software to load. The staring page will ask the user
what kind of a user is he, customer, clerk or a casual visitor. Based on which the future pages
will be loaded in a sequential manner. Each listing page will have a area to put the bid, the
product details with photo etc. Each page also will have a search engine to search the products
available so that it is readily available and the user need not search for it. Each button will have
an help link to help the user in understanding the process.
The incoming message mostly includes requests for a specific task, which on the course of the
development will be decided in detail and dealt with in design specification document. The
incoming messages from the messages will be converted to a specific format in the database
language, the processing made and the request served. The operations will be intended to be
made as fast as possible.
[3.2.5.2]Safety Requirements:
Suitable safety has to be taken while allowing booking the ticket of the customer. They have to
follow the legalities of the land, and must be ethical. There could be possible misuse of the
system by bogus user, bidding and buying without paying up. It is not always possible to check
the postal addresses. Also during money transactions the unreliable networks may cause further
problems. So such practices need to be avoided.
[3.2.5.3]Security Requirement:
Security is the mainly occurs in the online application because any one in the network can hack
the unauthorized access to the network. So that our software is a desktop application there is no
problem of hacking or unauthorized access because the user of the system is able to operate the
system no other can operate our system except user.
CHAPTER 4
DESIGN
The login use case helps the system to identify the operator .The operator will be asked to
enter the username ,password & the designation .The user will be grated permission to
operate the system only if the operator has entered the correct username ,password &
matching up with the designation stored in the database files.
The entity relationship diagram focuses solely on data (and therefore satisfies the first
operational analysis principles), representing a "data network" that exists for a given system. The
ERD is especially useful for applications in which data and the relationships that govern data is
complex. Unlike the data flow diagram (discussed in Section 12.4 and used to represent how data
are transformed), data modeling considers data independent of the processing that transforms the
data.
[4.4.1] Process modeling: The data objects defined in the data modeling phase are
transformed to achieve the information flow necessary to implement a business function.
Processing descriptions are created for adding, modifying, deleting, or retrieving a data object.
[4.4.2] Application generation: RAD assumes the use of fourth generation techniques.
Rather than creating software using conventional third generation programming languages the
RAD process works to reuse existing program components (when possible) or create reusable
components (when necessary). In all cases, automated tools are used to facilitate construction of
the software.
B TS - TO P L EV EL D I A G R A M
A d m in is t r a t o r
P rogram m er
B u g Tr a c k i n g
S yste m
D a tab as e
L O W L EV EL D I A G R A M - L O G I N
tb l_ Au th en tic atio n
Ad m in Us e r
1 .1 1.2
Us e r Us er D etails Va lid a te
P r o g r am m er
L O W L EV EL D I A G R A M - B UG S
U s er
tb l_ P r o d u c t_ D etails
2
tb l_ Bu g _ D etails
P r o d u c t L is t
3.1
Bu g s L is t
3 .6 3 .7 3.8 3.9
3.4 3.5
Ad d /M o d iy D elete Ad d /M o d iy D e lete
Ad d /M o d iy D ele te
tb l_ Bu g _ H is to r y tb l_ Bu g _ A s s ig n tb l_ F ile _ A ttatc h m e n t
L O W L EV EL D I A G R A M - TR A C K I NG
tb l_ Bu g _ D etails Us er
4 .1
Bu g D etails
4 .2 4.3
T ra c k 4 .2 T rac k
Hie ra r c h y R es o lu tio n
T r ac k
R e s o u rc e s
tb l_ Bu g _ R e s o u r c e s tb l_ Bu g _ R e s o lu tio n
tb l_ Bu g _ Hier a rc h y
L O W L EV EL D I A G R A M - S EA R C H
6.1 6 .2 6.3
U s er S e a r c h C r it e r ia Bu ild Q u e r y E x e c u te Q u e r y R e s u lt s
L O W L EV EL D I A G R A M - L O G O U T
8.1 8.2
Us er C lo s e S e s s io n R e d ir e c t H o m e
P ag e
Instant access.
Improved productivity.
Optimum utilization of resources.
Efficient management of records.
Simplification of the operations.
Less processing time and getting required information.
User friendly.
Portable and flexible for further enhancement.
CHAPTER 5
Conclusion
[5.1] Conclusion:
This project Bug Tracking System for Improving Software Quality and Reliability is to keep
track of employee skills and based on the skills assigning of the task is done to an employee.
Employee does Bugs capturing. It can be done on daily basis. Various Reports are generated by
this System for an employee and as well as to a manager. This project will be accessible to all
developers and its facility allows developers to focus on creating the database schema and while
letting the application server define table based on the fields in JSP and relationships between
them. This application software has been computed successfully and was also tested successfully
by taking “test cases”. It is user friendly, and has required options, which can be utilized by the
user to perform the desired operations.
Bibliography
Books:-
Cay S. Horstmann and Gary Cornell, “Core Java™” Volume I – Fundamentals 7th
Ed.
Dave Thau, “The Book of JavaScript: A Practical Guide to Interactive Web Pages”,
Ed. 2nd .
Website:-
www.google.com
http://source.android.com/source/report-bugs.html
http://bugs.adobe.com/flashplayer/
http://office.microsoft.com/en-in/access-help/create-an-access-database-
HP005187442.aspx
http://www.easywayserver.com/blog/java-best-database-connectivity-web/