The categorization of software development tools, as well as their optimal use, have long been a goal of software engineering and practitioners to compare, evaluate, and standardize the features associated with them. Software development tools are powerful quality and productivity aids that in many cases don't seem to be getting used effectively. All software stakeholders aim is to increase efficiency of the development effort and improve the software product generated by them. This efficiency (right optimal use and high productivity with less software faults), most of the time, results from best practices in building, managing and testing software projects via the use of these automated tools and processes. However, each software development tool has its own features, functionalities, characteristics, semantics, objects, and concepts. There remain many challenging obstacles: lack of concise evaluation of the different software development tools, poor shared understanding; use ofdifferent taxonomy and concepts between tools, absence of a unifying conceptual models and ideas between tools, and redundant work and cross purposes between tools.