Resumen
Source code retrieval is a branch of text retrieval which helps developer find a piece of code from the code base. The developer can obtain the required code from the code base by issuing a query on the source code base. Generally, a developer who has been working on the code base since a long time will know how to formulate his/her query in order to get a good search result. A developer who is novice to the code base will not know what terms he/she has to include in query to obtain a good search result. In fact, a system should allow developer to issue natural language queries. This arises a need for query reformulation to optimize the developer query when the query does not contain terms from code base. This work has conducted extensive study on areas where natural language queries are applied and the various reformulation techniques. In this work, semantic query reformulation technique is applied on the natural language queries on the source code base. Our discussion and results prove how semantically right word and a word which is in context of the source code can be obtained which acts as a replacement for a query term which is not present in the source code base.