Лекция №1. Технология разработки программного обеспечения. Стоимость по. Программный процесс (2 часа)



Скачать 144,69 Kb.
Дата26.10.2016
Размер144,69 Kb.
Планы и содержание лекционных занятий

Лекция №1. Технология разработки программного обеспечения. Стоимость ПО. Программный процесс (2 часа).

Содержание

  1. В чем еще отличие от других инженерий?

  2. Из чего складывается стоимость ПО?

  3. Программный процесс?


Лекция № 2 Методы программной инженерии. Модель прецедентов. Модель классов. Модель сущность-связь (2 ч.)

Содержание

  1. Модель прецедентов (требований)

  2. Модель классов

  3. Модель сущность-связь

Лекция № 3 Стандартизация и стандарты. Сертификация программ. (2 ч.)

Содержание

  1. методические основы обеспечения качества и сертификации сложных программных средств;

  2. сертификация процессов производства программных средств;

  3. сертификация готовых программных продуктов.


Лекция № 4 Проектирования программ сложной структуры. (2 ч.)

Содержание

  1. Определение пакета программ.

  2. Организация работ по конструированию.

  3. Сроки и состав разработчиков программ сложной структуры.



Лекция № 5 Этапы процесса проектирования (2 ч.)

Содержание

  1. Этапы проектирования.

  2. Базовый стандарт ГОСТ Р ИСО/МЭК 12207-99.

  3. Модели жизненного цикла ПС.



Тематика лабораторных занятий
Лабораторная работа № 1. Прикладные программы с высокой степенью автоматизации управления. Адаптируемость пакетов программ. (6 часов)

Цель работы: Изучение прикладных программ, а также систем и сред программирования.



Рекомендации к самостоятельной работе:

Изучить материалы работы №1



  1. В каталоге «ТРПО» создайте свой каталог.

  2. Составьте спецификацию для задачи в соответствии с вариантом.

  3. Откройте документ «Форма_Пост_Задачи.Doc» и заполните предложенные формы. Результирующий документ запишите в свой каталог.

  4. Постройте функциональную диаграмму и диаграмму потоков данных для задачи в соответствии с вариантом.

Результат поместите в документ «Форма_Пост_Задачи.Doc». Сохраните результат в своем каталоге.

Выполнить практическую работу

Разработать программный комплекс по примерному варианту:

Разработать программный комплекс, который представляет собой подсистему, обслуживающую учебную часть Вуза. Программная подсистема позволяет получать информацию по проведению занятий на первом курсе факультета N: выдает названия предметов, которые ведет преподаватель с фамилией Fam; определяет количество занятий в неделю по каждому из предметов; выводит названия предметов, занятия по которым проводятся в заданный день (понедельник, вторник, среда, четверг, пятница, суббота).



Содержание работы:

  1. Проработка лекционного материала на практике.

  2. Создание программ на Delphi и Pascal.

  3. Отладка сложных программ.

  4. Тестирование ПО.

  5. Трансляция программы.

Форма представления отчета:

Студент должен выполнить свой вариант и оформить работу в тетради и в электронном виде.


Лабораторная работа № 2. Проектирования программ сложной структуры. Типовые приемы конструирования пакетов программ сложной структуры. (8 часов)

Цель работы: Научиться работать над проектом в коллективе разработчиков. Научиться применять модульный подход к проектированию и программированию при разработке ПО сложной структуры.

Рекомендации к самостоятельной работе:

Изучить материалы работы


  1. Организуйтесь в бригады разработчиков в соответствии с полученным на первой лабораторной работе задании. Разработка учебной программы потребует бригады в размере 3 … 5 человек.

  2. Выберите тип коллективной разработки и распределите роли в бригаде.

  3. Обсудите свои предыдущие работы и придите к общему подходу при разработке программы. Обратите внимание на декомпозицию проекта и на составленное описание структур данных. Пусть руководитель проекта примет решение о том, чья работа ляжет в основу дальнейшей разработки. Если требуется, откорректируйте файл «Форма_Пост_Задачи.doc» и запишите его в каталог бригады, предварительно созданный на диске.

  4. Проведите совместно второй этап декомпозиции. Определите модули второго, третьего и т.д. уровней. Четко сформулируйте интерфейсы модулей (входные и выходные данные, способ передачи информации, глобальные переменные).

Выполнить практическую работу

Познакомьтесь с работой учебной программы «Деканат» (промежуточный вариант), которая расположена в каталоге и имеет название Kompl0.pas.



Содержание работы:

  1. Проработка лекционного материала на практике.

  2. Спланировать работу и распределить обязанности при разработке ПО при бригадном подходе;

  3. Изучить модульный подход к разработке сложных программ.

Форма представления отчета:

Студент должен выполнить и оформить работу в тетради и в электронном виде в виде спецификаций.


Лабораторная работа № 3. Конструирования пакетов программ сложной структуры (8 часов)

Цель работы: Научиться работать над проектом в коллективе разработчиков. Научиться конструировать пакеты программ сложной структуры.

Рекомендации к самостоятельной работе:

Изучить материалы работы



  1. Определитесь со стилем программирования.

  2. Составьте план работы. Распределите между собой работу по алгоритмизации и программированию модулей программы. Выберите способ подключения модулей к программе.

  3. Составьте схемы алгоритмов и программы, реализующие функции модулей.

  4. Организуйте тестирование модулей, подключая их последовательно к управляющей программе.

  5. Составьте спецификацию модулей в соответствии с документом «Спецификация_Модуля.Htm».

  6. Схемы, программы и спецификации запишите в каталог бригады.

Выполнить практическую работу

Познакомьтесь с работой учебной программы «Деканат» (промежуточный вариант), которая расположена в каталоге и имеет название Kompl0.pas.



Содержание работы:

  1. Проработка лекционного материала на практике.

  2. Спланировать работу и распределить обязанности при разработке ПО при бригадном подходе;

  3. Изучить конструирование пакетов программ сложной структуры.

Форма представления отчета:

Студент должен выполнить и оформить работу в тетради и в электронном виде в виде спецификаций.


Лабораторная работа № 4. Организация проектирования программного обеспечения (8 часов)

Цель работы: Изучить на практическом примере процесс кодирования при нисходящей разработке ПО.

Рекомендации к самостоятельной работе:

Изучить материалы работы



  • На основании составленной на лабораторной работе №1 спецификации к разработке программного комплекса, функциональной диаграмме и диаграмме потока данных составьте описание структур данных и программу на Турбо Паскале, реализующую обращение к подчиненном модулям.

В соответствии с принятым стилем в программах необходимо:

  • использовать вводные и пояснительные комментарии;

  • делать пропуск строк для разделения групп логически связанных операторов;

  • делать пробелы для улучшения читаемости программы;

  • для переменных задавать имена «со смыслом»;

  • при размещении делать одинаковые отступы в строке для связанных операторов.

  • Проверьте работоспособность программы. Программу поместите в свой каталог.

Выполнить практическую работу

Выполнить работу в соответствии с требованиями:



Содержание работы:

  1. Проработать лекционный материала на практике.

  2. изучить правила стандартизации стиля программирования;

  3. ознакомиться с методикой кодирования и тестирования сверху вниз.

Форма представления отчета:

Студент должен выполнить и оформить работу в тетради и в электронном виде в виде спецификаций.


Лабораторная работа № 5. Этапы процесса проектирования (8 часов).

Цель работы: Изучить на практическом примере процесс проектирования программ.

Рекомендации к самостоятельной работе:

Изучить материалы работы



  • Необходимо разработать программу, которая дает ответы на следующие вопросы:

  • фамилии студентов, имеющих задолженности хотя бы по одному предмету;

  • название предмета, который был сдан лучше всех;

  • процент студентов, сдавших все экзамены на 5 и 4;

  • номера групп в порядке убывания средней успеваемости.

Для выполнения данной задачи в программе должен присутствовать блок ввода исходной информации. Информацию необходимо хранить на диске.
Выполнить практическую работу

Разработать программный комплекс по примерному варианту:

Разработать программный комплекс «Отдел кадров». Подсистема должна обслуживать следующие запросы: выводить список сотрудников, у которых в заданном месяце день рождения; выводить список сотрудников, проживающих на заданной улице; выводить список улиц, на которых проживают сотрудники, в алфавитном порядке; выводить список сотрудников, имеющих минимальную заработную плату.

Содержание работы:


  1. Проработка лекционного материала на практике.

  2. Разработать программу;

  3. Изучить этапы процесса проектирования.

Форма представления отчета:



Студент должен выполнить и оформить работу в тетради и в электронном виде в виде спецификаций.


  • Типовые контрольные задания или иные материалы, необходимые для оценки знаний, умений, навыков и (или) опыта деятельности, характеризующих этапы формирования компетенций в процессе освоения образовательной программы:

Z1. Выполнение задания по варианту с использованием схемы:

  1. Составьте документацию на программный продукт (Приложение 2).

    1. Техническое задание - «Постановка задачи». Если в процессе разработки были внесены изменения в постановку задачи, то соответствующим образом скорректируйте техническое задание.

    2. Составьте описание программы.

    3. Напишите инструкцию для пользователя.

    4. Подключите тексты всех программ и стандартных процедур.

  1. Проверьте наличие сопроводительных документов. В процессе разработки Вы создали следующие документы:

    1. Постановка задачи.

    2. Функциональные диаграммы и диаграммы потоков данных.

    3. Спецификации модулей.

    4. Схемы программ.

    5. Документация на программный продукт.

Варианты заданий:

  1. Создать файл, содержащий данные: ФИО ученика; класс; оценка. Просмотреть записи. Определить среднюю оценку в 9-м классе.

  2. Создать файл, содержащий данные: ФИО студента; группа; оценка по информатике. Просмотреть записи. Определить среднюю оценку по информатике в 302 группе.

  3. Создать файл, содержащий данные: ФИО работника; цех; стаж работы. Просмотреть записи. Определить средний стаж работы работников 1 - го цеха.

  4. Создать файл, содержащий данные: ФИО работника; пол; количество детей. Просмотреть данные из файла. Определить количество женщин, имеющих более двух детей.

  5. Создать файл, содержащий данные: ФИО ученика; пол; рост. Просмотреть данные из файла. Определить средний рост девочек.

  6. Создать файл, содержащий данные: ФИО ученика; класс; пол. Просмотреть данные из файла. Определить количество мальчиков в 5 - классе.

  7. Создать файл, содержащий данные: ФИО студента; группа; оценка по информатике. Просмотреть данные из файла. Определить количество ‘4’ и‘5’ в 301 группе.

  8. Создать файл, содержащий следующие данные: ФИО студента; пол; группа. Вывести данные из файла на экран. Подсчитать количество юношей и количество девушек 301 группы. Создать новый файл данных, содержащий сведения о студентах 302 группы (используя существующий файл данных).

  9. Создать файл, содержащий следующие данные: ФИО студента; год рождения; группа; наличие золотой или серебряной медали. Вывести данные из файла на экран. Подсчитать количество медалистов. Создать новый файл данных, содержащий сведения о студентах, имеющих золотую медаль (используя существующий файла данных).

  10. Создать файл, содержащий следующие данные: ФИО рабочего; количество отработанных дней; сумма зарплаты. Вывести данные из файла на экран. Подсчитать общую сумму зарплаты, выданной рабочим. Создать новый файл данных, содержащий сведения о рабочих, зарплата которых менее заданного значения.

Приложение 2


Постановка задачи

Задание на разработку программного обеспечения



Название

Задача

Программа

Система программирования

Компьютер

Описание


Входные данные



Выходные данные


Ошибки



Контрольный пример


Название задачи

Дается краткое определение решаемой задачи, название программного комплекса, указывается система программирования для его реализации и требования к аппаратному обеспечению (компьютеру, внешним устройствам и т. д.).

Описание

Подробно излагается постановка задачи, описывается применяемая математическая модель для задач вычислительного характера, метод обработки входных данных для задач не вычислительного (логического) характера и т.д.

Управление режимами работы программы

Формулируются основные требования к способу взаимодействия пользователя с программой (интерфейс пользователь–компьютер).

Входные данные

Описываются входные данные, указываются пределы, в которых они могут изменяться, значения, которые они не могут принимать, и т.д.

Выходные данные

Описываются выходные данные, Указывается, в каком виде они должны быть представлены — в числовом или текстовом, в виде таблицы или Web–документа, на диске, печатающем устройстве или дисплее и другие.

Ошибки


Перечисляются возможные ошибки пользователя при работе с программой. Например, ошибки при вводе исходных данных и другие. Указываются способы диагностики (под диагностикой понимается выявление, обнаружение ошибок при работе программного комплекса) и защиты от этих ошибок на этапе проектирования, а также возможная реакция программного комплекса на эти действия.

Контрольные примеры работы программного комплекса

Приводится один или несколько примеров работы программного комплекса, на которых в простейших случаях проводится его отладка и тестирование.


  • методические материалы, определяющие процедуры оценивания знаний, умений, навыков и (или) опыта деятельности, характеризующих этапы формирования компетенций:

Преподаватель в процессе подготовки к проведению занятий исходит из того, что

  • студенты знакомы с фундаментальными основами и практикой использования средств информационно-коммуникационных технологий, таких как компьютер, периферия, средства связи, системное программное обеспечение, системы программирования, пакеты прикладных программ;

  • в ходе проводимых занятий предлагаемые студентам задания, упражнения, и т.п. должны быть ориентированы на расширение познаний обучаемых в области программирования;

  • для приобщения обучаемых к поиску, к исследовательской работе, для развития их творческого потенциала следует по возможности избегать прямого руководства работой обучающихся при выполнении ими тех или иных заданий, чаще выступать в роли консультанта, эксперта, коллеги-исследователя;

  • оценка ЗУН осуществляется при защите лабораторных работ.

Вопросы к зачету:



V.1. Цели и задачи технологий разработки ПО. Особенности современных крупных проектов.

V.2. Основные определения. Программные средства. Программное обеспечение (ПО). Программный продукт. Проектирование ПО. Программирование. Классификация типов программного обеспечения.

V.3. Составные части технологии программирования. Проект, продукт, процесс и персонал.

V.4. Основные понятия технологии программирования. Процессы и модели. Фазы и витки.

V.5. Выявление и анализ требований. Требования к программному обеспечению. Схема разработки требований. Управление требованиями.

V.6. Свойства требований (способы устранения неоднозначности; ошибки, нарушающие полноту; ситуации, нарушающие целостность; способы улучшения целостности; упорядоченность; проверяемость; изменяемост; прослеживаемость).

V.7. Способы выражения (записи) требований в ТЗ (варианты использования; диаграмма потоков данных; диаграмма перехода состояний).

V.8. Общий шаблон ТЗ в стандарте IEEE 830-1993 (требования заказчика; детальные требования; принципы составления и способы их организации).

V.9. Архитектурное и детальное проектирование.

V.10. Реализация и кодирование.

V.11. Тестирование и верификация. Процесс контроля качества. Методы кон-троля качества.

V.12. Цели тестирования. Верификация, валидация и системное тестирование.

V.13. Характеристики качества и критерии качества ПО, (надежность; эффек-тивность; практичность; универсальность; сопровождаемость; корректность; обеспечение завершенности ПС).

V.14. Жизненный цикл программы. Циклический характер разработки.

V.15. Процессы и модели. Какой международный стандарт определяет перечень и содержание процессов ЖЦ ПО?

V.16. Основные группы процессов жизненного цикла и процессы каждой из групп.

V.17. Стадии жизненного цикла ПС, особенности разработки ПС, основные международные стандарты, пять подходов к разработке.

V.18. Модели процесса разработки. Водопадный подход (каскадная модель), выводы о применимости классической каскадной модели.

V.19. Модели процесса разработки. Итерационный подход (спиральная и инкрементальная модели). Гибкие модели процесса разработки.

V.20. Международные стандарты проектирования, разработки, оформления документации, пользовательского интерфейса ПИ.

V.21. Измерения, меры и метрики. Размерно-ориентированные метрики. Функционально-ориентированные метрики.

V.22. Выполнение оценки проекта на основе LOC- и FP-метрик.

V.23. Коллективный характер разработки. Состав и структура коллектива разработчиков, их функции. Конструирование модели команды.

V.24. Конструирование модели процесса. Выявление требований к процессу (спецификация требований). Техническое задание. Подходы к разработке технического задания.

V.25. Планирование проекта. Уточнение содержания и состава работ. Планирование управления содержанием.

V.26. Планирование организационной структуры и планирование управления конфигурациями.

V.27. Планирование управления качеством. Базовое расписание проекта.


Перечень основной и дополнительной учебной литературы, необходимой для освоения дисциплины (модуля)


Основная литература

1. Эрастов В.Е. Метрология, стандартизация и сертификация: учебное пособие / В.Е. Эрастов. – М.: ФОРУМ. 2010. – 208 с.

2. Дорогов, В.Г. Основы программирования на языке С: учеб. пособ. / В.Г. Дорогов, Е.Г. Дорогова.- М.: ИНФРА-М, 2012.- 224 с.

3. Шаньгин, В.Ф. Комплексная защита информации в корпоративных системах: учеб. пособ. / В.Ф. Шаньгин.- М.: ИНФРА-М, 2013.- 592 с.



Дополнительная литература

1 Боэм Б.У. Инженерное проектирование программного обеспечения /Б.У. Боэм; пер. с англ. – М.: Радио и связь. 1985. – 512 с., ил.

2 Вендров, А.М. CASE-технологии. Современные методы и средства проектирования информационных систем /А.М. Вендров - М.: Финансы и статистика, 1998. – 176 с.: ил.

3 Зелковиц, М. Принципы разработки программного обеспечения /М. Зелковиц, А. Шоу, Дж. Гэннон; пер. с англ. - М.: Мир, 1982 - 368 с., ил.

4 Калянов, Г.Н. CASE-технологии. Консалтинг при автоматизации бизнес-процессов /Г.Н. Калянов. - 2-е изд., перераб. и доп. - М.: Горячая линия - Телеком, 2000 - 320 с., ил.

5 Маклаков, С.В. BPwin и ERwin. CASE-средства разработки информационных систем /С.В. Маклаков - М: - ДИАЛОГ-МИФИ, 2000 - 256 с.

6 Фокс, Дж. Программное обеспечение и его разработка /Дж. Фокс; пер. с англ. – М.: Мир, 1985. – 368 с., ил.

7 Черемных, С.В. Структурный анализ систем: IDEF-технологии /С.В. Черемных, И.О. Семенов, В.С. Ручкин. - М.: Финансы и статистика, 2001. - 208 с.: ил. - (Прикладные информационные технологии).

8 Щелкунова, М.Е. Технология разработки программного обеспечения: учеб. пособие /М.Е. Щелкунова. - Комсомольск-на-Амуре: ГОУВПО “КнАГТУ”, 2005. - 160 с.¬

9 Щелкунова, М.Е. Разработка «Технического задания» на создание програм¬много обеспечения. Методические указания к выполнению ку-рсовой работы по курсу «Техно¬логия разработки программного обес¬пе-чения» /М.Е. Щелкунова - Ко¬мсомольск-на-Амуре: ГОУВПО "КнАГТУ", 2006. - 44 с.




Перечень ресурсов информационно-телекоммуникационной сети «Интернет» (далее – сеть «Интернет»), необходимых для освоения дисциплины (модуля)




  1. http://tehprog.ru/index.php_page=lecture12.html Технологии программирования


Поделитесь с Вашими друзьями:


База данных защищена авторским правом ©grazit.ru 2017
обратиться к администрации

    Главная страница