Срез. Среззззз. Билет 1 Наименование вопроса Дайте определение понятия Программное обеспечение
Скачать 0.49 Mb.
|
3. Средства анализа, проектирования и разработки – предназначены для того, чтобы обеспечить планирование и анализ различных описаний, а также их преобразование в процессе разработки. 4. Средства вывода – служат для документирования, управления конфигурацией, управления проектом и кодовой генерации. Достоинства CASE-средств: улучшают качество создаваемого ПО за счет средств автоматического контроля; позволяют за короткое время создавать прототип будущей системы, что дает возможность на ранних этапах оценить ожидаемый результат; ускоряют процесс проектирования и разработки; освобождают разработчика от рутинной работы, позволяя ему целиком сосредоточиться на творческой части; поддерживают развитие и сопровождение разработки; поддерживают технологии повторного использования компонент системы. Примеры CASE-средств: BPwin (AllFusion Process Modeler), Erwin (AllFusion Data Modeler), IBM Rational Rose, MS Project, ARIS Express 2. Укажите назначение транзакций в MySQL. Укажите синтаксис транзакций. Перечислите уровни изоляции транзакций. Транзакция — это операция, состоящая из одного или нескольких запросов к базе данных. Суть транзакций — обеспечить корректное выполнение всех запросов в рамках одной транзакции, а также обеспечить механизм изоляции транзакций друг от друга для решения проблемы совместного доступа к данным. Любая транзакция по принципу «Всё или ничего», то есть либо выполняется полностью, либо не выполняется вообще. В транзакционной модели есть два фундаментальных понятия: COMMIT и ROLLBACK. COMMIT означает фиксацию всех изменений в транзакции. ROLLBACK означает отмену (откат) изменений, произошедших в транзакции. Синтаксис транзакции: set autocommit=0; Start transaction; …какие-то действий с БД (insert, update,delete… commit/rollback; Существуют следующие 4 уровня изоляции транзакций: 0 — Чтение неподтверждённых данных (грязное чтение) (Read Uncommitted, Dirty Read); 1 — Чтение подтверждённых данных (Read Committed); 2 — Повторяемое чтение (Repeatable Read, Snapshot); 3 — Сериализуемый (Serializable) — сериализуемые транзакции. 3. Руководствуясь правилами работы с числами с плавающей запятой пересчитайте расстояние из миль в километры. Продемонстрируйте использование компонента TextBox для ввода данных и компонента Label для отображения числовой информации. Организуйте удобный пользовательский интерфейс. Разработайте WindowsForms приложение на языке программирования С#. Спроектируйте программу таким образом, чтобы в поле редактирования можно было ввести дробное число. public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void textBox1_TextChanged(object sender, EventArgs e) { //стереть предыдущий результат расчета label2.Text = ""; //если в поле textBox1 нет данных, сделать кнопку недоступной if (textBox1.TextLength == 0) button1.Enabled = false; else button1.Enabled = true; } private void button1_Click(object sender, EventArgs e) { double mile; //расстояние в милях double km; //расстояние в километрах mile = Convert.ToDouble(textBox1.Text); km = mile * 1.609344; label2.Text = km.ToString("n") + " km"; } } 4. Организуйте удобный пользовательский интерфейс. Спроектируйте программу на языке программирования Python, которая создает класс с экземпляром класса, в котором определяется сумма двух чисел. class summator: def __init__(self, a, b): self.a = a self.b = b self.itog = 0 def sum(self): self.itog = self.a+self.b return self.itog a = summator(1,2) print("Результат сложения: ",a.sum()) БИЛЕТ № 22 Наименование вопроса: 1. Дайте определение «Интерфейс пользователя». Определите основные элементы интерфейса пользователя. Охарактеризуйте основные принципы разработки пользовательского интерфейса. Интерфейс пользователя, пользовательский интерфейс (UI — англ. user interface) – разновидность интерфейсов, в котором одна сторона представлена человеком (пользователем), другая – машиной/устройством. UI представляет собой совокупность средств и методов, при помощи которых пользователь взаимодействует с различными, чаще всего сложными, с множеством элементов, машинами и устройствами. ИП объединяет в себе все элементы и компоненты программы, которые способны оказывать влияние на взаимодействие пользователя с ПО: набор задач пользователя, которые он решает при помощи системы; используемая системой метафора (например, рабочий стол в MS Windows®); элементы управления системой; визуальный (дизайн экранов программы; средства отображения информации, отображаемая информация и форматы; устройства и технологии ввода данных; диалоги, взаимодействие и транзакции между пользователем и компьютером; обратная связь с пользователем; порядок использования программы и документация на нее. Графический интерфейс пользователя, графический пользовательский интерфейс (Graphical user interface, GUI) – разновидность пользовательского интерфейса, в котором элементы интерфейса (меню, кнопки, значки, списки и т.п.), представленные пользователю на дисплее, исполнены в виде графических изображений. Основные принципы проектирования пользовательского интерфейса: естественность интерфейса Естественный интерфейс — такой, который не вынуждает пользователя существенно изменять привычные для него способы решения задачи. согласованность интерфейса – позволяет пользователям переносить имеющиеся знания на новые задания, осваивать новые аспекты быстрее, и благодаря этому фокусировать внимание на решаемой задаче дружественность интерфейса На каждом этапе работы он должен разрешать только соответствующий набор действий и предупреждать пользователей о тех ситуациях, где они могут повредить системе или данным; еще лучше, если у пользователя существует возможность отменить или исправить выполненные действия. принцип «обратной связи» Каждое действие пользователя должно получать визуальное, а иногда и звуковое подтверждение того, что программное обеспечение восприняло введенную команду. простота интерфейса Интерфейс должен быть простым. Имеется в виду не упрощение, а обеспечение легкости в его изучении и в использовании. Он должен предоставлять доступ ко всему перечню функциональных возможностей, предусмотренных данным приложением. 2. Опишите назначение индексов в MySQL. Укажите их виды. Перечислите преимущества использования индексов. Опишите синтаксис создания и удаления индексов. В MySQL индекс — это важный и полезный инструмент, который позволяет оптимизировать выборку из базы данных. Использование индексов значительно сокращает время выполнения запроса, что позволяет быстрее получать данные. Ощутимую разницу при использовании индексов можно увидеть при работе с таблицами крупных размеров, содержащим миллионы строк. В MySQL индексы подразделяются на следующие виды: Простой индекс; Уникальный индекс; Составной индекс; Синтаксис создания простого индекса в MySQL: СREATEINDEX название_индекса ON название_таблицы(название_поля); Синтаксис удаления индекса в MySQL: DROP INDEX название индекса ON название_таблицы; 3. Руководствуясь правилами работы с числами с плавающей запятой переведите цены в долларах в белорусские рубли. Продемонстрируйте использование компонента TextBox для ввода данных и компонента Label для отображения числовой информации. Организуйте удобный пользовательский интерфейс. Разработайте WindowsForms приложение на языке программирования С#. Программу спроектируйте таким образом, чтобы поля редактирования были заполнены, иначе вывести сообщение подтверждения ввода. public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { double usd; double k; double rub; if((textBox1.TextLength != 0) && (textBox2.TextLength != 0)) { usd = Convert.ToDouble(textBox1.Text); k = Convert.ToDouble(textBox2.Text); rub = usd * k; label4.ForeColor = System.Drawing.SystemColors.ControlText; label4.Text = rub.ToString("C"); } else { label4.ForeColor = Color.Red; label4.Text = "Надо ввести данные в оба поля!"; } } } 4. Руководствуясь правилами объявления переменных, объявите переменную типа list. Выполните циклический сдвиг в списке целых чисел на указанное число шагов. Сдвиг также должен быть кольцевым, то есть элемент, вышедший за пределы списка, должен появляться с другого его конца. Организуйте удобный пользовательский интерфейс. Спроектируйте программу на языке программирования Python. def shift(lst, steps): if steps < 0: steps = abs(steps) for i in range(steps): lst.append(lst.pop(0)) else: for i in range(steps): lst.insert(0, lst.pop()) nums = [4, 5, 6, 7, 8, 9, 0] print(nums) shift(nums, -2) print(nums) shift(nums, 3) print(nums) БИЛЕТ № 23 Наименование вопроса: 1. Дайте определение понятий «Тестирование» и «Отладка» программного обеспечения. Объясните сущность тестирования белого и черного ящика. Выделите и охарактеризуйте основные уровни тестирования. Отладка (debug, debugging)– процесс поиска, локализации и исправления ошибок в программе Тестирование ПС это процесс выполнения его программ на некотором наборе данных, для которого заранее известен результат применения или известны правила поведения этих программ Тестирование – процесс многократного повторения программы с целью обнаружения ошибок. Тестирование ПО – процесс анализа пункта требований к ПО с целью фиксации различий между существующим состоянием ПО и требуемым (что свидетельствует о проявлении ошибки) при экспериментальной проверке соответствующего пункта требований Тестирование является одним из наиболее устоявшихся способов обеспечения качества разработки программного обеспечения. Тестирование устанавливает факт наличия ошибок, а отладка выясняет ее причину. Таким образом, отладку можно представить в виде многократного повторения трех процессов: тестирования, в результате которого может быть констатировано наличие в ПС ошибки, поиска места ошибки в программах и документации ПС и редактирования программ и документации с целью устранения обнаруженной ошибки. Другими словами: Отладка = Тестирование + Поиск ошибок + Редактирование Тестирование – составная часть отладки. При тестировании белого ящика (white-box testing), разработчик теста имеет доступ к исходному коду и может писать код, который связан с библиотеками тестируемого ПО. При таком тестировании тестируется логика программы, внутренняя структура программы. Метод белого ящика часто используется на стадии, когда приложение ещё не собрано воедино, но необходимо проверить каждый из его компонентов, модулей, процедур и подпрограмм. Метод белого ящика используется для тестирования программного кода без запуска. При тестировании чёрного ящика (англ. black-box testing), тестировщик имеет доступ к ПО только через те же интерфейсы, что и заказчик или пользователь, либо через внешние интерфейсы, позволяющие другому компьютеру либо другому процессу подключиться к системе для тестирования. В этом случае тестируется спецификация, т.е. вход/выход без учета знаний о структуре программы. Цель данного метода – проверить работу всех функций приложения на соответствие функциональным требованиям. Уровни тестирования Модульное тестирование (МТ) – это тестирование программы на уровне отдельно взятых модулей, функций, методов, классов, небольших библиотек, отдельных частей приложения, которые (как правило) можно исследовать изолированно от других подобных частей. Цель МТ состоит в выявлении локализованных в модуле ошибок в реализации алгоритмов, а также в определении степени готовности системы к переходу на следующий уровень разработки и тестирования. МТ проводится по принципу "белого ящика". Интеграционное тестирование (ИТ) – это тестирование части системы, состоящей из двух и более модулей, направлено на проверку взаимодействия между несколькими частями приложения (каждая из которых, в свою очередь, проверена отдельно на стадии модульного тестирования). Основная задача ИТ – поиск дефектов, связанных с ошибками в реализации интерфейсного взаимодействия между модулями. Системное тестирование (СТ) – тестируется все приложение как единое целое, собранное из частей, проверенных на двух предыдущих стадиях на соответствие исходным требованиям. СТ рассматривает тестируемую систему в целом и оперирует на уровне пользовательских интерфейсов. Основная задача СТ состоит в выявлении дефектов, связанных с работой системы в целом, таких как неверное использование ресурсов системы, несовместимость с окружением, неверная функциональность, неудобство в применении и т.д. СТ производится над проектом в целом с помощью метода "черного ящика". Структура программы не имеет никакого значения, для проверки доступны только входы и выходы, видимые пользователю. 2. Опишите назначение триггеров в MySQL. Укажите для каких команд(событий) они могут срабатывать. Опишите как по времени могут срабатывать триггеры относительно события. Опишите синтаксис создания и удаления триггеров. Триггер — это процедурный код, который автоматически выполняется как ответ на определенные события в конкретной таблице или представлении в базе данных. Триггер представляет собой именованный объект базы данных, который связан с таблицей, и он будет активизирован, когда специфическое событие происходит для таблицы. В качестве событий, на которые реагирует триггер выступают вставка (INSERT), обновление (UPDATE) или удаление (DELETE) записей в таблице. Триггеры могут срабатывать как до (специальное слово BEFORE), так и после (специальное слово AFTER) события в таблице таблицы. Синтаксис создания триггера: CREATE TRIGGER имя_триггера время_действия_триггера событие_триггера ON название_таблицы FOR EACH ROW тело_триггера; Синтаксис удаления триггера: DROP TRIGGER имя_триггера; 3. Вычислите значение выражения: b= x2 −1+ey . Продемонстрируйте использование компонента TextBox для ввода данных и компонента Label для отображения числовой информации. Программу спроектируйте таким образом, чтобы в поле редактирования можно было ввести дробное число. Организуйте удобный пользовательский интерфейс. Разработайте WindowsForms приложение на языке программирования С#. private void button1_Click(object sender, EventArgs e) { double x, y, b; x = Convert.ToDouble(textBox1.Text); y = Convert.ToDouble(textBox2.Text); if (Math.Pow(x, 2) - 1 >= 0) { b = Math.Sqrt(Math.Pow(x, 2)) + Math.Exp(y); label3.Text = "b=" + Convert.ToString(b); } else label3.Text = "Нет решения"; } |