Script file name is the name of the function.sh. Specific headers and footers for the .sh file. The bash code is contained in a function with the same name as the filename (without the .sh extension) The main idea is to have only one function per file. Functions can (and should) be dependent on each other as needed. Any function file should be able to be run (i.e. and tested) independent of higher dependencies.