страница 1
|
|
Похожие работы
|
Программа по дисциплине технология разработки программного обеспечения микаэльян - страница №1/1
УЧЕБНАЯ ПРОГРАММА ПО ДИСЦИПЛИНЕ ТЕХНОЛОГИЯ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ Микаэльян С.В. Для очной формы обучения ВСЕГО 80 лекции 36 семинары 18 Всего аудиторных занятий 54 самостоятельная работа 26 Программные продукты; процесс производства: методы, технология и инструментальные средства; тестирование и отладка; документирование; проектирование программного обеспечения; абстрактные структуры данных; способы эффективного хранения и обработки; технологический цикл разработки программных систем; коллективная работа по созданию программ; организация труда в коллективе и инструментальные средства поддержки; автоматизация проектирования программных продуктов; принципы построения, структура и технология использования САПР ПО. Целью изучения дисциплины является ознакомление студентов с проблемами создания современных программных систем промышленного качества, изучение технологических подходов создания таких систем. Перечень дисциплин, усвоение которых необходимо для изучения курса: «Информатика», «Программирование», «Информационные системы». В результате изучения дисциплины каждый студент должен:
Основные виды занятий: лекции и практические занятия. Основные виды текущего контроля занятий: опрос в ходе лекций, оценка результатов выполнения заданий в течение практических занятий. Основной вид рубежного контроля знаний: экзамен. СОДЕРЖАНИЕ КУРСА Тема 1. Программное обеспечение как продукт производства Основные характеристики промышленного программного обеспечения. Классификации программных проектов. Причины сложности создания программного обеспечения промышленного уровня качества. Задачи технологии разработки программного обеспечения. Тема 2. Жизненный цикл программного обеспечения Понятие жизненного цикла программного обеспечения, содержательная и временная структура жизненного цикла. Модели жизненного цикла, преимущества и недостатки основных используемых моделей. Процессы жизненного цикла, стандартизация процессов и временной структуры жизненного цикла. Задачи и содержание основных, вспомогательных и организационных процессов. Тема 3. Технологические подходы к разработке программного обеспечения. Терминология в области технологии разработки программного обеспечения. Понятие технологического подхода, роль методологии, инструментарий, проблема использования адекватной модели жизненного цикла. Тяжеловесные и легковесные ("гибкие") технологические подходы, их преимущества, недостатки, области применимости. Основные черты подходы Rational Unified Process (RUP). Основные черты подхода "Экстремальное программирование". Тема 4. Управление проектом по созданию программного обеспечения. Организация коллективной работы над проектом Содержание процесса "управление проектом". Планирование. Методы оценки времени и затрат. Технологии коллективной работы. Авторская разработка. Коллективная разработка, способы распределения ролей. Бригада главного программиста. Общинная разработка. Инструментальное обеспечение управления проектом и организации коллективной работы. Особенности работы над проектом в условиях крайнего дефицита времени и ресурсов, "безнадежные" программные проекты. Тема 5. Разработка архитектуры программного обеспечения Понятие архитектуры программного обеспечения. Архитектурные представления. Задача моделирования архитектуры. Роль декомпозиции в моделировании архитектуры программного обеспечения, связность. Способы структурной, функциональной, объектно-ориентированной, компонентной декомпозиции. Визуальное моделирование, языки визуального моделирования. Стандартизация языков визуального моделирования. Паттерны проектирования и их использование. Тема 6. Объектно-ориентированный подход Основные черты объектно-ориентированного подхода в разработке программных систем. Понятие объекта, класса, их составляющие, отношения. Абстрагирование, инкапсуляция, модульность, иерархия. Разновидности иерархий в объектной модели. Каноническая форма сложной системы. Тема 7. Применение визуального моделирования с использованием языка UML в процессе разработки программного обеспечения Цели создания языка UML. Содержание и возможности UML. Канонические диаграммы UML. Использование UML для определения и анализа требований к разрабатываемой системе. Моделирование логической архитектуры системы. Представление объектов, классов и их отношений. Представление взаимодействия объектов. Описание с помощью UML поведения объектов и процессов, протекающих в системе. Моделирование физической архитектуры системы. Механизмы расширения UML. Способы применения моделей UML, автоматическая генерация кода прототипа программы, исполняемый UML. Описание с помощью UML паттернов проектирования. Тема 8. Качество программного обеспечения Понятие качества программного обеспечения, характеристики качества. Основные подходы к проблеме обеспечения качества. Модель технологической зрелости организаций (CMM). Уровни технологической зрелости. Методика SPMN, принцип лучших практических навыков. Стандарты в области качества программного обеспечения. Количественное описание программных решений (метрики) и их использование. Тема 9. Тестирование и отладка программного обеспечения Тестирование и отладка программного обеспечения. Цели и задачи. Категории программных ошибок. Основные виды тестирования, их преимущества и недостатки. Функциональное и структурное тестирование. Регрессионное тестирование. Количественные оценки тестов. Организация тестирования. Разработка программы с использованием предваряющего тестирования. ЛИТЕРАТУРА Основная:
Дополнительная:
|
|