
- •1)Объектно-ориентированный подход к разработке программного обеспечения: основные понятия, концепции и принципы.
- •3) Понятие нормальных форм в отношении. Особенности приведения отношений к 1nf, 2nf, 3nf.
- •2Нф (Вторая Нормальная Форма)
- •3Нф (Третья Нормальная Форма)
- •4)Надежность программного обеспечения.
- •3)Основные этапы проектирования баз данных.
- •4)Основные показатели надёжности программного обеспечения
- •2) История развития операционной системы Windows. Введение в операционную систему Windows. Особенности и различия версий операционной системы Windows. Архитектура операционной системы Windows nt
- •3) Операции над данными (включить, удалить, обновить, объединение, пересечение, вычитание, декартово произведение, выборка, проекция, соединение, деление).
- •Специальные реляционные операторы
- •Операции над множествами
- •4)Категории тестируемых требований к программному обеспечению.
- •2) Модели данных (сетевая, иерархическая, реляционная).
- •3) Критерии, используемые при тестировании требований.
- •Ненумерованные списки
- •Нумерованные списки
- •Раскрывающейся список
- •Переход внутри одного документа
- •Переход к другому документу или ссылки
- •2)Селекторы css: класса, id, тега. Способы подключения таблиц стилей.
- •Селекторк лассов
- •Селектор id
- •3)Уровни абстракции в субд.
- •4)Содержание плана тестирования.
- •2)Сервлеты. Жизненный цикл сервлета. Класс HttpServlet. Интерфейсы HttpServletRequest, HttpServletResponse.
- •Интерфейс Servlet и жизненный цикл сервлета
- •Класс HttpServlet
- •3)Субд в многопользовательских системах. Архитектура многопользовательских субд (с телеобработкой, файл-серверные, клиент-серверные).
- •2)Сервлеты. Обработка http-запросов get и post.
- •3)Основные функции субд. Типовая организация субд. Основные компоненты типичной субд.
- •4)Основные этапы проведения системных испытаний.
- •1)Библиотека stl: назначение, основные элементы.
- •2)Субд. Классификация субд. Технология использования субд
- •3)Стратегии «белого» ящика. Покрытие операторов. Покрытие решений.
- •4)Jsp. Архитектура jsp-страницы. Жизненный цикл jsp.
- •1)Диаграммы idef0: элементы, правила построения, демонстрационный пример.
- •2)Стили. Общий синтаксис. Назначение, возможности. Каскадность css.
- •3)Понятия базы данных, банка данных. Классификация баз данных.
- •4)Стратегии «белого» ящика. Покрытие условий. Покрытие решений/условий.
- •1)Диаграммы idef0: иерархия диаграмм, правила построения, стратегии декомпозиции и критерии завершения декомпозиции.
- •2)Формы в html. Назначение, теги, параметры, примеры.
- •3)Файловые системы и файловые базы данных. Особенности и основные характеристики.
- •5)Стратегии «белого» ящика. Комбинаторное покрытие условий.
- •1) Диаграммы idef1x: назначение, элементы, правила построения.
- •2)Теги таблиц. Назначение, примеры.
- •3)Язык sql (Structured Query Language). Интерактивный и встроенный sql. Составные части sql. Типы данных sql. Основные типы команд sql.
- •4)Тестирование приложения методом «черного» ящика.
- •1)Диаграмма вариантов использования uml 2: назначение, элементы и правила построения.
- •Понятие тега
- •3)Язык sql. Команды манипулирования данными.
- •1)Диаграмма классов uml 2: назначение, классы и их обозначение.
- •3)Архитектуры приложений. Основные различия между архитектурами приложений.
- •1)Диаграмма деятельности uml 2: назначение, действия и деятельности, объекты, дуги деятельности
- •2)Http-протокол. Идеология построения протокола http. Общая структура сообщений, методы доступа. Заголовок и данные http-запросов. Стандартные коды ответов.
- •4)Структуры данных, основанные на хеш-таблицах.
- •1)Создание и использование статических библиотек в операционной системе Windows. Создание и использование динамических библиотек в операционной системе Windows: раннее и позднее связывание.
- •2)Диаграмма развертывания uml 2: назначение, элементы и правила построения.
- •3)Понятие экспертной системы. Назначение и основные свойства экспертных систем, основные области применения и примеры экспертных систем.
- •4)Деревья двоичного поиска. Методы их реализации.
- •1)Логическая организация файловой системы: типы файлов, иерархическая структура файловой системы, имена файлов, адресация файлов.
- •2)Жизненный цикл программного обеспечения. Классическая модель жизненного цикла: основные этапы, принципы организации, преимущества и недостатки
- •3)Архитектура и особенности экспертных систем.
- •4)Алгоритм Хаффмена, структуры данных для его реализации. Пример построения кода.
- •1)Физическая организация файловой системы: диски, разделы, секторы, кластеры, адресация файла.
- •2)Классификация экспертных систем
- •4)Сбалансированные и несбалансированные деревья поиска.
- •1)Иерархия запоминающих устройств. Кэш-память. Способы отображения основной памяти на кэш. Схемы выполнения запросов в системах с кэш-памятью.
- •2)Жизненный цикл программного обеспечения. Эволюционная модель жизненного цикла: основные этапы, принципы организации, преимущества и недостатки.
- •3)Разработка экспертных систем. Этапы разработки экспертной системы. Человеческий фактор при разработке экспертной системы.
- •5)Алгоритмы быстрой сортировки
- •1) Страничное распределение памяти. Сегментное распределение памяти. Сегментно-страничное распределение памяти.
- •2)Диаграмма последовательностей uml 2: назначение, линия жизни и сообщения.
- •3)Модели представления знаний: продукционные модели, семантические сети, фреймы и формальные логические модели.
- •4)Алгоритмы внешней сортировки.
- •1)Понятие операционной системы. Иерархическая и многослойная структуры операционной системы. Многослойная структура ядра операционной системы.
- •2)Диаграмма последовательностей uml 2: назначение, комбинированные фрагменты взаимодействия и их применение.
- •3)Знания и данные. Глубинные и поверхностные знания. Интенсионал и экстенсионал понятия. Классификация моделей представления знаний.
- •4)Документирование результатов тестирования. Важность дефекта. Градации важности дефекта.
3) Операции над данными (включить, удалить, обновить, объединение, пересечение, вычитание, декартово произведение, выборка, проекция, соединение, деление).
Специальные реляционные операторы
Четыре типа операторов: ограничение (restriction), проекция (projection), соединение (join) и деление (divide).
Все четыре типа реляционных операторов реализуются с помощью SQL-оператора SELECT. Можно использовать всевозможные комбинации этих операторов, допускаемые системными ограничениями по длине и сложности составляемых выражений.
Выборка (ограничение, селекция)
|
Выполняется над одним отношением. Результатом является новое отношение, в которое входит подмножество кортежей, удовлетворяющих некоторому условию. |
Выборкой
(ограничением, селекцией) на
отношении
с
условием
называется
отношение с тем же заголовком, что и у
отношения
,
и телом, состоящем из кортежей, значения
атрибутов которых при подстановке в
условие
дают
значение ИСТИНА.
представляет
собой логическое выражение, в которое
могут входить атрибуты отношения
и
(или) скалярные выражения.
Смысл выборки – выбрать кортежи отношения, удовлетв-щие некоторому условию. Оператор ограничения возвращает только те записи, которые удовлетворяют заданному критерию выборки. Он реализуется при помощи выражения WHERE оператора SELECT.
Пример.
SELECT *
FROM Сотрудники
WHERE Фамилия=”Иванов";
|
Выполняется над одним отношением. Результатом является новое отношение, в которое входит указанное подмножество атрибутов. Число кортежей при этом не обязательно сохраняется, т.к. при удалении некоторых столбцов в таблице могут возникать строки-дубликаты, совпадающие по всем значениям оставшихся атрибутов. Такие дубликаты из результата исключаются. |
Проекцией отношения A по атрибутам X, Y,…,Z, где каждый из атрибутов принадлежит отношению A, называется отношение с заголовком (X, Y,…,Z) и телом, содержащим множество кортежей вида (x, y,…,z), таких, для которых в отношении A найдутся кортежи со значением атрибута X равным x, значением атрибута Y равным y, …, значением атрибута Z равным z.
Синтаксис операции проекции: A[X, Y,…, Z]
Проекция делает вертикальный разрез – возвращает подмножество полей оригинального набора данных.
Эта операция выполняется в SQL простым перечислением полей в <списке_полей> оператора SELECT. В результирующий набор записей включаются только те поля, которые есть в списке.
Пример. Например, чтобы получить список сотрудников компании, можно использовать, следующий оператор:
SELECT Номер_поставщика, Наименование_поставщика, Город_поставщика
FROM Поставщики
ORDER BY Наименование_поставщика, Город_поставщика;
Оператор ORDER BY сортирует данные. В нашем примере полученный список будет отсортирован в алфавитном порядке: сначала по полю Наименование_поставщика, затем по полю Город_поставщика.
|
Выполняется над двумя отношениями по некоторому условию, связывающему соответствующие атрибуты в каждом из них, (например, при равенстве этих атрибутов). Результатом является новое отношение, в которое входят все кортежи, для которых эти условия удовлетворяются, со всеми своими атрибутами из первого и второго отношений. |
Оператор соединения объединяет наборы записей, основываясь на сравнении значений одного или нескольких их полей.
Соединения реализуются при помощи оператора JOIN в операторе SELECT. В зависимости от типа сравнения полей, указываемых в операторе, а также от того, каким образом обрабатываются результаты сравнения, соединения можно разделить на несколько видов. Рассмотрим каждый из них.
Общая
операция соединения;
-соединение
(тэта-соединение); Эквисоединение;
Естественное соединение
Общая операция соединения
Соединением
отношений
А
и В
по условию с
назыв отношение
с представляет собой логическое выражение, в которое могут входить атрибуты отношений А и В и (или) скалярные выражения.
Все разновидности соединения являются частными случаями общей операции соединения.
Наиболее
важным частным случаем
-соединения
(equi-join) является случай, когда
есть
просто равенство. Синтаксис
экви-соединения:
SELECT Orders. OrderID, Orders.CustonerID, [Order Details].Products
FROM Orders INNER JOIN [Order Details]
ON Orders.OrderID=[Order Details].OrderID WHERE Orders.OrderID=10248;
Формально все соединения являются тета-соединениями. Однако если соединение основано на операторе равенства, его обычно называют эквисоедияением или просто соединением. Соединение, основанное на любом другом операторе сравнения, кроме равенства (<>, >, >=, <, <=) называется тета-соединением.
Для операции
-соединения
применяют следующий синтаксис:
Оператор SELECT, основанный на операторе сравнения «>», позволяет получить список продуктов, лидирующих по продажам в каждой категории:
SELECT DISTINCTROW ProductCategoryAverages.CategoryName,
ProductTotals.ProductName
FROM ProductCategoryAverages INNER JOIN ProductTotals
ON ProductCategoryAverages.CategoryID = ProductTotals.CategoryID AND ProductTotals.TotalSold > [ProductCategoryAverages].[AverageSold];
В реляционной алгебре поддерживается также внешние соединения (outer joins). Внешнее соединение возвращает все записи, которые возвращает внутреннее соединение, плюс все записи из одного или обоих наборов данных, участвующих в соединении. Отсутствующие значения будут замещаться значениями Null.
Внешние соединения, в зависимости от того, какие именно доп-ые записи включены в них, можно разделить на несколько групп: левые, правые, полные.
Левое внешнее соединение (left outer join) возвращает все записи из отношения, находящегося на стороне «один» связи «один ко многим».
SELECT FROM X LEFT OUTER JOIN Y ON <условие>
Правое внешнее соединение (right outer join) – все записи из отношения, находящегося на стороне «многие» такой связи.
SELECT FROM Y RIGHT OUTER JOIN X ON <условие>
Полное внешнее соединение (full outer join) возвращает все записи из обоих наборов, комбинируя те, для которых выполняется условие данного соединения.
SELECT*
FROM X FULL OUTEP JOIN Y ON <условие>
|
Выполняется над двумя отношениями, если набор атрибутов второго отношения (делителя) является подмножеством набора атрибутов первого (делимого). Результат содержит только те атрибуты делимого, которые, во-первых, имеют заданные значения в атрибутах, принадлежащих делителю, и во-вторых, совпадают друг с другом по уникальным атрибутам делимого. |
Реляционное деление возвращает те записи из первого набора, которые совпадают с записями из другого набора.
Отношение
выступает
в роли делимого,
отношение
выступает
в роли делителя.
Деление отношений аналогично делению
чисел с остатком.
Синтаксис
операции деления: