A Galaxy tool is any software package that takes any number of inputs and produces one or more outputs, e.g. BWA. Galaxy tools are versioned, and it should not be expected that different versions should produce the same output given the same input(s) and parameter(s). It should however be expected that a Galaxy tool always produce the same output every time it is run with the same input data and parameters. In the main Galaxy ToolShed, tools are reviewed by the Intergalactic Utilities Commission.
Developing Galaxy Tools for the ToolShed can be as simple as creating a wrapper XML file compliant with the (Galaxy tool schema) and uploading this XML to the ToolShed. A tool developer can also optionally include custom datatypes, and should ideally include a README briefly explaining the function and purpose of their tool.
Galaxy workflows allow a Galaxy user to share their analysis with others, so that the original research can be easily reproduced. This can be done with the original data from the researcher's paper, or the workflow can be given new data.