The second parameter is the list of dependencies of the module being created.
Translated into Portuguese from documentation:
Modules can list other modules as their dependencies.
Depending on a module implies that the necessary module needs to be
loaded before the required module is loaded. By others
words, the configuration blocks of the necessary modules are
executed before the applicant module configuration blocks. The
same is true for the execution blocks. Each module can only be
once loaded, even if several other modules require it.
Example loading a configuration service
angular.module('configService', []).value('parametros', {
URI_PRODUCER: "http://meu_ip:8080/"
});
Another module that loads the above service as dependency:
var app = angular.module('segundoModulo', ['configService']);
app.controller('meuController', function(parametros){
console.log(parametros.URI_PRODUCER) // irá exibir http://meu_ip:8080
})