نام دوره: کارگاه جامع مهارت های دوآپس با استفاده از Azure DevOps
نام انگلیسی دوره: DevOps in action using Azure DevOps Server (aka. TFS)
مدت زمان دوره: 48 ساعت
پیش نیاز: 3 سال سابقه در توسعه یا پشتیبانی نرم افزار های مبتنی بر .Net
سرفصل ها:
Module 1: DevOps & Application Lifecycle Management Introduction
- DevOps story
- What is ALM?
- What is DevOps?
- DevOps Values & Benefits
- DevOps Principles
- DevOps Methodologies
- DevOps Practices
- DevOps Tools
Module 2: Microsoft Tools & Platforms for DevOps & ALM
- Installing “Azure DevOps Server” (aka. “Team Foundation Server”)
- Installing Code Search feature
- Configuring an SMTP for “Azure DevOps Server”
- Configuring and scheduling Azure DevOps Server backup
Module 3: Source Control Skills (Git & TFVC)
- Why use version control?
- Types of version controls (Centralized vs Distributed)
- Popular version controls (Git, TFVC, Mercurial, BitKeeper)
- Azure DevOps version controls
- TFVC architecture
- Using TFVC in Visual Studio
- TFVC Branching & Merging strategies
- Git architecture
- Git command line interface (clone, commit, push, fetch, pull, branch)
- Using Git in Visual Studio and VSCode
- Git Branching & Merging strategies
- Code review with Pull Request
- Migrating from TFVC to Git
Module 4: Planning & Tracking
- Kanban & Scrum introduction
- TFS Process Templates
- Kanban with TFS
- Scrum with TFS
- TFS Dashboards (Visualizing project status)
- Lead Time & Cycle Time with TFS
Module 5: Build, Deployment & Software Configuration Management
- Build & Deployment introduction
- Build systems
- Build scripts & proj files
- Build configuration
- Publishing web applications
- Software Configuration Management (SCM)
Module 6: Continuous Integration / Build Automation
- Why Automated Builds?
- What is Continuous Integration?
- Builds vs. Release pipelines
- Deploy more often
- Creating an automated build in TFS
- Customize the build process
- TFS Build & Release Agent
- TFS extensions
Module 7: Continuous Delivery & Deployment / Release & Deployment Automation
- What is Release Management?
- Separates “Build” from “Deploy”
- Deploy to environments
- Approvals, Security, Traceability
- Rollback and Abandon a Failed Release
- Deploying Console application
- Deploying Windows Service
- Deploying ASP.NET application
- Deploying ASP.NET Core application
Module 8: Database DevOps – Sql Server
- Database Life-cycle Management Introduction
- DevOps and DLM Automation?
- Database Version Control
- Database Deployment in DevOps
- Database deployment options comparison
- What should we do with Lookup data?
Module 9: Test tools of Azure DevOps Server
- QA / Manual Testing in DevOps world
- Basics of Software Testing
- Test Case Management in TFS
- QA Testing & Defect Tracking
- Exploratory testing with TFS
- Basics of Automating Tests with Selenium
- Run Selenium tests in TFS
Module 10: Application & Package Management Automation
- Why package management?
- Types of package management tools
- Using NuGet repository in TFS
- Managing applications by Windows Package Management
- Setup & configure the Chocolatey package manager