Enterprise Architect Oliver F. Nandico from Capgemini about "lean" Enterprise Architecture
Once a new and revolutionary concept, today there is no software development and no IT department that puts it into question: Agile IT is common knowledge, an IT trend that will stay – and this is a good thing. “Responding to change over a following plan” is one of its central ideas, “the best architectures, requirements, and designs emerge from self-organizing teams” is one of 12 principles of the Agile Manifesto. How is this matching to a scheduled structuring and development of enterprise architecture, one of the main responsibilities of the CIO? Will the emergence of agile IT be the end of enterprise architecture as a planning task? Is enterprise architecture obsolete in agile IT?James O. Coplien and Gertrud Bjornvig have answered these questions in their book "Lean Architecture": The approach of architecture has to be less agile, but more lean. Not the quick reaction to change is important, but its conceptual anticipation. Lean and agile are not contradictory; in fact “Lean Architecture” is the groundwork for agile development.
What does lean stand for in this context? TOYOTA has shaped this term in the 1960ies as an improvement of the production process: Constant optimization avoids wasting resources on unnecessary operations, products or waiting time.
With regard to software development this means: Analyze – plan – act. An architect follows this method when he creates a solution strictly oriented on solving the problem. He fulfills the demands of all persons involved, enables design decisions and documents them and gives software developers exactly the guidelines they need – no more, but no less. The architect avoids extensive and complex specification documents that only few people can read and almost nobody has a benefit from.
When developing enterprise architecture, the architect has to act in the same way. The definition of target architecture has to rely just on a few basic and easy-to-understand aspects. If not, it is not helpful and effective for the design of the application landscape. Only lean enterprise architecture is a benefit for a company. Increasingly detailed descriptions of services and over-complex system conceptions are a waste and normally do not survive developments in reality.
What does lean architecture look like? At the beginning there is the definition of the objectives, which is neglected too often. These objectives are valid for the entire company, not only for the IT department and especially not only for the enterprise architecture team. The most important principle of Lean Architecture is: “everybody, all together, early on”. This implies that neither IT is waiting on the exact functional requirements and concepts, nor is the business unit waiting for a detailed specification of the application portfolio, before they get to work. All units involved are working together on the future enterprise architecture, outlining the essential decision for the solution of the mutual task.
The design of the future architecture focuses on two areas:
First, on the description of the “structure” of the company as the static model of the company. It categorizes the entire company into entities with low dependence on each other, so called domains. Agile development is then carried out for each of these domains within the defined setting.
Second, the draft plan describes the future functionality as dynamic view of the company. All defined services and processes show how different parts of the company are supposed to work together. They serve as implementation specification for agile system development.
Agility needs a frame. Enterprise architecture as planning task is necessary, also and especially for agile IT. It needs however to deliver clear and simple requirements and shall not restrict reactions to change. Lean enterprise architecture can fulfill these requirements.
About the author Oliver F. Nandico is an Enterprise Architect. His motto is: It is not just about describing architecture in various ways: the point is to change it. His passion is the simplification and rationalization of IT structures by effective usage of new technologies and tools. He brings more than 20 years of experience to this subject and publishes regularly articles about it, e.g in Objekt Spektrum. At Capgemini he leads the German Architecture Community and advises client as Principal Enterprise Architect in the shaping and changing of their architecture.