-
10 weeks
-
about 10 hours per week
-
3 credit points
Азбука начинающего разработчика программных систем от А до Я. В курсе изложены технологические основы моделирования, разработки, тестирования и анализа производительности программного обеспечения.
About
Курс посвящен введению в основы методов и средств разработки программного обеспечения. Цель курса - Дать студентам знания, умения и навыки технологий разработки программного обеспечения
В курсе используются следующие инновационные технологии обучения: электронный конспект; контрольные опросы; презентации лекций; задания на лабораторные работы в виде LTI-модуля; упражнения, носящие творческий характер; задания, направленные на творческое развитие; проблемное обучение.
Основные результаты обучения после прохождения курса:
-
Способность выбора подходящей модели разработки ПО
-
Готовность в применении основ информатики и программирования к проектированию, конструированию и тестированию программных продуктов
-
Возможность анализа функционирования программных систем
Мотивационная фраза: «вы все еще просто кодируете? Тогда мы идем к вам!»
В состав курса входят видео-лекции, виртуальная лаборатория, тесты. Курс рассчитан на 10 недель. Недельная нагрузка составляет 10 часов. Общая трудоемкость 3 зач. ед.
Information resources
- Орлов С.А. Программная инженерия. Учебник для вузов. 5-е издание обновленное и дополненное. Стандарт третьего поколения. - Спб.: Питер, 2016. - 640 с.: ил. - (Серия "Учебник для вузов") ISBN 978-5-496-01917-0
- Тамре, Луиза. Введение в тестирование программного обеспечения / Л. Тамре; [пер. с англ. и ред. В. В. Марченко] .— М. [и др.]: Издательский дом "Вильямс", 2003 .— 416 с.: ил.
- Ларман, Крэг. Применение UML 2.0 и шаблонов проектирования. Введение в объектно-ориентированный анализ, проектирование и итеративную разработку / К. Ларман; [пер. с англ. А. Ю. Шелестова] .— 3-е изд .— М. [и др.]: Издательский Дом "Вильямс", 2007 .— 727 с.: ил.
- Фаулер, Мартин. UML. Основы: краткое руководство по стандартному языку объектного моделирования / М. Фаулер; [пер. с англ. А. Петухова] .— 3-е изд. — СПб.: Символ, 2008 .— 184, [4] с.: ил.
Requirements
Материал курса основывается на знаниях следующих дисциплин: “Цифровая Культура”, “Программирование”.
Для выполнения лабораторных работ и дополнительного освоения материала в курсе используется свободно распространяемое ПО, которое загружается студентом самостоятельно:
- 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/)
Course program
В курсе рассматриваются следующие темы:
I. Жизненный цикл программного обеспечения
- Методологии разработки программного обеспечения
- RUP, UML и гибкие методологии
II. Требования и риски
III. Технологии разработки
- Системы контроля версий
- Системы автоматической сборки
- Тестирование программного обеспечения
- Производительность ПО
- Нагрузочное тестирование и профилирование ПО
Education results
- Воспроизведение основ жизненного цикла ПО, основных подходов и методов разработки ПО (РО-1)
- Понимание управления требованиями и анализа рисков при разработке ПО (РО-2)
- Узнавание основ моделирования ПО (РО-3)
- Воспроизведение процессов контроля изменений и автоматизированной сборки (РО-4)
- Воспроизведение базовых принципов тестирования ПО (РО-5)
- Узнавание подходов к анализу производительности ПО и систем (РО-6)
Formed competencies
- Способен применять математические, естественнонаучные и общепрофессиональные знания для понимания окружающего мира и для решения задач профессиональной деятельности (ОПК-1)
- Способен осуществлять профессиональную деятельность с учетом экономических, финансовых, экологических, интеллектуально правовых, социальных и других ограничений на всех этапах жизненного цикла объектов профессиональной деятельности и процессов на основе оценки их эффективности и результатов (ОПК-2)
- Способен формулировать, строить и применять математические модели для управления достижением планируемых результатов процессов и объектов профессиональной деятельности на базе знаний математики, программирования и унифицированных пакетов программ (ОПК-3)
- Способен использовать информационно-коммуникационные технологии, включая специальные методы, программное обеспечение, компьютерное оборудование и технологии искусственного интеллекта при решении задач профессиональной деятельности, соблюдая стандарты и нормативы при подготовке проектной документации и требования информационной безопасности (ОПК-5)