Logo ČVUT
CZECH TECHNICAL UNIVERSITY IN PRAGUE
STUDY PLANS
2018/2019

Test driven architecture

Login to KOS for course enrollment Display time-table
Code Completion Credits Range Language
BI-TDA KZ 4 2P+1C Czech
Lecturer:
Marek Hakala (guarantor)
Tutor:
Marek Hakala (guarantor)
Supervisor:
Department of Software Engineering
Synopsis:

The course is focused on practical examples of how to develop, test, and deploy software with tools like GitLab, Docker, Kubernetes, and more that are well known in the DevOps world. This course has a strong connection on courses like BI(E)-SI1 and BI(E)-SI2. The main goal of this course is to learn by examples that occur in the semester project.

Requirements:

The prerequisite is basic knowledge of information system architecture.

Syllabus of lectures:

1. IT Architecture Overview

2. Paradigms of IT Integration like P2P, SOA, Microservices, and Serverless

3. The familiar paradigms of software testing like TDD, BDD, ATDD, and integration testing

4. Application deployment with Ansible, Puppet, and Chef tools

5. DevOps approach to containers provisioning and orchestration

6. Docker overview with a focus on testing

7. Introduction into orchestration with platforms like Kubernetes and Openshift

8. How to do testing of back-end API applications with Mocha.JS and Chai.JS frameworks?

9. Continuous Integrations and Continuous Delivery systems

10. Overview of platforms for CI and CD: Gitlab CI, Travis CI, Jenkins

11. What are testing pipelines? Project pipeline, CI pipeline, and Deployment pipeline

12. Blue/Green deployment, Canary deployment, and A/B testing with Openshift platform

Syllabus of tutorials:

1.Introduction into the semester project

2.Office hours

3.Office hours

4.First presentation

5.Office hours

6.Final presentation

Study Objective:
Study materials:

[1] MARTIN FOWLER, 2002, Patterns of Enterprise Application Architecture 1st Edition, 560 pages, Addison-Wesley Professional, ISBN 978-0321127426

[2] MATTHEW FULLER, 2016, AWS Lambda: A Guide to Serverless Microservices, 118 pages

[3] RENE MOSER, LORIN HOCHSTEIN, 2017, Ansible: Up and Running: Automating Configuration Management and Deployment the Easy Way 2nd Edition, 430 pages, O'Reilly Media, ISBN 978-1491979808

[4] GENE KIM, PATRICK DEBOLS, JOHN WILLIS, JEZ HUMBLE, JOHN ALLSPAW, 2016, The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations, 480 pages, IT Revolution Press, ISBN 978-1942788003

[5] JO RHETT, 2016, Learning Puppet 4: A Guide to Configuration Management and Automation 1st Edition, 594 pages, O'Reilly Media, ISBN 978-1491907665

[6] KARL MATTHIAS, SEAN P. KANE, 2015 Docker: Up & Running: Shipping Reliable Containers in Production 1st Edition, 230 pages, O'Reilly Media, ISBN 978-1491917572

[7] NIGEL POULTON, 2017, The Kubernetes Book, 145 pages, Independently published, ISBN 978-1521823637

[8] STEFANO PICOZZI, MIKE HEPBURN, NOEL OCONNOR, 2017, DevOps with OpenShift: Cloud Deployments Made Easy 1st Edition, 152 pages, O'Reilly Media, ISBN 978-1491975961

[9] JEAN MARCEL BELMONT, 2018, Hands-On Continuous Integration and Delivery: Build and release quality software at scale with Jenkins, Travis CI, and CircleCI, 416 pages, Packt Publishing, ISBN 978-1789130485

Note:
Time-table for winter semester 2018/2019:
Time-table is not available yet
Time-table for summer semester 2018/2019:
Time-table is not available yet
The course is a part of the following study plans:
Data valid to 2019-05-27
For updated information see http://bilakniha.cvut.cz/en/predmet5712406.html