ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 12.12.2023
Просмотров: 187
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
Вопрос 1 - Определение алгоритма
Вопрос 2 - языки программирования
Вопрос 3 - Особенности программирования задач
Вопрос 5 - Инкапсуляция, наследование, полиморфизм
Вопрос 7 - Характеристики, функции, структура MS Win
Вопрос 8 - Характеристики UNIX
Вопрос 18 - Файловая организация внешней памяти. Каталог, дескриптор
Вопрос 20 - Программные средства управления внешними устройствами. Драйвер – назначение и структура
Вопрос 21 - Понятие базы данных (БД), системы управления базами данных (СУБД), банка данных (БнД)
Вопрос 23 - Этапы проектирования БД
Вопрос 24 - Методы проектирования БД
1 отсутствует эталон программы, которому должны соответствовать все результаты тестирования проверяемой программы;
-
принципиально невозможно создать тестовый набор для исчерпывающей проверки; -
отсутствуют формализованные критерии качества программ и процесса тестирования;
4 необходимо создавать тесты, которые находят ошибки, а не демонстрирует правильность работы программы;
-
необходимо привлекать для тестирования сторонних специалистов; -
необходимо избегать невоспроизводимых тестов;
Автономное тестирование Наиболее формализованным и автоматизированным в настоящее время процессом является автономное тестирование (тестирование программных модулей), включающее проверки: структуры модуля, вычислений и преобразований данных в модуле, полноты функций модуля.
Комплексное тестирование — исследование структуры комплекса, связи между модулями, внешней связи, возможностей эксплуатации и др.
Комплексное тестирование предназначено для проверки групп программ и разделяется на тестирование функций программ, тестирование при отладке и испытаниях. Тестирование функций групп программ направлено на проверку правильности решения крупных автономных функциональных задач, исследуются структура группы программ, связи между модулями, ограничения на использование памяти и времени центрального процессора, полнота решения функциональных задач.
Направления тестирования
При восходящем тестированиипервыми обычно кодируются и тестируются с помощью «драйверов» физические модули нижнего уровня, затем тестируются вызывающие их модули и так вплоть до главного модуля. Основные трудности состоят в необходимости обновления тестовых данных при подключении каждого нового модуля более высокого уровня.
При нисходящем тестированиив первую очередь проверяется главный модуль, к которому постепенно подключаются модули более низких иерархических уровней, при этом так же возможно использование программ — заглушек. При использовании данного метода появляется возможность сохранения и развития исходных тестовых данных по мере подключения модулей нижних иерархических уровней, т.е. с самого начала тестирования могут использоваться реальные исходные данные, которые уточняются по мере подключения модулей. Недостаток: затрудненный поиск ошибок в подключаемых; модулях.
Раздельное тестирование. Этот метод применяется только для раздельно компилируемых физических модулей. Он весьма полезен в тех случаях, когда программу не удается полностью специфицировать либо когда имеется один критический модуль, на характеристики которого накладываются определенные ограничения, и он должен быть испытан до принятия решения о работоспособности программы
Ручной метод или инспекция кода(без применения ЭВМ), по мнению некоторых специалистов, позволяет выявить до 70% программных алгоритмических ошибок. В данном случае выполняются следующие виды проверок программы: ручное тестирование программы непосредственно разработчиком, сквозной просмотр текста программы группой специалистов с позиции устранения типовых ошибок.
Отладка — процесс исправления ошибок, обнаруженных при тестировании, состоит из многократного чередования этапов тестирования, локализации и исправления ошибок.
Если при тестировании полученные результаты отличаются от эталонных (ожидаемых), то необходимо определить местоположение ошибки (локализовать ее), ее характер, а затем выработать одну или несколько гипотез о природе ошибок. Важно исследовать полученные данные в поисках противоречий выдвинутым гипотезам.
Вопрос 14. Классификация ошибок с точки зрения процесса разработки.
Ошибки с точки зрения процесса разработки можно разделить на:
-
Синтаксические ошибки
Синтаксические ошибки выявляются транслятором, поэтому их устранение не вызывает особых трудностей. Трансляторы выделяют два вида ошибок: собственно ошибка (Error) и предупреждение (Warning). Предупреждение выдается в случае, когда конструкция синтаксически допустима, но существует значительная вероятность существования смысловой (семантической) ошибки.
-
Опечатки
Опечатки, как правило, вызваны невнимательностью программиста при механическом наборе или редактировании исходного текста. В результате появляется синтаксически правильный, но абсолютно неверный логически участок программы. Подобные ошибки, несмотря на их видимую простоту, довольно сложно находить без тщательной пошаговой отладки в символьном отладчике.
-
Ошибки реализации алгоритма
Под эту категорию подпадают все ошибки, вызванные неверным программированием при верном алгоритме. Этот тип ошибок, по-видимому, является самым распространенным и наиболее трудно классифицируемым.
Ошибки использования памяти этого класса являются самыми опасными (как правило, приводят к зависанию или общему сбою программы) и трудно обнаруживаемыми. Классификация ошибок такого рода представлена в таблице:
Тип | Варианты |
Ошибки распределения свободной памяти | а) Выделение памяти неверного размера (слишком большого или меньше нужного) б) Освобождение невыделенной памяти (часто в результате повторного освобождения) |
Ошибки доступа к памяти | а) Выход за границы массива (по указателю или индексу) б) Доступ по неинициализированному указателю (адресу) |
Использование неинициализированных переменных | |
-
Ошибки алгоритма
Алгоритм может содержать логические ошибки, которые закономерно приводят к ошибочной работе программы даже при безупречной программной реализации. Такие ошибки очень тяжело выявлять, поскольку они интерферируют с неизбежными ошибками реализации, и предположение об их наличии делается программистом в самую последнюю очередь.
-
Ошибки метода
Каждый метод должен сопровождаться описанием или оценкой вычислительных погрешностей и других ограничений, снижающих его универсальность. Отсутствие таких оценок может привести к неверной работе программы, реализующей данный метод.
Вопрос 15. Основные программные и эксплуатационные документы
Программная и эксплуатационная документация может использоваться для изготовления и сопровождения программного изделия, для его тестирования (испытания), для его эксплуатации.
Документирование должно начинаться одновременно с разработкой продукта или даже раньше. В процессе разработки создаются следующие основные программные документы:
Текст программ - запись программы с необходимыми комментариями.
Описание программы - сведения о логической структуре и функционировании программы.
Программа и методика испытаний - требования, подлежащие проверке при испытании программы, а также порядок и методы их контроля.
Техническое задание.
Пояснительная записка - схема алгоритма, общее описание алгоритма иили функционирования программы, а также обоснование принятых технических и экономических решений.
Эксплуатационные документы:
Руководство пользователя - сведения о назначении программы, области применения, применяемых методах, ограничениях при применении, конфигурации технических средств; сведения для обеспечения процедуры общения пользователя с вычислительной системой в процессе выполнения программы. Создается на основе документов «Описание применения» и «Руководство оператора», описанных в ЕСПД.
Руководство системного администратора - сведения для обеспечения установки, функционирования и настройки программ на условия конкретного применения. Создается на основе документа «Руководство системного программиста», описанного в ЕСПД.
Программа и методика испытаний
Документ должен содержать следующие разделы:
-
объект испытаний; -
цель испытаний; -
состав предъявляемой документации; -
технические требования; -
порядок проведения испытания; -
методы испытаний.
Описание программы
Описание программы должно содержать следующие разделы:
-
общие сведения; -
функциональное назначение; -
описание логической структуры; -
используемые технические средства; -
вызов и загрузка; -
входные данные; -
выходные данные.
Допускается содержание разделов иллюстрировать пояснительными примерами, таблицами, схемами, графиками.
В приложение к описанию программы допускается включать различные материалы, которые нецелесообразно включать в разделы описания.
Пояснительная записка
Пояснительная записка должна содержать следующие разделы: введение, назначение и область применения, технические характеристики, ожидаемые технико-экономические показатели, источники, использованные при разработке.
В зависимости от особенностей документа отдельные разделы (подразделы) допускается объединять, а также вводить новые разделы (подразделы).
Текст программы
Основная часть документа должна состоять из текстов одного ила нескольких разделов, которым даны наименования. Каждый из этих разделов реализуется одним из типов символической записи, например:
-
символическая запись на исходном языке; -
символическая запись на промежуточных языках; -
символическое представление машинных кодов и т. п.
В символическую запись разделов рекомендуется включать комментарии, которые могут отражать, например, функциональное назначение, структуру.
Описание применения
Описание применения должна содержать следующие разделы: назначение программы, условия применения, описание задачи, входные и выходные данные.
Руководство системного программиста
Руководство системного программиста должно содержать следующие разделы:
-
общие сведения о программе; -
структура программы; -
настройка программы; -
проверка программы; -
дополнительные возможности; -
сообщения системному программисту.
Руководство программиста
Руководство программиста должно содержать следующие разделы:
-
назначение и условия применения программы; -
характеристики программы; обращение к программе; -
входные и выходные данные; -
сообщения.
Руководство оператора
Руководство оператора должно содержать следующие разделы:
-
назначение программы; -
условия выполнения программы; -
выполнение программы; -
сообщения оператору.
Вопрос 16. Методы оценки свойств программного продукта
Общие положения
Под качеством программного обеспечения будем понимать совокупность свойств ПО, обусловливающих его пригодность удовлетворять определенные потребности пользователей и специали