Разработка программного обеспечения - это огромная сфера; Единственная тенденция, которая применима ко всему этому, заключается в том, что мы, кажется, постепенно становимся лучше в этом. В частности, можно указать на продолжающиеся улучшения в трех областях: языки, инструменты и системы.
Языки: по- прежнему будут появляться новые языки, а старые будут либо возрождаться, либо их идеи будут включены в новые языки - я думаю здесь о введении конструкций функционального программирования в Java, например, и использовании вывод типов в Scala. Некоторые из новых языков будут разработаны с учетом новых инструментов и структур.
Инструменты: Меня по-прежнему впечатляет прогресс в таких инструментах, как статический анализ (например, Findbugs и Checkstyle в мире Java), анализ покрытия кода (например, JaCoCo) и среды тестирования. Я думаю, что мы также увидим больше использования непрерывной интеграции / непрерывного развертывания. Десять лет назад я мог бы упомянуть контроль версий в этой категории, но я не думаю, что мы увидим что-то революционное в этой области, как это сделал git. Мы также увидим постоянное улучшение инструментов управления конфигурацией в виде таких вещей, как Puppet и Ansible.
Системы: здесь я бы поместил крупномасштабные структуры, такие как облачные вычисления, сервис-ориентированная архитектура, виртуальные машины, контейнеры и массивно-параллельные архитектуры, такие как map-reduce, Amazon Lambda и т. Д. Мы увидим продолжающийся переход от реляционных баз данных к базам данных типа "ключ-значение" и другим базам данных NOSQL, поскольку реляционные базы данных не масштабируются.
Что касается нетрендов, я не думаю, что в ближайшее время уйдут ни vi, ни emacs. Теперь, когда в Windows 10 доступна достаточно полная среда разработки Linux / unix (на Mac она была с момента появления MacOS-10), я тоже не думаю, что это исчезнет.
Автоматическое
тестирование считается одной из самых популярных методологий, которым в
наши дни следуют многие тестировщики программного обеспечения, а также QA в общем
жизненном цикле тестирования / разработки программного обеспечения. Посетите наш сайт Svitla Systems, чтобы узнать больше С помощью автоматизации
тестирования можно получить как более эффективные, так и действенные результаты тестирования.
Поскольку тестирование программного обеспечения движется к автоматизации, большинство
тестировщиков программного обеспечения, а также QA переключаются с ручного тестирования на
автоматическое.
Вот некоторые из основных технологических тенденций, которым необходимо следовать в области тестирования программного обеспечения: