The second parameter is the dependency list of the module being created.
Translated to Portuguese from documentation :
Modules can list other modules as their dependencies.
Depending on a module it implies that the required module needs to be
loaded before the required module is loaded. By others
words, the configuration blocks of the required modules are
executed before the requesting module configuration blocks. O
same is true for the execution blocks. Each module can only be
loaded once, 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 a dependency:
var app = angular.module('segundoModulo', ['configService']);
app.controller('meuController', function(parametros){
console.log(parametros.URI_PRODUCER) // irá exibir http://meu_ip:8080
})