Федеральное агентство связи
Федеральное государственное бюджетное образовательное учреждение высшего образования «Сибирский государственный университет телекоммуникаций и информатики» (СибГУТИ)
А. Н. Полетайкин
Учебно-методическое пособие по выполнению лабораторных работ по дисциплине «Программная инженерия» Часть I. Реализация жизненного цикла программного обеспечения
Учебно-методическое пособие
Новосибирск
2016
УДК 629.113(071):004.01:004.4
Утверждено редакционно-издательским советом СибГУТИ
Рецензенты:
заведующий кафедрой радиоэлектроники информационных систем ФГАОУ ВПО «Уральский федеральный университет имени первого Президента России Б. Н. Ельцина»,
доктор техн. наук, профессор Поршнев Сергей Васильевич
профессор кафедры вычислительной техники ФГБОУ ВО «Новосибирский государственный технический университет»,
доктор техн. наук, профессор Губарев Василий Васильевич
Полетайкин А. Н. Учебно-методическое пособие по выполнению лабораторных работ по дисциплине «Программная инженерия». Часть I. Реализация жизненного цикла программного обеспечения : Учебнометодическое пособие / Сибирский государственный университет телекоммуникаций и информатики; каф. математического моделирования бизнес-процессов. – Новосибирск, 2016. – 97 с.
Пособие содержит общие сведения об организации занятий по курсу «Программная инженерия», задания, теоретические положения и методические указания к выполнению лабораторных работ по дисциплине «Программная инженерия» для первого семестра изучения курса, а также требования к содержанию и оформлению отчетов о выполнении лабораторных работ. Для студентов направлений подготовки 01.03.02 «Прикладная математика и информатика» и 09.03.03 «Прикладная информатика (в экономике)».
В авторской редакции
©Полетайкин А. Н., 2016
©Сибирский государственный университет телекоммуникаций и информатики, 2016
2
|
СОДЕРЖАНИЕ |
|
1 |
Общие положения.......................................................................................... |
5 |
1.1 Организация занятий по курсу................................................................... |
5 |
|
1.2 Требования к содержанию отчетово выполнении лабораторных работ...... |
8 |
|
1.3 |
Требования к оформлению отчетной документации................................... |
8 |
2 |
Задания на лабораторные работы................................................................ |
11 |
Лабораторная работа №1.................................................................................... |
11 |
|
Задание............................................................................................................ |
11 |
|
Теоретические положения ............................................................................. |
11 |
|
|
1.1. Принцип системного анализа............................................................... |
11 |
|
1.2. Системный подход к описанию бизнес-процессов ............................. |
12 |
Требования к содержанию отчета.................................................................. |
12 |
|
Контрольные вопросы и упражнения............................................................ |
14 |
|
Лабораторная работа №2.................................................................................... |
15 |
|
Задание............................................................................................................ |
15 |
|
Теоретические положения ............................................................................. |
15 |
|
|
2.1. Проприетарное программное обеспечение.......................................... |
15 |
|
2.2. Функциональное назначение программного продукта....................... |
17 |
|
2.3. Нефункциональные требования к программному продукту .............. |
17 |
Требования к содержанию отчета.................................................................. |
19 |
|
Контрольные вопросы и упражнения............................................................ |
19 |
|
Лабораторная работа №3.................................................................................... |
20 |
|
Задание............................................................................................................ |
20 |
|
Теоретические положения ............................................................................. |
20 |
|
|
3.1. Объектно-ориентированный подход к моделированию бизнес- |
|
|
процессов...................................................................................................... |
20 |
|
3.2. Модель вариантов использования........................................................ |
21 |
|
3.3. Отношения на диаграмме вариантов использования.......................... |
23 |
|
3.4. Модель классов ..................................................................................... |
26 |
|
3.5. Отношения между классами................................................................. |
29 |
|
3.6. Рациональный унифицированный процесс ......................................... |
30 |
Требования к содержанию отчета.................................................................. |
32 |
|
Контрольные вопросы и упражнения............................................................ |
34 |
|
Лабораторная работа №4.................................................................................... |
35 |
|
Задание............................................................................................................ |
35 |
|
Теоретические положения ............................................................................. |
35 |
|
|
4.1 Функционально-ориентированный подход к проектированию ИС .... |
35 |
|
4.2. Пример функционального моделирования ИС.................................... |
37 |
Требования к содержанию отчета.................................................................. |
38 |
|
Контрольные вопросы и упражнения............................................................ |
39 |
|
Лабораторная работа №5.................................................................................... |
40 |
|
Задание............................................................................................................ |
40 |
|
Теоретические положения ............................................................................. |
41 |
|
|
5.1. Инструментальное средство Microsoft Visual Studio .NET................. |
41 |
|
3 |
|
5.2. Создание проекта в Microsoft Visual Studio 2010. ............................... |
41 |
5.3. Анатомия программы............................................................................ |
44 |
5.4. Рефакторинг........................................................................................... |
51 |
Требования к содержанию отчета.................................................................. |
51 |
Контрольные вопросы и упражнения............................................................ |
53 |
Лабораторная работа №6.................................................................................... |
54 |
Задание............................................................................................................ |
54 |
Теоретические положения ............................................................................. |
54 |
6.1. Самоотносимые классы ........................................................................ |
54 |
6.2. Связанные списки ................................................................................. |
56 |
6.3. Программирование односвязного списка............................................ |
57 |
6.4. Организация пользовательского интерфейса ...................................... |
65 |
6.5. Технология программирования задачи................................................ |
68 |
Требования к содержанию отчета.................................................................. |
73 |
Контрольные вопросы и упражнения............................................................ |
73 |
Лабораторная работа №7.................................................................................... |
75 |
Задание............................................................................................................ |
75 |
Теоретические положения ............................................................................. |
75 |
7.1. Тестирование, как способ контроля качества ПО. .............................. |
75 |
7.2. Критерии тестирования......................................................................... |
76 |
7.3. Виды тестирования. .............................................................................. |
76 |
Требования к содержанию отчета.................................................................. |
78 |
Контрольные вопросы и упражнения............................................................ |
79 |
Список рекомендуемойлитературы........................................................................ |
80 |
Приложение А – Варианты индивидуальных заданий ........................................ |
83 |
Приложение Б – Состав и содержание технического задания на создание |
|
программ (ГОСТ 34.60289) ................................................................................. |
87 |
Приложение В – Листинги кода программирования односвязного списка........ |
88 |
Приложение Г – Реальное положение вещей при разработке компьютерных |
|
программ................................................................................................................. |
96 |
4
1 Общие положения
Дисциплина «Программная инженерия» рассматривает методы и инструментальные средства программной инженерии для решения задач создания качественного программного обеспечения в разных сферах деятельности человека с применениемсовременных информационных и компьютерных технологий.
Изучаются основные понятия, методы и модели программной инженерии, составляющие процесса разработки программного обеспечения, управление требованиями к программной системе, конфигурационное управление программным продуктом, методы, способы и порядок тестирования программного обеспечения, управление версиями и сборками. Рассматриваются и применяются на практике методы, способы и инструментальные средства для анализа предметных областей, постановки задачи, формулирования требований к программе, компилятивной сборки и тестирования специального программного обеспечения для экономики исовременного бизнеса.
1.1 Организация занятий по курсу
Дисциплина «Программная инженерия» читается студентам направления 01.03.02 "Прикладная математика и информатика" и 09.03.03 "Прикладная информатика" на третьем курсе обучения после изучения дисциплин Дискретная математика, Информатика и программирование, Объектно-ориентированный анализ и программирование, Информационные системы и технологии.
Целью курса является формирование у студентов знаний, умений и практических навыков в области анализа и системного представления бизнеспроцессов, разработки технического задания на создание специального программного обеспечения для решения поставленных задач, организации программного процесса создания специальногоПО.
Предметом учебной дисциплины являются методы, подходы и инструментальные средства программнойинженерии.
Задачами дисциплины является получение представления о жизненном цикле многоверсионного программного продукта, а также приобретения навыков применения знаний и умений, приобретенных в бакавриате, для создания и сопровождения сложных программных проектов, отвечающих требованиям современногобизнеса.
Для студентов направления 01.03.02 и 09.03.03 изучаемый курс предусматривает в V учебном семестре выполнение 7 лабораторных работ, а также выполнение курсовой работы.
Курс V семестра предполагает создание специального программного обеспечения для реализации обработки информации на ЭВМ в рамках заданного бизнес-процесса (см. приложение А) и выполнение курсовой работы по результатам лабораторных работ. Рабочая схема выполнения лабораторных занятий представлена в таблице 1.
5