Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Observe the System: Two Sides of the Same Coin @ Test Master Meetup

Observe the System: Two Sides of the Same Coin @ Test Master Meetup

Observability is one of the buzzwords of the day. We have the 3 pillars, a plethora of tools, great books. We moved our monolithic apps that lived in the datacenter to distributed microservices in the cloud, with the promised land of cost savings and an Agile organisation. However, are we delivering more business value?

Today, we send metrics to the systems managed by the Operations Team and at the same time to the Business Intelligence systems. However, we have the will for our teams to have autonomy and ownership of the systems which they put into production. How can we merge the best of both worlds, giving autonomy to our development teams, have a reliable system and increase the business value delivered?

Join João on his journey, using collaboration techniques from the DDD community to discover the Domain Events that generated business value and how it is related to the technical components of the system. During his talk, he will address the challenges of bringing the two sides of the same coin together, creating a healthy environment among all parties.

João Rosa

June 18, 2019
Tweet

More Decks by João Rosa

Other Decks in Programming

Transcript

  1. Observe the System: Two Sides of the Same Coin Test

    Masters Series – Testing in Production
  2. 2 Strategic Software Delivery Consultant @ Xebia DDDer, EventStormer, Tech

    Enthusiast Food lover, you can find me in a beach reading a book Expat @ The Netherlands @joaoasrosa
  3. 9 Myself, with a confused look: Ok, how do you

    know the impact of the product with the users? @joaoasrosa
  4. 18 Myself, trying to get to the bottom of it:

    What are the benefits of the yellow hammer, in your landscape? @joaoasrosa
  5. The yellow hammer is the best! Or do you think

    that purple hammer is better because <insert reason>? @joaoasrosa
  6. 38 @joaoasrosa Bounded Context - Language boundaries - Specific model

    for the Problem Space - Isolate concepts (models) - Communicate over Domain Events From more check: http://domainlanguage.com/ddd/reference/
  7. 39 @joaoasrosa From Using domain analysis to model microservices -

    https://docs.microsoft.com/en-us/azure/architecture/microservices/model/domain-analysis
  8. 45 @joaoasrosa Pattern #1 implementation examples: Events in a queue

    Calls to an API endpoint Events generated by a batch process
  9. 51 @joaoasrosa Pattern #2 implementation example: Events tracing - Using

    OpenTracing API - https://opentracing.io/ - Crafted, CorrelationID
  10. 56 @joaoasrosa 1. Buying a ticket for a movie (via

    an mobile app) 2. The app reserves my seat for 10 minutes 3. I can only pay using iDeal 4. If I don’t pay within the 10 minute window the seats are released for other potential customer Scenario
  11. 57 @joaoasrosa What if I pay within the 10 minute

    window (let’s say 9:49) but in the meantime the seat was released (lag time between the payment acknowledgment)? Question
  12. 64 @joaoasrosa Pattern #5: Start your Dashboards from a Functional

    perspective Later move to the Technical ones (drill-down), which supports the Functional Dashboards