1. A method for performing security analysis on a software application, the method comprising: receiving application architecture information for a software application; determining an application type based on the application architecture information; performing one or more security tests on the software application based on the application type and the application architecture information; and approving the software application to be available in an online marketplace if the software application passes the one or more security tests.