Course description

The seminar starts at 09.30 am and ends at 5 pm. Registration commences at 08.30 am.

(Dutch spoken)

An introduction to components and services

• Introduction
• Monoliths versus microservices
• Strengths and weaknesses of monolithic software
• A brief history of components and services

Introducing microservices

• Are we beyond the hype yet?
• A definition of microservices
• Characteristics of microservices
• Containers and scalability
• Polyglot persistence
• Promises of microservices
• Challenges in microservices
• How big or small are microservices?

Greenfield or brownfield?

• Presenting two real world cases
• Guiding principles from both cases
• A business process first approach
• Different levels of business processes
• An architecture first approach
• How to split up your existing code base?
• Brownfield migration to microservices

Evolutionary software architecture

• Where to start?
• Introducing design patterns
• Applications, workers and services
• Service consuming applications
• Service delivering components
• Dealing with communication and REST
• Authentication and tokens

Designing and building microservices

• Why modular design is key
• Guidelines for design microservices
• The Single Responsibility Principle (SRP)
• Introducing domain driven design
• Explaining bounded contexts
• Modeling micro-applications
• Wireframes
• Smart use cases
• Mapping bounded contexts around resources
• Working with HTTP verbs
• Creating a RESTful API for you services
• Explaining Postel’s law
• Introducing the resource model
Testing microservices

• An overview of test techniques for microservices
• Why manual testing isn’t efficient
• Unit testing
• Behavior driven design with examples
• Introducing service contracts
• QA (with SonarQube)
• Integration testing
• Acceptance testing
• When to test what in your deployment pipelines
Deployment of microservices

• Continuous integration
• Designing your deployment pipelines
• Moving towards continuous delivery
• Minimal viable products (MVP)
• Agile, Kanban and microservices
• Microservices and DevOps
• Do microservices change your organization?

Concluding

• Some final recommendations
• Do microservices solve all challenges your IT department has?
• How to proceed?