bug report and tracking system documentation
Post on 02-Jun-2018
226 Views
Preview:
TRANSCRIPT
-
8/11/2019 Bug report and tracking system documentation
1/52
Bug Reporting and Tracking System
Overview of the System
The project is a developed based on the standards of the coding
used by the developer is tested before giving to the client. System
that interacts with the code developed bye the user. Using this project
any developer with minimal knowledge can easily check correctness
of the code easily without any errors.
Business Requirements Analysis
Before submitting to the client or hosting any site of the project should
maintain a testing tools. Here this developing system is based on
this process only. This project will maintain a database for each
project, in that it maintains project code, bugs. Bug tracking
developers read these bugs and fi the bugs and update the
same information in the bug reports.
The following is the system developed for the above stated needs. !n
initial feasibility study was conducted " a conclusion was arrived at
that automating such a system would not only achieve all the things
mentioned above.
-
8/11/2019 Bug report and tracking system documentation
2/52
Project Plan
Bug #eporting and Tracking system $B#TS%. This system was designed to report
and track bugs of different projects while the project is designed, coded, tested
and also in the documentation.&ata entry into the application can be done through various screens
designed for various users. 'nce the authori(ed personnel feed the
relevant data into the system, several reports could be generated as per the
security.
The !nalysts will interact with the current manual system users to get the
#e)uirements. !s a part of this the #e)uirements Specification &ocument will be
created. The re)uirements Specifications document will contain the !nalysis "
&esign of the system. The !nalysis, &esign, *mplementation " testing of the
System will be followed to produce an incremental cycle, which will deliver
milestones like the #e)uirements Specification &ocument etc., at the end of each
of the iterations, +hases or cycles. 'nce the &esign is ready the *mplementation
" Testing strategy of the system will commence. ach will be independent of the
other. The implementation of the system itself will be broken down into sub-
systems following the Software ngineering principles for the development ofrobust software.
-
8/11/2019 Bug report and tracking system documentation
3/52
CONCEPTS AND TECHNIQUES
The ava +ackages
ight packages comprise the standard ava development environment.
The ava /anguage +ackage
The ava language package, also known as java.lang, containsclasses that are core to the ava language. The classes in this packageare grouped as follows0
'bject
The granddaddy of all classes--the class from which all others inherit.
&ata Type 1rappers
! collection of classes used to wrap variables of a primitive data type0Boolean, 2haracter, and &ouble, 3loat *nteger and /ong.Strins
Two classes that implement character data. The String and StringBuffer 2lasses is a thorough lesson on the use of both types of strings.
System and #untime
These two classes provide let your programs use system resources.System provides a system-independent programming interface to systemresources and #untime gives you direct system-specific access to theruntime environment. Using System #esources &escribes both theSystem and #untime classes and their methods.
T!rea"s
The Thread, Thread &eath and Thread 4roup classes supplementthe multi-threading capabilities so important to the ava language. The java.lang package also defines the runnable interface. #unnablemakes it convenient for ava class to be active without subclassing theThread class. Through an eample-oriented approach Threads of 2ontrolwill teach you about ava threads.
-
8/11/2019 Bug report and tracking system documentation
4/52
2lasses
The 2lass provides a runtime description of a class and the 2lass/oader class allows you to load classes into your program during runtime.5ath
The 5ath class provides a library of math routines and values suchas pi.
ception, rror and Throwable
1hen an error occurs in a ava program, the program throws an
object, which indicates what the problem was and the state of theinterpreter when the error occurred. 'nly objects that derive from thethrowable class can be thrown.
There are two main subclasses of Throwable0 ception and rror.ceptions are a form of Throwable that 6normal6 programs may try tocatch. rrors are used for more catastrophic errors--normal programsshould not catch errors. The java.lang package contains the Throwable,ception, and rror classes, and numerous Subclasses of ceptionand rror that represent specific +roblems. Handling errors usingeceptions shows you how to use eceptions in your ava programs to
handle errors.
+rocess
+rocess objects represent the system process that is created when youuse #untime to eecute system commands. The java.lang +ackagedefines and implements the generic +rocess class.
The compiler automatically imports this package for you. 7o otherpackages are automatically imported.
The ava *8' +ackage
The ava *8' +ackage $java.io% provides a set of input and'utput streams used to read and write data to files or other*nput and output sources. The classes and interfaces defined*n java.io are covered fully in *nput and 'utput Streams.
-
8/11/2019 Bug report and tracking system documentation
5/52
T!e #a$a Utility Pac%ae
This ava package, java.util, contains a collection of utility classes.!mong them are several generic data structures $&ictionary, Stack,
9ector, and Hash table% a useful object for tokeni(ing a string and anotherfor manipulating calendar dates.The java.util package also contains the 'bserver interface and'bservable class, which allow objects to notify one another when theychange. The java.util classes aren:t covered separately in this tutorialalthough some eamples use these classes.
The ava 7etworking +ackage
The java.net package contains classes and interface definitions thatimplement various networking capabilities. The 2lasses in this package
include a class that implement a U#/, a connection to a U#/, a socketconnection, and a datagram packet. ;ou can use these classes toimplement client-server applications and other networking communicationapplications.2ustom 7etworking and Security has several eamplesusing these classes, including a client-server eample and an eamplethat uses datagrams.
The !pplet +ackage
This package contains the !pplet class, the class that you mustsubclass if you:re writing an applet. *ncluded in this +ackage is the !udio
2lip interface which provides a very high level abstraction of audio.1riting !pplets eplains the ins and outs of developing your own applets.
The !bstract 1indow Toolkit +ackages
Three packages comprise the !bstract 1indow Toolkit0ava.awt, java.awt.image, and java.awt.peer.
!1T +ackageThe java.awt package provides graphical user interface $4U*%
elements that are used to get input from and display information to theuser. These elements include windows, buttons, scrollbars, and tetitems.
!1T *mage +ackageThe java.awt.image package contains classes and interfaces
for managing image data, such as setting the color model, cropping, color
-
8/11/2019 Bug report and tracking system documentation
6/52
filtering, setting piel values, and grabbing snapshots of the screen.
!1T +eer +ackageThe java.awt.peer package contains classes and interfaces that
connect platform-independent !1T components to their platform-
dependent implementation $such as 5otif widgets or 5icrosoft 1indowscontrols%. 2reating a User *nterface covers all three of the !1T packages.
3!TU#S '3 !9!
&istributed
ava has an etensive library of routines for coping with T2+8*+protocols like HTT+ and 3T+ ava applications can open and accessacross the 7et via U#/s with the same ease as when accessing local file
system.
1e have found the networking capabilities of ava to be both strongand easy to use. !nyone who has tries to do *nternet programming usinganother language will revel. How simple ava makes onerous tasks willlike opening a socket connection.
Ro&ust
ava is intended for writing programs that must be readable in a 9arietyways. ava puts a lot of emphasis on early checking for possible
problems, later dynamic checking, and eliminating situations that are errorprone. The single biggest difference between ava has a pointer modelthat eliminates the possibility of overwriting memory and corrupting data.
The ava compiler detects many problems that in other languageswould only show up at runtime. !s for the second point, anyone who hasspent hours chasing a memory leak cost by a printer bug will be veryhappy with this feature of ava. ava gives you the best of both worlds. ;ou need not pointers foreveryday constructs like string and arrays. ;ou have the power of pointersif you need it, for eample, for like lists. !nd you have always-complete
safety, since you can never access a bad pointer or make memoryallocation errors.
Secure
-
8/11/2019 Bug report and tracking system documentation
7/52
ava is intended to be used in networked8distributed environmenttoward that end< a lot of emphasis has been placed on security. avaenables the contraction of virus-free, temper-free systems.
Here is a sample of what ava=s security features are supposed to
keep a ava programming from doing0
>. 'verrunning the runtime stack.
?. 2orrupting memory outside its own process space.
@. #eading or writing local files when invoked through a security-consciousclass loader like 1eb browser.
Arc!itecture Neutral
The compiler generates an architecture neutral object file format- thecompiled code is eecutable on many processors, given the presence ofava runtime system...The ava compiler does this by generating byte codeinstructions which have nothing to do with a particular computerarchitecture. #ather they ere designed to be both easy to any machine andeasily translated into native machine code on the fly. Twenty years ago, the U2S& +ascal system did the same thing in acommercial product and, even before that, 7icholas 1orth=s originalimplementation of +ascal used the same approach. By using bytecodes,performance takes major hit. The designers of ava did an ecellent jobdeveloping a byte code instruction set those workers well on today=s most
common computer architectures. !nd the codes have been designed totranslate easily into actual machine instructions.
+ortable
Unlike 2 and 2AA, they are no 6implementation dependent6 aspectsof the specifications. The si(es of the primitive=s data types are specified, asis the behavior of arithmetic on them. 3or eample, an int in ava is always a @?-bit integer. *n 282AA, int canmean a >-bit integer, a @?-bit integer, or any si(e the compiler vendor likes.The only restriction is that it must have at least as many bytes int andcannot have more bytes than a long int.
The libraries that are a part of the system define portableinterfaces. 3or eample, there is an abstract window class andimplementations of it U7*C, 1indows, and the 5acintosh.
-
8/11/2019 Bug report and tracking system documentation
8/52
Inter'rete"
The ava interpreters can eecute ava byte codes directly on anymachine to which the interpreter has been ported. Since linking is a moreincremental and lightweight process, the development process can be much
more rapid and eplanatory. 'ne problem is that the &D is fairly slow at compiling your source codeto the bytecodes that will, ultimately, be interpreted in the current version.
Hi! Per(ormance
1hile the performance of interpreted bytecodes is usually morethan ade)uate, there are situations higher performance is re)uired. Thebytecodes can be translated on fly into machine code for the particular 2+Uthe application is running on.
7ative code compilers for ava are not yet generally available. *nstead thereare just-in-time $jit% compilers. These work by compiling the byte codesinto native code once, caching the results, and then calling them again, ifneeded. This speeds up code once, catching the results, and calling themagain, if needed. This speed up the loop tremendously since once has to dothe interpretation only once. !lthough still slightly slower than a true nativecode compiler, just-in-time compilers can give you a >E-or even ?E-foldspeedup for some programs and will almost always be significantly fasterthan the ava *nterpreter.
)ultit!rea"e"
*n a number of ways, ava is more dynamic language than 2or 2AA. *t was designed to adapt to an evolving environment. /ibraries canfreely add new methods and instance variables without any effect on theirclients.... *n ava, finding out run time type information is straightforward. This is an important feature in those situations where code needs tobe added to a running program. ! prime eample is code that is downloadedfrom the *nternet to run in browser.
PARADI*) O+ #A,A
ava as a programming language evolved keeping in view certaincriteria and features. *t was built around a model that had these features.Some of the features of this model we have seen like the object oriented,architecture neutral, robust, secure etc. Some additional features areeplaining below
-
8/11/2019 Bug report and tracking system documentation
9/52
&ynamic downloading of applets- !pplets should be downloadable on toa client machine as and when re)uired.
limination of fatter phenomenon - ava based products could eliminate
these by giving the users only those features of a product that the userneeds at a time. The remaining features of a product can remain on theserver itself. Supports 7etworks centric computing- ava should be able to supportlow cost 7etwork computers.
Supports 2'#B!" &2'5-ava supports 2ommon 'bject #e)uestBroken !rchitecture $2'#B!% and &istributed 2ommon 'bject 5odel$&2'5%. This ensures that certain standards for object +rogramming arenet. Supports !ctive C also.
#A,A APP-ETS
!pplets are a common way of writing ava applications. *ntegratingweb based sound and graphics into applications is simplified by usingmethods in !pplet class. !pplets are essentially program that run fromwithin a browser. They appear as part of HT5/ documents in the same waythat pictures are presented. The major difference is that instead of a staticgraphics, the ava !pplet is a complete running program. !n !pplet is justlike a widow application, but without a classic window frame. The range ofprograms that can be written as an !++/T are reduced because ofsecurity limitations imposed by the target browser. !pplets run only from
with in ava-nabled browsers such as 7TS2!+, hotava, and*7T#7T C+/'S#.
AD,ANTA*ES O+ APP-ETS
There are several advantages using !pplets. The most obvious isthat you only need one copy of your production class files on an HT5/server. This reduces the nightmare of distributing and installing software bythe tape or disk. *nternet and *ntranet based software also reduces theproblems of /!7 accesses to software instead of accessing a disk by wayof a network-mounted disk. 3iles are accessed through http and 3T+.
1B pages can also be used as a method of presenting help to yourusers as well as keeping them informed about the latest changes to yourprograms. This enables due to keep in constant touch your users.
DISAD,ANTA*ES O+ APP-ET
-
8/11/2019 Bug report and tracking system documentation
10/52
#unning your application from a web browser is not necessarily agood thing. Target users must be running a version of web browser thatsupports that ava. *t also helps if uses have an *nternet connection of ?F.Fk or higher on relatively fast computers. !nother large problem is local fileaccess. *f the applet was loaded from an http server, no local files can be
read or written to on the client machines. /oading the applet from the userslocal disk storage can alleviate this, but this defeats any of the web-basedapplet advantages mention earlier.
!pplets have reduced network access. *f an applet is loaded fromnetworked machine. 'nly that machine can be communicated with a via asocket connection this prevents the applet from communicating to othermachines on web. This security restriction is alleviated if the applet isloaded from the users local disk.
!ny ava based graphical application can be easily converted into anapplet. This id because both frame and applet are eecuted from thecontainer class.
!++/T /*3 2;2/
There are four methods that give the framework to build the applet*nit $%Start $%Stop $%&estroy $%
*nit$%0- Used for initial setup such as defining /ayout, passing parametersand other initiali(ations.
Start$%0- This is called immediately after init $% start $% is called each time user
Object
Com'on
Container
Panel
A''let
.in"o/
Frame
-
8/11/2019 Bug report and tracking system documentation
11/52
return to the pea or when the page is deconified. Unlike start, init is calledonly once.
Stop$%0- This method is called when the user moves off the page on whichthe !pplet sits or when it is iconified. *f an applet if not doing time
consuming activities like performing animation, this need not beimplemented.
&estroy$%0- This method is called when the browser shuts down. *t is usedto re-claim resources.
#A,A ,S C00
The synta of ava looks very much like 2AA. 2ompared to cAA,ava used similar synta for if and loop constructs. The notion of aconstructor is all very similar to what 2AA has.
The following are some of the differences of ava over 2AA. *f youunderstand these differences you will see why ava is such a beneficialprogramming language.
2ompare to 2AA ava runs ?E times slower because of platform
independents.
very thing must be in a class. There are no global functions or
global data. *f you want the e)uivalent of global, make static methods andstatic data within a class. There are no structures or enumeration or
unions. 'nly class.
The 2har type uses the international >-bit. Unicode character set,
so it can automatically represent most national characters.
!ll non-primitive types can only be created using new. !ll primitive types
can only be created directly, without new. There are wrapper classes forall primitive classes so you can create e)uivalent heap-based objects withnew
ava has no +reprocessors. *f you want to use classes in another library,
you say import and the name of the library. There are no preprocessor-like macros.
There are no ava pointers in the sense of 2 and 2AA. 1hen you create
an object with new, you get back a reference. 3or eample
-
8/11/2019 Bug report and tracking system documentation
12/52
String s G new String $6peers6%oriente" terminoloy< /e say t!at your &icycle is aninstance o( t!e class o( o&jects %no/n as &icycles3 Bicycles !a$e somestate ?current ear< current ca"ence< t/o /!eels@ an" &e!a$ior ?c!aneears< &ra%e@ in common3 Ho/e$er< eac! &icycle9s state is in"e'en"ent
-
8/11/2019 Bug report and tracking system documentation
34/52
o( can &e "i((erent (rom ot!er &icycles31hen building bicycles, manufacturers take advantage of the fact that bicycles
share characteristics by building many bicycles from the same blueprint M it
would be very inefficient to produce a new blueprint for every individual bicycle
they manufactured.
In o&ject>oriente" so(t/are< it9s also 'ossi&le to !a$emany o&jects o( t!e same %in" t!at s!are c!aracteristics< rectanlescasses y defaut*$
2$ est t;e &S+ fie$
n'oke t;e &S+ fie from a we rowser$
#ac; of t;ese steps in its simpest form is discussed eow$
&a'aSer'er +ages sampes, compete wit; working code, are pro'ided wit; t;e product$@or a isting of sampes, see t;e &a'a titeC
>;eadCodyC
;3C0eo ;3CpCoday is: &jsp'get$roperty name()c%ock)
http://var/www/examples/index.htmlhttp://var/www/examples/index.html -
8/11/2019 Bug report and tracking system documentation
46/52
-
8/11/2019 Bug report and tracking system documentation
47/52
3
.-
>;3CpCoday is: =sp:get+roperty nameLIcockI
propertyLIdateI>C>pC
>odyC>;tmC
Rememer to sa'e t;e fie wit; a .jspfiename e.tension$ ;is tes t;e weser'er t;at t;e
fie is a &a'aSer'er +ages fie and to process it accordingy$
5! $%ace the #S$ fi%e and associated fi%es
+acing t;e 'arious parts of a &S+ appication is straig;t forward if you foow t;ese rues:
&S+ fie
;ink of t;e &S+ fie as an 0M" page )w;ic; it is w;en t;e cient recei'es it*$
;is makes it o'ious w;ere t;e fie s;oud e paced--in t;e document root oft;e weser'er$ By defaut, t;e document root is:
server_root>puic?;tm>
w;ereserver_rootis t;e ocation of t;e instaed &a'a
-
8/11/2019 Bug report and tracking system documentation
48/52
f t;e &a'aBeans components, $cass fies, or ser'et fies associated wit; t;e $=sp
fie are remote to t;e &a'a
-
8/11/2019 Bug report and tracking system documentation
49/52
-
8/11/2019 Bug report and tracking system documentation
50/52
Requirements Specification 7ocument
!ccording to #oger +ressman in Software ngineering0 ! +ractitioner:s !pproach
$5c4raw-Hill +ublications% SEPA2FG, the re)uirement specificationdocument is produced at the end of !nalysis of the system. This document is a
very comprehensive document " contains all the User re)uirements " !nalysis
diagrams. The #e)uirements are broadly divided into two groups0
>. 3unctional re)uirements
?. 7on-functional re)uirements
Functiona% Requirements
The main purpose of functional re)uirements within the re)uirement specification
document is to define all the activities or operations that take place in the system.
These are derived through interactions with the users of the system.
!ccording to this system each project should be maintain uni)ue projectcode in
the database.
Non>+unctional Requirements
The non-functional re)uirements consist of
>. !nalysis, &esign " &ata re)uirements.?. 2onstraints.@. 4uidelines.. 9alidation 2riteria.
Analysis< Desin Data requirements
The !nalysis " &esign phases of the system yield &ata 3low &iagrams, tetualanalysis " &ata &ictionary. &ata dictionary consists of process statementsshowing how data is flowing from starting point to end point.
-
8/11/2019 Bug report and tracking system documentation
51/52
Constraints
These are the re)uirements that are not directly related to the functionality of thesystem. These should be considered as mandatory when the system isdeveloped. The following 2onstraints were arrived at for the system0
The bug which is fied cannot be refied in the whole process.
8uide%ines
1e have discussed mandatory re)uirements in the previous section. There)uirements in this section should be taken as suggestions " they should bethought of as recommendations to further enhance the usability of the system.
>. The system should select the project for which he has to find the bug and
report.
?. The system should store the data for each project in database.
@. The system should be designed in such a way that it is easy to enhance it withmore functionality. *t should be scalable " easily maintainable.
,ali"ation Criteria
The 9alidation 2riteria are dealt separately in the 2hapter dealing with the TestStrategy " Test cases.
Arc!itecture Tec!noloies use"
!fter analy(ing the #e)uirements, the !rchitecture chosen for the System to beimplemented is decided as the 5ulti-tier !rchitecture. This architecture is chosenbecause it separates the &evelopment of the System into independent modulesor tiers. 4enerally comple projects use this, as the work in each tier can betaken up by specialists in each field.
Since the ava based technologies $? M ava ? nterprise dition% overcomeall the drawbacks mentioned above, ava is chosen as the Technology in which
the +roject is to be implemented. ava has the added advantage of being a fully'bject 'riented /anguage " for projects of considerable compleity this is thebest possible choice.
-
8/11/2019 Bug report and tracking system documentation
52/52
BIBILORA!H"
! #9:9 +O;$+= ????? $9TR@+A>98HTO>C
H=RB=RT S+H@>C
89RD +OR>=
top related