Oct
27
The six goals of an IT strategy
Filed Under Strategy | Leave a Comment
Andy Blumenthal describes the following these six goals that need to be addressed in an IT Strategy:
- Information — delivering the right information to the right people at the right time; providing for information management, including information sharing, information assurance, privacy, accessibility, and records management.
- Technology — developing and maintaining a sound, secure, reliable, cost-effective IT infrastructure that enables mission execution.
- Process — supplying world-class service to customers, by providing defined, repeatable, and measurable processes for systems development life cycle, configuration management, change control, and problem resolution; also, facilitating business process improvement and reengineering.
- People — ensuring the education, training, certification, and personal and professional development of IT staff.
- Governance — managing IT though structured governance processes including capital planning and investment control, enterprise architecture, IT planning, and portfolio management.
- Stewardship — administering resources including IT assets, finance, and human capital for the design, development, maintenance, and operation of IT solutions.
I do agree that these six goals provide the foundation for a sound IT strategic plan. Theses goals should then be supported by a set of SMART Strategic Objectives and a set of Actions that management is held accountable to execute.
Technorati Tags: IT, Strategy, Leadership, EA, Management, Planning, Objectives, Goals
Oct
15
Top ten software architecture pitfalls
Filed Under Uncategorized | Leave a Comment
An interesting article by Eoin Woods, on what he considers to be the top ten software architecture mistakes - mistakes that are often learned the hard way through the school of hard knocks!
- Scoping Woes - "Many projects end up being doomed to failure before they’ve really started, simply because their scope was wrong. The most common problem is the infamous ’scope creep’ where the scope of the system steadily increases as more and more people get their say…. The converse problem is where scope is artificially limited (perhaps to meet timescales) and so the effectiveness of the system is compromised. Architects need to maintain a particular focus on scope problems that relate to system qualities. Does the system really need to be available 24×7x365? Or would working hours plus Saturday mornings be sufficient? It is really true that no security is needed beyond simple login? Once logged into the system can users really perform any system operation? Catching these mistakes early in the project will help to greatly increase the probability of success."
- Not Casting Your Net Widely: "A related mistake that many of us have made is to focus on just a couple of our system stakeholders – classically the acquirer (who is paying for the system) and the end users get all of the attention. However there are often quite a few other interested parties who need to be involved. Consider people like auditors, systems administrators and DBAs, testers, helpdesk staff, the development team and so on."
- Just Focusing on Functions: "It goes without saying that a key quality of a system is what it does. People buy or build systems in order to perform useful work and so it’s crucial that the system does what people need it to do. However, a trap that many new software architects fall into is focusing entirely on a system’s functions without considering any of its other properties…. Unfortunately, while we do need to get the system’s functional processing right, this is rarely enough; unless the system exhibits a whole range of qualities (such as performance, security, maintainability and so on) it is unlikely to be successful."
- Box and Line Descriptions: "At some point in the development of the system you will need to write something down to explain your ideas for the architecture of the system – in other words, you’ll need an architectural description. … The question is, how do you go about describing something as complex as a modern software intensive system? The approach that we’ve all tried at some point is the single, all inclusive, ‘boxes and lines’ Visio diagram that tries to show everything…. There are two reasons why the huge Visio picture doesn’t work well as an architectural description: firstly, it’s trying to show too much information in a single representation, and secondly, no one is really sure quite what each of the different types of symbol that you’ve drawn mean….. The solution to this problem is to decompose your large diagram into a number of well-defined, non-overlapping views of the system such that each view addresses one aspect of the system structure (such as runtime functional structure, software module structure, data structures or deployment environment)."
- Forgetting That It Needs to be Built: "It’s always very satisfying to create and prototype an elegant, sophisticated design for a new system and it’s always more interesting if we manage to use some novel new technologies and techniques along the way. However, when we do this, it’s often worth asking ourselves which stakeholders our new design is really serving – the answer may well be ourselves, first and foremost (and possibly the development team)."
- Lack of Platform Precision: "Modern information systems nearly always rely on a fairly sophisticated ‘platform’ of hardware and software to provide them with standard services like a runtime environment, data storage facilities and application security. The platform that information systems use has got a lot more complex in recent years ….This increased complexity has inevitably resulted in a much greater chance of incompatibility between the various components, as there is more to go wrong and more chance of you using a particular combination for the first time. This situation means that its no longer sufficient to simply say that you “need Unix and Oracle” when specifying your platform. You need to be really precise about the specific versions and configurations of each part in order to ensure that you get what you need. This will allow you to avoid the situation where you can’t deploy your system because someone has helpfully upgraded a library for one part of the platform without realising that it means that something else will no longer work."
- Making Performance and Scalability Assumptions: "An experience that many software architects will relate to is that of surprises arising during system build and test. This is probably never more the case than when considering performance and scalability – if nothing else because there are just so many things to go wrong! ….. The only real solution to these problems is constant vigilance and assuming nothing! A little performance and scalability paranoia will help you to keep considering these factors throughout the project and to keep challenging your assumptions. Start considering performance and scalability early, create performance models to try to predict key performance metrics and spot bottlenecks and get stuck into some practical proof-of-concept work as your design ideas are forming."
- DIY Security: "….This quality is becoming ever more important as systems are exposing interfaces outside the organisation and simultaneously becoming more and more audited due to regulatory factors and corporate governance initiatives. A mistake made in many systems over the years has been to try to add security into the system using “home brew” security technology. Be it custom encryption algorithms, a developer’s own auditing system or an entire DIY access control system, locally developed security solutions are rarely a good idea."
- No Disaster Recovery: "Many systems reach production without major mishap and manage to run successfully there for years, without any significant interruption to service. Others aren’t so lucky and suffer some sort of major failure involving entire system recovery a number of times during their operational life. ……The key to getting resources to implement a DR mechanism for your system is to be specific and quantify the cost of system unavailability in a number of realistic scenarios. If you can also estimate the probability of the scenarios occurring then you can use these two figures to convince people that DR is important and to justify a certain level of budget to implement it."
- No Backout Plan: "With the best will in the world, things go wrong and while the previous tip is a reminder to ensure production resilience, you also need to remember to allow for disasters during deployment…..Make sure that whatever happens during the deployment of your system or upgrade that you have a documented, reviewed and agreed backout plan to allow you to restore the environment to its state before you started deployment. At least this means that you can undo the damage and avoid total disaster if the worst happens!"
Reflecting on my experience, this seems to be a solid list of pitfalls that are worth keeping in mind when next approaching software architecture.
Technorati Tags: Software, Architecture, Experience, Mistakes, Pitfalls, Learning, Technology
Oct
11
Strategy+Business’s most enduring ideas
Filed Under Strategy | Leave a Comment
Strategy+Business celebrate their 10th anniversary by looking back at the conceptual breakthroughs that appeared in their magazine and their readers voted on which they felt were the most likely to last, the result is "Our 10 Most Enduring Ideas". The qualities of these enduring ideas has five key qualities:
- It is timely: It addresses, in a new, compelling way, an issue that is important to people right now.
- It has explanatory power: It reveals the hidden patterns and interrelationships that shape the phenomena we see, and that other theories or disciplines have not fully explained.
- It has pragmatic value: It can be put into practice to produce replicable results.
- It has a robust empirical foundation: It can be tested with real-world experience, and ideally with measurable data, and can survive theoretical challenge.
- It has a natural constituency: A group of key people are ready to hear it.
The top 10 enduring ideas voted for are as follows:
- Execution - "It’s not your strategic choices that drive success, but how well you implement them. As Larry Bossidy and Ram Charan pointed out in their book Execution, the most critical quality for managers is the ability to put ideas into action." - Related Articles: Larry Bossidy: The Thought Leader Interview, Ram Charan: The Thought Leader Interview
- The Learning Organization - "A learning organization is one that is deliberately designed to encourage everyone in it to keep thinking, innovating, collaborating, talking candidly, improving their capabilities, making personal commitments to their collective future, and thereby increasing the firm’s long-term competitive advantage. In putting forth this idea, we invoked such influential authors as John Seely Brown (The Social Life of Information, The Only Sustainable Edge); Arie de Geus (The Living Company), and Peter Senge (The Fifth Discipline, Presence)." - Related Articles: Arie de Geus: The Thought Leader Interview, “The Living Company? by Arie de Geus, An Interview with John Seely Brown, The Fifth Discipline: The Art and Practice of the Learning Organization
- Corporate Values - "Companies that care about ethics, trust, citizenship, and even meaning and spirituality in the workplace (or that simply articulate their values carefully) perform better in the marketplace than companies that care just about ‘making money.’" - Related Articles: Why Bad Things Happen To Good Companies, The Value of Corporate Values, Daniel Yankelovich: The Thought Leader Interview
- Customer Relationship Management - "The cultivation of long-term relationships with customers, including awareness of their needs, leads to highly focused, capable companies that try to make consumers ‘part of the family.’….. One fascinating qualification came from correspondent Malcolm Wicks: ‘Being customer-centric is not the same as CRM, which is more likely to be sales-centric. Being customer-centric is all about doing things that most benefit your targeted customers, even when there is no direct benefit for your company. As everything gets more commoditized, companies that are most customer-centric will be the most successful.’" - Related Articles: How the Auto Industry Should Embrace CRM, A New Window onto CRM Success
- Disruptive Technology - "As Clayton Christensen noted in The Innovator’s Dilemma, technological innovation radically alters markets by undermining incumbent companies — which are vulnerable because their offerings are all tailored to the needs of their existing customers……… Professor Christensen’s idea lives on, to an extent, because of its two-part form. First, there is a warning: Your most cherished policies and practices — in this case, the hallowed sanctity of a successful customer relationship — can include the seeds of your undoing. Second, there is a way out: Preempt your own comfort zone, adopting a disruptive technology yourself before others beat you to it." - Related Articles: Clayton M. Christensen, The Thought Leader Interview, Top-Down Disruption
- Leadership Development - "You don’t have to rely on ‘putting the right people in place.’ You can train all employees to be better choosers, better strategists, better managers, and in the end, better leaders…… Companies can be both more effective and more responsible with smart leadership development practices in place (several people referred to emotional intelligence in this vein). Leadership is important, not because of the leaders’ actions in themselves, but because of the actions that everyone else takes on their behalf." - Related Articles: Can We Really Train Leadership?, Noel M. Tichy: The Thought Leader Interview
- Organizational DNA - "Leaders can design an organization’s structures — incentives, decision rights, reporting relationships, and information flows — to induce high performance by aligning them with one another and the strategic goals of the enterprise. Elucidated in the book Results, by Gary L. Neilson and Bruce A. Pasternack." - Related Articles: The 7 Types of Organizational DNA, The Four Bases of Organizational DNA, The Cat That Came Back
- Strategy-Based Transformation - "Beyond the ‘blank page’ of reengineering, this is the redesign of processes and organizational structures, and the consequent cultural change, to fulfill the strategic goals of the enterprise. In an ideal universe, this would not even be a management concept, because, as one correspondent put it, ‘All company activities should be aligned to the enterprise strategy.’" - Related Articles: Symantec’s Strategy-Based Transformation
Customer-izing the IRS, 10 Principles of Change Management - Complexity Theory - "Markets and businesses are complex systems that can’t be controlled mechanistically, but their emergent order can sometimes be anticipated. An understanding of the ways that complex systems evolve can help managers intervene and act more effectively. Over the years, complexity theory has come to mean a family of related, but sometimes contradictory, theories — including chaos theory, artificial life, probability theory, and even system dynamics — of intricate and nonlinear systems in which so many elements interrelate that the effects appear random and unpredictable, even though it is possible to trace patterns of causality and probability." - Related Articles: Between Chaos and Order: What Complexity Theory Can Teach Business, Complexity Theory: Fact-free Theory or Business Tool?, Power Laws & the New Science of Complexity Management
- Lean Thinking - "This type of process and management innovation is exemplified by the Toyota production system. Employees use a heightened awareness of work flow and demand to cut waste, eliminate cost, boost quality, and customize mass production." - Related Articles: Flextronics: Staying Real in a Virtual World, Leaning Toward Utopia
I think that this is a great list of ideas. As a strategist are you familiar with the ideas and concepts described above? Which of these are you actively implementing in your organisation?
Technorati Tags: Strategy, Ideas, Business, Leadership, Management, Research
Oct
10
Gartner’s top 10 strategic technologies for 2008
Filed Under Uncategorized | Leave a Comment
Computerworld has published "Gartner’s top 10 strategic technologies for 2008" describing a "strategic technology" as a technology:
"… that may have an impact on a business. And impact could mean driving an investment or posing a threat…. If your competitors adopt one of these technologies does that put you at a competitive disadvantage?"
Gartner’s list is as follows…..
- Green IT. This is a path that more and more companies are taking as a socially responsible strategy. A green approach is multifaceted and can affect data center operations in a number of ways, such as moving workloads based on energy efficiency and using the most power-inefficient servers only at times of peak usage, said Carl Claunch, an analyst….. But data centers also face the threat of regulatory action to curb power usage.
- Unified communications. The move to unified communications systems is happening as the world shifts from analog to digital over IP networks. But it’s not just the obvious things that will converge, such as telephony and messaging. Companies may make security videos part of this convergence, which may give businesses, for instance, new ways to analyze a retail outlet’s traffic patterns.
- Business process management. This is not a technology, its a way of using technologies to enable companies to simulate, model and design the processes that run their businesses. A key trend is the evolution of the business process management suite, Cearley said. This may include, model-driven development, content and document management, collaboration capabilities, system connectivity, business intelligence activity monitoring and management, rules and systems management.
- Metadata management. This is becoming important as companies integrate data — for instance, customer and product data and warehouse data.
- Virtualization. Virtualization technology is critical, but not just for consolidation; it also offers a way to mirror production systems for disaster recovery.
- Mashups. Mashup tools allow users to take things from multiple Web sites and combine them together to create a Web-centric composite application. "You want to start building mashability into everything you do," Cearley said.
- The Web platform. This is the model for services in the future. An example, said Cearley, is the cloud computing announcement this week by Google Inc. and IBM, which are jointly offering a platform for use by universities for application development initiatives, including Web 2.0 projects. "Put this on your radar screen," he said.
- Computing fabric. A server design that is still a work in progress, computing fabric involves treating memory, processors and I/O cards as a pooled resource instead of a fixed arrangement. Blade servers allow you to do some of this pooling with I/O, Claunch said. "Be aware of this, because blades are not the final step," he said.
- Real World Web. This is the name of the computing experience made possible by ubiquitous access to networks of even-increasing bandwidth via mobile technologies. Thanks to the Real World Web, users can have ready access to all kinds of information, including travel information or the location of a jar of pickles in a grocery store.
- Social software. Social software includes podcasts, blogs and wikis — anything that fosters the development of social networks.
This list is worth considering as part of your 2008 - 2010 Strategic Plans.
Technorati Tags: Trends, Gartner, IT, Strategy, Architecture, Planning, Business, Management
Oct
10
The Power of Integrative Thinking
Filed Under Alignment, Enterprise Architecture, Thinking | Leave a Comment
- They examine problems as a whole, with careful consideration of how different parts of a situation fit together, rather than analyzing different elements in isolation.
- They consider multiple avenues of causation for a problem, as well as possible nonlinear relationships between cause and effect, rather than thinking of terms of simple linear relationships between a single cause and effect.
- They embrace the tension between opposing ideas, and they use that conflict to generate creative new alternatives, rather than making simple either-or decisions.
Integrated thinking is a critical mode of thinking which architects need to learn to master. Integrated thinking is essential if architects are to "address the enterprise as a whole". One of the challenges faced by integrated thinkers and architects in particular is cognitive overload. Michael Roberto makes the following suggestion, on how to move forward when experiencing cognitive overwhelm, based on Karl Weick’s famous 1984 article entitled "Small Wins":
"…large, complex problems can sometimes be cognitively overwhelming. Thus, he argued that decision-makers should break complex problems into parts, and seek a series of ’small wins’ as a means of generating solutions to complicated issues. …seek small wins while working through the organizational decision-making process required to solve the problem."
In my architectural and strategy work, I have often experienced cognitive overwhelm when attempting to solve complex problems. I have found that by just starting, by simply writing down your initial thoughts and ideas generates the small wins required, provides a foundation for discussion and helps to move the whole process forward.
How do you deal with cognitive overwhelm in your architectural work?
Technorati Tags: Complexity, Problem, Integrative Thinking, Architecture, EA, Enterprise Architecture, Thinking, Decision-Making, Paradox
Oct
5
Heuristics as an Architectural Tool
Filed Under Definition, Heuristic | 1 Comment
The book "The Art of Systems Architecting" discusses the importance of heuristics as an architectural tool. The authors define a heuristic as follows:
"Heuristics are guides along the way - channel markings, direction signs, alerts, warnings, and anchorages - tools in the larger sense"
The word heuristic has it’s origin in the Greek word ‘heuriskein‘ which means "to find a way" or "to guide" in the sense of guiding a boat through treacherous waters. I liked this definition of a heuristic from Steve Pavlina:
"An heuristic is a rule for exploring a search space that can help you get close to an optimal solution when you cannot explore the entire search space."
Dave Snowden, discussing heuristics, provides the following insight:
"Heuristics are common sense sayings that make us think about things."
Heuristics are especially useful in decision-making, in providing guidance, and in solving ill-structured problems. There are primarily two types of heuristics:
- Descriptive heuristics: these describe a situation or context but do not provide any guidance on how to resolve it.
- Prescriptive heuristics: these provide guidance about what to do about a specific situation.
Carefully selected heuristics are great tools that architects can use to guide their journey into the unknown, they a great way to consciously apply the wisdom, insights, the lessons learned and gleaned from personal experiences and from the experiences of others. Heuristics are most useful when they are used as a set. Some example heuristics are:
- The beginning is the most important part of the work - Plato, 4th Century B.C.
- Build and maintain options al long as possible in the design and implementation of complex systems. You will need them.
- In order to understand anything you must not try to understand everything.
- Politics, not technology, sets the limits of what technology is allowed to achieve.
Deliberately and consciously selecting a set of heuristics at the start of a project is a great way to reuse the wisdom gained from past experiences. A team discussion on the most appropriate heuristics that should be "top of mind" and used as a set of guides, shared by the team, to guide their journey. Heuristics are especially important given the increasing level of complexity and uncertainty in architecting large systems.
In book "The Art of Systems Architecting" the authors provide the following rules to consider when applying heuristics:
- If it works, then it’s useful.
- Knowing when and how to use a heuristic is as important as knowing the what and why.
- Heuristics work best when applied early to reduce the solution space.
- Strive for balance - too much of a good thing or complete elimination of a bad thing may make things worse not better.
- Practice, practice, practice.
- Heuristics aren’t reality either.
To conclude:
“Heuristics are an essential complement to analytics, particularly in situations where analysis alone cannot provide either insights, or guidelines.”
How much have you learned as an architect? Have you codified some of your lessons learned into succinct expressions or heuristics to guide future architecture efforts?
Technorati Tags: Heuristics, Principles, Architecture, Rules, Guidance
Oct
2
The IT Alignment Trap
Filed Under Alignment, Strategy | 2 Comments
A MITSloan Review article highlights research on how organisations approach making their IT departments more effective. The traditional approach for organisations seeking to improve the performance of their business, by leveraging information technology has been to increase alignment between their business and IT objectives….
"For many years now, companies seeking to deliver higher business performance by harnessing IT have focused on alignment. By alignment, we mean the degree to which the IT group understands the priorities of the business and expends its resources, pursues projects and provides information consistent with them. Almost every company we have worked with recognizes that IT and business priorities must be tightly linked. In practical terms, that means IT spending must be matched to the company’s growth strategies. There must be shared ownership and shared governance of IT projects. It’s become something of a mantra voiced by senior business executives: A lack of alignment can doom IT either to irrelevance or to failure."
At first glance this seems like reasonable advice and even common sense. Closer alignment between an organisations strategic objectives and the IT divisions objectives must produce better results… Not so! Research, which consisted of more than 500 senior business and technology executives worldwide, followed up with in-depth interviews of 30 chief information officers and other senior leaders from a broad cross-section of companies, uncovered the following….
"….even at companies that were focused on alignment, business performance dependent on IT sometimes went sideways, or even declined."
This raises a key question….
"Why wouldn’t a high degree of alignment alone bring about improvement? In our experience, a narrow focus on alignment reflects a fundamental misconception about the nature of IT. Underperforming capabilities are often rooted not just in misalignment but in the complexity of systems, applications and other infrastructure……. Complexity doesn’t magically disappear just because an IT organization learns to focus on aligned projects rather than less aligned ones. On the contrary, in some situations it can actually get worse. We’ve seen firsthand how IT organizations provide dedicated resources, such as application developers and data centers, to each business unit — in order to improve alignment. They develop customized best-of-breed solutions designed to serve each business’s unique needs. Meanwhile, they ignore the need for standardization and upgrading of legacy systems. They create a labyrinth of new complexity on top of the old, making system enhancements and infrastructure improvements ever more difficult to implement and leaving significant potential scale benefits untapped……. ‘Aligning a poorly performing IT organization to the right business objectives still won’t get the objectives accomplished.’ That, in a nutshell, is the alignment trap."
The alignment trap is illustrated in the following matrix….
The research findings:
- 18% of respondents believed that their company’s IT spending was highly aligned with business priorities — that IT, in other words, always or nearly always established and acted on priorities that supported their business strategy.
- 15% of companies believed that their IT capability was highly effective, that IT ran reliably, without excess complexity and always or nearly always delivered projects with promised functionality, timing and cost.
- Almost three-quarters of respondents believed that their IT capability was neither highly aligned nor highly effective. These companies occupy what the researches call the "maintenance zone."
- Companies in the maintenance zone recorded a slower rate of growth — 2% below the three-year average in the survey — while spending the same as the average every year on IT.
- Only about one in five senior executives reported that their company was highly aligned.
- When looking at the 11% of companies in which IT was highly aligned but was not highly effective, the researchers found those companies were considerably worse off than their counterparts in the maintenance zone. While their IT spending was 13% higher than average, their three-year growth rates were 14% lower than average.
- 7% of respondents said that their IT organizations were both highly aligned with business strategy and highly effective in delivering what was asked of them. But those companies as a group recorded a compound annual growth rate over three years that was 35% higher than the survey average.
"How have these companies managed to reach that point? ……… For the majority of companies, the single most important task has been to forget about enhancing alignment for the moment and to focus first on increasing the effectiveness of the IT organization. In order for IT to enable growth, that first move is critical — and it’s the one that companies often get wrong."
3 Essential Steps for Improving IT Effectiveness
- Emphasizing Simplicity. Any company’s first step should be to focus relentlessly on reducing complexity rather than increasing it…. Reducing complexity means developing and implementing companywide standards. It means replacing legacy systems where possible and eliminating add-ons. It means building new solutions on a simplified, standardized infrastructure rather than extensive customizing or more layering on top of whatever happens to be there.
- "Rightsourcing" Capabilities. Choosing the right source for a capability — maximizing effectiveness while minimizing costs — is thus a critical consideration.
- Creating End-to-End Accountability. Companies cannot build effectiveness unless they hold IT and the business accountable for delivering expected results on time and on budget….. True accountability reflects organizational changes: Executives get the information they need to measure IT progress; IT people are held accountable for outcomes; line managers give IT the resources it needs and then work closely with IT leaders to exercise joint supervision of individual initiatives.
Technorati Tags: Alignment, IT, Governance, Strategy, Research, Leadership, Effectiveness, Efficiency

