• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
Бакалавриат 2021/2022

Конструирование программного обеспечения

Статус: Курс обязательный (Программная инженерия)
Направление: 09.03.04. Программная инженерия
Когда читается: 2-й курс, 1-4 модуль
Формат изучения: без онлайн-курса
Охват аудитории: для своего кампуса
Преподаватели: Волков Александр Ефимович, Гринкруг Ефим Михайлович, Заведеев Денис Владиславович, Кучук Александр Александрович, Фомичев Михаил Игоревич
Язык: русский
Кредиты: 8
Контактные часы: 132

Программа дисциплины

Аннотация

Курс "Конструирование программного обеспечения" предназначен для студентов 2-го курса образовательной программы «Программная инженерия» факультета компьютерных наук НИУ ВШЭ (г.Москва) в целях изучения и освоения современных методов и средств создания программного обеспечения. Курс базируется на использовании Java-платформы - наиболее популярной среды разработки современного программного обеспечения. В результате освоения курса студенты приобретают знания современных подходов к разработке программного обеспечения и овладевают средствами совремменной Java-платформы в рамках Java SE (Java Standard Edition).
Цель освоения дисциплины

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

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

Планируемые результаты обучения

  • Знакомство с синтаксисом и особенностями языка Java в сравнении с другими языками программирования
  • Знание принципов объектно-ориентированного программирования, основных программных архитектур и паттернов проектирования программного обеспечения
  • Владение лучшими практиками разработки и знание код-стайла
  • Умение создавать клиент-серверные приложения с базами данных
  • Знание принципов работы с многопоточностью
  • Навыки применения инструментальных средств в разработке и тестировании
  • Навыки разработки с применением Git
  • Понимание особенностей сборки и развертывания программ
Элементы контроля

Элементы контроля

  • неблокирующий Домашнее задание (HW1)
    Разработка приложения по заданию с загрузкой результата для проверки
  • неблокирующий Домашнее задание (HW2)
    Домашнее задание по материалам модуля 2
  • неблокирующий Домашнее задание (HW3)
    Домашнее задание на конструирование многопоточного приложения с использованием средств синхронизации
  • неблокирующий Домашнее задание (HW4)
    Домашнее задание на конструирование приложения с визуализацией поведения
  • неблокирующий Домашнее задание (HW5)
    Разработка сетевого приложения
  • неблокирующий Работа на семинаре (Seminars)
    оценка активности работы на практических занятиях (семинарах)
  • неблокирующий Домашнее задание (HW6)
  • неблокирующий Домашнее задание (HW7)
Промежуточная аттестация

Промежуточная аттестация

  • 2021/2022 учебный год 2 модуль
    Промежуточная аттестация (2 модуль) Оценка за первый семестр S1 вычисляется по формуле S1 = min(1.1 * ((HW1 + HW2 + HW3) / 3)) + 0.15 * (оценка работы за семестр на практических занятиях); 10)
  • 2021/2022 учебный год 4 модуль
    Промежуточная аттестация (4 модуль) Итоговая оценка за курс (FinalGrade) вычисляется следующим образом: FinalGrade = min (0.35 * S1 + 0.75 * S2; 10); S1 и S2 – оценки за первый и второй семестр, соответственно: S1 = min(1.1 * (HW1 + HW2 + HW3) / 3 + 0.15 * SW1;10); S2 = 0.85 * (HW4 + HW5 + HW6 + HW7) / 4 + 0.15 * SW2; HWi – оценка за i-е домашнее задание - ранжируется от 0 до 10 баллов с минимальным шагом 0.5; SWj – оценка работы за j-й семестр на практических занятиях; эта экспертная оценка выставляется преподавателем и ранжируется от 0 до 10 с шагом 0.5; Гарантировано SWj >= 1, если студент посетил все практические занятия за семестр. Округлению до целого (по правилу математики) подлежат FinalGrade и S1, остальные оценки выставляются с точностью до одного 1 знака после запятой.