
- •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)Документирование результатов тестирования. Важность дефекта. Градации важности дефекта.
4)Категории тестируемых требований к программному обеспечению.
Типы требований. Пример набора таких категорий представлен следующим списком:
• Функциональные средства. -определяет, какие функции должен выполнять данный программ. продукт на системном или пользовательском уровне. Для ясности может быть указано, чего не должен делать данный продукт.
• Интерфейсы- описывает входы, получаемые из внешних систем, и выходы, направляемые во внешние системы. Накладываются ли на эти интерфейсы какие-то ограничения, связанные с форматами данных и носителями информации?
• Данные- описывают вход. и вых. данные системы. Формат данных ,Какие данные нужно сохранять? Какой объем данных поступает в систему и из системы, и с какой скоростью передачи? С какой точн. должны выполняться вычисления?
• Производительность-описывают проблемы масштабир-я и синхронизации, например, сколько пользователей одновр-но должна обсл-ть система, сколько транзакций должна выполнять система в ед. времени, как долго польз-ль должен ждать ответа на свой запрос.
• Пользователи и человеческий фактор. Эта категория требований предъявляется к тем, кто будет работать с системой в смысле их квалификации и опыта. определяют необх. уровень удобства и простоты исп.я ПП
• Физическая среда. Эта категория требований определяет, где должно функц-ть оборуд-ие. Установлено ли обор-ие более чем в одном месте? Имеют ли место ограничения по температуре, влажности или другие ограничения, связанные с окружающей средой?
• Безопасность. Эта категория требований описывает, как осущ-ся доступ к системе и как осущ-ся управление ее данными. Как часто следует выполнять дублирование? На каких носителях сохраняются дублированные данные?
• Документация. Эта категория требований связана с документацией и тем, должна ли она быть представлена в печатном виде или выдается в интерактивном режиме. Кроме того, здесь же определяется категория лиц, для которых эта документация предназначена.
• Устранение неисправностей. Эта категория требований описывает, как система реагирует на возникновение неисправностей. Будет ли система обнаруживать неисправность и выдавать аварийные сигналы? Какой должна быть средняя длительность промежутка времени между двумя неисправностями? Каким должно быть максимальное время простоя?
Сопровождение. Эти требования определяют, как произв-ся устранение проблем, обнар-ых в системе
План поставки версий. Если требованиям назначены приоритеты, возможно, необходимо будет определить временной график поставки версий, который показывает, реализации каких требований уделяется внимание в конкретной версии.
Билет №4.
1)Наследование: понятие, простое наследование, режимы наследования и их применение. Примеры на языке C++.
Наследование — один из четырёх важнейших механизмов объектно-ориентированного программирования (наряду с инкапсуляцией, полиморфизмом и абстракцией), позволяющий описать новый класс на основе уже существующего (родительского), при этом свойства и функциональность родительского класса заимствуются новым классом.
Другими словами, класс-наследник реализует спецификацию уже существующего класса (базовый класс). Это позволяет обращаться с объектами класса-наследника точно так же, как с объектами базового класса.
Простое наследование - класс, от которого произошло наследование, называется базовым или родительским (англ. base class). Класс, который произошел от базового, называются потомком, наследником или производным классом (англ. derived class): class B: public A {/*…*/}; класс B является наследником A. Это также означает, что любой объект типа B также является объектом (разновидностью) типа A (но не наоборот!).
Наследование:
Открытое (public) наследование. Отражает зависимость «являться». Все члены базового класса становятся членами класса-наследника (как интерфейс, так и реализация).
Закрытое (private) наследование. Об этом подробнее. Пусть имеется класс B, который открыто, наследует класс A. Такое наследование дает ряд преимуществ. Одним из них является то, что можно обращаться к классам-наследникам через указатель на базовый класс, т.е.: A *some = new B; // все хорошо: A – базовый класс, произойдет неявное преобразование Но теперь проделаем небольшую корректировку (а именно заменим public-наследование на private):
class A { /*…*/ };
class B: private A { /*…*/ };
Если попытаться написать
A *some = new B;
То компилятор выдаст ошибку. public-наследованием объект одного типа _ является_ разновидностью другого типа, а по поводу private такого сказать нельзя. Private-наследование используется только на этапе реализации, и оно скорее выражает зависимость «реализовано на основе». Т.е. на этапе проектирования private-наследование никоим образом не фигурирует, а появляется только на этапе написания программного кода. private-наследование в большинстве случаев можно заменить обычным внедрением, т.е. созданием члена-указателя на нужный класс.
Защищенное (protected) наследование – очень редко встречающийся на практике вид наследования. При protected-наследовании все члены с модификатором public наследуются с модификатором protected (т.е. все открытые члены базового класса становятся защищенными членами класса-наследника).