Insourcing, outsourcing and whatever is in between… March 17, 2008
Posted by Joined TCG Effort in Industry Directions, Insourcing, Knowledge Management, Outsourcing.Tags: globalization, insourcing, outsourcing, talent shortage
add a comment
This post is a compilation of the email discussion within the group about insourcing, outsourcing and the dangers of the latter.
Kelley Johnston: The article in this link http://www.guardian.co.uk/feedarticle?id=7372581 mentions how Logica won significant business in the UK against an Indian outsourcing firm, and was used as an example of how the UK in general appears to be drifting away from the off-shore model.
Personally I think off-shoring is ok where indicated, due to a belief that good brains come in all sorts of packages. But it’s a see-saw balance — if you offshore development, you need to invest in local B/A skills to ensure your requirements are top-notch. If you offshore a call centre, you need to ensure commonality of culture with regard to how you represent your firm to the clients. If you in-shore everything, you have a hard time competing on price.
And price is definitely important, the best plans fail if you can’t sell them. But price seems to play only part of the picture, as the off-shore firms have matured to the point where they’re experiencing the same talent shortages their counterparts in the west have been suffering. Communications is suffering the tyranny of the time zone, and this makes using agile methodologies, so useful for improving customer satisfaction, a little hard (or quite expensive) to implement. Price models are under pressure from time-shrinking tool sets like Sparx and Iron Speed so cost of coding is becoming less of a factor. On the other hand, India has new graduates who have studied legacy coding skills, and it’s hard to attract grads in the west with the promise of a career in COBOL or RPG and there are a lot of dusty decks out there.
It’s a difficult mix of factors to juggle, and I’m sure that if anyone had a foolproof method for measuring the risks they’d be featured on the cover of TIME magazine.
So I’m curious — in our collective opinion, what are all the factors that belong in a decision-maker’s Bayesian model for determining the correct metrics to balance off-shore vs. on-shoring?
Vincent Dermody: Kelley, Be careful of the can of worms you open J To give context to my following comments, I spent 3 years in Intel bringing up an Agile Outsource capacity run out of Russia, and prior to that I did a lot of work with Orygen near shoring from London City to Ireland and on sourcing to Bangalore.
As I see it the biggest mistake in outsourcing is bagging it all as one. There’s sensitivities all around, but there is huge differences in what you’ll get out of different cultures. If you want a button down ITIL operation then Bangalore is your place. However if you want innovation and agility then St Petersburg or Nizny Novograd is your place.
Another mistake is the play on the cost parts of a projects. The old premise was that the key cost are is development, we’ve all seen the parabolic graphs that skew between design and deliver.
The fact being ignored is that flaws in planning and design come out in the delivery, so the actual key failure area is nearly always upstream from the delivery. An analogy, a good outsource agency is like a good driver, drives at the legal speed limit and takes no unnecessary risks. The fact that the driver has incorrect directions means that they will get to the wrong place safe and sound and without a speeding ticket.
The original purpose for outsourcing was cost per capacity. Now that there is a point of inflection approaching, i.e. cost equalisation is happening, then the cultural aspect kicks in. Why is Indian development better? Why is Russian Delivery better? This was obvious in the Congress I referred to last week. There was two presentations from Indian outsourcers trying to reposition themselves in areas outside their traditional area. One presenter tried to demonstrate how he planned to use ITIL techniques to instil innovation in organisations. It was like something out of Orwell, totally focused on throughput of innovation points (i.e. ability driven innovation as opposed to need driven).
The second one was a pitch to outsource the Project management function. Consider this, the key point of a PM is to add the soft skills to the logic of a project. The bits that don’t need on site soft skills are better off automated in a collaboration tool than flung to some distant shore as outsource.
My money is on India getting challenged and Russia and eastern Europe making grounds in the innovation space (remember these guys tick tacked the US during the cold war, they know how to innovate. TRIZ is a USSR product and is the book on innovation in my view).
There are general points to consider , in all aspects of globalisation, especially considering the possible reversals that carbon and oil economy constraints may bring. Is a company at risk by degrading its own specific skill set due to outsourcing, when in 3 years Bangalore may say ” Skill XYZ is no longer feasible, sorry go elsewhere” . A context example, the tailoring and cloth manufacturing industry in Europe has lost two generations of apprentices to Chinese globalisation. Now the EU couldn’t stop the import of Chinese clothing as there is no longer an internal capacity. What’s Barclays gonna do when Cobol is a premium skill alongside Java and SAP? Its back to our old friend Supply and Demand.
To me success and failure is all done and dusted in the upstream, i.e. the planning and architecture area, whether the delivery is via outsource, code gen tools, or local coders. The play is in high quality portfolio and architectural management, delivered on collaboration technologies which can be extended to any delivery vehicle. (Ok that last line was me pitching.. awh well might as well get with the competition).
In summary, ignoring cultural strengths and weaknesses is a mistake, and to deplete internal skill sets for the quick cost win of outsourcing is extremely risky.
Kelley Johnston: I agree completely, and I’d like to add that what you described points out the problems inherent in the development of silos of risk. The Board is responsible for managing risk at the corporate level, but not always at the broader economic level where it impacts the health of the economy of the country or region itself. This may be because boards in the west need to report short term success or they face a reshuffle of the executive team until the numbers look better. Strictly business.
So this describes two silos of risk, i.e. corporate and government. Perhaps they should be seen as a continuous risk landscape, but they’re treated as individual and independent because, well, the governance of both can only be concerned with their own spheres of influence.
What other silos of risk can be identified? We can think of global concerns such as threats to stability of a region or the global ecosphere, and down below the corporate level where architects define risk mitigation tactics for customers. Ultimately it’s all one continuous risk matrix, but it’s human nature to deal only with what you can deal with.
However, one company’s risk is another company’s business opportunity, so it’s worth exploring this a little further.
Risk silos tend to develop around generally-perceived areas of threat. Most of the news we read in the business trades ultimately concerns threat of shareholder dissatisfaction, and the response to that is directed at the executive team. For a sales exec they respond to the risk of not getting their numbers in. A delivery team manages the risk of contract fulfilment and milestone payments, building facilities manage the risk of not meeting OH&S requirments, and so on it goes from top to bottom of the food chain.
I see from your English textiles example that there appears to be another risk silo to manage, that of managing the risk of future revenue streams by ensuring we do not undermine our future capabilities. Globalisation is supposed to bring specialisation, but by abandoning all areas of low return today we do risk missing out on the next technological pendulum swing. Bill Gates recently covered this in an apperance before a US Congressional committee (http://www.microsoft.com/presspass/press/2008/mar08/03-12MSUSInnovationLeadPR.mspx) where he voices some very real concerns about borrowing from the future to fuel today’s progress.
We have to develop tactics to ensure we have a revenue stream today, that’s certain, and that’s good management. But for a true strategic risk management, that is ensuring we have a revenue stream well into the future, we do need to add the factor of preserving our capability for the long term into the spreadsheet. Anything less is like planning your retirement by investing heavily in Tattslotto. It might work, but the risk picture is imbecilic.
Now, how can we turn that risk into a business case? And by extension, is there an opportunity there to identify that risk to our customers, along with a plan to manage it for great justice and revenue for all? If we can identify it, we might be able to market a solution, and part of that marketing may need to be simply bringing the problem to the attention of our customers.
As a thought experiment, can anyone think up a fake press release that would present a Logica response to this risk from the future? How would such a thing read?
Alexander Rivkin: Gee, this is really a can of worms. Just my couple of cents into the discussion which though takes it a bit sideways. All below is IMHO:
A quote from Terry Pratchett: “If you are not geography, then you are history!”
The thing with the skills outsourcing is that it complies with the “comparative advantage” rule of the modern economics which roughly states that one should engage only in the activities he can do better than anyone else and should not deplete resources for the activities that can be done cheaper and more efficiently somewhere else. <..>
Please note that while Bill Gates addresses three points on which the Congress should act to support innovation he still mentions immigration, as the US needs to borrow/steal outside talent, which does mean that America really starts losing its competitive advantage if it is forced to stay self-sufficient. This and other points indicate that the States may not have internal capacities for growing their own innovation talent. And this is what may be the problem with skills outsourcing in IT (I hope that I am not stretching the logic here) – by outsourcing lower level activities the West (here: those who outsource, they just happen to be in the West) deprives itself from the environment from which future designers and architects/innovators will come from. <..>
Bangalore trying to go up the food chain is normal – it is normal for systems/societies/business at some point to evolve and grow both in capacity and capabilities. Sooner or later the West will have to compete with Bangalore/Eastern Europe in the design and architecture space, because if there is not enough people with programming/development experience around today, where the future designers/architects/innovators will come from? The IT is a knowledge industry and the knowledge is learned by doing something and growing with the scope of the things done. There are definitely cultural differences between countries involved, quality, distance, security and time zone issues and I absolutely agree that they negatively impact Bangalore’s competitive advantage, but I guess people tend to learn… Remember the opinion about the quality of the Chinese made goods 10-15 years ago? Which leads to the question: should the West preserve the current skills in the name of the future development and competitiveness?
I think trying to preserve specific skills can be dangerous as the skills may never be needed while resources will be spent for maintaining them (like mothballing old weapons hoping to use them in future wars). <..> Since one can not have unused capacity for the name of the future as it goes against the business principles as highlighted by Kelley, <..> I think what one can do meanwhile is to preserve the knowledge. Note, I am talking about the knowledge, not the skill which to me means preserving actual people and capacities. And preserve the knowledge in a such way that it can be retrieved and relearned quickly and easily. <..> So the technologies/skills do not get lost – they may not be used, but the knowledge about them is there and to store it costs much less than employing someone just because of their old and rare skill which may not be used. <..> I guess that knowledge preservation is more applicable to the IT, rather to others, more machinery/manual skills extensive industries, but… (and I know that this is an old idea, but with a slightly different twist, so it is slightly more than just “knowledge management”).
<…>
Vincent Dermody: Alex, I agree totally …. I think
I did warn of the can of worms….
My opinions are based upon looking at Ireland as a micro model of India, and look at the outcome. In the mid 80’s Ireland ramped up huge a IT profile acting as the outsource capacity for UK and Europe, usually under Guise of American Multis. Long story short, everyone got wealthy, cost of living soared, skill shortages etc etc. Now we have an overpriced economy servicing US and UK business being services by eastern European outfits. The fear is that US will realise that Ireland is just a middle man and go direct to Czech or Polish companies. In twenty years in Ireland Intel sprung no new products from Ireland, all innovation came out of Portland and Israel, neither outsource centres. So outside of the employment, net benefit to Ireland is zero, actually the downside is that cultural education took a back seat in the last 20 years while we produced a nation of IT workers. It’s no coincidence that the last Ireland Noble Literature was Heaney in early 90’s just before the boom. This is from a country who produced 7 winners in Lit in the previous 40 years.
Another twist on this rollercoaster of global economics, the youngest age economy in 2025-2035??? US. Oldest ?? China. Reversal of one of the key drivers of growth in an economy.
Back to the day job, our strongest pitch is going to be as the enablers of strategy, i.e. run the architecture and portfolio aspects, the “brain thrust”, leaving the back office stuff to the best case provider, where ever. Stay in the middle and out of the fringes!
Kelley Johnston: What a lovely can of worms! Best thing to use for fishing.
At one major bank I noticed an interesting trend – there was a strong internal desire to have any development they could stuffed into Excel as “Macro development” (i.e. huge amounts of VBA). Why? Because they (line management, not IT) could contract someone locally rather than jump through the /definition/design/->Mangalore loop. Their IT group had a policy of having software developed offshore due to the very real cost differential of paying programmers in Rupees, but the line managers really preferred being able to talk to programmers directly, and went around behind IT. Although they had some successes with offshoring, for anything other than very large projects the overall C/B was razor thin and the waterfall workflow was, to be blunt, painful. This led to some ah, interestingly bulky spreadsheet collections.
They were highly portable environments though, and that didn’t hurt. How else can you quickly port an application to another company outside your influence? Toss them a spreadsheet. There’s a lot of precedent for going this way instead of SaaS (which is still new and not entirely trusted, mostly because it doesn’t look like a spreadsheet) and an awful lot of momentum for doing it that way. As in “billions of dollars” of momentum. I may have mentioned this before, but there’s a disturbingly large amount of the world’s money living entirely on the humble spreadsheet. There’s no question that a bespoke development would have been better for some of those apps, but their success criteria did not include technical elegance.
I think the working difference in the above case can be traced back to the evolution of titles and skill categories as evolved over time – they needed an on-site Programmer / Analyst, and a remote coding capability wouldn’t have done the job. The VBA developers we had, had advertised themselves as “Excel macro programmers”. Upper management thought of them as spreadsheet analysts, but in actuality they were old-school Programmer/Analysts and both they and line management knew it. They combined the two skills — they didn’t just code, they provided detailed requirements analysis that required them to interact with the business people, in particular to parse the very detailed financial formulae into program requirements, and to test the results with them quickly. It’s kind of like the old university footpath problem — there are paved footpaths between buildings, but watch the worn bits in the lawns to find the paths that are truly the most efficient. If you can hire a programmer/analyst only by calling it something else, well, look for some interesting job title interpretations. Be flexible or die.
Every initiative in IT will be faced with the /time/quality/cost/ triangle (pick any two). The decision whether to offshore a project or not will impact all three to some extent, but time tends to suffer the most. When putting together a bid, you’re often blind as to what the cultural preferences are (perhaps not surprisingly, banking tends to put quality, then time at the top of the tree) but that’s what the salesmen are paid to know. It might be IT 101, but it’s probably good to get the customer’s preferences wrt. that triangle before settling on an approach. The success rate should be higher when our approach vs. their preferences match, but sometimes it’s hard to dig that out before you draw up a solution.
But all those spreadsheets out there scare me. That’s way too much VBA to be healthy, and I think this falls into the category of one of those “silos of risk” I mentioned before.
Lovely market, though. <…>
Vincent Dermody: Kelley,
A Presentation I gave to the PMI breakfast meeting in Feb may interest you. I spoke about the exact issues your raising, I call these the grey apps and the Ghost Enterprise Architecture.
I believe the decision is not whether to offshore but to regiment or not! i.e. do you run a prototype production (a la google solutions) paradigm, as a rapid response, and then migrate to a permanent ITIL level footing in time. The old tag “you can have it fast or you can have it right” no longer is enough. The reality is that business may be willing to wear more volatility for greater speed to deliver. This is also the target area of App generators and Model driven Enterprise applications.
The charm of it all, as your pointing out, is that in the current M&A, and divestment loaded market, the IT struggle will be as much about bringing together the Grey Apps of two organisations as it is about combining the SAP installations. This is why should open out our definition of applications. Excel is not an application, it’s a technology which enables applications, these being the different spreadsheets, each being as different as SAP and Maximo.
For reference, The Intel Fabrication which opened in Kirya Gat, Israel in 2005 was speced, designed, built, financed etc, using ~50,000 spreadsheets. The number one risk to the program delivery office through the 3 years of commissioning was …. ????
Excel 2003 upgrade!
Kelley Johnston: Nice one, Vince. I like your Grey Apps portrayal, and thought that slide pair that showed the cogs slipping past Architecture was a hoot. . (BTW What in the heck were you using for presentation development? That did *so* not look like Powerpoint or Visio. Caught my attention, it did, thought it looked pretty good.)
I think the question of “whether to offshore or not” vs. “whether to regiment or not” is difficult, because I see them as somewhat conformant. Offshoring tends to be highly regimented for one reason — the need for unambiguous and accurate written requirements goes up as the communications differences increase, i.e. any environment that does not facilitate face-to-face communication well.
Or so it’s perceived. However I once inherited the architecture of an offshored development (Telstra/NetCracker) where the offshore devs were in the same time zone, but still rather remote geographically — Moscow and Vladiovostok. We ended up dragging most of the team on-site in rotation because of the need for face-to-face meetings, which damaged the budget somewhat. This was primarily due to a cultural development attitude difference that far exceeded the time zone factor. They were bright, they were competent, they knew the product, they spoke English, but they did not relate well to written documentation.
I learned from one of them that it was simply not the way they did engineering back home; they talked, they had meetings, and writing things down could get you into trouble. Different approach, but then it’s pretty clear that it works for them. Took us a fair bit of time to leap over that gap. <…>
But sometimes you just want someone who knows VBA… Only 50,000 spreadsheets? I think the bank I worked for can beat that…
How to trip an elephant February 28, 2008
Posted by nexusone in Collaboration, Enterprise Architecture, Industry Vendors/Technologies, Open Source (FOSS).Tags: Alternative ERP, ERP, Open Source ERP, Web Native
add a comment
Issues
CIO’s of midsize businesses and indeed larger businesses face a challenge when looking to install new or replace/update aging enterprise resource planning systems (ERP’s). They not are seeing many choices as the traditional ERP software vendor’s target Tier 1 accounts.
For many businesses, their existing and aging back office systems presents a challenge with a variety of databases and many software programmes installed over decades – all interconnected in an idiosyncratic manner. To manage this complexity IT departments have grown significantly and much of this costly resource now goes on keeping these aging systems going rather than addressing new and changing business needs. Flexibility is the key for smaller businesses that may be growing rapidly through acquisition and/or have a need to rapidly integrate new customers operational and service requirements.
In parallel to this the consolidation of business application suppliers has left many CIO’s feeling locked into two large providers – Oracle and SAP. The lack of competition in the marketplace has resulted in an environment where there has been little pressure to innovate. ERP applications need to offer a more attractive cost and benefit model and be more nimble in terms of supporting and responding to changing business needs. These are becoming concerns in an era when businesses are being asked to respond to an increasingly dynamic business world.
Many CIO’s that have gone through the experience of revamping their ERP systems have done so only to realise that the replacements were big, expensive and took a lot of time and resources to customise for their needs. Today many companies run ‘newer’ versions of the same ERP software from two main vendors. It can be argued that these systems have not delivered on the promise to fully integrate and intelligently control complex business processes while at the same time being flexible and adaptable.
Emerging Alternative
Consequently, there is an increasing desire to find an alternative and the term ‘open source ERP’ has become an increasingly popular search item and an interesting emerging technology. The reason for the interest is the promise of agility and the potential to adapt rapidly to changing business circumstances utilising technologies based on the Internet. Businesses should not be shackled by the limitations of ridge systems whose design is based on an earlier generation of client server technology.
The adoption of Open Source ERP’s has the potential to change the role of the ICT response within an organisation as internal developer teams have the ability to customise the services of an open standard base system without recourse to expensive external proprietary IT integration/programming resources. The benefits of Open Source ERP’s revolve around the use of open standards, reduced costs of access and deployment and a flexible Web architecture which lower the overall total cost of ownership when compared to more traditional applications.
We may be now reaching a tipping point where a large number of CIO’s at mid sized businesses, or even larger businesses, start to get their heads around the benefits of Open Source ERP deployment. Today many businesses run and/or are experimenting with Open Source. In other words many businesses have already established the foundations that will enable them to assess and plan a move to an Open Source ERP.
There could be significant potential for Open Source ERP providers. For instance in the UK figures from the Office for National Statistics indicated that just over 6% of 8,000 businesses surveyed were using ERP systems. We could surmise that a similar picture of ERP use may be prevalent in other industrialised countries, including Australia.
Another indication of interest in Open Source ERP comes from the numbers of vendors and projects that are currently in play. A quick search of Google will throw many vendors and Open Source ERP development projects.
Who are these new Open Source ERP vendors? There are a number of quite mature and highly functional offerings that are Web native, open standards based and user centric in design – examples of emerging Open Source ERP platforms are Openbravo, Compiere, OpenPro, xTuple and webERP.
Citrix XenServer Competition for VMware February 22, 2008
Posted by roxiecat in Citrix, Industry Directions, Industry Vendors/Technologies, Microsoft, VMware, Virtualisation.Tags: Citrix, Citrix Presentation Server, VMware, XenServer
add a comment
Citrix have now released XenServer part of their Citrix Delivery suite, is this product going to be a real competitor to VMware I am hoping so but time will tell. Some of the advantages I see with this path Citrix are taking is that they now have a set of products which covers a very good range of customers requirements.
-
Virtualising applications with Citrix Presentation server been around forever and a day
-
Virtualising desktops, Citrix got in to this market a couple of years ago initially with their Desktop Broker product which essentially just acted as a nice interface between the desktop and VMWare hosting the virtual desktops nice but not a must have. This changed to Desktop Server last year with a few enhancements and less need to rely on VMWare but still not a complete product. Now called XenDesktop and used in conjunction with XenServer no requirement for VMware (according to Citrix anyway).
-
Application streaming – with the release of Citrix Presentation Server 4.5 they introduced things such as application streaming up against the likes of Softricity, it appears okay but haven’t seen many customers using this function yet
Newest introduction is XenServer direct competitor is VMWare (and possibly MS Virtual Server) looking at the initial write ups it looks pretty good its based on the Xen hypervisor model so very efficient they have different flavours which follows their existing model (platinum, enterprise, standard etc).
One of the things I quite like is that their management interface does not require a dedicated server it can just be hosted on a desktop from what I’ve seen it looks to have all the functions you’d expect of a management interface, is it useful or easy to use that I’ve yet to see it operational as I’m yet to download my free version and try it out. Its free though you don’t pay for it unlike the VMware console so thats a good thing.
While I don’t necessarily believe that one vendor fits all in this case I think Citrix have done the right thing virtualising the server platform is almost a natural evolution for them given they were trying to virtualise most other things as well. I’d just like to see some real competition in the market against VMware not because I don’t like their products they are very good and well established but just because like anything competition is good.
Price wise looks on par Enterprise edition perpetual cost is US$2600 2 sockets and $400 annual subscription so pricing wise it should compete very nicely with VM, I haven’t seen Platinum Edition pricing but the only obvious difference between it and Enterprise is the ability to Dynamically provision virtual and physical servers so cost wise shouldn’t be far off Enterprise.
The last bit which I think is just wonderful now that Citrix have their own virtualised server product they are quite happy to state that they will support and recommend virtualising Citrix Presentation Server something funnily enough you could never get out of them when it was either Microsoft Virtual Server or VMware.
The value of adding intelligence to information systems February 18, 2008
Posted by nexusone in Knowledge Management, Situation Awareness.Tags: knowledge, personal agents, situational awareness
add a comment
Introduction
We have just journeyed through what was a distinct phase of development of information technology and systems. This has provided much of the world with access to interconnected systems, extensive data storage and increasingly standards based software.
Unfortunately we are finding that there is a mismatch between what our current information systems are capable of delivering, the increasing need to make better use of the increasing volumes information collected and our ability to deliver this information to end users in a meaningful way.
For individuals the issue is not the quantity of information but the ability to find, make use of and share relevant information.
Information Silos
From a historical perspective we have structured our organisations around functional silos. Like the siloed nature of the enterprise, information has also become siloed. This in turn has implications for the effective sharing of knowledge. Consequently it is very hard to create a comprehensive view of the organisation from an informational sense.
We are now rapidly moving from an era where competitive advantage was driven through increased transaction efficiency to one where competitive advantage will be increasingly secured through the effective use and sharing of knowledge.
This requires a new generation of business systems that are able operate in an environment that is increasingly dynamic and subject to rapid and discontinuous change; something that our current generation of information systems are simply not designed for.
The Need to Share Knowledge
The emergence of integrated networks has lead to increased attention being focused on the potential to deliver information to individuals within what some describe as a ‘guided framework’. Our current generation of technologies is largely based on simple pre-programmed rules that are suited to well known and understood problems within stable and predictable environments.
The challenge is a complex one as there is a need to be able to utilise information in complex and discontinuous environments as well as predictable environments. These discontinuous environments are known in the literature as ‘wicked environments’ and require the capability to understand and respond to multiple views of what may be an uncertain and unpredictable future.
Generally there is confusion between the meaning of ‘Knowledge’ and ‘Information’. This confusion has arisen from the way our current information systems operate and they way we interpret the information we gather. Indeed, knowledge and Information are very different creatures as Churchman (1971) clearly articulated.
“To conceive of knowledge as a collection of information seems to rob the concept of all of its life…knowledge resides in the user and not in the collection. It is how the user reacts to a collection of information that matters.”
The current generation of information systems collects information but does not assign any human interpretation to the information that is collected and stored. Knowledge is subjective and is based on a user’s interpretation and the context to which any action is based and the relevant information that is used in making a decision, or decisions. Therefore, it would be correct to observe that knowledge resides in human understanding and not in the information that has been collected within systems.
This misunderstanding has significant implications in terms of trends regarding information systems expenditure and the inability of these systems to support knowledge creation and information sharing. We have observed millions of dollars spent on systems that simply gather information in the mistaken belief that this constitutes effective knowledge sharing.
In reality, knowledge is contained within people and knowledge creation occurs when individuals interact with each other and/or when they use, share and discard relevant information in support of decision-making and human interaction.
Our Systems Need to Interpret and Understand
It is evident that the business world must be able to manage increasing complexity and rates of change – the delta, given by the increasingly wicked environment that is characterised by a world discontinuous change For ‘wicked environments’ it is difficult to ensure a unique interpretation of ‘best practices’ since knowledge is created dynamically by individuals as they use the information stored in systems.
A wicked environment totally defeats the traditional software model based on prediction and reaction that is underpinned by pre-programmed heuristics characterised by the operation of our current generation of information systems. That is responding to known repeatable and predictable problems.
An increasing volume of information is being ‘trapped’ within information systems. However, these systems are simply not capable of supporting human interactive concepts and cannot, therefore, enable knowledge sharing between many individuals. Indeed, our current systems are not set up to enable multiple interpretations of information they contain and are, therefore, not capable of ‘unlearning’. That is to be able to discard irrelevant and obsolete information and unlearn what was previously learnt via human interaction with relevant (relevant to the individual) information.
What is required is a system that has been designed from the perspective of understanding how individuals within organisations go about creating and sharing knowledge from information sources and add intelligence to our systems.
A More Dynamic Learning Organisation
Traditional or ‘Tayloristic’ organisational structures tend to contain processes that tend to be static. They also seek compliance and adherence via predefined, goals and rules which are also largely static. These have been designed to ensure conformity. They may, however, severely inhibit creativity and initiative. The enforcement of ‘rules’ is negative, as it explicitly defines what cannot be done and in turn reinforces single loop learning.
In view of this and given the increasing dynamic nature of the business world there is need to also accommodate increasing levels of innovation and experimentation. Therefore, to support new business operational models our information systems must also be able to accommodate dynamic change that may encompass arational information, progression, change and multiple perspectives of the possibilities.
IT systems must, therefore, evolve the capability to interact with human users in order to exploit previous experiences, whilst at the same time ensuring that past experiences cannot hinder ongoing experimentation and the assimilation of new ideas.
Business Management in a Knowledge Sharing World
What we may see via the emergence of new class of Personal Agent driven technologies are new ways of organising the management and operation of a business (or government). From one that moves away from the traditional model of command and control to one that increasingly embraces self-control via the dynamic interaction of individuals and teams.
The culture of ‘command and control’ is not suited to a rapidly changing business environment that is both ill structured and complex, and where operational rules may require rapid review in response to business challenges as they emerge.
What might this new business model look like? Technologies with embedded intelligence will ensure a higher degree of participation and teaming via knowledge sharing and increased adherence and awareness by the individual to the strategic vision and direction of the organisation. This suggests that an organisation may evolve from a hierarchical command and control structure to one where the enterprise is horizontally managed as management is closely aligned to core business processes.
In this new world individuals increasingly have all the ‘relevant’ information required and are able to make informed decisions and share knowledge. There are a lot of business operations around the world that currently tout this type of business operation now but they will not experience enhanced performance, as they are not capable of doing so with the technologies they currently have in place. The new model of business operation will increasingly require management to maintain a holistic view of business operation where all aspects of the business are aligned and which in turn is understood by all individuals within the business.
Knowledge Sharing Enabled
The application of Personal Agents makes our information systems relative and dynamic to our needs and provides each human user with a tireless ‘counterparty’ that undertakes information retrieval, analysis, etc. in accordance with its owners needs – every minute, of the day.
This capability enables multiple feedback loops and delivers information to each individual that is fully contextualised to that individuals needs. This allows the role of each team member to evolve and change over time based on the information received, actions taken and the interaction between individuals and teams.
More importantly, the application of a these technologies will present the opportunity to realise the pent up investment in existing accumulated Information across the enterprise by co-opting them to support the guided framework.
In this way, knowledge sharing can take place in a non-hierarchical way, as the network of Personal Agents will work to fetch, collate and deliver contextualised information to each individual team member in accordance with their role within the organisation.
As already noted this offers up the intriguing possibility of the application of new and very innovative organisational models driven via the benefits of interaction arising through the network effect.
Supporting the collaborative value chain February 18, 2008
Posted by nexusone in Collaboration, General, Knowledge Management, Multi-tenancy, Systems Integration.Tags: Collaboration, Multi tenanted, Value Chain
add a comment
Introduction
To understand the value of an electronically enabled Collaborative Value Chain (CVC) that allows multiple participants to seamlessly share business process and information we need to examine how technology has evolved.
Technology Waves
The first technology wave saw the emergence of mainframes. In a very narrow sense these systems tend to be very efficient at what they do but are ‘hard coded’ and/or have had increasing layers of middleware wrapped around them such that it makes it very costly, time consuming and risky to change the underlying business logic. Consequently, they are highly inflexible, slow to deliver change and are costly to maintain.
The next wave of technology innovation started in the 70’s and included the co-ordination of transaction processes within the enterprise around a common core – Enterprise Resource Planning systems (ERP’s). However, with these systems any variation to the standard modules within the common core tended to be hard and costly to adapt. Consequently, much activity tends to be done outside these systems using desktop tools, stand alone ‘point’ solutions or complex integration with other systems.
The next wave saw the rise of the Internet and ‘eBusiness’ applications. The issue with these embryonic Internet based systems was that many of them were not fully integrated into the rest of an organisation’s infrastructure. This resulted in security issues, process disconnects, multiple data handling and poor service delivery. The desire to make these systems more effective has generally been achieved at the cost of flexibility as they became increasingly hard wired on a node-by-node basis into multiple other systems. However, they established the potential of inter and extra enterprise process and information exchange.
The most important point to be gleaned from the various technology waves up to this point is the mismatch between:
- The flexibility required to support changing business strategy and that delivered by the underlying applications, and;
- The efficiency of business operation and access to business services by end users, customers, partners, etc.
Collaboration and Multi Tenancy
The latest technology wave has seen the emergence of collaborative multi tenanted platforms that are based on pure Internet architectures. These technologies enable the sharing of insight and business processes within the enterprise and more importantly external to the enterprise, no matter the geographic location of the participant.
Emerging technologies that support the CVC have been designed to address a number of key issues such as inter and extra enterprise process access, multiple systems integration, configurable workflow, federated information, security and identity management.
The Challenge of Extended Enterprise Collaboration
Complex programs of work involving the design and deployment of assets, product development and infrastructure support have an innate complexity that makes configuration, project management, execution and information management especially challenging.
Typically, along the CVC a number of participants utilise different systems, multiple data formats and variable processes, which makes it almost impossible for all participants to be on the same page as regards project data, tasks, etc, and this in turn mitigates any attempts at improving co-ordination between participants.
Establishing an electronic single source of truth that maintains the currency of project and other data to all participants is critical for CVC success. The volume of information that can be created and exchanged on a large program can be very large. It is easy to see that it is very costly to continually co-ordinate all of the information if the CVC is being administered via a combination of paper-based documents and/or ad hoc systems that are isolated from each other. Simply moving the documents to an electronic format only serves to create whole new set of data and information co-ordination problems along the CVC.
Complexity along the CVC is also exhibited at the systems layer via the need to share and exchange data with multiple enterprise and other applications. A large number of these systems store and manage information related to costs, assets and other financial information in multiple formats.
The ability of these systems to support a collaborative value chain is extremely limited. This is where the systems that enable the CVC come into their own as information and business processes exchanged within shared multi tenanted architecture orchestrates and exchanges information with multiple systems along the CVC.
Enhanced Co-ordination of Activities
Organisations whose primary business is to manage projects related to complex business solutions – products, assets and infrastructure, have a need for an electronically enabled CVC in order to co-ordinate activities, data and processes across multiple commercial boundaries while simultaneously supporting highly complex mix of users, partners, suppliers, etc.
There is an explicit requirement to manage all aspects of the life cycle of complex programs and projects within the CVC – from the initial bid phase, design to implementation and then on-going maintenance and decommission. Typically industries that will benefit from an electronic CVC include - manufacturing, government, construction, oil and gas, utilities, mining/primary processing, heavy engineering and transportation.
Enterprise centric applications such as ERP’s are not architected to support intra and outside the firewall information and business process exchange with multiple partners. Applications that support the CVC have been designed to address these challenges via a pure Internet architecture that enables:
- User rights access (access is via an Internet browser);
- Configurable workflow without the need to code;
- Comprehensive integration and data choreography between the CVC system and multiple other systems – a system-of-systems approach to deployment, and;
- A federated approach to information, security and identity management intra and external to the enterprise.
Opportunity for Business Improvement
The lack of collaborative support for the merging of data and content with business processes within a single integrated ‘eco-system’ is a significant untapped opportunity for business innovation and efficiency gains. Enabling the CVC across many industries increases the efficiency of product and asset design, lifecycle management of assets and infrastructure, and reduces the cost of co-coordinating complex programs of work as business processes, documentation and workflow is shared by multiple CVC partners.
Summary
Effective co-ordination enables efficiency saving to be compounded along the CVC. Participants along the CVC irrespective of their size and technological capability can collaborate and work with each other using up-to-date, relevant (to them) information within a synchronised environment.
Whilst many organisations may have made extensive systems investments, many of these enterprise centric systems are unable to provide the collaborative end-to-end process support to enhance the co-ordination of activities along a CVC.
Single tenant enterprise based systems that have their origins in client server architectures are not architected to provide collaborative support across and between multiple participants so there is a need to consider the potential and business benefits of an electronically enabled CVC.
An alternative application development approach February 18, 2008
Posted by nexusone in Application Generators, Software Development Value Chain.Tags: Application Generation, Software development, software development approach
add a comment
Introduction
The automated generation of software code is certainly not a new concept. However, there is a renewed interest as the limitations of our current generation of applications and approach to application development are becoming increasingly evident in terms of supporting both new business models and the delivery of large scale applications. In view of this, a new approach to software development will be required to ‘deliver’ a new class of real time integrated applications that leverage the capabilities of hardware and fully supports end-to-end value chain operation in an increasingly integrated and collaborative world
The Problem
One of the themes that can be observed with respect to the evolution of application development is that it has become a “paint by numbers” exercise. For example, the evolution of software development has brought with it a proliferation of enterprise design patterns and best practices. This is a good thing – increased use of design patterns points to the increased potential of and acceptance of reusing information.
However, this good intention rapidly breaks down when the current Software Development Value Chain (SDVC) is applied. The reality is that code is rather hard to write consistently. Programming is a highly contradictory mix of some considerable thought and lots of menial tasks. The menial also tends to be highly repetitive in nature. To implement a large scale system using the current development approach, programmers must face the chore of endlessly repetitive tasks.
Human deficiencies such as miscommunication also play their part and become increasingly insurmountable as the scale and complexity of the intended application increases. Miscommunication occurs when business analysts misinterpret business user’s needs, then designers misinterpret analysts, programmers misinterpret designers, and finally testers test code that is not what users expected. In this ‘ecosystem’ all the participants operate within completely different and highly disconnected frames of reference – users and analysts operate with words, designers with graphs of various kind, programmers with code, and testers with executables.
These various forms of expression are hard, if not impossible to bridge, especially when the application development process lacks formalisation, traceability and a coherent change approach. Moreover, none of development tools work together in a coherent manner to create a development platform that supports a fully integrated, seamless, traceable and coherent transformation of artifacts throughout the entire application development process. Humans (no matter how cheap) laboriously coding lines in isolation from each other are incapable of building the next generation of applications, or replacing legacy systems – machines are much better at ‘joining all the dots’.
At this juncture it is illustrative to briefly reflect upon the evolution of the manufacturing industry and contrast that with the current status of software industry. It is evident that the software industry has yet to pass through an evolution in a similar vain to that which occurred in manufacturing in terms of automation, continuous production and the application of robotics to evolve a new ‘factory’ or ‘engineering’ driven approach to application development.
The early promise of a revolution via code generators as potential tools to replace programming teams eventually proved elusive as so much was still left to the programmer to ‘figure out’. Inevitably there was a need to hand craft and code all the areas not covered by the generator. Generator toolsets are not new and there is a broad proliferation of generator types. The diversity of the generators’ approaches and varying technologies (of both the code being generated and the tool used to do the underlying work) are indicative of a software market brimming with ideas – but noticeably and importantly lacking in formal standards and approaches.
An approach
To address the limitations and the endless cycle of repetitive coding it was concluded that repetitive tasks are what computers are good at and a new highly rigorous engineering approach should be applied to the complete generation of nearly 100% of all the components of an application from an engineering design.
This new approach (Application Generation) moves beyond other generation models in terms of combining API generation, database tables, business logic, user interface, etc, in a single holistic design and development environment. This has the potential to liberate the project team to concentrate on the all important design phase (understanding and interpreting the business vision) and then fine tuning the application once it is has been generated.
This also promises to set a new rigorous standard for application development and may provide a massive head start in any new application development project by being able to generate and deliver an application as a completed product rather than a ‘toolset’. This may also represent a considerable step change in application development in terms of productivity and our ability to replace legacy systems and deliver innovative application designs.
Application development can become extremely rapid and highly iterative. For instance when coming to a ‘fork in the road’, using the traditional SDVC approach programmers will pick one road or another – the choice of either can be very costly and time consuming. Applying a highly automated approach the project team can simultaneously follow both or many roads and simply choose which option and configuration to experiment with as a final solution.
A model or simulation, of the ‘real world’ can be rapidly built during the design phase in order to identify the business events that the resulting application is required to support. This is an extremely powerful concept in the sense that it allows the application designers (Business Analysts) to focus on confirming their understanding of the application business domain with the eventual users of the system in a wholly business context prior to the finished application being generated.
The potential gains in development speed and cost reduction via this approach cannot be emphasised enough: we are potentially looking at many orders of magnitude in terms of productivity and richness of application design and sophistication. Adopting this approach has the potential to move us significantly beyond the capabilities of our extant development eco system.
Another potential impact would be to change the total cost of application ownership. Currently the prospect of making even a simple change to a large legacy application or integrating multiple and disparate systems are viewed with trepidation by ICT managers and programmers. A simple change could have far-reaching knock on effects, resulting in time-consuming iterative changes and the need to trap all the resultant problems and issues that cascade from the intended change.
Utilising the new development approach the prospect of making a simple change is suddenly not quite so costly, time consuming and risky. An auto generated application will be fully versioned as changes are made to the design and not the underlying code. Following changes to the design a new version of the application could be generated in a day. Within this environment the application would never age as new thinking and ideas could be constantly incorporated via the application generators as these would be constantly maintained to reflect the latest information systems thinking. In this context it is far easier to think of maintaining a single properties file via a change in the application design instead of maintaining millions of lines of aging code.
Summary
This has the potential to introduce a new generation of multi tenanted real time collaborative applications that are ultra-responsive to changes business requirements. The application of an engineering framework and associated methodology to auto generate applications has the potential to introduce a considerable step change in application productivity, scale and design innovation.