February 23–26, 2020

Building evolutionary and incremental architectures

Allen Holub (Holub Associates)
9:00am—5:00pm
Sunday, February 23—Monday, February 24
Location: Bryant

Participants should plan to attend both days of training course. Note: to attend training courses, you must be registered for a Platinum or Training pass; does not include access to tutorials on Monday.

Join Allen Holub for a hands-on exploration of how to architect systems that easily evolve incrementally over time as requirements emerge. You'll solve a real-world problem under Allen's guidance, learning everything you need to know to go from an idea to an evolutionary implementation architecture.

What you'll learn, and how you can apply it

By the end of this two-day training course, you'll understand:

  • How to build architectures that support constant change from business and disruptive technologies
  • How architecture aligns with company structure and processes
  • How to analyze business problems to discover architectural characteristics
  • How to define and refine effective user stories and extract architectural elements from them
  • How to develop a domain-focused architecture that stays coherent in the face of change

And you'll be able to:

  • Choose appropriate architectural patterns based on business requirements and evolvability
  • Create an architecture in incremental steps as you discover new requirements rather than as a single up-front process
  • Optimize that architecture so that it can evolve over time to accommodate changing requirements
  • Create and size high-quality user stories and build an architecture around these stories
  • Use mob programming, domain-driven design (DDD), event storming, design by coding

Who is this presentation for?

  • You're a developer, architect, product manager, or owner.

Level

Intermediate

Prerequisites:

  • A basic understanding of computer systems

Hardware and/or installation requirements:

  • A laptop with mobster installed (useful but not required—only one exercise requires a computer and will be completed as a team)

Outline

Characteristics of an Agile architecture

Conway’s law: How agility and architecture interact

Validating your architecture with fitness functions

Domain modeling

  • DDD basics: Bounded contexts, aggregates, entities
  • Agents (UI)

Working with stories

  • User goals
  • The system metaphor
  • Creating stories
  • Narrowing and splitting

Hands-on exercise: Problem statements and story development

Orchestrated (declarative) systems

Design by coding

  • TDD
  • BDD: Given, when, then
  • DbC: Demo
  • A quick introduction to mob programming

Hands-on exercise: Creating declarative APIs with DbC

Choreographed systems: Reactive architectures

Event storming

  • Demo
  • Hands-on exercise: Creating orchestrated or reactive systems

Adaptive architectural patterns

  • Structured monolith
  • Microkernel
  • Message based
  • Microservices

About your instructor

Photo of Allen Holub

Allen Holub is one of the country’s foremost software architects and Agile-transformation consultants. Allen speaks internationally about all things Agile and software architecture and provides in-house training and consulting in those areas. He’s also an expert-level programmer, specializing in Swift, Java, and Web 2.0 applications and microservices. Allen can build highly dynamic websites (along the lines of Gmail) from front to back: both the frontend code—JavaScript, JQuery, Angular, HTML5, and CSS3—that runs in the browser and the backend code—Java, PHP, MySQL, Ruby, Mongo, C++, ZeroMQ, and EC2—that runs either on your server or in the cloud. Allen is widely published. His works include 10 books, hundreds of articles in publications ranging from Dr. Dobb’s Journal to IBM DeveloperWorks, and video classes for Agilitry.com (Agility with Allen), Pluralsight (Swift in Depth, Picturing Architecture, Object-Oriented Design), O’Reilly (Design Patterns in the Real World), and Lynda/LinkedIn.

Twitter for allenholub

Conference registration

Get the Platinum pass or the Training pass to add this course to your package. Best Price ends Dec 6.

Leave a Comment or Question

Help us make this conference the best it can be for you. Have questions you'd like this speaker to address? Suggestions for issues that deserve extra attention? Feedback that you'd like to share with the speaker and other attendees?

Join the conversation here (requires login)

Contact us

confreg@oreilly.com

For conference registration information and customer service

partners@oreilly.com

For more information on community discounts and trade opportunities with O’Reilly conferences

Become a sponsor

For information on exhibiting or sponsoring a conference

pr@oreilly.com

For media/analyst press inquires