tech:dssd
Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| tech:dssd [2025/09/09 10:47] – created eugeneai | tech:dssd [2025/10/21 11:29] (current) – eugeneai | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Технологии разработки программного обеспечения ====== | ====== Технологии разработки программного обеспечения ====== | ||
| + | |||
| + | Вариант курса от ИГУ, кафедра ИТ: https:// | ||
| **DevOps-вариант курса** | **DevOps-вариант курса** | ||
| Line 5: | Line 7: | ||
| ===== Содержание дисциплины ===== | ===== Содержание дисциплины ===== | ||
| + | **Образовательная программа: | ||
| + | **Курс: | ||
| + | **Акцент: | ||
| + | === Тема 1. Современные тенденции разработки ИС. Введение в DevOps === | ||
| + | * Понятие ИС: от монолита к сервисам и микросервисной архитектуре. | ||
| + | * Эволюция подходов к разработке: | ||
| + | * Основные современные тенденции: | ||
| + | * Определение DevOps: культура, | ||
| + | * Факторы, | ||
| + | * Виды требований в DevOps-контексте: | ||
| + | * Показатели эффективности проекта (DORA Four Key Metrics): Deployment Frequency, Lead Time, MTTR, Change Failure Rate. | ||
| + | [[tech: | ||
| + | |||
| + | == Лабораторная 1 == | ||
| + | |||
| + | **Цель** - изучить/ | ||
| + | |||
| + | **Задача** - разработать простую программу при помощи цикла " | ||
| + | |||
| + | * На каждом шаге создавать коммит гит. | ||
| + | * Использовать Gitverse от Сбера Или Github. | ||
| + | * Программа мб старая, | ||
| + | * Можно использовать все инструенты порождения кода, документации, | ||
| + | * Коммит делать после реализации каждого теста и реализации тестируемой функциональности. Если забыли вдруг их разделить ничего страшного. | ||
| + | * В проекте (лабы) сделать папку doc, где на markdown пишите садержательную часть отчета | ||
| + | - требования к продукту, | ||
| + | - Добавить раздел " | ||
| + | |||
| + | === Тема 2. Жизненный цикл ПО в эпоху DevOps === | ||
| + | * Этапы жизненного цикла: от классического каскада к бесконечному циклу DevOps (Plan, Code, Build, Test, Release, Deploy, Operate, Monitor). | ||
| + | * Итеративная и инкрементальная модели как основа для Agile. | ||
| + | * Гибкие методологии (Agile, Scrum, Kanban) как культурный фундамент DevOps. | ||
| + | * Методология CI/CD (Continuous Integration / Continuous Delivery): принципы, | ||
| + | * Конвейер поставки (Pipeline) как центральная метафора и артефакт разработки. | ||
| + | |||
| + | === Тема 3. Планирование и управление проектами с учетом DevOps === | ||
| + | * Структура затрат в DevOps: инвестиции в автоматизацию (CAPEX) vs операционные расходы (OPEX). | ||
| + | * Управление сложностью: | ||
| + | * Метрики DevOps (DORA) и их использование для управления процессом. | ||
| + | * Модель оценки трудоемкости COCOMO II: как практики DevOps влияют на факторы масштаба. | ||
| + | * Автоматизация проектирования: | ||
| + | |||
| + | === Тема 4. Обеспечение качества и хранение данных в DevOps === | ||
| + | * Сдвиг качества влево (Shift-Left Testing): интеграция тестирования на ранние этапы ЖЦ. | ||
| + | * Автоматизированное тестирование: | ||
| + | * Системы отслеживания ошибок (Jira, GitLab Issues): интеграция с инструментами разработки. | ||
| + | * Quality Assurance vs Quality Engineering: | ||
| + | * Эффективное хранение и обработка данных в микросервисной архитектуре: | ||
| + | |||
| + | === Тема 5. Коллективная работа и контроль версий (как основа DevOps) === | ||
| + | * Системы контроля версий (Git): Everything as Code (код, конфиги, | ||
| + | * Модели ветвления: | ||
| + | * Интегрированные платформы (GitLab, GitHub): управление задачами, | ||
| + | * Системы совместной работы с документацией (Confluence, | ||
| + | * Средства общения и интеграции (Slack, Teams): оповещения о событиях в конвейере. | ||
| + | |||
| + | === Тема 6. Организация труда в DevOps-культуре === | ||
| + | * Типизация специалистов: | ||
| + | * Культура взаимной ответственности (You build it, you run it). | ||
| + | * Проблема организационных silos (изолятов) и переход к кросс-функциональным командам. | ||
| + | * Закон Конвея в DevOps: как архитектура системы отражает структуру коммуникации автоматизированных команд. | ||
| + | * Обзор организационных моделей (матричная, | ||
| + | |||
| + | === Тема 7. Управление качеством и стандарты в непрерывной поставке === | ||
| + | * Характеристики качества ПО: надежность (Reliability), | ||
| + | * Методики повышения качества: | ||
| + | * Главный закон контроля качества и его применение через автоматизацию. | ||
| + | * Стандарты: | ||
| + | |||
| + | === Тема 8. Документирование и сопровождение в автоматизированном процессе === | ||
| + | * Документирование как живой процесс: | ||
| + | * Автоматизация документирования: | ||
| + | * ЕСПД в условиях Agile/ | ||
| + | * Основные задачи сопровождения: | ||
| + | * Условия прекращения сопровождения: | ||
| + | |||
| + | === Тема 9. Реинжиниринг и модернизация в контексте DevOps === | ||
| + | * Реинжиниринг как основа для внедрения DevOps: модернизация legacy-систем для автоматизации. | ||
| + | * Стратегии модернизации: | ||
| + | * Инструменты для контейнеризации (Docker) и оркестрации (Kubernetes) как ключевые технологии для переноса legacy-приложений. | ||
| + | |||
| + | === Тема 10. Гибкие методологии и практики DevOps === | ||
| + | * Методология гибкой разработки (Agile) как культурная основа DevOps. | ||
| + | * Экстремальное программирование (XP): практики (TDD, рефакторинг, | ||
| + | * Обзор практик DevOps: | ||
| + | * **Continuous Integration (CI):** автоматическая сборка и тестирование. | ||
| + | * **Continuous Delivery (CD):** готовность к релизу в любой момент. | ||
| + | * **Infrastructure as Code (IaC):** управление инфраструктурой через код. | ||
| + | * **Мониторинг и обратная связь (Monitoring & Logging):** использование метрик для принятия решений. | ||
| + | * **Безопасность (DevSecOps): | ||
| ===== Лекция 1. Обзор дисциплины с точки зрения DevOps ===== | ===== Лекция 1. Обзор дисциплины с точки зрения DevOps ===== | ||
| + | |||
tech/dssd.1757386020.txt.gz · Last modified: by eugeneai
