1. A system for analyzing source code, the system comprising: one or more computers; a file reader module on at least one of the one or more computers to read an input source code file containing source code written in at least one computer programming language; a parser module on at least one of the one or more computers and including a plurality of parsers each specific to a different computer programming language, the parser module to parse the source code in the input source code file into source code components based on syntax rules of the at least one computer programming language in which the source code is written; a metrics accumulator module on at least one of the one or more computers to analyze the source code components according to one or more rules to generate application metadata; and a reporting engine on at least one of the one or more computers to generate a report based on the generated application metadata.