- •1. Определение понятий «программа», «программное средство», «программный продукт». Виды и краткое содержание программных документов (по еспд).
- •2. Связь программных документов с этапами жизненного цикла по.
- •3. Жизненный цикл программных средств. Базовые этапы моделей жц: назначение и характеристика.
- •4. Стратегии конструирования программных средств с точки зрения моделей жц. Характеристика стратегий, достоинства и недостатки.
- •6. Назначение, архитектура, классификация case-средств.
- •7. Определение и содержание процесса тестирования. Информационные потоки процесса тестирования.
- •8. Основные стратегии тестирования, их характеристики, достоинства и недостатки. Основные типы ошибок, выявляемых каждой из стратегий.
- •9. Потоковый граф и цикломатическая сложность программы. Примеры.
- •10. Способ тестирования базового пути.
- •11. Способ тестирования условий.
- •12. Способ тестирования потоков данных.
- •13. Функциональное тестирование. Способ разбиения по эквивалентности и анализа граничных значений.
- •14. Способ диаграмм причин-следствий.
- •15. Основные характеристики качества и надежности программных средств.
- •16. Понятия функциональной пригодности, корректности и надежности программных средств.
- •17. Функция надежности и функция отказа: определение, основные свойства.
- •18. Дискретные модели надежности по. Модель Муса.
- •19. Дискретные модели надежности по. Модель Шумана.
- •20. Статические модели надежности по (простая интуитивная модель, модель Нельсона, модель Миллса).
- •21. Эмпирические модели надежности по. Определение оптимальной продолжительности тестирования.
- •22. Понятие пользовательского интерфейса. Основные принципы разработки пользовательского интерфейса.
- •23. Оконные интерфейсы. Типы окон. Основные операции с окнами.
- •24. Типы диалога пользовательского интерфейса.
- •25. Типы элементов управления оконных интерфейсов.
- •26. Назначение элемента управления «меню». Стандартные разновидности меню.
- •27. Назначение элемента управления «кнопка». Стандартные разновидности кнопок.
- •28. Назначение элемента управления «список». Стандартные разновидности списков.
- •29. Назначение элемента управления «текстовая область». Стандартные разновидности текстовых областей.
- •30. Правовые методы защиты программных продуктов и баз данных.
- •31. Понятие компонента. Функциональные группы компонентов.
- •32. Открытый интерфейс доступа к базам данных (odbc).
- •33. Архитектуры сервера баз данных совместной обработки клиентских запросов.
- •34. Доступ к базам данных в двухзвенных моделях «клиент-сервер».
- •35. Основные требования к распределенной обработке данных.
- •36. Функции «типового» приложения обработки данных.
- •37. Базовые архитектуры распределенной обработки данных.
- •Архитектура сервера баз данных
- •Архитектура «один к одному»
- •Многопотоковая односерверная архитектура
- •38. Источник данных. Архитектура приложения, работающего с внешними источниками данных.
- •39. Последовательность действий для обеспечения работы с объектом источника данных.
- •40. Форматы представления слабоструктурированных данных. Основные понятия стандарта iso 2709.
- •41. Форматы представления слабоструктурированных данных. Основные понятия коммуникативного формата мекоф.
- •42. Языки определения слабоструктурированных данных. Основные понятия xml.
- •43. Инфраструктура описания ресурсов (rdf).
- •44. Структура процессов в абстрактной аипс.
- •45. Фактографические и документальные бд.
- •46. Классификации. Типология классификаций на основе отношений, возможных между классами и атрибутами.
- •47. Библиотечно-библиографические классификации.
- •48. Патентные классификации.
- •49. Классификации наук.
- •50. Онтология как средство формализованного представления информации.
- •51. Методы выделения информативных терминов.
- •52. Методы классификации и кластеризации текстовой информации.
Архитектура сервера баз данных
Повышение эффективности и оперативности обслуживания большого числа клиентских запросов, помимо простого увеличения ресурсов и вычислительной мощности серверной машины, может быть достигнуто двумя путями:
снижением суммарного расхода памяти и вычислительных ресурсов за счет буферизации (кэширования) и совместного использования (разделяемые ресурсы) наиболее часто запрашиваемых данных и процедур;
распараллеливанием процесса обработки запроса – использованием разных процессоров для параллельной обработки изолированных подзапросов и/или для одновременного обращения к частям базы данных, размещенным на отдельных физических носителях.
Рассмотрим архитектуры, реализующие следующие модели совместной обработки клиентских запросов.
Архитектура «один к одному»
В этом случае (рис. 7.4) для обслуживания каждого запроса запускается отдельный серверный процесс.
Рис. 7.5. Архитектура сервера «один к одному»
Таким образом, даже если от клиентов поступят совершенно одинаковые запросы, для обработки каждого из них будет запущен отдельный процесс, каждый из которых будет выполнять одинаковые действия и использовать одни и те же ресурсы.
Многопотоковая односерверная архитектура
Обработку всех клиентских запросов выполняет один серверный процесс (использующий один процессор), взаимодействующий со всеми клиентами и монопольно управляющий ресурсами (рис. 7.6). При этом для отдельного клиентского процесса создается поток, (thread) в рамках которого локализуется обработка запроса.
Процессор Поток
1
Поток N
Рис. 7.6. Многопотоковая односерверная архитектура
Мультисерверная архитектура
В том случае, когда для работы СУБД используются многопроцессорные платформы, обслуживание запросов может быть физически распределено для параллельной обработки между процессорами. Такое решение (рис. 7.7) требует введения дополнительного звена, в задачи которого входит диспетчеризация запросов для обеспечения сбалансированной загрузки процессоров.
Д
И
С
П
Е
Т
Ч
Е
Р
Процессор
Рис. 7.7. Многопотоковая односерверная архитектура
В том случае, когда серверный процесс реализуется как многопоточное приложение, говорят, что СУБД имеет мультисерверную многопотоковую архитектуру.
38. Источник данных. Архитектура приложения, работающего с внешними источниками данных.
Источник данных - это совокупность данных в определенном формате представления и программных средств, обеспечивающих поддержку формата, управление и манипулирование данными (например, базу данных и СУБД). В качестве источника данных могут выступать базы данных, текстовые файлы, электронные таблицы и т.п.
Несмотря на разнообразие программного обеспечения ведения источников данных, общая архитектура приложения, работающего с источниками данных, остается неизменной и включает следующие механизмы (рис. 10.1):
• механизм соединения с источником данных, обеспечивающий двунаправленный поток данных от программных средств ведения источника данных до приложения и обратно;
• механизм внутреннего представления данных, обеспечивающий хранение данных и реализацию запросов на их предоставление разным частям приложения;
• механизм связи внутреннего представления с элементами пользовательского интерфейса;
• пользовательский интерфейс, реализующий предоставление данных пользователю на обработку;
• алгоритмы обработки данных (бизнес-логику).
Между приложением и собственно источником данных работает специальное программное обеспечение (так называемое промежуточное ПО), управляющее процессом обмена данными. Промежуточное ПО может быть реализовано разными способами, например:
• как программное окружение приложения, без которого приложение не сможет работать;
• как набор драйверов и динамических библиотек;
• как подпрограммы, интегрированные в само приложение;
• как отдельный сервер, обслуживающий множество приложений.