Tuesday, January 21, 2014

Why classical Project Management fails to deliver for IT


Classical Project Management methods and systems fail to deliver what is needed for IT strategic planning because they are oriented at a different problem (not strategic planning or management) in a different domain (not IT). Consequently classic PPM solutions, and PMOs applying them, fail to provide some key strategic insights required in a IT and business transformation context. 

Classic project management has its roots in the built-environment (construction and engineering). The classical paradigm assumes a well defined solution scope, well defined solution impacts and focuses on defining and managing the plan i.e. what is required for execution and delivery i.e. when, in what sequence, who, etc (i.e. tasks, resources). It also assumes well defined methods for detailed delivery, boundaries between teams, and an implicit and detailed understanding of the behaviour and characteristics of materials and technologies. So essentially it focuses on tracking and predicting: costs, dates, overruns and overloads, etc. at a task and resource level.

To give a simple example when planning the delivery of a building - it assumed:

  • the design of building being delivered is fairly well defined (solution scope), 
  • where that building is and how it relates to other buildings, services etc. is fairly clear.
  • how bricks are laid (methods for detailed delivery), how brick laying relates to wall plastering is know (boundaries between teams), we know what bricks do (behaviour and characteristics of materials and technologies)

The reality is that in IT, when considering a portfolio of transformation initiatives, key things we are trying to understand are: 

  • how the transformation portfolio produces the desired business outcome
  • what the portfolio of solutions (and therefore projects) looks like and what the scope of each is exactly
  • how each solution (and therefore project, and sub-project) relates to other solutions and projects.
  • what new technologies do, how new technologies are best applied, and how this affects boundaries between delivery roles.
Strategic planning operates at a different level of detail than execution planning. Strategic planning of the portfolio is like a property investor working out which building he will build, retire, etc. It doesn't require task level details of resources that would be require for execution - its only requires a project level allocation of classes or resources and scheduling at this higher level.

Even detailed IT project management focuses more on managing scope with an, ideally fixed, time and budget - than it does to managing time and budget to an explicitly defined scope. 

The things PPM systems excel at when managing execution are often just not applicable e.g. task sheet production, time sheet recording and tracking detailed actuals of execution tasks, estimates cost and time to complete based on task level critical paths. That is not to say they are not useful - they are just not useful for strategic planning.

What is required are multi-dimensional views of various impacts i.e. on the many aspects of the business plan, policies,  architecture, assets and agreements (and related IT policies, architectures and assets). 

More thoughts on the underlying issues is here:

Projects are artificial constructs and often managed in ways unsuited to enterprise change initiatives



Sunday, December 22, 2013

Business processes and systems processes

When we describe a enterprise there are a number of perspectives we can take e.g. those relating to:

  • offerings: products, services i.e. how we make money
  • markets: sectors, customers, accounts i.e. who pays us money
  • behaviour: functions, processes, etc.
  • decisions: strategies (decision on how achieve), policies, rules, etc.
  • knowledge: information, data, etc.
  • communications: messages, message details, etc.
  • organisation: unit, role, posotion, person etc. (who do, know, communicate, etc.

Where the enterprise is enabled by rigid systems these things will often be represented within the systems. Systems oriented people therefore have perspectives on these things that relate to their need to implement systems. There is a tendency in ICT oriented people to assume that these implementation and systems specific views should be used at higher levels for business planning, transformation and governance.

These low level implementation specific views are necessary when implementing specific changes to the details - but most of governance, transformation and planning takes places at a higher level.  

This slide show gives a perspective on the issue from a process perspective:
http://www.slideshare.net/billpoole/eba-and-bpm-7510328

Technology vendors with their huge marketing budgets have continually spruiked the languages and methods associated with implementation in order to promote their technologies (which obviously need to be implemented). With no equivalent countervailing level of promotion for higher order views of enterprises there is tendency for these technology driven methods to have a preternatural dominance. For most technologists in businesses - the specific business they are in is a transient - the technologies are the things are really attached to so they also gravitate to methods attached to technologies and technology outcomes rather than the business and business outcomes.

Thursday, November 28, 2013

Tube Maps

Many organisations are seeking ways to better express and analyse the essence of their business architecture. The business architecture and desired changes to the business architecture are the key drivers of business transformation. Many have: capability Maps; lists of business functions, business/functional reference models, and a profusion of details in business process models (which describe in great detail the specific steps but can not readily present a useful overview). They may also have value chain views that focus on an area, product, offering. Many of these models in turn relate to the technology architecture.

Tube Maps can be used to communicate the essential aspects of the business architecture i.e. how enterprise operates as a whole on in a specific area. These views can then be used as a lens to better understand:
planned transformation, gaps, issues and opportunities. They fill a gap between capability maps (which have no concept of flow); value chains (which focus on specific narrow flows, but not organizations or enablement); BP models (which are detailed implementation oriented views with information that is important for implementation, but have too much extraneous detail for most audiences/purposes).

Tube Maps are selective in what present, often tending to focus on unique and value generation rather than internal governance and operational processes (i.e. as these process are usually fairly generic and dealt with by COTS applications). Tube can automatically generated using our methods and solutions leveraging data held on capabilities, functions, processes etc.




In a funny way it is kind of amusing all the noise about BP models (which are of course implementation specific - with their specific sequencing, roles etc.) and capability models - without any really useful discussion on what visually fits between the single capability map and the hundreds or thousands of swimlane diagrams.

Parallels can be seen in the existence of thousands of ER models and table - but no really clearly communication information models.

So what we might have is:

  • Business Capabilities - 100-200 elements (usually structured in a 2-3 level hierarchy - which we present in capability maps, landscape/matrix maps etc. Often just showing the top couple of levels. These are exist independent of any implementation they are things we need to be able to do.
  • Business Functions - 500-3000 elements at least one function (usually more) for each Capability (and vice versa). These are largely implementation agnostic (i.e. exactly: how, who, when, where, etc. will change).
  • Business process models - 5,000-10,000+ elements, which elaborate one or more functions, are implementation specific, often presented in swim lanes (ideally surrounded by context - who, how, why, etc.)
  • Use case - which elaborates the relationship between a BP element and a system/role (either via ICOM or direct). These are obviously not just implementation specific but really engineering specific views to describe the expected behaviour of systems for design or testing.

So it looks something like:

  • Capabilities - Travel around city and country side 
  • Functions - Go shopping, Take children to school, Go to from/work  
  • Process - Go Shopping - Get in car, back out of drive way, drive to shops [navigation system has details], ... stop car, park, shop, pack,  .... drive home, ....
  • Use case - stop car - break pedal - press on the break pedal (after precondition of stop pressing on accelerator) and car come to halt. If not press harder or panic/ 

You could try and record this all as different levels of BP if you really want to I guess - the Capabilities and Function do not really have the characteristics of processes. A dictionary defines process as"
"A series of actions or steps taken in order to achieve a particular end", "A systematic series of mechanize/chemical operations that are performed in order to produce something". So for something to be a process there is clearly implementation of series and sequence (which is may not exist for functions "An activity intended for/natural to a person/thing"). If I am buying a car I probably don't need Use Case (I may well not need Process models - Function will usually be enough).

Thursday, November 14, 2013

FEAPO consensus definition of EA [and TOGAF doesn't help]

Federation of Enterprise Architecture Professional Organizations

Based on (http://www.itworldcanada.com/blog/the-great-debate-what-is-enterprise-architecture-resolved-in-a-new-paper/86616)

FEAPO find 80% of organizations do not successfully execute the business strategies they have. Poor strategy execution is the most significant management challenge facing large public and private organization.

EA claims to address these challenges, but there is little consensus on what EA is (e.g. what the term means, what the practitioners do, how its processes relate to delivery e.g. agile, where it should report to, etc).

FEAPO's paper “A Common Perspective on Enterprise Architecture” seems to say the following (slightly paraphrasing [e.g. to reduce obscurantism I have used "perspective" or "aspect" instead of "viewpoint", and removed some of the tautologies e.g. "change initiatives"]):

1. EA is the activities and artefacts for translating business strategy into an effective enterprise and includes creating and communicating, and refining the key requirements, principles and models describing the enterprise and enabling transformation.

2. EA's value includes articulating the strategic requirements of the enterprise including:

  • models which present what all aspects of the enterprise should look like in future states, and how they support the business strategy;
  • a roadmap of the initiatives required to reach those future states;
  • the requirements, principles, standards and guidelines that should govern implementation

EA outcomes include:

  • improving the effectiveness, efficiency, agility and structure of the enterprise;
  • improving the ability of the enterprise to continuously innovate;
  • rationalising, centralising, federating and improving the completeness and quality of: business processes, business information and business rules;
  • aligning spending on initiatives so that they deliver the strategic intent.

EA commonly maintains:

  • information describing the enterprise in different states (“target”, “future”, "intermediate/transitional) [actually there is no future state - there are only future states) 
  • perspectives that span the enterprise (across various unit or functional boundaries)

EA practices should provide efficient, effective, consistent analysis, planning, design, and implementation of strategic needs.

It postulates that non-financial measure exist [which I think a bit silly, in public companies where the sole focus is on financial performance]. Strategic planning does not produce a directly measurable ROIs [which makes more sense].

Elsewhere today I saw  http://www.ebizq.net/blogs/ea_matters/2013/11/togaf-needs-a-public-roadmap.php

Someone called "Len" indicates that TOGAF is a follower not a leader e.g. "The Open Group and TOGAF will not change their concept of enterprise architecture until the community as a whole does" [which should be no news to anyone]. [TOGAF has long been captured by technology vendors and dragged down to be solution and engineering oriented]

Adrian Grigoriu says (correctly in my view that) that TOGAF  "moves too slowly in who knows what direction, while it becomes irrelevant. In the meantime, because of its clout, it hinders the development of other EA approaches." [i.e. TOGAF is more an impediment (emperor's new clothes) than anything else]




Sunday, November 3, 2013

When will EAs learn traditional approach produce traditional results?


I keep seeing people advocating variations on the traditional approaches to EA that have not worked for a decade or two. Traditional approaches with result in the traditional results.

At best these approaches are often like communism - they sound sensible and if everyone did the right thing, in the right way for the right reasons - they might actually work - but that isn't the world we live in and they just don't really work.

Here are some things that don't work


  • EA based on the religious adoption of frameworks (that have been around for decades with almost no examples of success). These frameworks are usually abstract high level methods that in academic sense may be correct but are so generalised that in practice they little more than common sense aphorisms. They may also be taxonomies that claim to be canonical despite the staggering changes in the nature, size, and form of the things they claim to organize. For example TOGAF reminds one of rat pie instructions (http://www.oocities.org/sunsetstrip/amphitheatre/8707/rats.html)
  • EA that is a kind of software architecture or systems architecture (with its arcane notations and business alienating terminology). These initiatives are often rife with technical notations from various technical design discplines (data modelling, object modelling, process modelling etc.)
  • EA modelling that produces lots of hand crafted pretty pictures and wall art. These things can, often with some difficulty be used to communicate a message, but on close inspection it becomes clear that they semioticaly and semantically inconsistent. They remind you of iconic-graphic art explaining myths or fables.
  • EA done by some EA consultants (no the organisation itself). Consultant will tell you it can be done this way. NO it can't. EA can not even be done by EAs alone - it has to be done by the organization, it is an organizational activity.
  • EA done for EAs as an abstract ivory activity i.e. it is not intimately connected to where the rubber hits the road. Solution architects treat it with bemusement. BCP planner marvel at its incompleteness. Its relationship to down stream executions (e.g. business requirements which in practice form one the key inputs to any execution) is at best unclear.




Thursday, October 17, 2013

Enterprise Business Demand and Requirements Management - EPM, COBIT, TOGAF






In developing a requirements management approach for a large enterprise it is essential to understand that business requirements are NOT software requirements. The history of failure in transformation initiatives is based on mistaken, traditional approaches, that fail to recognize the distinction between approaches suited to enterprises, solutions and solution elements (i.e. SW engineering, and its associated requirements methods, which is oriented at solution elements). And on a orthogonal but related axis that business views of things and engineering views - are different views.

In terms of things like the Scaled Agile Framework -  http://scaledagileframework.com/- the issues that need to be addressed 1st and foremost are at the portfolio level an above. It also needs to be recognised that for enterprises software development is a necessary evil NOT a a goal.

In developing our approach to demand and requirements management we considered things from a governance perspective e.g. using COBIT as reference, and an EA/SA perspective using TOGAF as a perspective and developed an approach leveraging off enterprise portfolio management - as in reality requirements leverage off and result in changes in the enterprise portfolio.



Wednesday, October 9, 2013

What is EA and what is EPM



There is a lot of miscommunication about what EA/EPM is, should be, could be, should be.

I keep coming back things said in Royal of Academy of Engineering and British Computer Society report on ""The Challenges of Complex IT Projects" (ISBN 1-903496-15-2)" e.g.
-  "there is a broad reluctance to accept that complex IT projects have many similarities with major engineering projects and would benefit from greater application of well established engineering and project management ..."
-  "a striking proportion of ... difficulties stem from people ... failing to implement known best practice. This can be ascribed to the general absence of collective professionalism in the IT industry..."
-  "...  problems relate to the people and processes but further in developments in methods and tools is required to support the design and delivery ..."

Re the 1st point above - a starting point would be understanding what we mean by the terms/roles/areas of activity (and using another complex, but very mature, design domain as a parallel) -  for what it is worth - this was my view in 2007 (and remains essentially the same):http://ea-in-anz.blogspot.co.nz/2007/09/ea-and-analogies-with-built-environment.html. But to summarise some very broad classifications:

- Portfolio Management (EPM, Property Portfolio) - is not about design it is about economics and metrics (risk, cost, value, etc.).

- Planning (Town Planning, Strategic IT Planning) - is not about design either - it is about having view of the future at different points in time and mapping out, usually broadly, how to get make these views reality.

- Standards Management (Building Material Codes and Standards, Technology Standards Management, Patterns management, Principles definition) - is not about design of any specific solution/design its is about saying what we should build with and how we should assemble those elements. The economic drivers of standards management could come from portfolio management, but if guidelines are easily and accurately reflected in down stream processes then the proliferation of complexity and diversity will proceed unabated.


- Enterprise Architecture (City Design, Large Project Design e.g. Olympic Complex) - is about the design of enterprise (and encompasses many aspects of the above) and unlike its built environment counterpart the flow between what we want to do and with what technologies we do it is far more fluid (because the materials/technologies in the built environments change order of magnitude more slowly).

- Solution Architecture (Building Architecture) - is about design, but it is not really about detailed engineering or construction of the various modules, elements or systems that the building is created from (that is done by specialized sub-trades).

- Software Engineering (covers a multitude of sins - e.g. many Building trades - plumbing, interior design) and it is design.

- Systems engineering to achieve performance standards - "ilities" - is about design and relies heavily on patterns and best practice and calculations.

No one it their right mind would suggest that the same tooling/technology/modelling be used for all of the above:
- Property Portfolio
- Town Planning - maps might be useful
- Standards Management
- Enterprise Architecture - maps useful but insufficient
- Solution Architecture - maps referenced, some CAD capabilities required
- Software Engineering - many CAD trade specific design systems require
- Systems Engineering - as for Software engineering but different e.g. analysis of structure, heat etc.

So one gets an eco-system like this: