Теоретичні засади тестування програмного забезпечення

Якість програмного забезпечення як інтегральний показник, що впливає на потенційний комерційний успіх програмного забезпечення. Дослідження теоретичних засад тестування програмного забезпечення як важливого етапу розробки програмного забезпечення.

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык украинский
Дата добавления 21.06.2024
Размер файла 88,4 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Теоретичні засади тестування програмного забезпечення

Родіонов Павло Юрійович доцент кафедри інформатики та програмної інженерії факультету інформатики та обчислювальної техніки, Національний технічний університет України «Київський політехнічний інститут імені Ігоря Сікорського»

Полупан Юлія Вікторівна доцент кафедри інформатики та програмної інженерії факультету інформатики та обчислювальної техніки, Національний технічний університет України «Київський політехнічний інститут імені Ігоря Сікорського»

Родіонова Олена Володимирівна старший викладач кафедри комп'ютерних мультимедійних технологій факультету міжнародних відносин, Національний авіаційний університет,

Анотація

тестування програмного забезпечення

Якість програмного забезпечення являє собою здатність програмного забезпечення відповідати при заданих умовах визначеним вимогам. До характеристик програмного забезпечення відносять продуктивність, надійність, безпеку використання, портативність, зручність користувацького інтерфейсу та інші. Причинами недостатньої якості програмного забезпечення є проблеми планування, відсутність чітких цілей, невідповідність доступних ресурсів заявленим цілям, нереалістичні часові рамки та інші. Процеси забезпечення якості та контролю програмного забезпечення, а також тестування програмного забезпечення направлені на підвищення якості комп'ютерних програм.

У свою чергу якість програмного забезпечення є інтегральним показником, що має значний вплив на потенційний комерційний успіх створеного програмного забезпечення. Відповідно, на сучасному етапі розвитку інженерії програмного забезпечення теоретичні та практичні аспекти якості традиційного та хмарного програмного забезпечення набувають особливо важливого значення.

Метою роботи було провести дослідження теоретичних засад тестування програмного забезпечення як важливого етапу розробки програмного забезпечення.

В рамках дослідження вирішувалася задача аналізу сучасних наукових підходів до розуміння понять забезпечення якості програмного забезпечення, контролю якості програмного забезпечення та тестування програмного забезпечення. Відповідно до проведеного дослідження, тестування програмного забезпечення є складовою контролю якості програмного забезпечення, що направлений на пошук на виправлення дефектів у комп'ютерних програмах.

Зазначена вище задача є актуальною і важливою з точки зору побудови теоретичного фреймворку для подальших наукових досліджень у сфері якості програмного забезпечення, що у свою чергу буде мати позитивний ефект на розвиток теоретичних та практичних засад тестування програмного забезпечення.

Ключові слова: якість програмного забезпечення, контроль якості програмного забезпечення, тестування програмного забезпечення.

Abstract

Rodionov Pavlo Yuriyovych associate professor of the Department of Informatics and Software Engineering, Faculty of Informatics and Computer Engineering, National Technical University of Ukraine “Igor Sikorsky Kyiv Polytechnic Institute”

Polupan Yuliya Viktorivna associate professor of the Department of Informatics and Software Engineering, Faculty of Informatics and Computer Engineering, National Technical University of Ukraine “Igor Sikorsky Kyiv Polytechnic Institute”,

Rodionova Olena Volodymyrivna senior lecturer of the Department of Computer Multimedia Technologies, Faculty of International Relations, National Aviation University

THEORETICAL FOUNDATIONS OF SOFTWARE TESTING

Software quality is the software's ability to meet defined requirements under given conditions. The characteristics of the software include productivity, reliability, security of use, portability, ease of use of the user interface, and others. The reasons for insufficient software quality are planning problems, lack of clear goals, inconsistency of available resources with stated goals, unrealistic time frames, and others. Software quality assurance and control processes, as well as software testing, are aimed at improving the quality of computer programs.

In turn, software quality is an integral indicator that has a significant impact on the potential commercial success of the created software. Accordingly, at the current stage of development of software engineering, the theoretical and practical aspects of the quality of traditional and cloud software are of particular importance.

The purpose of the work was to conduct a study of the theoretical foundations of software testing as an important stage of software development.

As part of the study, the task of analyzing modern scientific approaches to understanding the concepts of software quality assurance, software quality control, and software testing was solved. According to the conducted research, software testing is a component of software quality control aimed at finding and correcting defects in computer programs.

The above-mentioned task is relevant and important from the point of view of building a theoretical framework for further scientific research in the field of software quality, which in turn will have a positive effect on the development of theoretical and practical principles of software testing.

Keywords: software quality, software quality control, software testing.

Постановка проблеми

Сучасний етап розвитку інформаційних систем та технологій характеризується високими вимогами до якості програмного забезпечення. Це у свою чергу призводить до необхідності безперервного розвитку та покращення процесів, що пов'язані з забезпеченням якості традиційного та хмарного програмного забезпечення.

Забезпечення якості програмного забезпечення стосується організаційних питань забезпечення його якості, починаючи від формування вимог та завершуючи запуском програмного забезпечення.

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

Тестування програмного забезпечення фокусується на перевірці відповідності заявлених до програмного забезпечення вимог та реалізованої функціональності. Це досягається за рахунок створення та проведення тестів, що направлені на оцінювання надійності, масштабованості та портативності програмного забезпечення, а також можливості його повторного використання та зручності користування.

Відповідно, важливим завданням є дослідження питань, що стосуються теоретичних засад тестування програмного забезпечення. Це включає в себе дослідження сучасних підходів щодо сутності, задач та цілей тестування програмного забезпечення які існують та використовуються в наукових роботах за даною темою, а також критичного аналізу сучасних тенденцій тестування програмного забезпечення.

Аналіз останніх досліджень і публікацій. Питанням, що стосуються забезпечення якості, контролю та тестування програмного забезпечення присвячені роботи таких вчених, як Олапері Єсід Соунмі, Санджай Місра, Луїс Фернандес-Санс, Бродерік Кроуфорд і Рікардо Сото, Шейн Даунінг, М. Аффан

Бадар, Евангелос Папакіцос та ін. Інструменти та програмні засоби для тестування програмного забезпечення досліджувалися такими вченими, як Засорнова І., Говорущенко Т., Войчур О., Єгорова О.В., Бичок В.П. та ін. Проте на нашу думку питання теоретичних засад і ролі тестування програмного забезпечення на даний момент не отримало достатньої уваги та потребує подальшого вивчення.

Мета статті полягає у дослідженні теоретичних засад тестування програмного забезпечення як важливого етапу розробки програмного забезпечення.

Виклад основного матеріалу

На першому етапі проведеного дослідження розглянемо сучасні підходи до тлумачення дефініції «Тестування програмного забезпечення». Так, Нахід Анвар і Сусміта Кар зазначають у своїй роботі, що створення програмного забезпечення передбачає розробку програмного забезпечення відповідно до набору визначених вимог. Тестування являється необхідним для верифікації та валідації програмного забезпечення, яке було створено відповідно до існуючих специфікацій. Тестування програмного забезпечення допомагає запобігти появі дефектів у системі за рахунок процесу оцінки програмного забезпечення з метою виявити та усунути можливі помилки. Тестування також використовується для аналізу програмного забезпечення з точки зору інших аспектів програмного забезпечення, таких як зручність використання, сумісність, надійність, цілісність, ефективність, безпека, здатність, портативність, ремонтопридатність тощо. Тестування програмного забезпечення спрямоване на досягнення конкретних цілей та забезпечення відповідності встановленим принципам. Іншими словами, тестування - це процес пошуку помилок у комп'ютерній програмі. Тестування програмного забезпечення -- це виконання програмного забезпечення для верифікації, виявлення помилок та для здійснення валідації [1].

Методи тестування програмного забезпечення мають вирішальне значення для виявлення помилок у програмному забезпеченні та зниження ризику його використання. Таким чином, важливо мати розуміння щодо оцінювання даних методів з точки зору їх ефективності, масштабованості, застосовності та ефективності у процесі пошуку дефектів [2]. Методи тестування програмного забезпечення можна поділити на дві групи: автоматизоване та ручне тестування.

Автоматизоване тестування - це тип тестування програмного забезпечення, який використовує програмні засоби для автоматичного виконання тестів. Цей метод передбачає для тестування використовувати спеціалізоване програмне забезпечення для виконання тестових завдань замість ручних зусиль.

Автоматизоване тестування використовується для підвищення ефективності та точності тестування програмного забезпечення за рахунок зменшення кількості ручних зусиль. Автоматизоване тестування передбачає виконання наступних кроків:

1. Планування тестування. Першим кроком в автоматизованому тестуванні є розроблення плану тестування, який описує цілі тестування, тестові випадки та процедури тестування.

2. Розробка тестів. Розробляються тести на основі вимог і специфікацій програмного забезпечення. Тестові випадки розробляються таким чином, щоб охопити всі можливі сценарії та екстремальні випадки.

3. Розробка тестового сценарію. Розробляються тестові сценарії за допомогою спеціалізованого програмного забезпечення для тестування, яке призначене для автоматизації процесу тестування.

4. Виконання тестів. Програмне забезпечення для автоматизованого тестування виконує тестові сценарії та зберігає отримані результати.

5. Звіт про дефекти. Будь-які дефекти або проблеми, виявлені під час процесу тестування доводяться до відома команди розробників.

6. Повторне тестування. Після усунення дефектів командою розробників, програмне забезпечення для автоматизованого тестування виконує повторне тестування, щоб переконатися, що проблеми були успішно вирішені [3].

Ручне тестування є фундаментальним і часто необхідним аспектом тестування програмного забезпечення, що пропонує такі переваги, як гнучкість, детальне розуміння досвіду користувача та здатність адаптуватися до мінливих вимог [4]. Кращим випадком тестування є варіант коли наявна вимога тестувати програмне забезпечення з точки зору користувача чи клієнта і програмне забезпечення перевіряється попередньо вручну перед виконанням будь-якого автоматизованого тестування [5]. Незважаючи на широке застосування автоматизованих методів тестування, ручне тестування продовжує залишатися фундаментальним аспектом тестування програмного забезпечення, коли тестувальник перевіряє програмне забезпечення на наявність помилок і відіграє вирішальну роль у забезпеченні якості, особливо у випадках, коли знання проблемної області є значущими, оскільки автоматизація не володіє неявними знаннями Тайпале та ін. [6]. Тестування вручну забезпечує повне розуміння зручності та надійності використання програмного забезпечення і пропонує більш цілісний підхід до тестування [7]. Хаас та ін. науковці виявили, що процеси ручного тестування можна оптимізувати для більшої ефективності та дієвості завдяки кращому плануванню, координації та комунікації [8]. Завдяки своїй здатності виявляти небажані ефекти та нюанси, ручне тестування має вирішальне значення в певних середовищах тестування, таких як регресійне тестування і тестування вбудованого програмного забезпечення. Таким чином структуроване ручне тестування з розробкою тестів тестувальником, які враховують його особистий досвід і знання, є достатньо ефективним способом [9; 10].

На другому етапі дослідження проаналізовано методи чорної, білої та сірої скриньок, які активно використовуються при тестуванні програмного забезпечення.

Метод тестування білої скриньки являє собою детальне дослідження внутрішньої логіки та структури коду. У тестуванні за методом білої скриньки необхідно, щоб тестувальник мав повне знання вихідного коду. Тестування за методом білої скриньки -- це метод розробки тестових випадків, який використовує керуючу структуру процедурного дизайну для отримання тестових випадків. Тестування за методом білої скриньки може виявити помилки впровадження, такі як неякісне керування ключами, аналізуючи внутрішню роботу та структуру частини програмного забезпечення. Тестування білої скриньки застосовне на рівнях інтеграції, модуля та системи процесу тестування програмного забезпечення. Під час тестування відповідно до методу білої скриньки тестувальник повинен проаналізувати вихідний код та з'ясувати, який фрагмент програмного коду поводиться неналежним чином [11].

Техніка тестування чорної скриньки дозволяє працювати без знання внутрішньої роботи програми. Вона досліджує лише фундаментальні аспекти системи та не має або мало пов'язана із внутрішньою логічною структурою системи. Тестування чорної скриньки розглядає програмне забезпечення як чорну скриньку - без будь-яких знань про внутрішню роботу та перевіряє лише фундаментальні аспекти системи. Під час виконання тесту чорної скриньки тестувальник повинен знати архітектуру системи та не матиме доступу до вихідного коду [12].

Метод тестування сірої скриньки - це метод тестування програмного забезпечення, який не залежить від платформи та мови програмування. Поточна реалізація методу тестування сірої скриньки значною мірою залежить від використання налагоджувача хост-платформи для виконання та перевірки програмного забезпечення, що тестується. Дослідження підтвердили, що метод тестування сірої скриньки можна застосовувати в реальному часі за допомогою програмного забезпечення, що виконується на цільовій платформі. Методи тестування сірої скриньки поєднують методи тестування білої та чорної скриньок. Метод тестування сірої скриньки використовується для перевірки програмного забезпечення на відповідність специфікаціям, але також із використанням певних знань про його внутрішню роботу. Розуміння внутрішньої частини програми в тестуванні сірої скриньки має бути більшим, ніж у тестуванні чорної скриньки, але меншим, ніж у тестуванні за методом білої скриньки [13; 14].

Контроль якості програмного забезпечення передбачає процес моніторингу процесу розробки програмного забезпечення та перевірку продукту чи отриманих результатів (наприклад, модель проекту або програмний код) з метою переконатися, що план якості та організаційні стандарти та процедури за яким стежить команда розробників дотримані. Контроль якості охоплює набір дій програмної інженерії, які сприяють тому, що кожен створений продукт відповідає заявленим вимогам до якості [16].

Вчені у галузі якості програмного забезпечення Олапері Єсід Соунмі та Санджай Місра у своїй роботі зазначають, що контроль якості програмного забезпечення може бути реалізовано за допомогою автоматизованої оцінки програмного забезпечення або групою перевірки якості. Це часто передбачає вимірювання за допомогою програмних показників. Будь-який виявлений компроміс щодо стандартів якості має бути задокументовано та передано відповідному персоналу для виправлення. Методи, які можна використовувати, включають дизайн і покрокове виконання програмного коду, огляд, тестування, перевірку та оцінку продуктивності [17].

Забезпеченням якості програмного забезпечення, є лише технікою для забезпечення якості комп'ютерних програм. Це група кроків, які виконуються для забезпечення відповідності стандартів, процедур і процесів, які використовуються в проекті. Забезпечення якості програмного забезпечення являє собою процес, який відбувається під час розроблення програмного забезпечення [18].

Н. Гілл представляє забезпечення якості програмного забезпечення як широку діяльність, яка є частиною кожного етапу розробки програмного забезпечення [19]. Така загальна діяльність, на нашу думку, повинна мати відношення як до життєвого циклу розробки програмного забезпечення та і до життєвого циклу управління проектом [18].

Забезпечення якості програмного забезпечення відноситься до процедури, яка є чіткою та повторюваною. Для того щоб оцінити внутрішні системи контролю та гарантії дотримання стандартів і процедур програмного забезпечення необхідно пов'язати процес тестування з проектом управління та життєвим циклом розробки програмного забезпечення. Цілі процесу включають забезпечення досягнення цілей, зниження ризиків, оцінку внутрішнього контролю та підвищення якості - і все це при дотриманні часових та фінансових обмежень [18].

Забезпечення якості програмного забезпечення -- це офіційний процес оцінки та документування якості робочих продуктів на кожному етапі життєвого циклу розробки програмного забезпечення. Практика застосування програмних показників до експлуатаційних факторів і для їх підтримки є складним завданням. Успішне забезпечення якості програмного забезпечення значною мірою залежить від показників програмного забезпечення. Необхідно пов'язати модель якості програмного забезпечення та показники програмного забезпечення через фактори якості, щоб запропонувати метод вимірювання для забезпечення якості програмного забезпечення [20].

Оуенс Д.М. та Хазанчі Д. пропонують розглядати забезпечення якості програмного забезпечення як чітко визначений повторюваний процес, який інтегрований з управлінням проектом і життєвими циклами розробки програмного забезпечення для перегляду механізмів внутрішнього контролю та забезпечення дотримання стандартів і процедур програмного забезпечення. Метою процесу є забезпечення відповідності вимогам, зниження ризику, оцінка внутрішнього контролю та покращення якості, дотримання заявленого графіка та бюджетних обмежень [21].

Забезпечення якості програмного забезпечення складається з процесів, технік та інструментів, що застосовуються для забезпечення відповідності програмних продуктів заздалегідь встановленим стандартам на етапах життєвого циклу програмного забезпечення. Без зазначених стандартів забезпечення якості програмного забезпечення не можна гарантувати, що конкретний програмний продукт відповідає або перевищує мінімально припустимий рівень якості. Іншими словами, це дуже широка діяльність, здійснювана незалежною робочою групою розробників, яка не бере участі в конкретних проектах і подає свої звіти безпосередньо адміністрації компанії. Забезпечення якості програмного забезпечення пов'язане з процесом оцінки програмного забезпечення, який є технічною частиною контролю якості програмного забезпечення, тоді як забезпечення якості є адміністративною частиною. Діяльність забезпечення якості програмного забезпечення включає у себе визначення критеріїв (факторів), за якими проводиться тестування, підходів для їх визначення та використання, а також метрики якості, що кількісно визначають важливі функції програмного забезпечення. Тобто це включає у себе методологію, стандарти та метрики [22].

Забезпечення якості програмного забезпечення має бути успішно пов'язане з численними етапами життєвого циклу. Як наслідок, забезпечення якості важко проводити на пізній стадії життєвого циклу як останню спробу покращити якість до завершення діяльності з розробки [23].

Враховуючи вищесказане, ми можемо погодитися з Аміт Бханушалі, який пропонує розглядати взаємозв'язок між тестуванням, забезпеченням якості та контролем якості за допомогою діаграми (рис. 1). Створення настанов і стандартів, контроль якості та вибір відповідних інструментів -- види діяльності, пов'язані із забезпеченням якості [18].

Рисунок 1. Взаємозв'язок між тестуванням, забезпеченням якості та контролем якості [18]

Таким чином, забезпечення якості програмного забезпечення ставить на меті запобігти появі дефектів за рахунок створення процесів, які допоможуть розробникам виявити та виправити можливі помилки на всіх стадіях життєвого циклу програмного забезпечення. Контроль якості програмного забезпечення акцентує увагу на детектуванні дефектів. На відміну від забезпечення якості, контроль якості акцентує увагу не на процесах, а на продукті, що розробляється. У свою чергу тестування програмного забезпечення направлене на виявлення та виправлення дефектів за рахунок використання різноманітних методів та перебуваючи в рамках фреймворку, що визначається контролем якості.

Висновки

У даній роботі було проведено дослідження теоретичних засад тестування як етапу розроблення програмного забезпечення, що має значний вплив на якість програмного забезпечення. Для вирішення проблеми розмежування тестування програмного забезпечення, забезпечення якості програмного забезпечення та контролю якості програмного забезпечення було проаналізовано підходи до тлумачення зазначених дефініцій у сучасних наукових виданнях. Відповідно, тестування направлене пошук та виправлення дефектів у роботі комп'ютерних програм та існує в рамках, що визначаються контролем якості програмного забезпечення. Натомість забезпечення якості програмного забезпечення являє собою набір активностей, направлених на забезпечення відповідності програмного забезпечення встановленим стандартам, фокусуючи увагу на процесах розроблення програмного забезпечення.

В якості подальших наукових досліджень може розглядатися аналіз сучасних тенденцій у тестуванні з точки зору пошуку шляхів підвищення якості програмного забезпечення.

Література

1. Nahid Anwar, & Susmita Kar. (2019). Review Paper on Various Software Testing Techniques. Global Journal of Computer Science and Technology, 19(C2), 43-49. Retrieved from https://computerresearch.org/index.php/computer/article/view/1873

2. Mayeda, A. Andrews, Evaluating software testing techniques: A systematic mapping study, Advances in Computers 123 (2021) 41-114.

3. Thant, Khin & Khaung Tin, Hlaing Htake & Ind,. (2023). The impact of manual and automatic testing on software testing efficiency and effectiveness. 88-93.

4. Mischke, R., Schaffert, K., Schneider, D. and Weinert, A. (2022). Automated and manual testing in the development of the research software RCE, Computational Science - ICCS 2022, Lecture Notes in Computer Science, Springer International Publishing, Cham, pp. 531-544.

5. Dhore, P., Wadhwa, L., Shinde, P., Chaudhri, D. and Vyas, P. (2023). Brief review on different manual software testing approaches & procedure, Journal of Pharmaceutical Negative Results pp. 455-464.

6. Taipale, O., Kasurinen, J., Karhu, K. and Smolander, K. (2011). 'trade-off between automated and manual software testing', International journal of system assurance engineering and management 2(2): 114-125.

7. Mateen, A., Zhu, Q. and Afsar, S. (2018). Comparative analysis of manual vs automotive testing for software quality, Proceedings of the 7th International Conference on Software Engineering and New Technologies, ICSENT 2018, Association for Computing Machinery, New York, NY, USA. URL: https://doi.org/10.1145/3330089.3330121

8. Haas, R., Elsner, D., Juergens, E., Pretschner, A. and Apel, S. (2021). How can manual testing processes be optimized? developer survey, optimization guidelines, and case studies, Proceedings of the 29th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, ESEC/FSE 2021, Association for Computing Machinery, New York, NY, USA, p. 1281-1291. URL: https://doi.org/10.1145/ 3468264.3473922

9. Jang, S.-J., Kim, H.-G. and Chung, Y.-K. (2008). Manual specific testing and quality evaluation for embedded software, Seventh IEEE/ACIS International Conference on Computer and Information Science (icis 2008), IEEE, pp. 502-507.

10. Ahmad, Yusuf. (2023). Optimizing Manual Testing Processes in Software Development: A Manual Tester's Perspective. https://doi.org/10.13140/RG.2.2.34284.13443

11. Mohd Ehmer Khan and Farmeena Khan, “A Comparative Study of White Box, Black Box and Grey Box Testing Techniques” International Journal of Advanced Computer Science and Applications(IJACSA), 3(6), 2012. http://dx.doi.org/10.14569/IJACSA.2012.030603

12. Khan, Mohd. Ehmer, Different Approaches to Black Box Testing Technique for Finding Errors (July 21, 2021). International Journal of Software Engineering & Applications (IJSEA), Vol.2, No.4, October 2011, Available at SSRN: https://ssrn.com/abstract=3890672

13. Mohd. Ehmer Khan,”Different Forms of Software Testing Techniques for Finding Errors,”IJCSI International Journal of Computer Science Issues,Vol. 7, Issue 3, No 1, May 2010.

14. Sawant, A. A., Bari, P. H., & Chawan, P. M. (2012). Software testing techniques and strategies. International Journal of Engineering Research and Applications (IJERA), 2(3), 980-986.

15. Downing, Shane & Badar, M.Affan. (2022). Holistic QA: Software Quality Assurance for the Machine Learning Era. https://doi.org/10.46254/NA07.20220050

16. Pressman R. S. (2010). Software engineering: a practitioner's approach (7th ed. alternate ed. international). McGraw-Hill Higher Education.

17. Sowunmi, O.Y., Misra, S., Fernandez-Sanz, L. et al. An empirical evaluation of software quality assurance practices and challenges in a developing country: a comparison of Nigeria and Turkey. SpringerPlus 5, 1921 (2016). https://doi.org/10.1186/s40064-016-3575-5

18. Bhanushali, Amit. (2023). Ensuring Software Quality Through Effective Quality Assurance Testing: Best Practices and Case Studies. International Journal of Advances in Scientific Research and Engineering. 26.1.

19. Gill, N. S. (2005). Factors affecting effective software quality management revisited. ACM Sigsoft Software Engineering Notes, 30 (2), 1-4.

20. Lee, Ming-Chang. (2014). Software Quality Factors and Software Quality Metrics to Enhance Software Quality Assurance. British Journal of Applied Science & Technology.. https://doi.org/10.9734/BJAST/2014/10548.

21. Owens DM, Khazanchi D (2009) Software quality assurance. Handbook of research on technology project management, planning, and operations. IGI Global, Pennsylvania, pp 245-263.

22. Papakitsos, Evangelos. (2022). Robust Software Quality Assurance. Bulletin of the Georgian National Academy of Sciences. 16. 23-31.

23. Voas, J. (2003). Assuring software quality assurance. IEEE Software, May/June, 48-49.

References

1. Nahid Anwar, & Susmita Kar. (2019). Review Paper on Various Software Testing Techniques. Global Journal of Computer Science and Technology, 19(C2), 43-49. Retrieved from https://computerresearch.org/index.php/computer/article/view/1873

2. Mayeda, A. Andrews, Evaluating software testing techniques: A systematic mapping study, Advances in Computers 123 (2021) 41-114.

3. Thant, Khin & Khaung Tin, Hlaing Htake & Ind,. (2023). The impact of manual and automatic testing on software testing efficiency and effectiveness. 88-93.

4. Mischke, R., Schaffert, K., Schneider, D. and Weinert, A. (2022). Automated and manual testing in the development of the research software RCE, Computational Science - ICCS 2022, Lecture Notes in Computer Science, Springer International Publishing, Cham, pp. 531-544.

5. Dhore, P., Wadhwa, L., Shinde, P., Chaudhri, D. and Vyas, P. (2023). Brief review on different manual software testing approaches & procedure, Journal of Pharmaceutical Negative Results pp. 455-464.

6. Taipale, O., Kasurinen, J., Karhu, K. and Smolander, K. (2011). 'trade-off between automated and manual software testing', International journal of system assurance engineering and management 2(2): 114-125.

7. Mateen, A., Zhu, Q. and Afsar, S. (2018). Comparative analysis of manual vs automotive testing for software quality, Proceedings of the 7th International Conference on Software Engineering and New Technologies, ICSENT 2018, Association for Computing Machinery, New York, NY, USA. URL: https://doi.org/10.1145/3330089.3330121

8. Haas, R., Elsner, D., Juergens, E., Pretschner, A. and Apel, S. (2021). How can manual testing processes be optimized? developer survey, optimization guidelines, and case studies, Proceedings of the 29th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, ESEC/FSE 2021, Association for Computing Machinery, New York, NY, USA, p. 1281-1291. URL: https://doi.org/10.1145/ 3468264.3473922

9. Jang, S.-J., Kim, H.-G. and Chung, Y.-K. (2008). Manual specific testing and quality evaluation for embedded software, Seventh IEEE/ACIS International Conference on Computer and Information Science (icis 2008), IEEE, pp. 502-507.

10. Ahmad, Yusuf. (2023). Optimizing Manual Testing Processes in Software Development: A Manual Tester's Perspective. https://doi.org/10.13140/RG.2.2.34284.13443

11. Mohd Ehmer Khan and Farmeena Khan, “A Comparative Study of White Box, Black Box and Grey Box Testing Techniques” International Journal of Advanced Computer Science and Applications(IJACSA), 3(6), 2012. http://dx.doi.org/10.14569/IJACSA.2012.030603

12. Khan, Mohd. Ehmer, Different Approaches to Black Box Testing Technique for Finding Errors (July 21, 2021). International Journal of Software Engineering & Applications (IJSEA), Vol.2, No.4, October 2011, Available at SSRN: https://ssrn.com/abstract=3890672

13. Mohd. Ehmer Khan,”Different Forms of Software Testing Techniques for Finding Errors,”IJCSI International Journal of Computer Science Issues,Vol. 7, Issue 3, No 1, May 2010.

14. Sawant, A. A., Bari, P. H., & Chawan, P. M. (2012). Software testing techniques and strategies. International Journal of Engineering Research and Applications (IJERA), 2(3), 980-986.

15. Downing, Shane & Badar, M.Affan. (2022). Holistic QA: Software Quality Assurance for the Machine Learning Era. https://doi.org/10.46254/NA07.20220050

16. Pressman R. S. (2010). Software engineering: a practitioner's approach (7th ed. alternate ed. international). McGraw-Hill Higher Education.

17. Sowunmi, O.Y., Misra, S., Fernandez-Sanz, L. et al. An empirical evaluation of software quality assurance practices and challenges in a developing country: a comparison of Nigeria and Turkey. SpringerPlus 5, 1921 (2016). https://doi.org/10.1186/s40064-016-3575-5

18. Bhanushali, Amit. (2023). Ensuring Software Quality Through Effective Quality Assurance Testing: Best Practices and Case Studies. International Journal of Advances in Scientific Research and Engineering. 26.1.

19. Gill, N. S. (2005). Factors affecting effective software quality management revisited. ACM Sigsoft Software Engineering Notes, 30 (2), 1-4.

20. Lee, Ming-Chang. (2014). Software Quality Factors and Software Quality Metrics to Enhance Software Quality Assurance. British Journal of Applied Science & Technology.. https://doi.org/10.9734/BJAST/2014/10548.

21. Owens DM, Khazanchi D (2009) Software quality assurance. Handbook of research on technology project management, planning, and operations. IGI Global, Pennsylvania, pp 245-263.

22. Papakitsos, Evangelos. (2022). Robust Software Quality Assurance. Bulletin of the Georgian National Academy of Sciences. 16. 23-31.

23. Voas, J. (2003). Assuring software quality assurance. IEEE Software, May/June, 48-49.

Размещено на Allbest.ru


Подобные документы

  • Тестування програмного забезпечення як процес його дослідження для отримання інформації про якість. Автоматизація тестування програми Join It - Jigsaw Puzzle. Методика тестування, структура пакету та його модулів. Вимоги до програмного забезпечення.

    дипломная работа [2,4 M], добавлен 24.07.2013

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

    курсовая работа [41,7 K], добавлен 14.11.2010

  • Проблеми процесу тестування програмного забезпечення. Розробка алгоритму автоматичної генерації тестів і тестового набору для ручного виконання. Побудова тестів для системи "Банкомат" і для баг-трекінгової системи, представленої графом із циклами.

    дипломная работа [1,2 M], добавлен 26.02.2014

  • Аналіз методів емпіричної інженерії програмного забезпечення. Призначення та властивості програмного забезпечення та метрик проектів Openproj-1.4-src, TalendOpen Studio 3.2.1 та Рlazma-source 0.1.8, їх статистичний, кореляційний та регресійний аналіз.

    курсовая работа [2,7 M], добавлен 12.12.2010

  • Дослідження алгоритму роботи та коду програми. Оцінка методом "чорного ящика". Тестування і налагодження розробленої програми на алгоритмічній мові високого рівня. Оцінювання якості програмного забезпечення за об’єктно-орієнтованими метриками зв’язності.

    курсовая работа [143,1 K], добавлен 11.03.2021

  • Етапи розробки проекту. Вимоги до апаратного і програмного забезпечення, до користувача. Специфікація та структура даних, які мають бути розміщеними в системі. Вигляд інтерфейсу системи програмного забезпечення. Розробка бази даних косметичного салону.

    дипломная работа [1,8 M], добавлен 21.02.2015

  • Проблеми розробки компонентного програмного забезпечення автоматизованих систем управління. Сучасні компонентні технології обробки інформації. Аналіз вибраного середовища проектування програмного забезпечення: мова програмування PHP та Apache HTTP-сервер.

    дипломная работа [2,8 M], добавлен 11.05.2012

  • Оцінювання та засоби підвищення надійності інформаційних технологій протягом усього життєвого циклу програмного забезпечення на основі негомогенного пуасонівського процесу та обчислення її параметрів, з урахуванням сучасних тенденцій тестування.

    автореферат [52,0 K], добавлен 10.12.2010

  • Аналіз формування податкової звітності. Розробка проекту інтерфейсу, інформаційної, статичної та динамічної моделей програмного забезпечення. Розрахунок економічної ефективності впровадження програмного забезпечення формування податкової звітності.

    дипломная работа [3,5 M], добавлен 26.04.2012

  • Планування програмного забезпечення автоматизованої системи бюро працевлаштування. Накопичення даних стосовно ринку праці. Проектування статичних аспектів, поведінки та архітектури програмного забезпечення. Особливості функціонування програмного продукту.

    курсовая работа [184,5 K], добавлен 05.07.2015

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.