A method for discovering application compatibility status, the method being performed by one or more processors, the method comprising: receiving (805, 1120) a request for determining compatibility of a first application with a platform; organizing (905, 1130) a plurality of data points (350, 360, 370, 380) associated with the first application into folders having files comprising a plurality of atomic elements, wherein the plurality of data points (350, 360, 370, 380) comprises information of an application's static data and runtime data, and wherein atomic elements comprise at least one of application programming interface calls, files that are either installed, created or modified by the first application or folders that are either installed, created or modified by the first application; comparing files comprising the plurality of atomic elements of the first application with files comprising a plurality of atomic elements associated with one or more analyzed applications as long as there is at least one group of atomic elements in common between the first application and the plurality of atomic elements associated with the one or more analyzed applications, wherein the one or more analyzed applications have been previously analyzed for compatibility with the platform, wherein compatibility statuses of the plurality of atomic elements associated with the one or more analyzed applications are already known for compatibility with the platform; identifying a compatibility status of the first application with the platform when all atomic elements of the first application are marked with a compatibility status based on a compatibility status of the at least one group of atomic elements associated with the one or more analyzed applications, wherein the at least one group of atomic elements is automatically marked with a same compatibility status as that of corresponding group of atomic elements of the one or more analyzed applications; and providing (1005, 1160), for display, the compatibility status of the first application. receiving (805, 1120) a request for determining compatibility of a first application with a platform; organizing (905, 1130) a plurality of data points (350, 360, 370, 380) associated with the first application into folders having files comprising a plurality of atomic elements, wherein the plurality of data points (350, 360, 370, 380) comprises information of an application's static data and runtime data, and wherein atomic elements comprise at least one of application programming interface calls, files that are either installed, created or modified by the first application or folders that are either installed, created or modified by the first application; comparing files comprising the plurality of atomic elements of the first application with files comprising a plurality of atomic elements associated with one or more analyzed applications as long as there is at least one group of atomic elements in common between the first application and the plurality of atomic elements associated with the one or more analyzed applications, wherein the one or more analyzed applications have been previously analyzed for compatibility with the platform, wherein compatibility statuses of the plurality of atomic elements associated with the one or more analyzed applications are already known for compatibility with the platform; identifying a compatibility status of the first application with the platform when all atomic elements of the first application are marked with a compatibility status based on a compatibility status of the at least one group of atomic elements associated with the one or more analyzed applications, wherein the at least one group of atomic elements is automatically marked with a same compatibility status as that of corresponding group of atomic elements of the one or more analyzed applications; and providing (1005, 1160), for display, the compatibility status of the first application.