Thursday, January 10, 2013
Two Dimensions of Enterprise Integration
Monday, September 15, 2008
About Simple Architectures for Complex Enterprises
The area that is most relevant to me regards the reuse of ABCs (i.e. units of process and technology components, that Roger calls Autonomous Business Components).
Let us assume that there are differences in the business processes in various regions. The way that loans are processed are different for New York, Asia and Frankfurt, leading to three ABCs, each specialized for regional business conditions (legal, administrative, cultural, environmental).
The alternative is to have one Global Loan Processing system
The question is - which avoids complexity better?
If I start with the Global system, and see high complexity due to it having to handle different regions, (i.e., regional variables add high complexity), I am tempted to partition the system into regional systems. The complexity falls from N*N*N to 3N as the systems can be tested and changed independently.
On the other hand, if I start with regional systems, I am tempted to combine the systems in a bid to reduce costs (and complexity) - as mentioned in the book.
I asked Roger to comment on this apparent contradiction.
Roger emailed me back -
I don't know if there is a simple answer to your question. It comes doesn to how similar the three systems are. And it is also important to keep in mind that just because architecturally we are considering systems to be different, that there aren't opportunities to reuse work at the implementation level. And in some cases, we can break out that part that makes them different into other ABCs.
My current rule of thumb is, "When in doubt, make them different". I think in general more harm is done by trying to force things to be the same than allowing them to be different. But this is very dependent on individual circumstances, as the case study in my book shows.
I find this perspective highly pragmatic and useful.
Roger has a blog related to the book as well.
Wednesday, July 16, 2008
The Toyota Way and Software companies
Since August 2007, employees of LogicaCMG India have been maintaining hourly logs of their activities at work. This includes the nature of work, the status of the work, tasks completed, meetings attended; indeed, just about everything, including the time spent at the cafeteria.
It then shows how many hours were spent on each production activity including support , testing, development, project management, review and rework ; on preventive activities like process improvements and self-development ; on organization support activities like interviews , training, meetings and customer visits; and finally on idle time like waiting-for-work or personal time.
The report adds up all that to give the productive hours utilized. It then subtracts that from the previously calculated "available hours", and Verma gets the unutilized time. In the one instance we were shown, the unutilized time stood at 1.5 hours out of a total of 656 available staff hours, or 0.23%.
"I can check such things project-wise, location-wise , competency-wise . I can check the changes over time. I can exactly identify who was responsible for a delay in a project. In fact, we have broken things down in a way that everything can be quantified," says Verma.
Verma of LogicaCMG admits there was resistance when employees were asked to log in hourly details: "There were questions like: I'm doing intellectual work, why should I do such things." But over time, everybody appears to have got into the groove.
To me this resembles Taylorism and Scientific Management . I thought they went out of fashion in the 1950s.
Instead, a focus on Lean Operations might be called for -
The Principles of Lean
Improve Continuously - Get your employees to suggest ways to improve and implement the good ideas on a continuous basis.
Involve Everyone - Software programmers dont like to enter detailed logs of how they spent every minute. Especially if that data is being used to find out "who delayed the project".
Eliminate Waste -
There are 7 types of waste ("S W I M T O O") which can be recognised in most organisations:
- Scrap (or Defects) - Do you detect defects early? Do you practice prototyping? Can your employees "stop the production line" if they see problems?
- Waiting - Is your staff kept waiting for signoffs, approvals etc.?
- (Excess) Inventory - Are you understaffed/overstaffed in a particular area - E.g., is your Business Analyst swamped with volumes of paperwork awaiting processing? Are your servers underutilized?
- Motion - Do you have unnecessary movement and travelling?
- Transportation - Are your teams flat enough? Does information make unnecessary hops? Does your staff have to keep switching between unrelated projects?
- Overproduction - What steps in your process don't add real value?
- Overprocessing - Do you require six sign-offs when three will do?
Thursday, June 12, 2008
Reusable processes and SOA
I agree that hatered against the 'poor beleagured' Silo may be misplaced. Some boundaries are necessary for you to be able to act and implement. If everything in the enterprise was to be implemented and controlled globally, very little could get done.
Joe then describes what he thinks SOA really is - "it is a scope of architecture, like Building Design vs. Urban Planning". I disagree. I think the "Urban Planning" space belongs to Enterprise Architecture. With SOA, I don't worry about what lies behind the service interface. When doing EA, I consider all the technologies and applications and systems in the Enterprise. I look at the gaps in the Business Architecture and look for ways to fill the gaps. I do this irrespective of whether they provide loosely coupled re-usable services or not (which is what I see SOA as doing).
On Reusable processes and SOA
James McGovern has a post where he casts a big shadow on the prospect of reusable services. He thinks reusable business rules might actually work but not reusabe services. In his experience, applications get rebuilt or rewritten if they have to be reused.
The way SOA is generally positioned, services should encapsulate reusable business processes. I don't find too many potentially reusable services when I look around.
- They require access to data. Enterprise data is often local, not global. Regulatory requirements might prevent you from having global data stores (especially in the banking domain.) In any case, data for UK is likely stored in UK and data for Malaysia is likely stored in Malaysia.
- The processes differ. The business process in one location may well differ from another location. There are differences in the business environment (cultural, political, administrative, regulatory, legal, geographical, economical etc.) that require that the process be different.
- They involve people and roles. Large enterprises usually have global employee databases. However, the employees are organised differently and have different roles - again due to different business environments.
These factors greatly diminish the set of services that can be simply reused without customization.
Moving on to other topics
A lot of write offs have occurred since my last post
Some lessons that could be learnt from the subprime crisis -
- Ways to generate wealth must be sustainable. It is not sustainable to for an industry to "sell lemons to each other indefinitely" as some have described it.
- By slicing and mincing risk and passing it all around, the overall risk does not go down.
- Models for risk must seriously take liquidity into account. What is a bond worth if no one wants to buy it?
- Risk (i.e. loans) should not be created by parties that have no stake in what happens subsequently.
Sunday, April 1, 2007
Residential Mortgage Backed Securities (RMBS) - A brief tutorial
Why MBS?
MBS is about transferring risk. Risk is transferred from the bank (or mortgage company) that made the loan to investors who have an appetite for risk and wish to profit from it.
The profit comes from the interest payments on the loan. The risk comes from the fact that the loan may not be repaid. Or, the loan may be repaid early (!) which is likely if it can be refinanced at a lower rate of interest. So, changes in interest rates also add to the risk for investors.
Also, banks love getting these housing loans off their balance sheet. Banks are required to hold a percentage of their loans as reserve and using MBS, they can comply with the reserve ratio requirements while freeing up the capital.
In addition, the investment banks issuing the mortgage-backed bonds profit from the difference in interest rates paid by individuals who take a housing loan and interest rates expected by investors who invest in mortgage-backed bonds.
Slicing and dicing
The pool of mortgage loans is split into slices (also called tranches) of varying levels of risk.
As shown is this diagram, the highest rated tranches offer the lowest risk and the lowest returns. On the other end of the spectrum the most risky tranche (which is usually unrated) offers the highest returns.
Investors can choose the tranche based upon their risk appetite. A pension fund might buy the “senior” conservative bond while a hedge fund might buy the “junior” speculative bond.
Risk protection
It is important to understand that the lowest tranches offer protection to the senior tranches.
Any losses will be absorbed by the investors of the most junior tranche until the value of their investment reaches zero. If this occurs, investors in the next junior most tranche absorb further losses, and so on until the senior most tranche is reached.
The lowest tranche contains loans made to subprime customers (i.e., who have a blemished credit history and have a high chance of defaulting on their mortgage payments).
The crucial lowest 10%
The lower tranches make up around 10% of the entire MBS. The catch is, the lower tranches have to be sold in the first place. If the lower tranches cannot be sold, the higher tranches cannot be sold either, and the entire deal is off!
Who buys the risky stuff?
CDOs (Collateralized Debt Obligation) buy the riskier parts of an MBS. The next post will discuss CDOs.