Baruco 2012: Micro-Service Architecture, by Fred George

A fascinating presentation from Barcelona Ruby Conference. Fred George talks through the history and examples of his thinking about system architectures composed of micro services. I found this particularly interesting as it has so many resonances with systems I have designed and worked on, even addressing some of the tricky temporal issues which Fred has …

Continue reading ‘Baruco 2012: Micro-Service Architecture, by Fred George’ »

REST and versioning, a more concrete example.

There’s an interesting discussion going on at The Wisdom of Ganesh in which Ganesh Prasad and “Integral ):( Reporting” (presumably the “JJ Dubray” mentioned in the article) are trying to work out some issues around versioning, REST and SOAP. This post is also referenced and commented on at infoQ. In the 14th comment to the …

Continue reading ‘REST and versioning, a more concrete example.’ »

Chickens and eggs, with a slice

It’s a common software development situation. In front of you is a problem which seems to require a large solution. It has several parts which may be deployed separately, or may just need to be swapped out or independently managed. It has infrastructure bits and business-specific bits, servers, services and clients. Now imagine that you …

Continue reading ‘Chickens and eggs, with a slice’ »

Does it make sense to build your own workflow engine?

A “workflow engine” is becoming the new must-have for enterprise system development. In days gone by it might have been an automatic choice to go for an expert system, Enterprise Service Bus, messaging infrastructure or big-ticket database, but those now seem a little bit passé. There are several commercial workflow engines available, and a whole …

Continue reading ‘Does it make sense to build your own workflow engine?’ »

Why aren’t software architects held accountable?

An interesting question from Simon Brown, and some interesting responses. Why aren’t software architects held accountable? – Coding the Architecture. Personally I don’t believe in the idea of an architect contributing during only part of a project. If architecture is important (and on some work it is obviously not) then whoever is responsible for architecture …

Continue reading ‘Why aren’t software architects held accountable?’ »

What Is a Service?

Sometimes in software development it seems that everything is turning into a “service”. For diagram-loving architects, decribing everything in terms of services is a great way to avoid getting involved in fiddly implementation detail. The trouble with this approach is that hiding everything behind services can lead to thoroughly de-optimised systems. Greater hardware needs, greater …

Continue reading ‘What Is a Service?’ »

YAGNI: Some thoughts

YAGNI – it’s a neat term for a valuable technique. Ignoring an unknown future to concentrate on a known present. That does not mean that it’s application is obvious, though. I often find myself in “discussions” with architects and designers who recoil at the idea of building something specific to one customer or situation, when …

Continue reading ‘YAGNI: Some thoughts’ »

Tactics, Strategy and SOA in the cloud – conflicting views

I’m in two minds about Service-Oriented-Architecture (SOA). On the one hand it seems obvious that future systems will need to inter-operate increasingly in order to gain business benefits without requiring complete software development projects. On the other hand, I am distinctly under-impressed by the current approaches to SOA, and even by the emphasis on services …

Continue reading ‘Tactics, Strategy and SOA in the cloud – conflicting views’ »

The REST Dialogues

When I first encountered Duncan Cragg’s “REST dialogues” I was not sure how they would develop. As I have read more, I have become progressively more impressed. Cragg uses the style of a Socratic dialogue with an imaginary “eBay architect” to teach about the nature and use of REST techniques as an alternative to more …

Continue reading ‘The REST Dialogues’ »

How does Architecture fit with TDD

It’s a common conundrum once a team embraces test-driven development (TDD). What becomes of the role of architect? Some suggestions include moving the role of the architect even higher than in a typical waterfall or “over the wall” process. Sarah Taraporewalla’s Technical Ramblings » How does Architecture fit with TDD My take on this is …

Continue reading ‘How does Architecture fit with TDD’ »

Choose Feature Teams over Component Teams for Agility

This article certainly echoes some things which I have observed. It’s hard to gain the full power of an agile approach, if the agile teams don’t have the ability to address issues across the whole solution. However tempting it may seem to solve the problem of team size by splitting teams across architectural boundaries, this …

Continue reading ‘Choose Feature Teams over Component Teams for Agility’ »

Loose Coupling in SOA Defined

One of the key tenets of the Service-Oriented Architecture (SOA) approach to software system design is the idea of loose coupling. In some cases it is pragmatically obvious whether one service is loosely or tightly coupled to another, but in the general case it can be tricky to determine. With that in mind InfoQ have …

Continue reading ‘Loose Coupling in SOA Defined’ »

Software architecture training for £500 – Coding the Architecture

This looks interesting, as much for the business model of establishing credibility through writing a blog, then monetising it in offering training. I have met Simon Brown and do think he knows what he is on about, though, so if you are in the market for software architect training, this should be worth a look. …

Continue reading ‘Software architecture training for £500 – Coding the Architecture’ »