1. A method for performing static analysis of software to detect security vulnerabilities, comprising acts of: generating a first application architecture model for a software application, wherein: the first application architecture model is generated based on a first version of source code of the software application; and the first application architecture model comprises a plurality of component models; comparing a second version of source code against the first version of source code to determine at least one difference; identifying, based on the at least one difference, at least one affected component model of the first application architecture model; and generating, based on the second version of source code, a second application architecture model, wherein generating the second application architecture model comprises generating an updated version of the at least one affected component model.