наверх
  • Русский

    язык курса

  • 10 недель

    длительность курса

  • около 10 часов в неделю

    понадобится для освоения

  • 3 зачётных единицы

    для зачета в своем вузе

Азбука начинающего разработчика программных систем от А до Я. В курсе изложены технологические основы моделирования, разработки, тестирования и  анализа производительности программного обеспечения.

О курсе

Курс посвящен введению в основы методов и средств разработки программного обеспечения. Цель курса - Дать студентам знания, умения и навыки технологий разработки программного обеспечения

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

Основные результаты обучения после прохождения курса:

  • Способность выбора подходящей модели разработки ПО

  • Готовность в применении основ информатики и программирования к проектированию, конструированию и тестированию программных продуктов

  • Возможность анализа функционирования программных систем

Мотивационная фраза: «вы все еще просто кодируете? Тогда мы идем к вам!»

Формат

В состав курса входят видео-лекции, виртуальная лаборатория, тесты. Курс рассчитан на 9 недель. Недельная нагрузка составляет 12 часов. Общая трудоемкость 3 зач. ед.

  1. Орлов С.А. Программная инженерия. Учебник для вузов. 5-е издание обновленное и дополненное. Стандарт третьего поколения. - Спб.: Питер, 2016. - 640 с.: ил. - (Серия "Учебник для вузов") ISBN 978-5-496-01917-0
  2. Тамре, Луиза. Введение в тестирование программного обеспечения / Л. Тамре; [пер. с англ. и ред. В. В. Марченко] .— М. [и др.]: Издательский дом "Вильямс", 2003 .— 416 с.: ил.
  3. Ларман, Крэг. Применение UML 2.0 и шаблонов проектирования. Введение в объектно-ориентированный анализ, проектирование и итеративную разработку / К. Ларман; [пер. с англ. А. Ю. Шелестова] .— 3-е изд .— М. [и др.]: Издательский Дом "Вильямс", 2007 .— 727 с.: ил.
  4. Фаулер, Мартин. UML. Основы: краткое руководство по стандартному языку объектного моделирования / М. Фаулер; [пер. с англ. А. Петухова] .— 3-е изд. — СПб.: Символ, 2008 .— 184, [4] с.: ил. 

Требования

Материал курса основывается на знаниях следующих дисциплин: “Цифровая Культура”, “Программирование”. 

Для выполнения лабораторных работ и дополнительного освоения материала в курсе используется свободно распространяемое ПО, которое загружается студентом самостоятельно:

  • Modelio — средство UML моделирования (https://www.modelio.org/)
  • OpenJDK — среда исполнения Java (https://openjdk.java.net/)
  • LibreOffice. Свободно распространяемый офисный пакет. (https://ru.libreoffice.org/)
  • GIT — cистема контроля версий (https://git-scm.com/)
  • Subversion — cистема контроля версий (https://subversion.apache.org/)
  • Средства сборки:
    • gmake (https://www.gnu.org/software/make/)
    • autotools (automake, autoconf, autoscan, ...) (https://www.gnu.org/software/automake/)
    • ant (https://ant.apache.org/)
    • maven (https://maven.apache.org/)
    • jenkins (https://jenkins.io/)
    • cmake (https://cmake.org/)
  • Junit — средство модульного тестирования (https://junit.org/junit5/)
  • Selenium — средство автоматизации браузера (https://www.seleniumhq.org/)
  • Штатные средства мониторинга операционной системы Linux и Windows
    • Средства профилирования, включенные в среду разработки:
    • Eclipse (https://www.eclipse.org/ide/)
    • Netbeans (https://netbeans.org/)

Программа курса

В курсе рассматриваются следующие темы:

I. Жизненный цикл программного обеспечения

  • Методологии разработки программного обеспечения
  • RUP, UML и гибкие методологии

II. Требования и риски
III. Технологии разработки

  • Системы контроля версий
  • Системы автоматической сборки
  • Тестирование программного обеспечения
  • Производительность ПО
  • Нагрузочное тестирование и профилирование ПО
     

Результаты обучения

  • Воспроизведение основ жизненного цикла ПО, основных подходов и методов разработки ПО (РО-1)
  • Понимание управления требованиями и анализа рисков при разработке ПО (РО-2)
  • Узнавание основ моделирования ПО (РО-3)
  • Воспроизведение процессов контроля изменений и автоматизированной сборки (РО-4)
  • Воспроизведение базовых принципов тестирования ПО (РО-5)
  • Узнавание подходов к анализу производительности ПО и систем (РО-6)

Формируемые компетенции

  • Способен применять математические, естественнонаучные и общепрофессиональные знания для понимания окружающего мира и для решения задач профессиональной деятельности (ОПК-1)
  • Способен осуществлять профессиональную деятельность с учетом экономических, финансовых, экологических, интеллектуально правовых, социальных и других ограничений на всех этапах жизненного цикла объектов профессиональной деятельности и процессов на основе оценки их эффективности и результатов (ОПК-2)
  • Способен формулировать, строить и применять математические модели для управления достижением планируемых результатов процессов и объектов профессиональной деятельности на базе знаний математики, программирования и унифицированных пакетов программ (ОПК-3)
  • Способен использовать информационно-коммуникационные технологии, включая специальные методы, программное обеспечение, компьютерное оборудование и технологии искусственного интеллекта при решении задач профессиональной деятельности, соблюдая стандарты и нормативы при подготовке проектной документации и требования информационной безопасности (ОПК-5)
     

Направления подготовки

01.03.02 Прикладная математика и информатика
09.03.02 Информационные системы и технологии
11.03.02 Инфокоммуникационные технологии и системы связи
11.03.03 Конструирование и технология электронных средств
12.03.01 Приборостроение
12.03.02 Оптотехника
12.03.03 Фотоника и оптоинформатика
12.03.05 Лазерная техника и лазерные технологии
13.03.02 Электроэнергетика и электротехника
14.03.01 Ядерная энергетика и теплофизика
15.03.04 Автоматизация технологических процессов и производств
15.03.06 Мехатроника и робототехника
16.03.01 Техническая физика
16.03.03 Холодильная, криогенная техника и системы жизнеобеспечения
18.03.02 Энерго- и ресурсосберегающие процессы в химической технологии, нефтехимии и биотехнологии
19.03.01 Биотехнология
19.03.02 Продукты питания из растительного сырья
19.03.03 Продукты питания животного происхождения
23.03.03 Эксплуатация транспортно- технологических машин и комплексов
24.03.02 Системы управления движением и навигация
27.03.04 Управление в технических системах
27.03.05 Инноватика
38.03.01 Экономика
45.03.04 Интеллектуальные системы в гуманитарной сфере

Отзывы о курсе

Клименков Сергей Викторович


Должность: Старший преподаватель факультета программной инженерии и компьютерной техники Университета ИТМО

Похожие курсы