Course intended for:

  1. Programmers, team leaders and architects, who produce software in Java language in their everyday work.

Course objective:

The training provides a comprehensive discussion of the concept of Continuous Integration (CI) and Continuous Delivery (CD), using the example of a Jenkins server. The participants, on the one hand, get familiar with the key concept of software production; on the other hand, they acquire the practical skills of installation, configuration and use of the Jenkins server. Thanks to the training, the participants will be able to identify repeatable tasks during the software production process and to automate these tasks to be able to focus on the core of their work in a creative manner.

Course strengths:

After the training, the participants will have the following skills:

  1. understanding of the concept of Continuous Integration and Continuous Delivery,

  2. ability to eliminate the painstaking process of integration of work of many teams at the end of the project and the so-called integration hell

  3. install and configure the Jenkins server,

  4. configure automatic application-building tasks,

  5. configure automatic component testing,

  6. configure automatic integration,

  7. implement the CI/CD concept in their company.

Requirements:

The training participants are expected to know Java language.

The ability to use such tools as git, SVN, Maven, Selenium, JMeter and Soap UI will be an additional advantage.

Course parameters:

2*8h in the following proportion: 80% workshops, discussions; 20% lectures.

Course curriculum

  1. Project risks.

    1. Low quality of source code.

    2. Code not ready for implementation

    3. Late error detection

    4. Merging of code changes by several teams.

  2. Introduction to CI / CD.

    1. Continuous building.

    2. Continuous testing.

    3. Continuous inspecting.

    4. Continuous implementing.

  3. Jenkins.

    1. Installation and configuration

    2. Continuous building

      1. Task configuration.

      2. Plugins.

      3. Integration with Maven.

      4. Integration with git / SVN.

      5. Finished build information.

      6. HTML reports.

      7. Remote task requests via Jenkins API.

      8. Integration with Nexus.

  4. Continuous testing.

    1. Integration tests, e.g. using Jetta.

    2. Acceptance tests, e.g. Fitnesse.

    3. Tests using a browser, e.g. Selenium.

    4. Performance tests, e.g. JMeter.

    5. Web Service tests, e.g. SoapUI.

  5. Continuous inspecting

    1. Checking of code coverage with tests.

    2. PMD rules.

    3. Detection and presentation of errors using FindBugs.

    4. Integration with Sonar.

  6. Continuous implementations

    1. Continuous implementations.

    2. Implementation policy.

    3. Versioning.

    4. Release plugin.

  7. Administration.

  8. Other CI servers.

  9. How to implement CI/CD in your company?

Any questions?

* Required.


Contact
Phone +48 22 2035600
Fax +48 22 2035601
Email