1. A computing device implemented method for analyzing a document, the method comprising: receiving a document; partitioning the document into a plurality of segments using a set of pre-defined attributes; mapping the plurality of segments of the document with corresponding segments of at least one template selected from a set of stored templates; computing a set of scores using a set of pre-defined criteria, in response to the mapping; and analyzing the document based on the computed set of scores.