Файл: Отладка и тестирование программ: основные подходы и ограничения (РАЗРАБОТКА ПРОГРАММ).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 30.03.2023

Просмотров: 240

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Рисунок 5 – Результат теста № 1

Рисунок 6 – Результат теста № 2

Рисунок 7 – Результат теста № 3

Как видно из таблицы 2, тесты завершились неуспешно.

В результате анализа исходного кода можно сделать выводы [9, 12]:

  • не стоит инициализировать начальные значения минимума и максимума нулями, т.к. значения, хранящиеся в матрице заранее неизвестны. Следовательно, за исходное значение стоит брать существующий элемент матрицы, например, mas[0][0];
  • при поиске максимума была допущена ошибка в знаке условия. Необходимо изменить «<» на «>».

Исправленный код программы выглядит следующим образом [15]:

#include <iostream>

using namespace std;

int main()

{

int m,n,min,max;

int mas[10][10];

cout<<"m = ";

cin>>m;

cout<<"n = ";

cin>>n;

cout<<"Enter matrix:"<<endl;

for (int i=0; i<m; i++)

for (int j=0; j<n; j++)

cin>>mas[i][j];

min=mas[0][0]; max=mas[0][0];

for (int i=0; i<m; i++)

for (int j=0; j<n; j++)

{

if (mas[i][j]<min)

min=mas[i][j];

if (mas[i][j]>max)

max=mas[i][j];

}

cout<<"Matrix:"<<endl;

for (int i=0; i<m; i++)

{

for (int j=0; j<n; j++)

cout<<mas[i][j]<<" ";

cout<<endl;

}

cout<<"Max = "<<max<<endl;

cout<<"Min = "<<min<<endl;

system("pause");

return 0;

}

Результаты повторного тестирования приведены на рисунках 8-10.

Рисунок 8 – Результат теста № 1

Рисунок 9 – Результат теста № 2

Рисунок 10 – Результат теста № 3

Как видно из рисунков, тестирование прошло успешно.

Таким образом, в рамках данной главы рассмотрен процесс создания простейшего приложения – постановка задачи, написание исходного кода, тестирование и отладка.

ЗАКЛЮЧЕНИЕ

В рамках выполнения данной работы была раскрыта тема «Тестирование и отладка программ: виды тестирования, тестирование надежности, организация процесса тестирования. Финишные этапы разработки программных систем».

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

  • основные;
  • вспомогательные;
  • организационные.

К основным процессам разработки относятся:


  • приобретение;
  • поставка;
  • разработка;
  • эксплуатация;
  • сопровождение.

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

Вторая глава работы посвящена непосредственно тестированию. Здесь рассмотрены основные виды тестирования:

  • тестирование программы как черного ящика;
  • тестирование программы как белого ящика.

Также уделяется внимание тестированию надежности. Данное понятие определяет следующие свойства программного продукта:

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

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

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

  • разработчиком;
  • заказчиком;
  • пользователем.

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

СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ

  1. Адигеев М.Г. Жизненный цикл программного обеспечения. – Ростов-на-Дону: ЮФУ, 2013. – 41 с.
  2. Берг Д.Б. Модели жизненного цикла. – Екатеринбург: Изд-во Уральского университета, 2014. – 78 с.
  3. Буздалов Д.В. Практикум по дедуктивной верификации программ. – М.: Изд-во МГУ, 2014. – 100 с.
  4. Вендров А.М. Проектирование программного обеспечения. – М.: Финансы и статистика, 2016. – 544 с.
  5. Гудов А.М. Технология разработки программного обеспечения / А.М. Гудов, С.Ю. Завозкин, С.Н. Трофимов. – Кемерово: КемГУ, 2015. – 138 с.
  6. Гусятников В.Н. Стандартизация и разработка программных систем / В.Н. Гусятников, А.И. Безруков. – М.: Финансы и статистика; ИНФРА-М, 2013. – 288 с.
  7. Дроботун Е.Б. Надежность программного обеспечения. Виды и критичность ошибок. – Тверь: ВАВКО, 2014. – 8 с.
  8. Евсеева О.Н. Отладка и тестирование приложений в среде Visual Studio / О.Н. Евсеева, А.Б. Шамшев. – Ульяновск: УлГТУ, 2014. – 96 с.
  9. Калайда В.Т. Технология разработки программного обеспечения / В.Т. Калайда, В.В. Романенко. – Томск: Томский межвузовский центр дистанционного образования, 2017. – 257 с.
  10. Кропачева М.С. Формальная верификация программ, написанных на функционально-потоковом языке параллельного программирования / М.С. Кропачева, А.И. Легалов. – Новосибирск: Изд-во СФУ, 2012. – 19 с.
  11. Куликов С.А. Тестирование программного обеспечения. – М.: МГТУ, 2014. – 298 с.
  12. Моисеев М.. Формальные методы обеспечения качества ПО. – М.: МГТУ, 2012. – 52 с.
  13. Пацей Н.В. Технология разработки программного обеспечения / Н.В. Пацей, Д.В. Шиман, И.Г. Сухорукова. – Минск: БГТУ, 2014. – 130 с.
  14. Плаксин М.А. Тестирование и отладка программ для профессионалов будущих и настоящих. – М.: БИНОМ, 2015. – 170 с.
  15. Попова Ю.Б. Тестирование и отладка программного обеспечения. – Минск: Изд-во БНТУ, 2013. – 35 с.
  16. Савенко И.И. Технология разработки программного обеспечения. – Томск: Изд-во ТПУ, 2014. – 67 с.
  17. Соловьев С.В. Технология разработки прикладного программного обеспечения / С.В. Соловьев, Л.С. Гринкруг, Р.И. Цой. – М.: БИНОМ, 2012. – 321 с.
  18. Соммервилл И. Инженерия программного обеспечения. – М.: «Вильямс», 2012. – 624 с.
  19. Степанченко И.В. Методы тестирования программного обеспечения. – Волгоград: ВолгГТУ, 2016. – 74 с.
  20. Якунин Ю.Ю. Технологии разработки программного обеспечения. – Красноярск: ИПК СФУ, 2013. – 225 с.