Свободное программное обеспе́чение, свободный софт — программное обеспечение, пользователи которого имеют права («свободы») на его неограниченную установку, запуск, свободное использование, изучение, распространение и изменение (совершенствование), а также распространение копий и результатов изменения. Если на программное обеспечение есть исключительные права, то свободы объявляются при помощи свободных лицензий.
Програ́ммная оши́бка — ошибка в программе или в системе, приводящая к неожиданному поведению программы и, как следствие, выдаче некорректного результата. Большинство программных ошибок возникают из-за ошибок, допущенных разработчиками программы в её исходном коде, либо в её дизайне. Также некоторые ошибки возникают из-за некорректной работы инструментов разработчика, например из-за компилятора, вырабатывающего некорректный код.

MantisBT — свободно распространяемая система отслеживания ошибок в программных продуктах (bugtracker). Обеспечивает взаимодействие разработчиков с пользователями (тестировщиками). Позволяет пользователям заводить сообщения об ошибках и отслеживать дальнейший процесс работы над ними со стороны разработчиков.
Тести́рование програ́ммного обеспе́че́ния — процесс исследования, испытания программного продукта, имеющий своей целью проверку соответствия между реальным поведением программы и её ожидаемым поведением на конечном наборе тестов, выбранных определённым образом.
Бе́та-тести́рование — интенсивное использование почти готовой версии продукта с целью выявления максимального числа ошибок в его работе для их последующего устранения перед окончательным выходом продукта на рынок, к массовому потребителю.
Регрессио́нное тести́рование — собирательное название для всех видов тестирования программного обеспечения, направленных на обнаружение ошибок в уже протестированных участках исходного кода. Такие ошибки — когда после внесения изменений в программу, перестаёт работать то, что должно было продолжать работать, — называют регрессионными ошибками.
Многозада́чность — свойство операционной системы или среды выполнения обеспечивать возможность параллельной обработки нескольких задач. Истинная многозадачность операционной системы возможна только в распределённых вычислительных системах.

Отла́дка — этап разработки компьютерной программы, на котором обнаруживают, локализуют и устраняют ошибки. Чтобы понять, где возникла ошибка, приходится:
- узнавать текущие значения переменных;
- выяснять, по какому пути выполнялась программа.
Запла́тка, или патч — информация, предназначенная для автоматизированного внесения определённых изменений в компьютерные файлы. Применение патча иногда называется «пропатчиванием».
Сопровожде́ние (поддержка) программного обеспечения — процесс улучшения, оптимизации и устранения дефектов программного обеспечения (ПО) после передачи в эксплуатацию. Сопровождение ПО — это одна из фаз жизненного цикла программного обеспечения, следующая за фазой передачи ПО в эксплуатацию. В ходе сопровождения в программу вносятся изменения, с тем, чтобы исправить обнаруженные в процессе использования дефекты и недоработки, а также для добавления новой функциональности, с целью повысить удобство использования (юзабилити) и применимость ПО.

В разработке программного обеспечения, стадии разработки используются для описания степени готовности программного продукта. Также стадия разработки может отражать количество реализованных функций, запланированных для определённой версии программы. Стадии либо могут быть официально объявлены и регламентируются разработчиками, либо иногда этот термин используется неофициально для описания состояния продукта.
Тестиро́вщик — специалист, принимающий участие в тестировании компонента или системы. В его обязанность входит поиск вероятных ошибок и сбоев в функционировании объекта тестирования. Тестировщик моделирует различные ситуации, которые могут возникнуть в процессе использования предмета тестирования, чтобы разработчики смогли исправить обнаруженные ошибки.
Пакет обновления — набор обновлений, исправлений, улучшений компьютерной программы или ОС, поставляемый в виде единого установочного пакета. Многие компании, как например, Microsoft или Autodesk, обычно выпускают пакет обновлений тогда, когда число отдельных патчей для конкретной программы достигает некоторого предела. Установка пакета обновления проще и поэтому требует меньше обращений за технической поддержкой в компанию, чем установка по отдельности большого количества патчей, тем более при обновлении ПО на множестве компьютеров через сеть.
Google Code — сервис для разработчиков программного обеспечения. В первую очередь предназначен для продуктов, связанных с продуктами компании Google, однако сайт предоставляет сервис и для сторонних разработок. Один из основных сервисов — система контроля версий. Все проекты, выкладываемые на Google Code, являются open source, с одной из 9 возможных лицензий: Apache, Artistic, BSD, GPLv2, GPLv3, LGPL, MIT, MPL и EPL. Был закрыт в 2015—2016 годах для использования, оставлена только возможность скачивать старые проекты.

Redmine — открытое серверное веб-приложение для управления проектами и задачами. Redmine написан на Ruby и представляет собой приложение на основе широко известного веб-фреймворка Ruby on Rails. Распространяется согласно GNU General Public License.
Azure DevOps Server — продукт корпорации Microsoft, представляющий собой комплексное решение, объединяющее в себе систему управления версиями, сбор данных, построение отчётов, отслеживание статусов и изменений по проекту и предназначенное для совместной работы над проектами по разработке программного обеспечения. Продукт доступен в виде отдельного приложения, сходного по функциям с облачным сервисом Azure DevOps Services.
Visual Studio Team System (VSTS) — набор инструментов от Microsoft для разработки программных приложений, упрощения совместной работы над проектами, инструментов для тестирования и отладки разрабатываемых программ, а также построения отчетов.
Метод разработки динамических систем - это главным образом методика разработки программного обеспечения, основанная на концепции быстрой разработки приложений. DSDM - это итеративный и инкрементный подход, который придаёт особое значение продолжительному участию в процессе пользователя/потребителя.
Замечания к версии программного продукта — часть документации программного обеспечения, в которой описываются изменения между выпускаемой и предыдущей версиями этого ПО. Могут составляться для внешних пользователей, для отдела тестирования, документирования, маркетинга.
Ручное тестирование — часть процесса тестирования на этапе контроля качества в процессе разработки программного обеспечения. Оно производится тестировщиком без использования программных средств, для проверки программы или сайта путём моделирования действий пользователя. В роли тестировщиков могут выступать и обычные пользователи, сообщая разработчикам о найденных ошибках.