Анализ и проектирование информационных систем
Модель информационной системы и этапы ее разработки. Стандартизированный язык моделирования UML. Основы визуального моделирования. Спецификация требований к проектированию информационных систем. Моделирование функциональных требований информационных систем, их логической структуры, динамического поведения, архитектуры и развертывания системы. Современные технологии проектирования и анализа информационных систем. Переход от анализа к проектированию информационных систем. Процесс разработки программного обеспечения. Проектирование графического пользовательского интерфейса.
Интернет-технологии. Объектная модель документа DOM. Языки гипертекстовой разметки HTML. Протокол обмена гипертекстовой информацией HTTP. Расширяемый язык разметки XML. Универсальный способ адресации ресурсов в сети Интернет. Система доменных имен. Универсальный интерфейс шлюзов. Языки сценариев. Каскадные таблицы стилей CSS. Основы JavaScript. Технология PHP. Инструментальные средства разработки интернет-приложений. Интернет-технологии в бизнесе. Проблема безопасности интернет-приложений.
Информационные системы на основе процессной модели управления организацией
Современные подходы к управлению организацией. Бизнес-процессы организации в управлении. Методологии описания бизнес-процессов. Разработка системы бизнеспроцессов организации. Описание и анализ бизнес-процессов организации. Реинжиниринг действующей системы бизнес-процессов организации. Регламентация бизнес-процессов организации. Основы бизнес-анализа для построения информационных систем. Инструментальные средства информационных технологий управления организацией. Информационные системы поддержки жизненного цикла изделий.
Основы алгоритмизации и проектирования программного обеспечения
Введение в теорию алгоритмов. Формальные модели алгоритмов. Основные структуры данных и операции над ними. Характеристика алгоритмических языков и их исполнителей. Основные приемы разработки эффективных алгоритмов. Трудоемкость алгоритмов. Структура программного обеспечения. Основные парадигмы программирования и этапы разработки приложений. Средства разработки приложений. Типы данных и структуры данных. Концепции программирования. Верификация, отладка и тестирование программ.
Концепция объектно-ориентированного программирования (далее – ООП). Объекты и классы в ООП. Статические и динамические элементы ООП. Базовые типы данных, преобразование и приведение типов. Элементы реализации структурных программных алгоритмов: операции и выражения, логические операции, циклы и передача управления. Потоки ввода-вывода. Вложенные классы. Скрытие информации и методы доступа. Фундаментальные свойства ООП. Абстрактные функции, классы и интерфейсы. Контейнеры, итераторы. Обработка исключительных ситуаций. Организация потоков и многопоточной обработки в ООП. Организация и программирование сетевого взаимодействия.
Программирование приложений информационных систем
Разработка приложений информационных систем, этапы и стадии разработки. Основные архитектурные решения, базовые конструкции и элементы языка программирования. Методы разработки объектно-ориентированных приложений. Архитектурные средства, методы и механизмы, ориентированные на разработку сетевых приложений. Технологии разработки бизнес-логики и интерфейсов пользователя. Разработка приложений в архитектуре клиент-сервер. Компонентное программирование. Разработка многопоточных сетевых приложений. Организация взаимодействия с системами управления базами данных. Разработка приложений с графическим пользовательским интерфейсом.
Проектирование баз данных, системы управления базами данных
Классификации систем управления базами данных: по модели данных, по степени распределенности, по способу доступа к базам данных. Основные функции систем управления базами данных. Архитектура баз данных. Системы управления базами данных. Модели данных. Проектирование баз данных. Основные задачи проектирования баз данных. Основные этапы проектирования баз данных. Процедуры концептуального проектирования. Процедуры логического проектирования. Процедуры физического проектирования. Средства автоматизированной разработки приложений. Принципы организации систем управления базам данных. Структурированный язык запросов SQL. Запросы с использованием единственной таблицы. Запросы с использованием нескольких таблиц. Предложения модификации данных SQL. О предложениях определения данных и оптимизации запросов. Безопасность баз данных.
Проектирование и разработка Web-приложений
Понятие веб-приложений и подходы к их разработке. Визуальные средства и специализированные приложения для разработки веб-систем. Проектирование веб-приложений. Создание тем, форм и шаблонов веб-страниц. Использование стилей и сценариев на веб-страницах. Навигация по веб-страницам приложения. Создание веб-узлов и их администрирование. Совместная разработка вебсистем. Мультимедийные веб-приложения. Создание насыщенных интерфейсов вебприложений. Работа веб-приложения с базами данных. Безопасность веб-приложений.
Тестирование программного обеспечения
Основы тестирования программного обеспечения. Разработка тест-кейсов. Эффективные проверки в тестировании программного обеспечения. Доменное тестирование как техника эффективных проверок. Создание отчетов об ошибках. Планирование процесса тестирования на основе требований и тест-кейсов. Локаторы. Паттерн Page Object и его использование. Вспомогательные инструменты тестирования программного обеспечения. Уровни абстракции. Создание кастомных элементов. Архитектура инструмента, его основные составляющие. Работа с окнами. Планирование, анализ, проектирование, реализация веб-тестов. Работа с элементами HTML-документа.