Методические материалы
Management
2021-05-22
- Программа лекций
- Материалы
- Литература
- Утилиты
- Полезно посмотреть
- Полезно почитать
- График работ на семинарах
Лекция по субботам в 14:30: https://meet.google.com/hog-ybdm-sxi
Программа лекций¶
- Часть 1я. Лекции 1-3
- Введение
- Анализ требований
- ОО парадигма программирования
- Классы, пакеты. Представление в UML
- Презентации
- Часть 2я. Лекции 4-8
- ОО Анализ. Аналитическая модель
- Переход от анализа к дизайну
- Принципы ОО дизайна
- Презентации
- Часть 3я. Лекции 9-14
- Шаблоны проектирования
- Архитектурные шаблоны
- Rational Unified Process
- Документирование бизнес-процессов на UML
- Use-case 2.0
- Анти-шаблоны проектирования
- Презентации
Материалы¶
- Пример UML модели
- Шаблон документа Техническое описание проекта
Литература¶
- Основная литература
- Г. Буч «Объектно-ориентированный анализ и проектирование с примерами приложений на C++»
- Г. Буч, Дж. Рамбо, А. Якобсон. «Введение в UML от создателей языка»
- Э. Гамма, Р. Хелм, Р. Джонсон, Дж. Влиссидес. "Приемы объектно-ориентированного проектирования. Паттерны проектирования"
- Роберт С. Мартин, «Чистый код. Создание, анализ и рефакторинг»
- Роберт С. Мартин, «Чистая архитектура. Искусство разработки программного обеспечения»
- Дополнительная литература
- Роберт С. Мартин, «Быстрая разработка программ: принципы, примеры, практика»
- Мухортов В.В., Рылов В.Ю. «Объектно-ориентированное программирование, анализ и дизайн. Методическое пособие.»
- Коберн А. «Современные методы описания функциональных требований к системам»
(эту книгу на английском в допечатной версии можно найти в свободном доступе под названием "Writing effective use cases") - Ivar Jacobson, Ian Spence, Kurt Bittner USE-CASE 2.0 The Guide to Succeeding with Use Cases
- OMG Unified Modeling Language
- Sys ML - Systems Modeling Language
- BPMN - Business Process Model and Notation
Утилиты¶
Полезно посмотреть¶
- Use-Case 2.0 и User Story, доклад на IT Nights 2019, Константин Валеев, Ростелеком Информационные Технологии
- Clean Code - Uncle Bob (Robert C. Martin) / Lesson 1
- Essence and SAFe - Pieces of the Puzzle?, Ivar Jacobson International meetup, July 13, 2023
- DEV, OPS И БЕЗОПАСНОСТЬ, Олег Чирухин
Полезно почитать¶
- Cohesion и Coupling: отличия (нужно учесть что это перевод, в первом абзаце ошибка: cohesion переведено как сцепление, а coupling как связность. должно быть ровно наоборот.)
- Protected Variation: The Importance of Being Closed
- Open Unified Process
- User Stories vs. Use Cases
- Iterative development is not unplanned development
- Behavior driven development - интересная попытка решить проблему несоответствия кода и требований
- The Cost of Poor Software Quality in the US: A 2020 Report
- Java Enums - how to use them smarter
График работ на семинарах¶
- Этап 0: План: 18.09 Дедлайн: 25.09 - все студенты должны быть распределены по проектам, для каждого проекта в репозитории имеется файл Технического описания проекта с заполненой секцией 2 - Vision проекта в терминах проблем предметной области.
- Этап 1: Use-case model. План: 09.10 Дедлайн: 16.10 - файл модели в репозитории содержит модель 1.Use-case model, в документе Технического описания проекта заполнена секция 3
- Этап 2: Analysis model. План: 06.11 Дедлайн: 13.11 - файл модели в репозитории содержит модель 2.Analysis model, в документе Технического описания проекта уточнена секция 3
- Этап 3: Design model. План: 27.11 Дедлайн: 01.12 - файл модели в репозитории содержит модель 3.Design model, в документе Технического описания проекта заполнены секции 4,5
- Этап 4: Implementation. План: 25.12 Дедлайн: 31.12 - в репозитории имеются компилируемые и работающие исходники, файл модели приведен в соответствие с реализацией, в документе Технического описания проекта сделаны необходимые изменения, заполнена секция 6
- На всех этапах: При любом существенном изменении документа Технического описания проекта в нем заполняется Лист регистрации изменений.
NB-2: Проекты выполняются группами по 2 человека. В исключительных случаях, к каковым можно отнести нечетное количество студентов в группе,
и только с разрешения преподавателя возможно выполнение проекта одним студентом.
NB-3: В процессе работы над проектом ВСЕ артефакты проектной деятельности, за исключением бинарного кода (исходные тексты, сборочные скрипты, модели, документация) должны сохраняться в Gitlab репозитории https://gitlab.ccfit.nsu.ru/.
Приемка заданий преподавателем осуществляется только после успешного checkout соответствующего проекта из репозитория на компьютер преподавателя и последующей успешной сборки проекта.