Skip to content

НИС "Методологии разработки ПО", ФКН ВШЭ, Старичков Н.Ю.

Notifications You must be signed in to change notification settings

demist/methodologies_hse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

613 Commits
 
 
 
 
 
 

Repository files navigation

year status progress

НИС "Методологии разработки ПО"

ФКН ВШЭ, 2025/2026

Рабочая ведомость по курсу (TBA)

План занятий

План теоретической части курса

✅ Введение

  • Общая идея курса
  • Информация о курсе

✅ Лекция 1

Общие понятия о методологиях разработки ПО

  • Что такое методология разработки ПО
    • Общее понятие
    • Основные элементы
  • Факторы, влияющие на выбор методологии
    • Внешние факторы
    • Внутренние факторы

✅ Лекция 2

Жизненный цикл проектирования, разработки и внедрения ПО

  • Этапы жизненного цикла проектирования, реализации и внедрения ПО
    • Формирование требований
    • Разработка концепции
    • Техническое задание
    • Эскизный проект
      • Понятие о MVP и примеры MVP
    • Технический проект
    • Рабочая документация
    • Поставка / ввод в действие
      • Варианты поставки и развертывания
    • Сопровождение

✅ Лекция 3

Базовые методологии разработки ПО (ч.1)

  • Каскадная модель
    • Общее описание
    • Хорошие примеры
    • Плохие примеры
  • V-модель
    • Общее описание
    • Хорошие примеры
    • Плохие примеры

✅ Лекция 4

Базовые методологии разработки ПО (ч.2)

  • Инкрементная модель
    • Общее описание
  • Итерационная модель
    • Общее описание
    • "Тонкие" примеры
    • Плохие примеры
    • Хорошие примеры

✅ Лекция 5

Базовые методологии разработки ПО (ч. 3)

  • Спиральная модель
    • Общее описание
    • Плохие примеры
    • Хорошие примеры
  • RAD-модель
    • Общее описание

✅ Лекция 6

Семейство гибких методологий

  • Общее понятие о семействе гибких методологий
  • Agile-манифест
    • Что означает и как использовать
    • Роль agile-манифеста в не-agile методологиях
  • SCRUM
    • Общая схема методологии
    • Плохой пример
    • Общие соображения, когда работает плохо
    • Хороший пример
    • Общие соображение, когда работает хорошо
  • KANBAN
    • Общая схема методологии
    • Плохой пример
    • Общие соображения, когда работает плохо
    • Хороший пример
    • Общие соображения, когда работает хорошо

✅ Лекция 7

CI/CD

  • Понятие о CI/CD/CD
  • Зачем это вообще нужно?
  • Как это устроено?
  • Роль CI/CD/CD в процессе разработки ПО
  • Пример "как это работает у нас"

✅ Лекция 8

Принципы проектирования ПО, ч.1

  • Что такое архитектура ПО?
  • Что такое проектирование ПО?
  • По каким критериям можно оценить архитектуру?
    • Критерии хорошей архитектуры
      • Эффективность
      • Гибкость
      • Расширяемость
      • Масштабируемость, тестируемость, возможность повторного использования, сопровождаемость
    • Критерии неудачной архитектуры
      • Жесткость
      • Хрупкость
      • Неподвижность
  • Принцип High Cohesion / Low Coupling

✅ Лекция 9

Принципы проектирования ПО, ч.2

  • Принципы SOLID
  • Закон Деметры
  • YAGNI
  • DRY / DIE
  • KISS

🔥 Лекция 10

Инструменты моделирования и проектирования - UML

  • Что такое UML?
  • Базовое понятие о нотации UML
  • Диаграмма вариантов использования
  • Диаграмма классов
  • Диаграмма размещения
  • Диаграмма последовательности
  • Диаграмма деятельности
  • Диаграмма состояний

🔥 Лекция 11

Антипаттерны

  • Понятие о паттернах и антипаттернах
  • Разные группы антипаттернов
    • Антипаттерны в ООП
    • Антипаттерны в кодировании
    • Методологические антипаттерны
    • Антипаттерны управления конфигурацией
    • Другие

Правила оценивания

Отчетные мероприятия

Научный доклад

30-минутный доклад на семинарской части курса, подготовленный студентом самостоятельно.

Основные требования к докладу:

  • Требуется подготовить презентацию
    • В презентации обязательны ссылки на источники
  • Доклад может содержать информацию по одному или нескольким пунктам (лучше всего) из списка ниже:
    • Обзор научной статьи / доклада на научной конференции на тему "методологии разработки ПО"
      • Нужно не просто пересказать статью / доклад, а провести его анализ: выделить сильные и слабые стороны, сомнительные тезисы и т.д.
    • Обзор публикации / доклада / выступления на конференции средней / крупной IT-компании с рассказом о том, как у них в компании устроены процессы разработки
      • Опять же, не просто пересказ, нужно провести анализ
      • В идеале рассматривать материалы из серии "как было" - "что сделали" - "как стало", и провести анализ, что и почему стало лучше
    • Обзор инструментов автоматизации процессов разработки / управления проектами
      • Опять же, важно провести анализ
      • Приоритет малоизвестным или сложным для освоения решениям (не нужно рассказывать про trello или рассказывать, как настроить простейший CI/CD в github actions)
        • Например, можно подготовить подробный доклад про возможности и настройку Jenkins
    • Обзор статей / докладов на тему IaaC и других современных трендов в организации процессов управления инфраструктурой
  • Презентацию + краткое описание доклада + ссылки на все источники нужно залить в этот файл README.md через pull-request

‼️ 🛑 ОБРАТИТЕ ВНИМАНИЕ: на НИС записано 35 человек. Слотов на доклады в расписании - 37. Этого хватает с запасом на всех. Возможно, на крайней неделе курса будут добавлены еще 3-5 слотов, но это не гарантируется. Если вы не запишетесь вовремя, слоты пройдут "впустую", а потом вам не хватит слота на доклад - то выступить уже не получится, можно будет только сдать материалы по докладу со штрафом в 40% оценки. Дополнительных слотов для "опоздавших" не предусмотрено.

Можно занимать слоты уже сейчас - вписывая свое ФИО. К дате доклада должно быть указано не только ФИО, но и тема доклада + загружены все материалы и добавлена ссылка на них..

Понедельный план-график

Неделя Даты Лекция Докладчик(и) Тема доклада Ссылка на материалы
Неделя №1 24.09 (1 пара) Знакомство + Введение + Общие понятия о методологиях разработки ПО нет докладов
Неделя №2 08.10 (2 пары) Жизненный цикл проектирования, разработки и внедрения ПО + Базовые методологии разработки ПО (ч.1) Докладов нет, слоты сгорели 1.Х 2.Х 3.Х
Неделя №3 22.10 (2 пары) Базовые методологии разработки ПО (ч.2) + Базовые методологии разработки ПО (ч. 3) Докладов нет, слоты сгорели 1.Х 2.Х 3.Х
Неделя №4 05.11 (2 пары) Семейство гибких методологий 1.Богданова Мария 2.Ибраков Магомед Нариманович 3.Ильясов Анвар Маратович 1. Platform Engineering изнутри и снаружи 2. Методологии в Tesla 3.Методологии Rockstar Games 1. Презентация, Материалы 2. Ссылка 3. Ссылка
Неделя №5 19.11 (2 пары) CI/CD 1.Урманова Алина Ибрагимовна 2.Ржавин Дмитрий Андреевич 3.Халин Иван 4.Рыжов.С.И 1.Особенности методологий разработки в Amazon. 2. Критический обзор «A Survey on Infrastructure-as-Code Solutions for Cloud Development» 3. Методологии OpenAI 4.AI-Driven Development: использование ИИ-агентов в разработке программного обеспечения 1.Преза 2. Презентация Доклад Статья Перевод статьи 3. тык 4. Презентация Материалы
Неделя №6 03.12 (2 пары) Принципы проектирования ПО, ч.1 1.Жилин Никита Олегович 2.Бусыгина Ксения Сергеевна 3.Пичурин Никита Андреевич 4.Куцко Михаил Васильевич 1. Как укротить хаос экспериментов в ML с помощью MLflow 2. Team Topologies: как осознанная структура команд определяет архитектуру и скорость разработки 3. AI-инфраструктура и MLOps-инструменты, используемые внутри компании Сбер 4. Как Гугл тестирует программное обеспечение 1. Материалы 2. Материалы 3. Гугл диск 4. materials
Неделя №7 21.01 (2 пары) Принципы проектирования ПО, ч.2 1.Кугаевский Илья Антонович 2.Кононова Вероника Валерьевна 3.Криницын Владимир 4.Иванов Илья 1. Особенности разработки ядра Linux 2.Критический обзор «Achieving Operational Excellence in Cloud Management» 3. Проблемы автоматизации CI/CD в Jenkins. 4. Использование Claude code в компании Anthropic 1. Гугл диск 2. Яндекс диск 3. Гугл диск 4. Гугл диск
Неделя №8 28.01 Инструменты моделирования и проектирования - UML 1.Морозов Андрей Алексеевич 2.Вакарин Максим Дмитриевич 3.Тараненко Константин Александрович 4.Х (слот сгорел) 1. Современные тренды laC. Анализ статьи Harinath Vaggu (2025) 2. Методологии разработки в Valve 3. Методологии Mojang 1. Гугл диск 2.Яндекс диск 3.Яндекс диск
Неделя №9 11.02 Инструменты моделирования и проектирования - UML (продолжение) + Антипаттерны 1.Попов Тихон 2.Х (слот сгорел) 3.Величко Сергей Сергеевич 4.Кручин Иван Анатольевич 1. Разработка через тестирование 3. Chaos Engineering 4.ИИ-агенты в ИТ 1. Яндекс Диск 3. Материалы 4.Гугл диск
Неделя №10 25.02 1.Польский Игорь Владимирович 2.Мусиков Тимофей Дмитриевич 3.Мукашев Тимур 4. Аванян Карен Сергеевич 2. Docker 3.GitLab 3.Яндекс диск
Неделя №11 11.03 1.Х 2.Жеребчиков Виталий Максимович 3.Х 4.Х
Итого 11 пар

Подготовленные, но не рассказанные доклады

Если вы не успели рассказать доклад, но при этом хотите заработать какие-то баллы за него - вы можете подготовить презентацию (подробную) для выбранной вами темы и выложить ее в список ниже.

Если доклад подготовлен, но не рассказан, то вы получите оценку за него со штрафом в 40% (т.е. оценка за доклад будет умножена на 0.6)

В формате ФИО - Тема - Ссылка на материалы

Отчетное эссе

3-4 страничное эссе с обзором докладов, обсуждавшихся на семинарской части

‼️ Дедлайн TBA (~ за пару недель до конца 3 модуля)

Готовое эссе присылайте на почту nikita.starichkov@gmail.com, обязательно укажите тему письма "Отчетное эссе Методологии разработки", а в теле письма укажите свое ФИО и номер группы.

Планируется, что эссе будут проверены к устному опросу

Устный опрос

На знание базовых методологий разработки, их сильных и слабых сторон

Темы устного опроса - лекции №3, №4, №5, №6 (Базовые методологии разработки ПО (ч.1, ч.2) + Семейство гибких методологий)

‼️ Устный опрос пройдет TBA (~ за неделю до конца 3 модуля)

Организационные моменты по устному опросу будут опубликованы позже

Формула оценки

Итоговая оценка = Математическое округление (0.4 * Научный доклад + 0.3 * Отчетное эссе + 0.3 * Устный опрос)

Сроки выставления оценок:

  • Оценка за доклады - ориентировочно XX
  • Оценка за эссе - ориентировочно XX
  • Оценка за устный опрос - XX
  • Итоговая оценка за курс: XX (оптимистично), XX (пессимистично)

About

НИС "Методологии разработки ПО", ФКН ВШЭ, Старичков Н.Ю.

Topics

Resources

Stars

Watchers

Forks

Contributors 94