Pragmatic Architecture

ted.neward@newardassociates.com | Blog: http://blogs.newardassociates.com | Github: tedneward | LinkedIn: tedneward

Objectives

So you wanna be an architect...

Architects: The Dark Side

An architect is someone who ...

Architects: The Dark Side

An architect is someone who ...

Objectives

High-level ruminations

Pragmatic approach

What is 'software architecture'?

A definition

What is 'software architecture'?

Views from "the street"

What is 'software architecture'?

ar·chi·tec·ture

"áarki tèkchər", noun

    building design: the art and science of designing and constructing buildings

    building style: a style or fashion of building, especially one that is typical of a period of history or of a particular place

    structure of computer system: the design, structure, and behavior of a computer system, microprocessor, or system program, including the characteristics of individual components and how they interact

What is 'software architecture'?

ChatGPT

What is 'software architecture'?

ChatGPT

What is 'software architecture'?

ChatGPT

What is 'software architecture'?

What do we expect of a "good" architecture?

What is 'software architecture'?

What do we expect of a "good" architecture?

What is 'software architecture'?

Make it easy for developers to make "right" decisions

What is 'software architecture'?

What is it?

Architecture is a set of answers to the questions developers will ask every day

Architecture is Strategy

Yes, the same thing that business types talk about

Strategy

"The core of strategy work is always the same: discovering the critical factors in a situation and designing a way of coordinating and focusing actions to deal with those factors. ... A good strategy honestly acknowledges the challenges being faced and provides an approach to overcoming them. ... bad strategy covers up its failure to guide by embracing the language of broad goals, ambition, vision, and values."

Strategy

In the business world, strategy is made up of:

Strategy

Strategy to architecture

Strategy

What makes up a good strategy/architecture?

Architecture: Simple Rules

"Simple Rules", by Donald Sull, Kathleen M. Eisenhardt

Simple Rules

What are "simple rules"?

Simple Rules

Simple rules are...

Simple Rules

Simple rules are...

Architecture as Simple Rules

An example

AaSR Example

Representational State Transfer (REST)

AaSR Example

Architecture of the World Wide Web

AaSR Example

Rules

AaSR Example

Rules

Is it really 'architect' we want?

(of the software kind, anyway)

Architects

This doesn't sound like somebody who draws up plans in a dark office, alone...

Perhaps...

... we need a new metaphor?

Architects

What if, instead of thinking of architecting software like architecting buildings...

What if we think of developing software like ...

... an orchestra?

And the architect is thus...

... a conductor?

Architects

"Why do we need a conductor, again?"

"Isn't the orchestra doing all the work?"

A conductor ...

Architects

Alternatively...

Sometimes the band is small enough ...

... you don't need somebody at the front waving a stick

... and that's OK, because conductor architect responsibilities get shared across the rest of the band, in an intuitive or explicit fashion

Architects

The architect's role can also be seen as a parallel to that of a movie or stage director

Summary

Wrapping up

Summary

What is architecture?

What is an architect?