Episode 102: The Essence of Microservices (and Agile) with Scott Shaw

scottshawTony and Craig are at YOW! Conference and in the hallway ambush Scott Shaw, the Director of Technology (Australia) at ThoughtWorks and talk about the state of microservices and Agile:

  • Scott’s YOW! talk “Avoiding Speedbumps on the Road to Microservices
  • Microservices are just a different way to build applications that get away from monoliths
  • Beth Skurrie, Evan Bottcher, Jon Eaves case study at YOW! – “The Odyssey – From Monoliths to Microservices at realestate.com.au
  • Essentials for microservices include Domain Driven Design, security and identity and change management
  • Simon Brown talk at YOW! – “Agility and the Essence of Software Architecture
  • Cloud and infrastructure as code has changed the way we look at applications and have allowed microservices
  • The essence of Agile is the team taking ownership of the business success of whatever it is they are building and keeping that ownership over the longer term
  • Microservices take advantage of Conway’s Law – the teams closest to the systems should own them or change your structure to mimic the systems you want to look after
  • There should be no difference between maintenance and evolution – it is all one of the thing that goes towards the success of the business
  • Adrian Cockcroft defines microservices as “a service-oriented architecture composed of loosely coupled elements that have bounded contexts”
  • Microservices should be no bigger than a concept that fits in your head
  • Sam Newman book “Building Microservices
  • Agile approaches that are evolving include Docker and functional programming languages (especially Scala, Clojure and Go), the importance of craftsmanship and skills
  • Defending the Free Internet
  • ThoughtWorks Technology Radar
  • Microservices in a Nutshell by Martin Fowler and James Lewis

TheAgileRevolution-102 (28 minutes)

Advertisements

Episode 91: Coding The Architecture with Simon Brown

SimonBrownCraig and Tony talk to Simon Brown at the YOW! 2014 conference in Brisbane. SImon is the author of “Software Architecture for Developers”, creator of the C4 software architecture model and Structurizr. We tracked him down after his talk to talk about:

  • YOW! 2014 talk “Agility and the Essence of Software Architecture
  • Create a software guidebook as opposed to big upfront documentation
  • Tony is an old BA apparently… Explains a lot 🙂
  • If you can’t sketch out your architecture, you don’t understand it
  • C4 model was created after observations many archtecture drawings don’t make sense
  • Tony shows his age again by referencing Mr. Squiggle (video)
  • A tiny percentage of architects understand UML – do you teach them UML or teach them something simple?
  • Structurizr replaces drawing boxes in Visio or OmniGraffle, creates the C4 model from Java code and keeps it up to date, other implementations for C# have also been created
  • Suggest updating the diagrams at the end of every storycard
  • C4 starts at system context level, opens up to containers, zooms down to components inside containers and then down to the class level
  • Use the model to understand your microservices strategy versus monoliths (article by Rob Annett)
  • C4 is a drill down per system, does not have much to offer enterprise architects – can add an extra enterprise architecture layer if you wish
  • ArchiMate allows Enterprise Architects to model processes
  • We need Enterprise Architects but architects need to be involved in the day to day architecture including code (REA have a delivery engineering team that they spoke about at YOW!)
  • Roy Osherove’s Elastic Leadership – starting point is one architect but then get more people involved
  • Ask your team what an Architect does and you will probably get conflicting answers, it is a not well defined role
  • System Architect and Tech Lead are essentially the same thing

TheAgileRevolution-91 (28 minutes)