- •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)Документирование результатов тестирования. Важность дефекта. Градации важности дефекта.
2)Жизненный цикл программного обеспечения. Эволюционная модель жизненного цикла: основные этапы, принципы организации, преимущества и недостатки.
Спиральная модель – классический пример применения эволюционной стратегии конструирования (автор Барри Боэм, 1988). Данная модель базируется на лучших свойствах классического жизненного цикла и макетирования, к которым добавляется новый элемент – анализ риска.
Р
исунок
1 Спиральная модель конструирования
ПО. На рисунке:
1 – начальный сбор требований; 2 – та же
работа, но на основе рекомендаций
заказчика; 3 – анализ риска на основе
начальных требований;4 – анализ риска
на основе реакции заказчика; 5 – переход
к комплексной системе; 6 – начальный
макет системы; 7 – следующий уровень
макета; 8 – сконструированная система;
9 – оценивание заказчиком. Модель
определяет четыре действия, определяемые
четырьмя квадрантами спирали:
1.Планирование – определение целей,
вариантов и ограничений. 2.Анализ риска
– анализ вариантов и распознавание /
выбор риска. 3.Конструирование –
разработка продукта следующего
уровня.4.Оценивание – оценка заказчиком
текущих результатов конструирования.
Достоинства спиральной модели:
1.Наиболее реально (в виде эволюции)
отображает разработку программного
обеспечения; 2.Позволяет явно учитывать
риск на каждом витке эволюции
разработки;3.Включает шаг системного
подхода в итерационную структуру
разработки;4.Использует моделирование
для уменьшения риска и совершенствования
программного изделия.
Недостатки спиральной модели: 1.Новизна
(отсутствует достаточная статистика
эффективности модели); 2.Повышенные
требования к заказчику;3.Трудности
контроля и управления временем разработки.
Компонентно-ориентированная
модель является
развитием спиральной модели
и тоже основывается на эволюционной
стратегии конструирования. В этой модели
конкретизируется содержание квадранта
конструирования – оно отражает тот
факт, что в современных условиях новая
разработка должна основываться на
повторном использовании существующих
программных компонентов. Достоинства
компонентно-ориентированной
модели:1.Уменьшает
на 30% время разработки программного
продукта;2.Уменьшает стоимость программной
разработки до 70%;3.Увеличивает в 1.5 раза
производительность разработки. В
современной инфраструктуре программной
инженерии существует два
семейства процессов разработки:
-семейство прогнозирующих (тяжеловесных)
процессов; -семейство адаптивных
(подвижных, облегченных) процессов. У
каждого семейства
есть свои достоинства и недостатки:
Адаптивный процесс используют при
частых изменениях требований, малочисленной
группе высококвалифицированных
разработчиков и грамотном заказчике,
который согласен участвовать в разработке.
Прогнозирующий
процесс используют при фиксированных
требованиях и многочисленной группе
разработчиков разной квалификации.
3)Разработка экспертных систем. Этапы разработки экспертной системы. Человеческий фактор при разработке экспертной системы.
Технология их разработки ЭС, включает в себя шесть этапов: этапы идентификации, концептуализации, формализации, выполнения, тестирования, опытной эксплуатации. Рассмотрим более подробно последовательности действий, которые необходимо выполнить на каждом из этапов.
1) На этапе идентификации необходимо выполнить следующие действия: определить задачи, подлежащие решению и цели разработки, определить экспертов и тип пользователей.
2) На этапе концептуализации: проводится содержательный анализ предметной области, выделяются основные понятия и их взаимосвязи,
определяются методы решения задач.
3) На этапе формализации: выбираются программные средства разработки ЭС, определяются способы представления всех видов знаний,
формализуются основные понятия.
4) На этапе выполнения (наиболее важном и трудоемком) осуществляется наполнение экспертом БЗ, при котором процесс приобретения знаний разделяют: на "извлечение" знаний из эксперта, на организацию знаний, обеспечивающую эффективную работу ЭС, на представление знаний в виде, понятном для ЭС. Процесс приобретения знаний осуществляется инженером по знаниям на основе деятельности эксперта.
5) На этапе тестирования эксперт и инженер по знаниям с использованием диалоговых и объяснительных средств проверяют компетентность ЭС. Процесс тестирования продолжается до тех пор, пока эксперт не решит, что система достигла требуемого уровня компетентности.
6) На этапе опытной эксплуатации проверяется пригодность ЭС для конечных пользователей. По результатам этого этапа возможна существенная модернизация ЭС.
Процесс создания ЭС не сводится к строгой последовательности этих этапов, так как в ходе разработки приходится неоднократно возвращаться на более ранние этапы и пересматривать принятые там решения.
Человеческий фактор при разработке ЭС
Разработку ЭС осуществляют специалисты:
-эксперт по проблемной области;
-инженер по знаниям (специалист по разработке ЭС);
-программист-специалист по разработке инструментальных средств.
Эксперт — определяет знание (данные и правила), характеризующие предметную область, обеспечивает полноту и правильность введённых в ЭС знаний, оценивает полученные системой решения в процессе разработки системы.
Инженер по знаниям — помогает эксперту выявить и формализовать знания, выбирает инструментальные средства, определяет и программирует стандартные (типовые) функции используемые экспертом при формировке знаний.
Программист — разрабатывает компоненты ЭС. Его деятельность относится к интеллектуальному программированию, которое составляет:
языки искусственного интеллекта:
— объектно-ориентированные языки;
—языки для представления знаний.
автоматический синтез программ:
— дедуктивные методы;
— индуктивные методы.
Инструментальные системы:
— "пустые";
— системы (оболочки).
Системы когнитивной графики.
