Back

Speaker "Paulo Merson" Details Back

 

Topic

Microservices; Architecture Documentation; Architecture Enforcement.

Abstract

Title
==========
Essential Microservice Design
5-hour workshop

Abstract
==========
In this workshop, we will cover essential knowledge to create a successful microservice architecture. More specifically, we'll discuss the pros and cons of microservices (beyond the hype) and then look at several design patterns and strategies for microservices. These patterns and design strategies include: Event-Driven Architecture (EDA), asynchronous messaging patterns, API gateway, and CQRS. We'll also cover strategies to deal with database transactions and improve service autonomy--modeling services using DDD, Database per Microservice pattern, Service Data Replication pattern ("cache"), and compensation.

Target audience
===============
This tutorial will be of interest to developers who works with REST-based solutions, public APIs, corporate SOA services, and distributed systems in general.
The prerequisites are: basic understanding of http-based communication.




Title
==========
How to Document the Architecture of Your Application Using UML and More
3-hour workshop

Abstract
==========
Have you ever been confused by an arrow in a box-and-line design diagram? Do you use UML in your software architecture? Have you ever wondered where is the line between architecture and detailed design? If your answer is yes to any of these questions, this workshop has practical and valuable information for you. The goal is to show you what information about an architecture should be captured, so that others can successfully use it, maintain it, and build a system from it. Important takeaways from this talk include: architecture consists of multiple views; how can we use UML in each view and when other notations work better; what views can we use to evaluate performance, availability, modifiability and other qualities; how to complement structural diagrams with sequence diagrams, statecharts and other behavior diagrams; how to document interfaces and APIs; guidelines and templates to make your architecture documentation more effective.

Target audience
===============
This tutorial is primarily targeted at practitioners that produce or consume software architecture documentation. The prerequisites are: intermediate level of knowledge/experience in software development in general, familiarity with basic UML.



Title
==========
Ultimate Architecture Enforcement - Write Your Own Rules and Enforce Them Continuously
40-minute technical session

Abstract
==========
The software architecture discussed and carefully created is often not entirely followed in the implementation. In this talk we'll examine the factors that lead to this disconnect between the architecture and the code. We'll learn that consequences of this problem go beyond maintainability issues. But most important, we'll look at an easy to use, automated solution to improve architecture conformance. This solution has been successfully applied in a mid-size organization. It uses free open source tools and also helps to raise architecture knowledge across the development team.

Target audience
===============
This talk is particularly important to software architects, but is of interest to software developers in general. No pre-requisite knowledge is required other than basic understanding of object-oriented programming.



TITLE
==========
Microservices Beyond the Hype
40-minute technical talk

ABSTRACT
==========
No doubt microservices are important, but it seems all the hype around them come with inflated expectations. Many consultants, authors, and vendors who provide services or products related to SOA have rebranded their material to mention microservices. But what is a microservice from a software architectutre perspective? What do you gain and what do you loose with microservices as compared with the monolithic model? (Yes, there are disadvantages!)
In this talk we'll try to answer these questions and discuss what important design strategies can pave the way for microservices that have good autonomy, modifiability, scalability, and resiliency.


Target audience
===============
Developers of Internet-based or SOA-based distributed systems. No pre-requisite knowledge is required other than basic understanding of http communication.


 

Profile

Paulo Merson has been programming in the small and programming in the large for over 25 years. Paulo is a software architect at the Brazilian Federal Court of Accounts. He is a Visiting Scientist with the Software Engineering Institute (SEI) and is also a certified instructor for SOASchool and a faculty member of the master program in Applied Computing at University of Brasilia. Paulo often delivers professional training to software developers in the US, Latin America, and Europe. His speaking experience also includes tutorials at JavaOne, SPLASH/OOPSLA, SD Best Practices, SATURN Conference, Dr. Dobb’s Architecture & Design World, The SOA and Cloud Symposium, lectures to graduate students in different universities, and invited talks at different companies. He is co-author of Documenting Software Architectures: Views and Beyond, 2nd edition. Paulo holds a BSc in Computer Science from University of Brasilia, and a Master of Software Engineering from Carnegie Mellon.