1. A computer-implemented method for performing static analysis and checking a property to detect security vulnerabilities in a software application developed using a software framework, comprising: identifying, by at least one computer processor, a framework model representing the software framework, wherein the framework model comprises a plurality of discovery queries written in a query language; constructing, by the at least one computer processor, a plurality of component models; reducing, by the at least one computer processor, the plurality of component models, based on whether any component model is mapped to the framework model or based on whether any component model is relevant to the property to be checked, wherein the reducing comprises removing information; generating, by the at least one computer processor, an application architecture model for the software application, by applying, to the reduced plurality of component models, a discovery query of the plurality of discovery queries; and analyzing, by the at least one computer processor, the application architecture model to determine whether the property is satisfied, via applying, by the at least one computer processor, a property query, wherein the property query and the discovery query comprise executable program code, and wherein the applying the property query and the applying discovery query comprise executing, by the at least one computer processor, the discovery query.