МИНОБРНАУКИ РОССИИ
федеральное государственное бюджетное образовательное учреждение высшего образования
«Алтайский государственный университет»

Технология разработки программного обеспечения

рабочая программа дисциплины
Закреплена за кафедройКафедра экономики и прикладной информатики (Бийск)
Направление подготовки09.02.07. Информационные системы и программирование
ПрофильАдминистратор баз данных
Форма обученияОчная
Общая трудоемкость0 ЗЕТ
Учебный планФлБийск_09_02_07_Информационные системы и программирование-2022_11кл
Часов по учебному плану 74
в том числе:
аудиторные занятия 62
контроль 12
Виды контроля по семестрам
экзамены: 3

Распределение часов по семестрам

Курс (семестр) 2 (3) Итого
Недель 11
Вид занятий УПРПДУПРПД
Лекции 20 20 20 20
Практические 42 42 42 42
Часы на контроль 12 12 12 12
Итого 74 74 74 74

Программу составил(и):
преподаватель, Кураев М.И.

Рецензент(ы):

Рабочая программа дисциплины
Технология разработки программного обеспечения

разработана в соответствии с ФГОС:
Федеральный государственный образовательный стандарт среднего профессионального образования по специальности 09.02.07 ИНФОРМАЦИОННЫЕ СИСТЕМЫ И ПРОГРАММИРОВАНИЕ (приказ Минобрнауки России от 09.12.2016 г. № 1547)

составлена на основании учебного плана:
Направление 09.02.07 ИНФОРМАЦИОННЫЕ СИСТЕМЫ И ПРОГРАММИРОВАНИЕ
утвержденного учёным советом вуза от 26.06.2023 протокол № 4.

Рабочая программа одобрена на заседании кафедры
Кафедра экономики и прикладной информатики (Бийск)

Протокол от 26.06.2023 г. № 4
Срок действия программы: 20232024 уч. г.

Заведующий кафедрой


1. Цели освоения дисциплины

1.1.Целью преподавания дисциплины «Технология разработки программного обеспечения» является изучение методов проектирования и производства программного продукта, принципов построения, структуры и приемы работы с инструментальными средствами, поддерживающими создание программного обеспечения; методов организации работы в коллективах разработчиков программного обеспечения, формирование навыков проектирования, реализации, оценки качества и анализа эффективности программного обеспечения.

2. Место дисциплины в структуре ООП

Цикл (раздел) ООП: МДК.02

3. Компетенции обучающегося, формируемые в результате освоения дисциплины

ОК 01. Выбирать способы решения задач профессиональной деятельности применительно к различным контекстам;
ОК 02. Использовать современные средства поиска, анализа и интерпретации информации и информационные технологии для выполнения задач профессиональной деятельности;
ОК 03. Планировать и реализовывать собственное профессиональное и личностное развитие, предпринимательскую деятельность в профессиональной сфере, использовать знания по финансовой грамотности в различных жизненных ситуациях;
ОК 04. Эффективно взаимодействовать и работать в коллективе и команде;
ОК 05. Осуществлять устную и письменную коммуникацию на государственном языке Российской Федерации с учетом особенностей социального и культурного контекста;
ОК 06. Проявлять гражданско-патриотическую позицию, демонстрировать осознанное поведение на основе традиционных общечеловеческих ценностей, в том числе с учетом гармонизации межнациональных и межрелигиозных отношений, применять стандарты антикоррупционного поведения;
ОК 07. Содействовать сохранению окружающей среды, ресурсосбережению, применять знания об изменении климата, принципы бережливого производства, эффективно действовать в чрезвычайных ситуациях;
ОК 08. Использовать средства физической культуры для сохранения и укрепления здоровья в процессе профессиональной деятельности и поддержания необходимого уровня физической подготовленности;
ОК 09. Пользоваться профессиональной документацией на государственном и иностранном языках.
ПК 2.1. Разрабатывать требования к программным модулям на основе анализа проектной и технической документации на предмет взаимодействия компонент.
ПК 2.2. Выполнять интеграцию модулей в программное обеспечение.
ПК 2.3. Выполнять отладку программного модуля с использованием специализированных программных средств.
ПК 2.4. Осуществлять разработку тестовых наборов и тестовых сценариев для программного обеспечения.
ПК 2.5. Производить инспектирование компонент программного обеспечения на предмет соответствия стандартам кодирования.
В результате освоения дисциплины обучающийся должен
3.1.Знать:
3.1.1.- модели процесса разработки программного обеспечения;
- основные принципы процесса разработки программного обеспечения;
- основные подходы к интегрированию программных модулей;
- основные методы и средства эффективной разработки;
- концепции и реализации программных процессов;
- методы организации работы в коллективах разработчиков программного обеспечения;
- методы и средства разработки программной документации.
3.2.Уметь:
3.2.1.- владеть основными методологиями процессов разработки программного обеспечения;
- использовать методы для получения кода с заданной функциональностью и степенью качества;
- пользоваться ремонтной и эксплуатационной технической документацией;
3.3.Иметь навыки и (или) опыт деятельности (владеть):
3.3.1.- участия в выработке требований к программному обеспечению;
- участия в проектировании программного обеспечения с использованием специализированных программных пакетов

4. Структура и содержание дисциплины

Код занятия Наименование разделов и тем Вид занятия Семестр Часов Компетенции Литература
Раздел 1. Введение в технологии разработки программных средств
1.1. Основные понятия и определения. Жизненный цикл программных средств. Лекции 3 1 Л2.1, Л1.1
Раздел 2. Стратегии разработки программных средств и систем и реализующие их модели жизненного цикла
2.1. Стратегии разработки программных средств и систем: базовые стратегии разработки ПС; каскадная стратегия разработки; инкрементная стратегия; эволюционная стратегия. Лекции 3 2 Л2.1, Л1.1
2.2. Модели ЖЦ, реализующие каскадную стратегию разработки ПС: Общие сведения о каскадных моделях; классическая каскадная модель; каскадная модель с обратными связями; каскадная модель по ГОСТ Р ИСО/МЭК ТО 15271-2002; V-образная модель. Лекции 3 2 Л2.1, Л1.1
2.3. Модели быстрой разработки ПО: базовая модель RAD; RAD-модель, основанная на моделировании предметной области; RAD-модель параллельной разработки ПО; модель быстрой разработки по ГОСТ Р ИСО/МЭК ТО 15271-2002. Модели ЖЦ, реализующие инкрементную стратегию разработки ПС: общие сведения об инкрементных моделях; инкрементная модель с уточнением требований на начальных этапах разработки; варианты инкрементной модели по ГОСТ Р ИСО/МЭК ТО 15271-2002; инкрементная модель экстремального программирования. Лекции 3 2 Л2.1, Л1.1
2.4. Модели ЖЦ, реализующие эволюционную стратегию разработки ПС: общие сведения; эволюционная модель по ГОСТ Р ИСО/МЭК ТО 15271-2002; структурная эволюционная модель быстрого прототипирования; эволюционная модель прототипирования по ГОСТ Р ИСО/МЭК ТО 15271-2002; спиральная модель Боэма; упрощенные спиральные модели. Лекции 3 2 Л2.1, Л1.1
2.5. Анализ выбранного стиля программирования Практические 3 1 Л2.1, Л1.1
2.6. Разработка проекта программного обеспечения Практические 3 2 Л2.1, Л1.1
2.7. Разработка структурного алгоритма Практические 3 2 Л2.1, Л1.1
2.8. Разработка программного продукта с использованием объектно-ориентированного программирования Практические 3 2 Л2.1, Л1.1
2.9. Разработка справочной системы Практические 3 2 Л2.1, Л1.1
2.10. Тестирование методом «белого ящика», Тестирование методом «черного ящика» Практические 3 2 Л2.1, Л1.1
2.11. Способы анализа граничных решений, Способы создания диаграмм причин-следствий Практические 3 1 Л2.1, Л1.1
2.12. Нисходящее тестирование интеграций, Восходящее тестирование интеграций Практические 3 1 Л2.1, Л1.1
2.13. Анализ предметной области, Автоматизированное тестирование Практические 3 1 Л2.1, Л1.1
2.14. Отладка и оптимизация программ Практические 3 1 Л2.1, Л1.1
2.15. Работа в составе бригады Практические 3 1 Л2.1, Л1.1
Раздел 3. Выбор модели жизненного цикла для конкретного проекта
3.1. Классификация проектов по разработке ПС. Процедура выбора модели ЖЦ ПС. Лекции 3 1 Л2.1, Л1.1
3.2. Адаптация модели ЖЦ разработки ПС к условиям конкретного проекта. Лекции 3 1 Л2.1
3.3. Знакомство с интегрированным средством Star UML/Rational Rose. Практические 3 1 Л2.1
3.4. Основы UML. Практические 3 2 Л2.1
3.5. Изучение постановки задачи. Практические 3 1 Л2.1
3.6. Создание диаграмм: вариантов использования и действующих лиц; последовательности; кооперативной диаграммы; состояний для класса Заказ; активности для варианта использования «Выполнить поставку Заказа. Практические 3 4 Л2.1
Раздел 4. Классические методологии разработки программных средств
4.1. Структурное программирование. Модульное проектирование ПС. Лекции 3 1 Л2.1
4.2. Методы восходящего проектирования. Методы расширения ядра. Метод Джексона. Оценка структурного разбиения ПС. Лекции 3 1 Л2.1
4.3. Пакеты и классы: уточнение методов и свойств классов; описание связей между классами; исключение кириллизованного текста в информации классов. Практические 3 4 Л2.1
Раздел 5. CASE-технологии структурного анализа и проектирования программных средств
5.1. Общие сведения о CASE-технологиях. Методология функционального моделирования IDEF0. Методология структурного анализа потоков данных DFD. Лекции 3 2 Л2.1
5.2. Методология информационного моделирования IDEF1X. Методологии, ориентированные на данные. Лекции 3 1 Л2.1
5.3. Построение диаграммы компонентов Практические 3 1 Л2.1
5.4. анализ проекта Lazarus Практические 3 1 Л2.1
Раздел 6. Тема 6. Методология объектно-ориентированного анализа и проектирования сложных систем
6.1. Основы объектно-ориентированного анализа и проектирования Лекции 3 1 Л2.1
6.2. Математические основы объектно-ориентированного анализа и проектирования Лекции 3 1 Л2.1
6.3. основы языка UML Лекции 3 2 Л2.1
6.4. Построение диаграммы размещения Практические 3 1 Л2.1
6.5. Кодогенерация модельных элементов. Практические 3 1 Л2.1
6.6. Построение диаграмм UML Практические 3 10 Л2.1

5. Фонд оценочных средств

5.1. Контрольные вопросы и задания для проведения текущего контроля и промежуточной аттестации по итогам освоения дисциплины
1 Программные продукты: назначение, характеристики
2 Основные понятия программного обеспечения.
3 Программа, программное обеспечение, задачи и приложения. Технологические и функциональные задачи.
4 Процесс создания программ: постановка задачи, алгоритмизация, программирование.
5 Характеристика программного продукта и его специфика.
6 Классификация программных продуктов.
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 Виды тестирования.
33 Программные ошибки.
34 Методы структурного тестирования программного обеспечения.
35 Принцип «белого и черного ящика».
36 Пошаговое и монолитное тестирование модулей.
37 Нисходящее и восходящее тестирование программного обеспечения.
38 Методы функционального тестирования.
39 Метод эквивалентного разбиения.
40 Метод анализа граничных условий.
41 Метод функциональных диаграмм.
42 Комплексное тестирование.
43 Отладка программ.
44 Сопровождение программ.
45 Категории специалистов, занятых разработкой и эксплуатацией программ.
46 Принципы и методы коллективной разработки программных продуктов.
47 Организация коллективной работы программистов.
5.2. Темы письменных работ для проведения текущего контроля (эссе, рефераты, курсовые работы и др.)
не предусмотрены
5.3. Фонд оценочных средств для проведения промежуточной аттестации
прикреплен файл
Приложения
Приложение 1.   ТРПО.docx

6. Учебно-методическое и информационное обеспечение дисциплины

6.1. Рекомендуемая литература
6.1.1. Основная литература
Авторы Заглавие Издательство, год Эл. адрес
Л1.1 Гниденко И.Г., Павлов Ф.Ф., Федоров Д.Ю. ТЕХНОЛОГИЯ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ: Учебное пособие для СПО Юрайт, 2022 www.urait.ru
6.1.2. Дополнительная литература
Авторы Заглавие Издательство, год Эл. адрес
Л2.1 В. В. Трофимов, Т. А. Павловская ; под ред. В. В. Трофимова ОСНОВЫ АЛГОРИТМИЗАЦИИ И ПРОГРАММИРОВАНИЯ. Учебник для СПО: Гриф УМО СПО М.:Издательство Юрайт, 2018 biblio-online.ru
6.2. Перечень ресурсов информационно-телекоммуникационной сети "Интернет"
Название Эл. адрес
Э1 Технология разработки программного обеспечения portal.edu.asu.ru
6.3. Перечень программного обеспечения
Microsoft Windows 7 Professional, № 60674416 от 17.07.2012;
Microsoft Windows Vista лицензия OEM;
Microsoft Office Professional Plus 2010, № 60674416 от 17.07.2012;
StarUML v5.0.2.1570, http://staruml.io/eula;
Dia, http://dia-installer.de/;
Lazarus, http://wiki.lazarus.freepascal.org/Lazarus_Faq#Licensing)Microsoft Office 2010 (Office 2010 Professional, № 4065231 от 08.12.2010), (бессрочно);
Microsoft Windows 7 (Windows 7 Professional, № 61834699 от 22.04.2013), (бессрочно);
Chrome (http://www.chromium.org/chromium-os/licenses), (бессрочно); 7-Zip (http://www.7-zip.org/license.txt), (бессрочно);
AcrobatReader (http://wwwimages.adobe.com/content/dam/Adobe/en/legal/servicetou/Acrobat_com_Additional_TOU-en_US-20140618_1200.pdf), (бессрочно);
ASTRA LINUX SPECIAL EDITION (https://astralinux.ru/products/astra-linux-special-edition/), (бессрочно);
LibreOffice (https://ru.libreoffice.org/), (бессрочно);
Веб-браузер Chromium (https://www.chromium.org/Home/), (бессрочно);
Антивирус Касперский (https://www.kaspersky.ru/), (до 23 июня 2024);
Архиватор Ark (https://apps.kde.org/ark/), (бессрочно);
Okular (https://okular.kde.org/ru/download/), (бессрочно);
Редактор изображений Gimp (https://www.gimp.org/), (бессрочно)
6.4. Перечень информационных справочных систем
Информационная справочная система:
ИТС ПРОФ ВУЗ (в рамках договора № 126-3 от 01.04.2015 г.)
СПС КонсультантПлюс (http://www.consultant.ru/)
СПС Гарант (http://www.garant.ru/)
Профессиональные базы данных:
1. Электронная библиотечная система Алтайского государственного университета (http://elibrary.asu.ru/);
2. Научная электронная библиотека elibrary (http://elibrary.ru)
3. Банк видео-демонстраций по дисциплине «Программирование» № 2015620754 от 15.05.2015

7. Материально-техническое обеспечение дисциплины

Аудитория Назначение Оборудование
№ 207 (филиал в г. Бийске) помещение для хранения и профилактического обслуживания учебного оборудования. Вспомогательное лабораторное оборудование; переносные ноутбуки.
Учебная аудитория для проведения занятий лекционного типа, занятий семинарского типа (лабораторных и(или) практических), групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации, курсового проектирования (выполнения курсовых работ), проведения практик Стандартное оборудование (учебная мебель для обучающихся, рабочее место преподавателя, доска)
№ 105 (филиал в г. Бийске) помещение для самостоятельной работы обучающихся. Учебная мебель; ноутбуки с подключением к информационно-телекоммуникационной сети «Интернет» и доступом в электронную информационно-образовательную среду.
№ 103 (филиал в г. Бийске) кабинет стандартизации и сертификации – учебная аудитория для проведения занятий всех видов (дисциплинарной, междисциплинарной и модульной подготовки), групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации. Учебная мебель; рабочее место преподавателя; доска магнитно-маркерная; кафедра; проектор; экран; переносной ноутбук из аудитории № 207.
№ 201 (филиал в г. Бийске) лаборатория технологии разработки баз данных – учебная аудитория для проведения занятий всех видов (дисциплинарной, междисциплинарной и модульной подготовки), групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации. Учебная мебель; рабочее место преподавателя; компьютеры; доска магнитно-маркерная; проектор; экран; переносной ноутбук из аудитории № 207.

8. Методические указания для обучающихся по освоению дисциплины

При подготовке к занятиям необходимо просмотреть конспекты лекций, рекомендованную литературу по данной теме; подготовиться к ответу на контрольные вопросы.
Успешное изучение курса требует:
- посещения лекций;
- выполнения всех заданий лабораторных работ преподавателя;
- ознакомления основной и дополнительной литературой.
Работа с конспектом лекций предполагает просмотр конспекта в тот же день после занятий, пометку материала конспекта, который вызывает затруднения для понимания.
Для выполнения заданий лабораторных работ необходимо внимательно прочитать соответствующий раздел учебника и проработать аналогичные задания, рассматриваемые преподавателем на лекционных занятиях.
Основным методом обучения является самостоятельная работа с учебно-методическими материалами, научной литературой, статистическими данными, в том числе из сети Интернет.