They use different algorithms to build the from a distance matrix. You can check the details of those algorithms for the Wikipedia:
http://en.wikipedia.org/wiki/UPGMA
http://en.wikipedia.org/wiki/Neighbor_joining
The most important practical issues: UPGMA provides rooted tree as a result, while NJ unrooted, and you have to take care proper rooting the NJ tree afterward.
Also, UPGMA is regarded as an unreliable method, so I would prefer to use NJ.
Bootstrapping is a re-sampling method used in phylogenetics to estimate the reliability (or by other opinions the peroduceability) of individual branching points of a tree:
As a first approach, bootstrap values tell you how much you can "trust" a branch on a phylogenetic tree. The bigger the better. Values over 0.9 (90%) are usually OK. (But that depends on your data and research question too.) Values below 0.6 (60%) are usually no-go.
They use different algorithms to build the from a distance matrix. You can check the details of those algorithms for the Wikipedia:
http://en.wikipedia.org/wiki/UPGMA
http://en.wikipedia.org/wiki/Neighbor_joining
The most important practical issues: UPGMA provides rooted tree as a result, while NJ unrooted, and you have to take care proper rooting the NJ tree afterward.
Also, UPGMA is regarded as an unreliable method, so I would prefer to use NJ.
Bootstrapping is a re-sampling method used in phylogenetics to estimate the reliability (or by other opinions the peroduceability) of individual branching points of a tree:
As a first approach, bootstrap values tell you how much you can "trust" a branch on a phylogenetic tree. The bigger the better. Values over 0.9 (90%) are usually OK. (But that depends on your data and research question too.) Values below 0.6 (60%) are usually no-go.
UPGMA is considered as unreliable. Important: This applies also to the bootstrap values of UPGMA. UPGMA might have a higher support for branches of the wrong tree than NJ for branches of the correct tree.
UPGMA is only valid if the true tree is clock like (that is if distances are ultrametric).
In this case you have the same branchlength from the root to all tips. Real data usually does not fulfil this requirement. If this requirement is not fulfilled, there is a good chance the tree and any bootstrap replicates you get are wrong.
If the evolution did follow a strict molecular clock and if you are using corrected distances (corrected by the true model of evolution) UPGMA is a good method. If the evolution did not follow a strict molecular clock, the topology can be wrong, even for corrected distances using the correct model and in very simple cases. Basically the method flawed if evolution was not clock like. There is a corrected UPGMA method which is better. But still, ME or NJ, which basically approximates ME are better.
Despite the problems with metric clustering, for example UPGMA based on similarity data, themselves can be very useful, for there are more appropriate ways of analyzing such data. In phylogenetic studies, methods that explicitly analyze similarities as the result of evolutionary changes along the branches of trees (NJ) can reconstruct relationship accurately in cases where metric clustering cannot, and they can reveal asymmetries in branch lengths that constitute evidence for variation in rates of evolution among lineages, a phenomenon that can cause clustering to reconstruct the wrong tree. In studies of intraspecific variation, methods that analyze similarities in the context of the generational divergences among subcultures, can reveal evidence for the presence or absence of genetic continuity in situations involving generational differentiation and uneven subsampling where clustering gives misleading results (Queiroz & Good, 1997).