Overview
This hands-on continuous integration training course enables participants to implement continuous integration techniques and practices to achieve better code quality better maintenance and speed to delivery. During this 3-day instructor-led course, participants will learn fundamental concepts, practical application and workflow integration skills necessary for successful CI implementation. The course is designed to teach effective CI skills for teams who utilize either open-source toolsets or proprietary technology stacks such as Microsoft. The course features Microsoft Visual Studio and Jenkins CI as testbeds for your own hands-on continuous integration lab practice.
What You'll Learn
- Set up and navigate a CI environment that enables automated testing & automated builds
- Execute releases in test environments prior to product delivery
- Identify the most efficient CI tools for quick release & reliable maintenance of products
- Integrate Continuous Integration methods & techniques into current workflow for a SCM environment
- Deliver value from continuous integration in your own organization
- Examine real world examples of continuous integration benefits
Curriculum
- Continuous integration
- Continuous deployment
- Continuous delivery
- Checking for updates
- Extracting code
- Integrating updates into a test environment
- Reviewing test results
- Integrating updates into the build
- Demo
- Make a change in CI environment
- Check-in update
- View code analysis report
- View test results
- Verify builds
- Reduce implementation effort
- Increase speed of resolution
- Improve quality & maintenance of each product release
- Increase speed of delivery
- High transparency
- Running tests in the real world
- Updating code with changing requirements
- Quiz
- Fundamentals of continuous integration
- Execution of continuous integration
- Testing results of continuous integration
- Production changes every 11.6 seconds at Amazon
- The Facebook release process
- Continuous delivery at Google
- The Software revolution behind LinkedIn’s gushing profits | Business | WIRED
- Deploying the Netflix API
- Tesla utilizing continuous upgrades
- How Etsy deploys more than 50 times a day
- How did each company in these reports utilize continuous integration?
- How CI was most likely implemented in each example?
- How would you apply CI to your own production environment?
- Distributed code repositories
- Choosing the right tools: Repository tools review
- Separating requirements and dependencies
- To use branches or not to use branches?
- Configuring the DHPC server
- Source commit check
- Starting with simple deployment scripts
- Real-time bug alerts
- Unit testing
- User interface testing
- API testing
- Regression testing
- Load testing
- Security testing
- Create a source code repository
- Build an automated test
- Check new code into repository
- Run a unit test on new code
- Check out an object to be modified
- Apply modifications n the database test environment
- Run tests to verify changes have not broken the build
- Check-in object for final authentication
- Task-based development
- Compare and sync
- Database versioning checks
- Upgrade scripts and parallel development
- Modify an object in a test environment
- Check-in modifications to the repository
- Run unit tests to check against changes
- Run final test for deployment
- Software configuration
- Automatic launch
- Test report generation
- Submit to testers
- Reliability, availability, maintainability – Why you need all three
- Criteria for ‘pass’ requirements
- Scope and scalability
- Consistent updating of software functionality
- Analytics and reporting
- CI environment, standard workflows and core tech architecture
- Software Configuration Management (SCM)
- Setting up Jenkins as a CI server
- Open source CI tools
- Build automation tools for CI
- Recommended learning resources
- Set up the Jenkins build server
- Run a shell script
- Archive the build result
- Run integration tests
- Run report on test results
Who should attend
The course is highly recommended for –
- Software developers
- Project managers
- Quality assurance professionals
- Product owners
- Business intelligence professionals
Prerequisites
There are no mandatory prerequisites for this course. However, completing the Fundamentals of DevOps course prior to taking up this course would be beneficial.