Is Agile Killing the Architect?
July 01, 2016
The formally recognised discipline of software architecture is 20 years old but it’s also a bit of a conundrum: opinions about the questionable value architects add to projects are strongly held and yet job vacancies for architects are as abundant as ever. So which is it? Is architecture in the enterprise misunderstood? or is it living on borrowed time? On 19th May, La Fosse Associates hosted an event at Runway East in London centred on a contentious question: Is the adoption of agile meth ...
The Lean Architect
March 18, 2013
Anyone who’s soaked their head in agile techniques for a while can’t help but become a little obsessed by the concept of “lean”. Behind all the fine words they’re essentially the same thing - a quest to discover ways of delivering with the minimum amount of waste: stand-ups instead of meetings, cards instead of documentation, conversations instead of process, value instead of activities. Any man mentions he's a Certified ScrumMaster spends a night in the box We’ve come a long way in the years s ...
The Big Data Deception
February 10, 2013
You can’t go to a conference, read a blog (ahem) or open a tech mag without someone talking about Big Data these days. Now I’m as excited the next person whenever new techniques, approaches, tools, frameworks, whatever come along, but equally, given our industry’s penchant for hype, it’s important to keep one eye out for denuded emperors keen to show off their new wardrobe or vendors with sales targets to hit. About three seconds after it was announced that Barack Obama had won the US election ...
NoSQL in the Enterprise
July 30, 2011
Welcome to part two. Last time we looked at the experience of getting a NoSQL product accepted in an enterprise environment. Assuming you got through that, the next step is to do something useful with it. Like any tool, you will only get good stuff out if you know how make the best of it. In this case that means not treating it too much like a relational database and understanding the internal nuances. Is this a schema I see before me? For our particular set of requirements we chose MongoDB. We ...
Freedom from the Tyranny of Schemas
July 30, 2011
Time flies - it was nearly two years ago that I wrote ‘Strained Relationships’, an article extolling the potential benefits of NoSQL data stores. My main point then, and now, was that certain features of the new wave of non-relational products looked a promising solution (in part) to improving speed-of-change in large enterprises. Sadly, too many articles in the NoSQL space still focus their attention on drooling fanboi speed and whilst it’s true that NoSQL products are generally faster than thei ...
The Secret Sauce
May 29, 2011
Last time, I was talking about what I consider to be the general lack of a crisis in software development. And it got me thinking - if there is no crisis in software development, no inherent flaws in our tools or our methods, then there must somehow be a way to convey the appropriate use of these tools and methods in order that everybody could get it right every time. If the Enterprise Architectcriticised the sauce this time,it was going over his head Ah ha, I thought. A book. A book entitled “ ...
January 30, 2011
So I have a question, or at least I think I do, because maybe the answer is obvious and any sense of there being a question is redundant. Why do so many articles on software development these days (and for some time) start with outlining how truly awful, and late, and expensive it always is? I’ve said it too, often. But it’s getting boring. Statistically, if you were to parachute into a randomly selected IT development project today, the odds that it’s building the wrong thing, or the right t ...
Ungoverning the Business
November 13, 2010
If there’s one aspect of enterprise IT guaranteed to get the dander up it’s Standards and Governance. Some time ago I wrote a short piece on governance called The Governance Apparition making the point that governance should never really be seen as separate and distinct from ‘doing things’. If a company has a process for ‘doing things’ and an internal body (usually architecture) tries to ‘govern’ the outputs of that process the governance will fail. It will fail because it’s almost impossible ...
May 17, 2010
Whenever anyone gets caught up with, or overly excited about, a software product, design pattern, or piece of technology, the phrase most often used to warn us over-using it is: To a man1 with a hammer, everything looks like a nail It’s a tired and worn out phrase but, on the surface at least, it seems like good advice. One tool cannot do all jobs, there are no silver bullets. It’s not wise to artificially constrain your effort by starting out with an inappropriate implement. But how can ...
November 03, 2009
About four years ago I sat in a meeting that had finished early. We were chatting away and the subject turned, as it always does, to the lamentable state of IT. In the preceding weeks I’d asked finance to run me off a number of reports showing just what we were spending on various aspects of our integration architecture. They made pretty scary reading. Wherever we had invested significant funds to improve and mature our infrastructure we were now spending significantly more and taking longer per- ...
Law and Order
August 29, 2009
In the technology justice system, the people are represented by two separate yet equally important groups: the architects who investigate standards and the developers who commit the offences. These are their stories. <doink doink> INT. COURTROOM - MORNING The case before us has troubled me deeply over recent years. It’s a question that periodically pops up in various online forums and one which often invites heated debate - probably why it never seems to achieve any sense of resolution. ...
Gangstas Don't Scale
June 19, 2009
A common anti-pattern in distributed systems design comes about because of the belief that scale is easily achieved by making all communication asynchronous. And to be fair, there is some logic to why this misconception occurs. If you take the real-life analogy of making a phone call as a synchronous option for communication, with sending a letter as its asynchronous counterpart, then you can more efficiently increase a team’s workload (assuming the team performs simple, repetitive, tasks), in pr ...
Was that Tactegic or Stractical?
March 08, 2009
You’ve been assigned to a project. The requirements are well understood and they make sense. The team is capable and the project manager reasonable. The one thing you don’t have, because we never do, is time. This is a project with a David Beckham date. The David Beckham date is a term I use for an immoveable launch target. I once worked on a project where David Beckham had been booked to do the release publicity. That pretty much fixes when you need to be done. Firstly, he isn’t going to be abl ...
Brewer's CAP Theorem
January 11, 2009
On Friday 4th June 1976, in a small upstairs room away from the main concert auditorium, the Sex Pistols kicked off their first gig at Manchester’s Lesser Free Trade Hall. There’s some confusion as to who exactly was there in the audience that night, partly because there was another concert just six weeks later, but mostly because it’s considered to be a gig that changed western music culture forever. So iconic and important has that appearance become that David Nolan wrote a book, I Swear I Was ...
The Event-Driven Architecture
December 07, 2008
Michelangelo famously said that he didn’t just take a piece of stone and sculpt it into the shape he wanted, but rather he believed that every hunk of rock already has a sculpture inside and the job of the sculptor is simply to remove all the pieces that aren’t it. He added that the way to distinguish between that which should go and that which should stay is to “obey intellect” and understand that even the greatest of artists cannot conceive of anything more beautiful than that which already exi ...
Role Models and Services
November 09, 2008
SOA - an architectural style centred around the concept of a service. It’s a popular approach though not without a few difficult questions if you want to get it right, chief amongst these being: what exactly is a service anyway? Next time someone is trying to tell you that SOA is the answer to all your technology problems try asking them a few simple questions. What is a service? What’s the difference between an interface and a service? How many services will I have when I am done? SOA ma ...
November 01, 2008
Update of the original article from August 1, 2007. First Published in July 2007. I’ve noticed this is getting a lot more hits recently, presumably because Google is ranking it higher. On the assumption it’s proving useful, I thought it deserved a 2008 update. What’s in a Name? Let’s get some terminology out of the way. I’ve called this “Systemic Requirements” because I prefer that to the two other commonly used titles: system qualities and constraints, which to me sounds too dry and academic ...
October 28, 2008
In Anger Management and the Enterprise Design Debt I took Ward Cunningham’s excellent Technical Debt Metaphor and applied it to the enterprise. I proposed that all those little bits of debt from each project get wrapped up and become a kind of currency to aid communications with the business. The notion of Enterprise Debt is important for two reasons: It is very real. Just because most businesses ignore it doesn’t make it go away. Like real debt, it gathers interest and hampers business ...
Dancing with the Reuse Fairy
August 13, 2008
Not long after graduating from college I went on my first skiing holiday with a large group of work colleagues. I managed to get a couple of lessons on a dry slope beforehand and turned up at the resort just about able to put my boots on, do a fairly hopeless snow plough, and carry my skis without thwacking anyone in the head every time I turned around. We were all new to the sport and so block-booked lessons for every morning of our ten-day stay, but after two days of tuition I cancelled mine an ...
Strategy for the Irretrievably Pragmatic
July 05, 2008
My Dad used to say that the reason many politicians are so totally ineffectual is because of the ironic and paradoxical fact that to be a good politician you need to be able to wield power wisely, and yet those who are drawn to power are often, by that fact alone, the worst people to be given it. He still says it, but these days I might counter with the thought that it’s just possible some of them go into politics to make the world a better place and get corrupted along the way, having to deal wi ...
The ABC of the ESB
June 24, 2008
We’re a smart lot in technology - give us a complex business problem and a short amount of time and we can do wondrous things with some cryptic text and a compiler. We constantly develop new ways to structure intricate business systems and information. We can scale up, out, persist data as rows in a table or objects in a tree; we can build tiered architectures that limit rippling change and we can, if we put our mind to it, innovate to such an extent that small companies can come from nowhere to ...
April 28, 2008
Of all the system qualities debated by architects and developers, scalability is perhaps the one that has the greatest reputation for being mysterious and poorly understood. And if you want to avoid unnecessary work in the future, it’s also one of the most important. Except for adding new, or modifying existing, functionality I’d suggest meeting the growth demands of a scaling business ranks highest amongst the work-creating aspects of corporate enterprises. A clue to the mystery (he somewhat ob ...
January 03, 2008
Imagine you are a team manager for NASA and you’ve been given the job of hiring a group of people to build a space ship that can take humans to Mars. You’re going to need aeronautical engineers, physicists, material scientists, software experts and all manner of extraordinarily clever people. People who know stuff about stuff you probably could never understand. Even after extensive filtering your waiting room is packed full of candidates (after all this is a name-in-the-history-books glamorous p ...
Reality Street ain't got no Vision
November 29, 2007
A few weeks ago I wrote a piece rather grandiosely called The Death of Architecture, insisting that, because the future can be thought of as something of an illusion, a determined focus on immediate results will get you further in your technology life than putting great efforts into what we lovingly call strategy, especially architecture strategy. Today I want to put that focus into perspective by elaborating on how the illusory qualities of time and strategy can make the immediate more productiv ...
The Death of Architecture
November 16, 2007
If you looked for places on the earth to experience unusual clarity of thought I don’t suppose the island of Aruba would make it to your shortlist. I recently got back from a trip there to watch my brother-in-law get married, but if you’re not from the North or South Americas then you probably haven’t even heard of it (it being a very long multi-hop flight from everywhere else). I certainly hadn’t and had to fly there from London via Miami. Fourteen hours in the air, plus six or so hours hanging ...
A Loose Coupling Strategy
October 18, 2007
When tactical or political pressures mean you can’t rewrite or restructure your applications in line with a best-practice architecture, or apply strategic measures with much effectiveness, then you don’t have many options to make an architecture function meaningful. One approach that I have employed with some success is to apply a refactoring strategy to legacy applications with the aim of creating a situation that supports the ‘right’ kind of change later. The majority of refactoring affects th ...
SOA Myth and Mystery
September 19, 2007
Update of original essay from May 14, 2007. Service-orientation is a good, but old, idea and the benefits it heralds are great indeed. Like all bandwagons that have come before, it’s attracted more than its fair share of misinformation, consultant-speak, and myth. Search for the one true definition on Google and you’ll find plenty, walk into any corporate strategy meeting and they’ll be working themselves up into a frenzy over it, ask a consultant for advice on it and they’ll look surprised that ...
Fractal Amplification (1)
August 31, 2007
My favourite definition of technical architecture is simply that it’s the software delivery discipline that attempts to ensure the non-functional and strategic requirements are met. And further, I see the strategic and non-functional requirements as essentially the same thing. Whenever we talk about strategic requirements we’re really talking about future capability - a description of support for future needs, whilst behaving in future-compatible ways, that are generally appropriate for the kind ...
August 01, 2007
This article has been replaced with a newer one, which can be found here. In no particular order, these are the standard non-functional requirements I have used for years. Not all will apply in all circumstances, so like much in life you'll have to use a bit of common sense, but they form a useful check-list. Each NFR is followed by a description and some discussion on how you might like to satisfy yourself that it's being met. As a means of checking NFRs have been met, I use the term 'walk th ...
July 01, 2007
As much as any solution is defined by its components and what they do, it’s also defined by the interfaces between those components and the rest of the world. In these crazy SOA-is-everything times, identifying communication links and promoting their reuse is an important archtectural desire. It may be a simple starting point, but I’ve found just having a table of interfaces to be an invaluable artefact. Each interface can have recorded against it a unique ID and a number of key criteria that he ...
June 28, 2007
Business software is generally used to optimise processes so that they run faster. Competitive advantage for companies can come from doing the boring stuff better as well as doing the new things other companies don’t do. But if we look at a process end-to-end it can rarely be optimised all the way through. Often what we find is that parts of the process cause disproportionate delays and so we focus on those. Other times it may be for good reason that some parts of the process simply cannot be add ...
June 27, 2007
This is the third of three articles on the space-based architecture. The first was a general introduction, and description of a commercially deployed example, the second looked at how the SBA supports Agile because of its complimentary nature to how businesses think and work, and this final episode looks at some of the subtle technicalities of the SBA. Before I start, let me make clear my relationship with the SBA - I am not connected in any way with Gigaspaces (the originators of the formalised ...
June 25, 2007
A related post on space-based architecture was published a couple of weeks ago. It was going to be a one-off but I was at the inaugural Gigaspaces User Group in London recently, and a couple of things occurred to me between presentations that I thought worth mentioning. So there are two extra articles to come (this is the first). Perhaps it’s not a conventional place to start, but the idea for linking spaces and agility occurred to me because I am having a bathroom remodelled at the moment (bear ...
June 06, 2007
This is the short version of the story of my experience with Space-based Architecture. Being the instigator for one of the most often referred-to commercial implementations of an SBA and unusually an implementation outside of the financial trading sector, where the approach is more mainstream, it’s appropriate that I cover not just its implementation, but why it seemed like a good idea in the first place. I was Head of Architecture & Design at Virgin Mobile in the UK until shortly after it w ...
The Idiom and the Idiot
April 21, 2007
The concept of, and quest for, an ‘Agile Architecture’ is a hot topic these days, and as far as I can tell, it’s a debate that will continue for some months. Probably the term Agile will go the way of so many other buzzwords, and fall into disrepute, but I hope the premise that it’s good to work flexibly and reactively with your customers outlasts the current hype. I’m fairly optimistic that it will because once you’ve tried it, more traditional prescriptive approaches can feel awfully limiting. ...
Seeing the Spoon
April 01, 2007
This article is something of a preface for the whole site and, as with other posts, will be updated from time to time. The intention for the site is to create a kind of holistic view of what can be done about the current malaise in software development in medium to large companies. That there is a problem is in no doubt. If you work somewhere that experiences a multitude of difficulties in making your business happy by giving them what they want within reasonable parameters, then I hope it’s not ...