Предположим в программе перед началом тестирования было 90 ошибок искусственно рассеяно 20 ошибок

Вторая часть модели связана с проверкой гипотезы выражения и тестирования N.

Рассмотрим случай, когда программа содержит К собственных ошибок и S рассеянных ошибок. Будем тестировать программу до тех пор, пока не обнаружим все рассеянные ошибки. В то же время количество обнаруженных исходных ошибок накапливается и запоминается. Далее вычисляется оценка надежности модели:

как вероятность того, что в программе содержится K ошибок.

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

Формула для расчета С в случае, когда обнаружены не все искусственно рассеянные ошибки, модифицирована таким образом, что оценка может быть выполнена после обнаружения v (v£S) рассеянных ошибок:

ISTA+ самостоятельная диагностика BMW на уровне дилера!

где числитель и знаменатель формулы при n £ К являются биноминальными коэффициентами.

Предположим, что в программе имеется 3 собственных ошибки. Внесём ещё 6 ошибок случайным образом. В процессе тестирования было найдено:

1) 6 ошибок из рассеянных и 2 собственных;

2) 5 ошибок из рассеянных и 2 собственных;

3) 5 ошибок из рассеянных и 4 собственных.

Найти надёжность по модели Миллса — С.

2) n=2, v=5, C=(6!/(5-1)!)/((6+3+1)!/(3+5)!)=0,333333, 2!=2, 4!=24, 6!=720, 8!=40320, 10!=3628800.

3) n=4, v=5, C=1 (по формуле (18)).

Источник: mydocx.ru

Задачи по применению модели Миллса

В программу преднамеренно внесли (посеяли) 10 ошибок. В ре­зультате тестирования обнаружено 12 ошибок, из которых 10 ошибок были внесены преднамеренно. Все обнаруженные ошибки исправле­ны. До начала тестирования предполагалось, что программа содер­жит не более 4 ошибок. Требуется оценить количество ошибок до начала тестирования и степень отлаженности программы.

Решение задачи

Для оценки количества ошибок до начала тестирования исполь­зуем формулу (1). Нам известно:

· количество внесенных в программу ошибок S = 10;

· количество обнаруженных ошибок из числа внесенных V =10;

· количество «собственных» ошибок в программе n = 12 — 10 = 2.

Подставив указанные значения в формулу, получим оценку коли­чества ошибок:

N=(S*n)/ V = (10*2)/10 = 2

Таким образом, из результатов тестирования следует, что до на­чала тестирования в программе имелось 2 ошибки.

Для оценки отлаженности программы используем уравнение (2). Нам известно:

· количество обнаруженных «собственных» ошибок в программе n = 2;

· количество предполагаемых ошибок в программе K = 4;

· количество преднамеренно внесенных и обнаруженных ошибок S = 10.

Очевидно, что обнаружено меньшее число «собственных» оши­бок, чем количество предполагаемых ошибок в программе (n Для оценки отлаженности программы используем уравнение

ПЕРИОДИЗАЦИЯ СПОРТИВНОЙ ТРЕНИРОВКИ / Лекция Селуянова В.Н.

С = S /(S+K + 1) = 10/(10 + 4+ 1) = 0,67

Степень отлаженности программы равна 0,67, что составляет 67%.

Задача 2

В программу было преднамеренно внесено (посеяно) 7 ошибок. В ре­зультате тестирования обнаружено 11 ошибок, из которых 7 ошибок были внесены преднамеренно. Все обнаруженные ошибки исправлены. До на­чала тестирования предполагалось, что программа содержит не более 5 ошибок. Требуется оценить количество ошибок до начала тестирования и степень отлаженности программы.

Решение задачи

Для оценки количества ошибок до начала тестирования исполь­зуем формулу (1). Нам известно:

· количество внесенных в программу ошибок S = 7;

· количество обнаруженных ошибок из числа внесенных V =7;

· количество «собственных» ошибок в программе n =11-7 = 4.

Подставив указанные значения в формулу, получим оценку:

Таким образом, из результатов тестирования следует, что до нача­ла тестирования в программе имелось 4 ошибки.

Для оценки отлаженности программы используем уравнение (2). Нам известно:

· количество обнаруженных «собственных» ошибок в программе n = 4;

· количество предполагаемых ошибок в программе K = 5;

· количество преднамеренно внесенных и обнаруженных ошибок S =7.

Очевидно, что обнаружено меньшее число «собственных» ошибок, чем количество предполагаемых ошибок в программе (n < K).Для оценки отлаженности программы используем уравнение

С= S/(S+K + 1) = 7/(7 + 5 + 1) = 0,54

Степень отлаженности программы равна 0,54, что составляет 54%.

Задача 3

В программу было преднамеренно внесено (посеяно) 14 ошибок. Предположим, что в программе перед началом тестирования было 14 ошибок. В процессе четырех тестовых прогонов было выявлено сле­дующее количество ошибок.

Номер прогона
V
n

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

Решение задачи

Количество ошибок перед каждым прогоном будем оценивать в соответствии с выражением (1). Перед каждой последующей оценкой количества ошибок и степени отлаженности программы не­обходимо корректировать значения внесенных S и предполагаемых K ошибок с учетом выявленных и устраненных после каждого прогона тестов. Степень отлаженности программы на всех прогонах, кроме последнего, рассчитывается по комбинаторной формуле.

Читайте также:
Сделать штрих код программа

Определяя показатели программы по результатам первого прого­на, необходимо учитывать, что S 1 = 14; n 1 = 4; V 1 = 6, тогда

По результатам второго прогона корректируем исходные данные для оценки параметров: K2 = 14 — 4 = 10; S 2 = 14 — 6 = 8; n 2 = 2; V2 = 4, следовательно,

Корректировка исходных данных после третьего прогона дает следующие данные: K 3 = 10 — 2 = 8, S 3 = 8 — 4 = 4; n 3= 1; V 3 = 2, отку­да количество ошибок определится следующим образом:

После четвертого прогона программы получим следующие ис­ходные данные: K4 = 8 — 1 = 7, S4 = 4 — 2 = 2; n4 = 1; V4 = 2, тогда

Поскольку после четвертого прогона все «посеянные» ошибки выявлены и устранены, то для оценки отлаженности программы можно воспользоваться упрощенной формулой

C=S/(S+K + 1) = 2/(2 + 7+ 1) = 0,2.

Таким образом, в предположении, что до начала четвертого про­гона в программе оставалось 7 ошибок, степень отлаженности про­граммы составляет 20%.

Результат по количеству ошибок в программе до начала каждого прогона приведен ниже.

Номер прогона
N

Графически динамика количества ошибок по результатам тести­рования программы показана на рисунке 2.

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

Рисунок 2. Динамика количества ошибок при тестировании программы

В программу было преднамеренно внесено (посеяно) 14 ошибок. В результате тестирования обнаружено 9 ошибок, из которых 6 оши­бок были внесены преднамеренно. Все обнаруженные ошибки ис­правлены. До начала тестирования предполагалось, что программа содержит не более 4 ошибок. Требуется оценить степень отлаженности программы на момент завершения тестирования.

Если тестирование закончено раньше, чем обнаружены все пред­намеренно внесенные ошибки, то следует применять более сложное комбинаторное выражение (6).

Из условия задачи нам известно:

· количество внесенных в программу ошибок S =14;

· количество обнаруженных ошибок из числа внесенных V= 6;

· количество «собственных» ошибок в программе n = 9-6 = 3;

Подставив значения в формулу, получим оценку количества ошибок:

N=(S*n)/ V = (14*3)/6 = 7

Таким образом, из результатов тестирования следует, что до на­чала тестирования в программе имелось 7 ошибок.

Для оценки отлаженности программы используем уравнение (7). Нам известно:

· количество обнаруженных «собственных» ошибок в программе n = 3;

· количество предполагаемых ошибок в программе K = 4;

· количество преднамеренно внесенных и обнаруженных ошибок S = 14.

Очевидно, что обнаружено меньшее число «собственных» оши­бок, чем количество предполагаемых ошибок в программе (n Для оценки отлаженности программы используем уравнение

С = S /(S+K + 1) = 14/(14 + 4+ 1) = 0,74

Степень отлаженности программы равна 0,74, что составляет 74%.

Заключение

В проделанной нами работе была достигнута первоначально поставленная цель. Мы изучили статические модели и метрики для определения качества ПО. Для достижения данной цели мы ознакомились с показателями качества программного обеспечения по стандарту ГОСТ Р 9126-93. Изучили статические модели и метрики. Для лучшего представления и анализа рассмотрели модели Миллса и простую интуитивную модель на конкретных примерах.

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

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

Источник: poisk-ru.ru

Министерство сельского хозяйства и продовольствия Республики Беларусь Главное управление образования, науки и кадров уссо «Ошмянский государственный аграрно-экономический колледж»

(Перечень теоретических вопросов и практических заданий)

по дисциплине «Технология разработки ПО»

Специальность 2-40 01 01 Программное обеспечение информационных технологий

Учебная группа __ ПО-32

Рассмотрен на заседании комиссии информационных технологий и юридических дисциплин

Вопросы

  1. Дайте определение понятию жизненный цикл ПО. Опишите основные этапы жизненного цикла ПО
  2. Перечислите и дайте краткую характеристику моделям ЖЦ ПО в соответствии со стандартом ISO/IES
  3. Опишите каскадную модель жизненного цикла ПО. Начертите графическое изображение данной модели. Перечислите достоинства и недостатки модели.
  4. Опишите спиральную модель жизненного цикла ПО. Начертите графическое изображение данной модели. Перечислите достоинства и недостатки модели.
  5. Опишите каскадную модель с промежуточным контролем жизненного цикла ПО. Начертите графическое изображение данной модели. Перечислите достоинства и недостатки модели.
  6. Дайте определение понятию пользовательского интерфейса. Перечислите и кратко охарактеризуйте принципы проектирования пользовательского интерфейса.
  7. Опишите принципы разработки эффективных форм, проектирования форм ввода данных
  8. Опишите принципы разработки эффективного меню, работы с несколькими формами
  9. Опишите принципы построения интерфейса (« Кошелек Миллера», «бритва Оккама»)
  10. Опишите принципы построения интерфейса (принцип группировки, «Видимость отражает полезность»)
  11. Опишите принципы построения интерфейса («Золотое сечение», «умные заимствования»)
  12. Дайте определение понятию структурного подхода к разработке ПО. Опишите цели, принципы, достоинства и недостатки данного подхода
  13. Дайте определение понятию функционального моделирования. Опишите цели, принципы, достоинства и недостатки функционального моделирования
  14. Дайте характеристику моделирования бизнес-процессоров. Опишите историю развития бизнес-моделирования
  15. Опишите типы информационных потоков: поток преобразований, поток запросов
  16. Опишите принципы и технологии построения распределенных информационных систем
  17. Дайте определение понятию проектирования структур баз данных. Опишите основные этапы проектирования БД (концептуальное, логическое, физическое проектирование, нормализация, модели «сущность-связь»)
  18. Дайте определение понятию объектно-ориентированному подходу. Опишите цели, принципы, достоинства и недостатки данного подхода
  19. Опишите основные принципы объектно-ориентированного подхода
  20. Опишите историю развития унифицированного языка моделирования. Дайте определение понятию UML. Перечислите основные характеристики, преимущества UML.
  21. Дайте определение понятию класса. Опишите свойства класса. Начертите графическое изображение класса в нотации UML с комментариями всех составляющих.
  22. Опишите диаграммы классов
  23. Опишите диаграммы последовательностей и состояний
  24. Опишите диаграммы взаимодействия. Перечислите основные элементы диаграмм взаимодействия
  25. Опишите диаграммы деятельности и диаграммы компонентов
  26. Дайте характеристику модульного программирования.
  27. Опишите основные характеристики программного модуля
  28. Опишите основные средства, используемые на разных этапах разработки программ
  29. Дайте определение методологии RAD. Опишите принципы методологии RAD
  30. Раскройте понятие экстремального программирования (история, принципы, преимущества и недостатки)
  31. Опишите основные техники экстремального программирования (живое планирование, частая смена версий и т.д.)
  32. Опишите концепцию шаблонов проектирования
  33. Дайте определение понятию СОМ-технологии. Опишите технологии, основанные на СОМ
  34. Дайте определения и кратко опишите понятия СОМ-объект, CoClass, СОМ-интерфейс, библиотеки.
  35. Дайте определение понятию ActivеX-технология. Опишите библиотеки и преимущества использования технологии
  36. Раскройте суть клиентской и серверной технологии ActivеX
  37. Опишите принципы, цели подхода DATARUN
  38. Дайте определение понятию технология RUP. Опишите основные аспекты технологии RUP
  39. Опишите циклы и фазы жизненного цикла ПО по технологии RUP
  40. Опишите метод Oracle. Перечислите преимущества и недостатки метода
  41. Дайте определение понятию тестирование ПО. Опишите процесс тестирования ПО
  42. Опишите методы белого и черного ящика тестирования ПО
  43. Опишите виды тестирования.
  44. Дайте определение понятию документирование ПО. Опишите процесс документирования ПО
  45. Дайте характеристику и приведите примеры архитектурно-проектной и технической документации.
  46. Дайте характеристику и приведите примеры пользовательской и маркетинговой документации
  47. Дайте определения понятию верификация ПО. Опишите процесс верификации ПО
  48. Дайте определения понятию сопровождения ПО. Опишите процесс сопровождения ПО
  49. Дайте краткую характеристику понятию качества ПО. Опишите критерии оценки качества ПО
  50. Дайте характеристику процессу оценки затрат на разработку ПО
  51. Опишите модели оценки надежности программного обеспечения
  52. Опишите методы защиты ПО от несанкционированного доступа
  53. Перечислите и опишите задачи защиты информации, уровни защиты автоматизированных систем
  54. Перечислите и опишите факторы, определяющие затраты на создание ПС
  1. BPwin. Создайте новую модель работы складского помещения в нотации IDEF0. Введите автора диаграммы, название проекта, цель моделирования и точку зрения.
  2. BPwin. Создайте новую модель работы пункта обмена валют в нотации IDEF0. Введите автора диаграммы, название проекта, цель моделирования и точку зрения.
  3. Постройте контекстную диаграмму бизнес-процесса в среде BPwin на примере работы магазина продовольственных товаров.
  4. Постройте диаграмму узлов в среде BPwin на примере работы почтового отделения.
  5. Создайте диаграмму DFD для обмена валют. Внесите хранилища данных. Удалите лишние граничные стрелки. Создайте внутренние ссылки.
  6. Построить диаграмму прецедентов. Присвоить имя диаграмме согласно предметной области и решаемой задаче. Определить субъектов (актеров) и прецедентов и присвоить им имена согласно предметной области. Определить ассоциации между ними. Построить обобщения между субъектами и прецедентами. ТЗ: Преподаватель одной из кафедр одного из факультетов вуза проводит занятия по определенным дисциплинам.
  7. Построить диаграмму прецедентов. Присвоить имя диаграмме согласно предметной области и решаемой задаче. Определить субъектов (актеров) и прецедентов и присвоить им имена согласно предметной области. Определить ассоциации между ними. Построить обобщения между субъектами и прецедентами. ТЗ: На один из складов одной из фирм города поступает товар от различных поставщиков.
  8. Построить диаграмму прецедентов. Присвоить имя диаграмме согласно предметной области и решаемой задаче. Определить субъектов (актеров) и прецедентов и присвоить им имена согласно предметной области. Определить ассоциации между ними. Построить обобщения между субъектами и прецедентами. ТЗ: Со склада фирмы выдаются товары различных поставщиков и различных производителей различным потребителям различных городов.
  9. Построить диаграмму классов. Определить объекты (сущности), привязав их к диаграмме прецедентов. Дать имя классу для однотипной группы объектов. Назначить атрибут – ключ (идентификатор объекта). Указать основную операцию над классом. Построить отношения между классами на основе ассоциаций. Определить направление и множественность, указав нижние и верхние границы. ТЗ: Студент регистрируется в одной из групп определенной специальности одного из факультетов одного из вузов города.
  10. Построить диаграмму классов. Определить объекты (сущности), привязав их к диаграмме прецедентов. Дать имя классу для однотипной группы объектов. Назначить атрибут – ключ (идентификатор объекта). Указать основную операцию над классом. Построить отношения между классами на основе ассоциаций. Определить направление и множественность, указав нижние и верхние границы. ТЗ: Студент одной из групп записывается на дисциплину к преподавателю одной из кафедр.
  11. Построить диаграмму классов. Определить объекты (сущности), привязав их к диаграмме прецедентов. Дать имя классу для однотипной группы объектов. Назначить атрибут – ключ (идентификатор объекта). Указать основную операцию над классом. Построить отношения между классами на основе ассоциаций. Определить направление и множественность, указав нижние и верхние границы. ТЗ: Со складов фирмы выдаются товары от различных поставщиков различным потребителям из различных городов.
  12. Построить диаграмму последовательности. Дать имя диаграмме. Создать линии жизни объектов. Установить сообщения между объектами. Присвоить имена сообщениям. ТЗ: Со складов фирмы выдаются товары от различных поставщиков различным потребителям из различных городов.
  13. Построить диаграмму последовательности. Дать имя диаграмме. Создать линии жизни объектов. Установить сообщения между объектами. Присвоить имена сообщениям. ТЗ: Преподаватель одной из кафедр одного из факультетов вуза проводит занятия по определенным дисциплинам.
  14. Построить диаграмму состояния. Дать имя диаграмме. Выбрать класс, для объектов которых будет строиться диаграмма состояний. Построить для класса диаграмму состояний, характеризующую поведение его объектов в нескольких вариантах использования. ТЗ: Со склада фирмы выдаются товары различных поставщиков и различных производителей различным потребителям различных городов
  15. Построить диаграмму состояния. Дать имя диаграмме. Выбрать класс, для объектов которых будет строиться диаграмма состояний. Построить для класса диаграмму состояний, характеризующую поведение его объектов в нескольких вариантах использования. ТЗ: На один из складов одной из фирм города поступает товар от различных поставщиков.
  16. Построить диаграмму состояния. Дать имя диаграмме. Выбрать класс, для объектов которых будет строиться диаграмма состояний. Построить для класса диаграмму состояний, характеризующую поведение его объектов в нескольких вариантах использования. ТЗ: Студент регистрируется в одной из групп определенной специальности одного из факультетов одного из вузов города.
  17. Построить диаграмму активности. Дать имя диаграмме. Построить для выбранных классов диаграмму активности, характеризующую алгоритм выполнения указанной работы. ТЗ: Студент регистрируется в одной из групп определенной специальности одного из факультетов одного из вузов города.
  18. Построить диаграмму активности. Дать имя диаграмме. Построить для выбранных классов диаграмму активности, характеризующую алгоритм выполнения указанной работы. ТЗ: Студент одной из групп одного из факультетов вуза изучает дисциплины определенной специальности на определенном курсе.
  19. Построить для моделируемой системы общую диаграмму пакетов, отметить на ней приложения и зависимости между пакетами. ТЗ: Студент одной из групп одного из факультетов вуза изучает дисциплины определенной специальности на определенном курсе.
  20. Построить для моделируемой системы общую диаграмму пакетов, отметить на ней приложения и зависимости между пакетами. ТЗ: Студент одной из групп записывается на дисциплину к преподавателю одной из кафедр.
  21. Построить для моделируемой системы общую диаграмму пакетов, отметить на ней приложения и зависимости между пакетами. ТЗ: Со складов фирмы выдаются товары от различных поставщиков различным потребителям из различных городов.
  22. Предположим в программе 3 собственных ошибки, внесём ещё 6 случайным образом. В процессе тестирования было найдено 5 ошибок из рассеянных и 2 собственные. Найти надёжность по модели Миллса.
  23. Предположим в программе 2 собственных ошибки, внесём ещё 3 случайным образом. В процессе тестирования было найдено 2 ошибки из рассеянных и 3 собственные. Найти надёжность по модели Миллса.
  24. Предположим в программе перед началом тестирования было 90 ошибок. Искусственно рассеяно 20 ошибок. В процессе тестовых прогонов было выявлено следующее количество ошибок:
Читайте также:
Как составляется программа питания

N 25 20 20 15 10 9 1

V 5 4 2 4 2 2 1

Оценить число возможно оставшихся ошибок в программе после каждого тестового прогона. Построить график зависимости возможного числа ошибок от № прогона.

  1. Предположим в программе перед началом тестирования было 100 ошибок. Искусственно рассеяно 15 ошибок. В процессе тестовых прогонов было выявлено следующее количество ошибок:

N 20 20 25 16 9 8 1

V 5 3 3 4 3 1 1

Оценить число возможно оставшихся ошибок в программе после каждого тестового прогона. Построить график зависимости возможного числа ошибок от № прогона.

  1. В процессе тестирования программы 1-я группа нашла 15 ошибок, 2-я группа нашла 25 ошибок, общих ошибок было 5. Определить надёжность по простой интуитивной модели.
  2. В процессе тестирования программы 1-я группа нашла 10 ошибок, 2-я группа нашла 20 ошибок, общих ошибок было 8. Определить надёжность по простой интуитивной модели.

Преподаватель М.С. Шаткевич

Источник: studfile.net

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru