Благодарим ви, че изпратихте вашето запитване! Един от членовете на нашия екип ще се свърже с вас скоро.
Благодарим ви, че направихте своята резервация! Един от членовете на нашия екип ще се свърже с вас скоро.
План на курса
Основи на агилното мислене
- Агилният манифест и неговата актуалност извън софтуерното разработване
- Сравняване на агилните подходи с традиционните водопадни и планиращи модели
- Роли, събития и артефакти на Scrum, съпоставени с академичните цикли на проекти
- Kanban и управление на потоците за изследователски и преподавателски екипи
- Избор на агилни хибриди, подходящи за инженерни и дизайнерски среди
Агилно планиране и сътрудничество
- Писане на потребителски истории и дефиниране на критерии за приемане за инженерни проблеми
- Техники за приоритизиране на беклога: MoSCoW, стойност спрямо усилие, подреждане, водено от риска
- Планиране на спринтове и оценка с екипи, различни от софтуерни
- Ретроспективи и непрекъснато подобряване в академичната среда
- Инструменти и дъски за сътрудничество за многостранни участници
Въведение в културата на DevOps
- Дефиниране на DevOps: преодоляване на силосите между разработчици и операционен персонал
- Моделът CALMS: Култура, Автоматизация, Лън (Lean), Мяране, Споделено
- DevOps в изследователски лаборатории, екипи по гражданско инженерство и архитектурни студия
- Изграждане на култура без обвинения и обратна връзка в образователни институции
- Етични, сигурностни и регулаторни съображения при внедряването на DevOps в академичната среда
Контрол на версиите и съвместното управление на кода
- Основи на Git за възпроизводимо инженерно и дизайнерско проектиране
- Стратегии за ветвене: основна ветка, функционални ветки и опростен GitFlow
- Pull requests, съседски преглед и собственост върху кода в преподавателски екипи
- Управление на не-кодови активи: CAD файлове, BIM модели, симулационни данни
- Организиране на хранилища за учебни материали и студентски проекти
Непрекъсната интеграция и автоматизация на изграждането
- Концепции за CI и тяхното приложение за компилирани и скрипт-базираны инженерни инструменти
- Настройване на автоматизирани изграждания за софтуер, симулации и документация
- Етапи на пайплайн: компилиране, опаковане, линтиране и предварителни проверки
- Общ преглед на популярни платформи за CI: GitHub Actions, GitLab CI, Jenkins
- Обработка на големи артефакти, кеширане на зависимости и паралелно изпълнение
Качество на софтуера и статичен анализ
- Дефиниране на качеството на софтуера: поддържаемост, надеждност, usability, ефективност
- Метрики на кода: цикломатична сложност, свръзка, сплоченост и дублиране
- Инструменти за статичен анализ за Python, Java, C++ и често използвани инженерни скриптове
- Документация като качество: docstrings, стандарти за README и живи документи
- Интегриране на контролни точки за качество в CI пайплайните, без да се блокира напредъкът на студентите
Стратегии за тестване и дизайн на тестове
- Пирамидата на тестването: модулно, интеграционно, системно и приемане
- Писане на модулни тестове за инженерни изчисления, симулации и помощни програми
- Основи на TDD (разработка, водена от тестове) и BDD (разработка, водена от поведение)
- Мокване на външни системи: сензори, API, решатели на крайни елементи
- Структуриране на тестови комплекти за многостранни проектни екипи
Автоматизация на тестването и непрекъснато тестване
- Автоматизиране на изпълнението на тестове в пайплайни на CI/CD
- Отчети за тестове, прагове за покритие и управление на нестабилни тестове
- Тестване, водено от свойства, и фъзинг за инженерни алгоритми
- Стратегии за регресионно тестване при променящи се студентски задачи
- Тестване на производителност и натоварване за симулационни и рендиращи задачи
Концепции за непрекъсната доставка и разгръщане
- Основи на CD: доставка спрямо разгръщане, среди и промоция
- Патерни за разгръщане: синьо-зелено, кано и превключватели за функции
- Прилагане на принципите на CD за публикуване на изследователски артефакти, учебни сайтове и приложения
- Основи на контейнерите с Docker за възпроизводими инженерни среди
- Въведение в Infrastructure as Code: управление на лаборатории и облачни настройки декларативно
Наблюдаемост, мониторинг и обратна връзка
- Логване, метрики и проследяване за академичен софтуер и симулации
- Настройване на лек мониторинг за студентски проекти и изследователски инструменти
- Използване на данни от обратната връзка за итерации върху учебни материали и лабораторни задачи
- Таблици и известявания, подходящи за образователния контекст
- Проверка след разгръщане и процедури за възстановяване
Най-добри практики за сигурност и качество
- Основи на сигурното програмиране: валидиране на входа, автентикация и управление на тайни
- Сканиране на зависимости и управление на уязвимости в стекове с отворен код
- Спазване на лицензите за софтуер, използван в преподаването и публикациите
- Съображения за поверителност на данните при работа със студентски и изследователски данни
- Изграждане на култура, чувствителна към сигурността, в инженерни и дизайнерски програми
Преобразуване на практиките в учебни модули
- Дизайн на агилни проектни задания за студенти по системно инженерство, гражданско инженерство, дизайн и архитектура
- Създаване на рубрики, които оценяват както качеството на процеса, така и на продукта
- Настройване на хранилища с шаблони с предварително конфигуриран CI за използване от студенти
- Стъпаловидно внедряване на концепции на DevOps през семестъра
- Оценяване на студентските екипи чрез реални метрики за качество и автоматизация
Избор на инструментариум и академични ограничения
- Оценка на безплатни и инструменти с отворен код за департаменти, чувствителни към бюджета
- Интеграция с съществуващи LMS, файлови хранилища и лабораторна инфраструктура
- Управление на техническия дълг в дълготрайни изследователски кодови бази
- Обучение на студенти и преподаватели с различни технически нива
- Поддържане на устойчивост, когато ключови участници завършат или сменят позиции
Изисквания
- Основни познания за концепциите на софтуерното разработване
- Познанство с общите инженерни или дизайнерски работни процеси
- Опит в използването на компютри за академични или проектни задачи
Целева аудитория
- Професори и лектори от програмите по системно инженерство, гражданско инженерство, дизайн и архитектура
- Академичен персонал, търсещ начини за модернизация на преподаването си чрез практики, актуални за индустрията
- Водещи изследователи и координатори на лаборатории, интегриращи технологии в учебната програма
42 Часове
Отзиви от потребители (2)
Крейг беше изключително ангажиран с обучението, винаги осигурявайки, че объртаме внимание, адаптираше примерите към нашата дневна дейност и винаги даваше отговор, когато му зададем въпрос, дори ако информацията не беше включена в презентацията.
Ecaterina Ioana Nicoale - BOOKING HOLDINGS ROMANIA SRL
Курс - DevOps Foundation®
Машинен превод
Висок ниво на ангажираност и знания на треньора
Jacek - Softsystem
Курс - DevOps Engineering Foundation (DOEF)®
Машинен превод