Как вы можете эффективно и результативно тестировать свое программное обеспечение?
Дэвид Колвелл, вице-президент по искусственному интеллекту и машинному обучению в Tricentis, посетил всемирный вебинар по искусственному интеллекту, чтобы обсудить проблемы и решения, связанные с тестированием программного обеспечения. Вот основные моменты его речи.
Смотрите его выступление на нашем сайте и YouTube-канале.
Проблемы в тестировании программного обеспечения
Тестирование программного обеспечения, как объяснил Дэвид, — это процесс, который используется для подтверждения того, что высококачественное программное обеспечение готово к выпуску.
По мере того, как мир программных технологий начал развиваться и стало проще быстро поставлять приложения с использованием облачных систем, время доставки стало сокращаться. Затем инженеры пришли к выводу, что тестирование препятствует выпуску инновационного программного обеспечения, и поэтому пошли на автоматизацию.
Тем не менее, автоматизация тестирования программного обеспечения, которую автоматизировали роботы, и они предположительно были быстрыми, столкнулась с другой проблемой, потому что роботы плохо адаптировались к изменениям. Исследование Google показало, что только 1,21% неудачных тестов были связаны с обнаружением дефектов, в то время как большинство из них были ненадежными тестами, т. е. тестами, которые не могут обучаться и адаптироваться.
Проблема, с которой мы остались, заключалась в том, что многие из этих тестов, автоматические роботизированные проверки которых были статичными и не обучались.
Наконец, мы поняли, что эти решения были недостаточно хороши. Нам нужно было расширить современное состояние и использовать методы, которых не существовало. Именно здесь, по словам Дэвида, мы начали выходить за пределы мира функционального логического алгоритмического программирования и обращаться к машинному обучению.
3 рекомендации для лучшего проекта
У Дэвида Колвелла есть три предложения для любой компании, которая хочет разработать и протестировать собственное программное обеспечение:
Будьте осторожны с тем, что вы исследуете
Первым советом Дэвида было быть осторожным с тем, что вы исследуете.
Поскольку исследование с нуля занимает невероятно много времени, если вы можете найти решение, которое есть на рынке, то гораздо лучше купить это решение, интегрировать его и посмотреть, получите ли вы от него пользу на раннем этапе.
Затем, если вы считаете, что можете превратить это в рыночное отличие для своей компании, изучите то отличие, которое решает проблему, сначала используя то, что уже существует, а затем исследуйте его.
Выбрать другие данные
Говоря об опыте работы в Tricentis, Дэвид поделился мнением его команды о том, что, увеличив размер пула данных, они значительно повысят точность своих моделей машинного обучения. Они добавляли в стек больше похожих типов данных, но это не увеличивало разнообразие этого стека.
Создавая алгоритмы создания синтетических данных вместо маркировки данных, они добились большего прогресса. Извлеченный урок заключается в том, чтобы подходить к вашим данным как к инженерной проблеме с инженерным решением и искать способы увеличить разнообразие данных, а не пытаться увеличить объем данных.
Настойчивость окупается в машинном обучении
Как отметил Дэвид, настойчивость, несмотря на трудности, окупается в машинном обучении так, как она не окупается во многих других начинаниях с программным обеспечением.
В традиционном конструировании программного обеспечения, если вы сталкиваетесь со сложной проблемой, часто бывает хорошей идеей развернуться и попытаться найти более простой способ ее решения.
В машинном обучении вы уже работаете на переднем крае технологий. Так что, если вы сможете прорваться и найти этот прорыв, вы сможете предложить что-то уникальное, что позволит вам быть первыми на рынке.
Чтобы еще раз посмотреть весь его основной доклад, посетите наш сайт и канал YouTube.
Подпишитесь на нас в LinkedIn, Twitter, Facebook и YouTube, чтобы получать ежедневные отраслевые обновления!