Современное программное обеспечение делится на несколько категорий, каждая из которых выполняет специфические функции. Инструментальное программное обеспечение включает языки программирования и интегрированные среды разработки, которые облегчают процесс создания новых программ.