基于硬件、软件的关系划分的工具
按与硬件和软件的关系,软件开发工具可以分为两类:依赖于特定计算机或特定软件(如某种数据库管理系统)和独立于硬件与其它软件的软件开发工具。一般来说,设计工具多是依赖于特定软件的,因为它生成的代码或测试数据不是抽象的,而是具体的某一种语言的代码或该语言所要求的格式的数据。而分析工具与计划工具则往往是独立于机器与软件的,集成化的软件开发工具常常是依赖于机器与软件的。
基于工作阶段的工具
基于各个阶段对信息的需求不同,软件开发工具可分为三类:设计工具、分析工具、计划工具。
基于应用领域划分的工具
按照应用领域的不同,应用软件可以分为事务处理、实时应用、嵌入式应用等。随着个人计算机与人工智能的发展,与这两个方面相联系的应用软件,也取得较大的进展。
基于集成程度划分的工具
集成化程度是用户接口一致性和信息共享的程度,是一个新的发展阶段。集成化的软件开发工具要求人们对于软件开发过程有更深入的认识和了解。开发与应用集成化的软件开发工具是应当努力研究与探索的课题,集成化的软件开发工具也常称为软件工作环境。
软件开发工具的选择主要决定于两个因素:所开发系统的最终用户和开发人员。最终用户需求是一切软件的来源和归宿,也是影响开发工具的决定性因素;开发人员的爱好、习惯、 经验也影响着开发工具的选择。严格的软件工程管理和开发人员的技术水平是软件开发成功的关键。