Научная статья на тему 'ВАЖНОСТЬ ТЕСТИРОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ В ПРОЦЕССЕ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ'

ВАЖНОСТЬ ТЕСТИРОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ В ПРОЦЕССЕ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
1137
127
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ТЕСТИРОВАНИЕ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ / ВАЖНОСТЬ ТЕСТИРОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ / ПРОЦЕСС РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ / ПРЕИМУЩЕСТВА ТЕСТИРОВАНИЯ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Логачева Н.В., Ладонычева М.Л., Пузырева К.С.

Для любой it-компании, разрабатывающей и поставляющей на рынок свой продукт, тестирование является важным и ценным этапом жизненного цикла разработки программного обеспечения. Если процесс тестирования игнорируется компаниями, может пострадать как сам продукт, так и бизнес компании- разработчика в целом, поскольку ошибки в программном обеспечении могут быть дорогостоящими или даже опасными. Последнее десятилетие в ИТ-индустрии интенсивно ведутся исследования в области разработки методик тестирования, позволяющих повысить эффективность процессов управления жизненным циклом программного продукта.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

THE IMPORTANCE OF SOFTWARE TESTING IN THE PROCESS OF SOFTWARE DEVELOPMENT

For any IT company that develops and markets its product, testing is an important and valuable stage in the software development life cycle. If the testing process is ignored by companies, both the product itself and the developer's business as a whole can suffer, as software bugs can be costly or even dangerous. Over the past decade, the IT industry has been intensively conducting research in the field of developing testing methods that make it possible to increase the efficiency of software product life cycle management processes.

Текст научной работы на тему «ВАЖНОСТЬ ТЕСТИРОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ В ПРОЦЕССЕ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ»

Список использованной литературы:

1.Постановление Правительства Республики Казахстан от 28 июня 2014 года № 724 «Об утверждении Концепции развития топливно-энергетического комплекса Республики Казахстан до 2030 года». 2.Официальный сайт: https://www.nur.kz/family/school/1666860-ekologicheskie-problemy-kazakhstana/ 3.Официальный сайт: Служба государственной статистики Казахстана https://stat.gov.kz/. 4.Официальный сайт: Федеральная служба государственной статистики России https://rosstat.gov.ru). 5. Официальный сайт: https://unece.org/.

© Куатбекова А.Б., 2022

УДК 004.9

Логачева Н.В.,

к.т.н., доцент, доцент кафедры «Информационных технологий и управляющих систем»

Ладонычева М.Л.,

магистр 2 года обучения кафедры «Информационных технологий и вычислительных систем»,

Пузырева К.С.,

магистр 2 года обучения кафедры «Информационных технологий и вычислительных систем»

ВАЖНОСТЬ ТЕСТИРОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ В ПРОЦЕССЕ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

Для любой it-компании, разрабатывающей и поставляющей на рынок свой продукт, тестирование является важным и ценным этапом жизненного цикла разработки программного обеспечения. Если процесс тестирования игнорируется компаниями, может пострадать как сам продукт, так и бизнес компании- разработчика в целом, поскольку ошибки в программном обеспечении могут быть дорогостоящими или даже опасными. Последнее десятилетие в ИТ-индустрии интенсивно ведутся исследования в области разработки методик тестирования, позволяющих повысить эффективность процессов управления жизненным циклом программного продукта.

Тестирование программного обеспечения, важность тестирования программного обеспечения, процесс разработки программного обеспечения, преимущества тестирования

Logacheva N. In.,

Ph. D., associate Professor of the Department "Information technologies and control systems"

Laconica M. L.,

master 2 years of training of the Department "Information technologies and computing systems",

Puzyreva K. S.,

master 2 years of training of the Department "Information technologies and computer systems"

THE IMPORTANCE OF SOFTWARE TESTING IN THE PROCESS OF SOFTWARE DEVELOPMENT

For any IT company that develops and markets its product, testing is an important and valuable stage in the software development life cycle. If the testing process is ignored by companies, both the product itself and the developer's business as a whole can suffer, as software bugs can be costly or even dangerous. Over the past decade, the IT industry has been intensively conducting research in the field of developing testing methods that

make it possible to increase the efficiency of software product life cycle management processes.

Задачи процессов тестирования программного обеспечения

В последние годы рост конкуренции на рынке создания программного обеспечения вынуждает компании сокращать сроки представления новых продуктов, и это может негативно повлиять на качество продукции, если не применять процедуры контроля на всех этапах жизненного цикла разработки. Достоверные выводы о качестве продукта можно сделать только на основе грамотного тестирования функций программного продукта (сервиса). Для обеспечения процесса критического анализа и оценки степени решения задач, поставленных в технических требованиях, наиболее полезным представляется использование методик тестирования, соответствующих современным стандартам.

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

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

Какие преимущества имеет тестирование?

• Экономия средств Тестирование в проекте может сэкономить деньги в долгосрочной перспективе. Разработка программного обеспечения состоит из множества этапов, и, если ошибки обнаруживаются на более ранних этапах, их исправление обходится намного дешевле. Вот почему важно провести тестирование как можно скорее. Чем раньше будут найдены ошибки, тем ниже траты на их исправление и риски по срыву сроков реализации. Поэтому имеет смысл привлекать тестировщиков к проверкам, как можно раньше.

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

• Уверенность в качестве. Продукты всегда определенным образом служат пользователям, поэтому очень важно, чтобы они соответствовали их ожиданиям и запросам, а также могли надежно реализовать все заявленные функции, и, следовательно, обеспечить отличное обслуживание клиентов. Например, разработка приложения включает в себя множество процессов, и тестирование позволяет увидеть каждую деталь - оно проверяет, правильно ли выровнена графика приложений, проверяет основную функциональность, проверяет, интуитивно ли понятны меню и т.д. Даже после того, как разработчики устранят явные проблемы, может «неожиданно» появиться другая проблема, как следствие несогласованности в процедурах контроля функционала, из-за возможных ошибок сборки версий при коллективной разработке сложных программных продуктов. Для решения этой задачи в компаниях-разработчиках программного обеспечения необходимо внедрять согласованные стратегии тестирования, включающие модульной подход, интеграцию, системное тестирование и другие методы, обычно включаемые в систему управления разработкой продукта, и отраженные в соответствующих стандартах. Совместимость устройств также проверяется для продукта, например, совместимость приложения со многими устройствами и операционными системами. Компании, занимающиеся тестированием, обычно располагают множеством устройств и инструментов, доступных для охвата как можно большего числа

сценариев тестирования.

• Репутация компании. Компания, чей продукт или услуга имеют хорошее качество, чей сайт или приложение хорошо работают, позиционируется на рынке как надежная и уважаемая. Это более привлекательно для клиентов и партнеров, так что это дает потенциал для получения еще большего дохода от своего продукта.

Как тестирование может способствовать успеху проекта?

• Участие тестировщиков в анализе требований и уточнении пользовательских историй.

Современные методологии разработки предполагают инкрементное тестирование, то есть возможность внесения необходимых коррекций по мере совершенствования версий продукта, начиная с этапа уточнения требований к продукту и составления технического задания. Методики тестирования включают процедуры анализа с применением методологии моделирования. На этапе разработки модели можно максимально эффективно протестировать степень удовлетворенности клиента функционалом продукта и его требований к интерфейсу. Для решения этой задачи необходимо подключать к процессам тестирования клиентов, для расширения класса решаемых задач и выявления насущных потребностей конечного пользователя. Такой подход позволяет разрабатывать программные продукты, в полной мере обладающие свойствами системности, которые можно с относительно небольшими ресурсными затратами модифицировать в заданном спектре потребностей рынка. При использовании такого подхода специалист-тестировщик получает более широкую картину для анализа, за счет вовлечения его в процесс коллективной разработки.

• Тесная работа тестировщиков с разработчиками. Когда тестировщики тесно сотрудничают с разработчиками, это улучшает их понимание каждой части кода. Взаимодействие между группами разработчиков и тестировщиков через обмен данными и сочетание процедур анализа, проектирования и тестирования, реализованное в технологиях экстремального программирования, позволяет систематизировать контроль качества и сократить сроки разработки продукта и снизить стоимость внесения исправлений. Более тесное взаимодействие разработчиков и тестировщиков позволяет последним сконцентрироваться на тех областях, где наиболее высок риск возникновения ошибок и соответствующим образом выстроить приоритеты. В свою очередь, обмен данными полезен и разработчикам для скорейшего управления дефектами и снятия рисков.

• Тестировщики многократно проверяют программное обеспечение перед его выпуском. Это помогает в обнаружении ошибок, которые в противном случае могли остаться незамеченными, и поддерживает процесс устранения дефектов, вызвавших сбои.

Поставка программного продукта оптимального качества, обладающего уникальными и инновационными функциями, всегда была приоритетом индустрии программного обеспечения во всем мире.

Для оптимального выбора конкретной методики тестирования необходимо учитывать множество специфических факторов проекта разработки: масштаб и сложность продукта, ресурсные ограничения, особенности инфраструктуры, квалификацию персонала и ряд других. В целом можно сказать, что первоочередным вопросом в определении стратегии нужно сделать выбор базового этапа жизненного цикла разработки для основного тестирования. Также необходимо вводить процедуры тестирования в графики сетевого планирования для учета временных затрат и реалистичных оценок сроков завершения продукта; это тем более важно, что, как можно видеть из, например, отчетов CHAOS Report от The Standish Group, превышение относительно ожидаемого времени реализации разработки характерно для 45% ИТ-проектов. Далее, необходимо выявить набор стабильных однозначных параметров, характеризующих успешность процедуры тестирования.

В рамках данной статьи изучены задачи процессов тестирования программного обеспечения, выделены основные преимущества применения тестирования в рамках жизненного цикла разработки программного обеспечения. По результатам проведенного анализа можно сделать следующий вывод: Качество конечного продукта напрямую зависит от процесса тестирования, поэтому необходимо начинать тестирование как можно раньше. Использование готовых технических решений - инструментов

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

1. Канер С., Фолк Д., Нгуен К. Е. Тестирование программного обеспечения. Фундаментальные концепции менеджмент бизнес- приложений. ДиаСофт, 2001г., 544 стр.

2. Glenford J. Myers, Corey Sandler and Tom Badgett, 2011. The Art of Software Testing(3rd edition)., Wiley Publishing.

3. Mohd. Ehmer Khan & Farmeena Khan, Importance of Software Testing in software Development Life Cycle, International Journal of Computer science Issues, Vol.11, No.2,March 2014.

© Логачева Н.В., Ладонычева М.Л., Пузырева К.С., 2022

УДК.621

Морозов Н. В., студент.

Научный руководитель: Загртденов Р.Р., к.т.н.

Академия водного транспорта Российский университет транспорта (МИИТ)

(Российская Федерация)

АДДИТИВНЫЕ ТЕХНОЛОГИИ ПРИ РАЗРАБОТКЕ И ПРОИЗВОДСТВЕ ТОРМОЗНЫХ

НАКЛАДОК КОЗЛОВОГО КРАНА

Принтерное 3D (аддитивное) производство деталей широким спектром представлено на Российском рынке. Оно глубокими корнями все шире охватывает рынок производителей новой продукции. Его развитие влияет на скорость освоения новых программ проектирования и производства деталей подъемно-транспортных машин.

В настоящее время при производстве мостовых и козловых кранов, при их эксплуатации и ремонте применяют материалы, которые имеют устойчивые показатели в работе, хорошие проектировочные и конструкторские наработки.

На производственной практике в ООО «Троицкий крановый завод» авторами были проведены опыты по проектированию, в программе 3ds Max, и изготовлению, на 3D принтере из пластика PLA, тормозных накладок механизма подъёма груза мостового крана грузоподъемностью 30 тонн в масштабе 1:5, представлено на рис 1.

Рисунок 1 - Изготовление на 3D принтере тормозных накладок мостового крана

i Надоели баннеры? Вы всегда можете отключить рекламу.