close

super

Imaging Science

Software Product Development-the Unsolved Mystery of High Tech

images

One of the most puzzling things in high technology, especially for executives on the business side of things, is the software development process. It’s the high tech equivalent to the “Black Hole” phenomenon made famous in Astronomy. Endless resources can be poured into a software development project, yet there never seems to be an end in sight. Monitoring the progress of a software project can be like peering into the darkness of a seemingly bottomless pit.

And why is this so? It seems that in such a typically high tech, yet now familiar activity, we would have long ago figured it out. We’re in an age where PCs, with the power of supercomputers from just a few years back, are slapped together like bicycles, and don’t cost much more than a bike. You would think that the process of software development would, by now, amount to simply turning a crank–yet it seems it hasn’t advanced much since the dawn of the PC age.

I don’t mean to be overly dramatic here. But I have been in the high tech and software industries since 1983, and I have never been involved with–or even personally known of a software project–that came in on time and under budget. Never. Not even ONCE. That’s pretty incredible. Now, I realize that there are almost certainly examples of on-schedule projects out there, but they are in the overwhelming minority of all software that is developed.

THEY ALWAYS SLIP

It’s just accepted in the software business that projects will slip, particularly when the end result is an actual commercial product. The businesses I’ve been involved in have tried everything. When I’ve had direct responsibility, we’ve taken every approach imaginable. We’ve tried an approach of “No upfront planning”–starting coding as soon as possible. We’ve tried “extensive and laborious upfront planning”–with a detailed spec, and a prototype, completed prior to initiating production coding. I’ve seen many projects that tried using intermediate steps, falling between the two extreme approaches above. We’ve tried to start projects by purchasing as many “pre-written” modules as possible, used various languages and platforms, hired dedicated debugging personnel, tried code-generators, assembled both small teams & large teams, you name it–we’ve tried it. Project schedules have been written with the utmost conservatism, at the insistence of senior management. No matter. Across a number of different companies, EVERY project has slipped out beyond the wildest nightmares or everyone involved.

ONE LINE OF CODE, TWO WEEK DELAY

Once I asked our lead programmer to change ONE LINE OF CODE in a well-established product. He estimated it would take just a few seconds to make the change, and a few hours to test it. The change would be final by the end of the day, at the latest. Two weeks later I was still waiting for a solid product.

Now, don’t misunderstand. I’m not writing this to bash software developers. While not every developer I’ve worked with over the years has been a world-beater, I’ve had the fortune to work with quite a number whom I consider to be outstanding. Many have been extremely bright, dedicated and hard working. But no matter how much thought, time and effort went into it, our projects always slipped. A lot. We usually ended up with a commercially successful product, but how much better we could have done, had we figured out a way to bring the product to market on time? The only saving grace was the competition had the same problem.

MORE ART THAN SCIENCE

The reason, I believe, is that writing software remains much more of an art than a science. This statement is a bit surprising, until you look a little deeper. There is certainly much methodology available to guide a team to use sound, time-tested practices in developing software. However, a software program is really just a document written in a foreign language. That’s why C++ and Java are called Programming Languages. It’s also interesting that many programmers who aren’t classically trained in computer science come from an English, Music, or other language background. Just like in writing a novel you are guided by syntax, grammar and writing rules, writing a software program is very similar. In writing a novel you are essentially creating a unique work that has never been done quite the same way before. Also true for a software program. If you knew exactly how the writing of a novel or software program would go before you began, there would be no need to write it–it would have already been done. While there are plenty of rules (representing the science) to writing good software, at the end of the day it’s a unique, written creation (the art).

COMPLEXITY OVERWHELMS EXPERIENCE

Another key reason why conquering the software development process has appeared to be impossible, is the vastly increased complexity associated with software projects today. Let’s face it, the average piece of software today does a lot more, and is quite a larger in terms of the number of lines of code, than at the dawn of the PC era. The creation of graphical user interfaces really started the explosion in the size of software code. So much more code is needed, to bring the user-friendly products of today to life. And what enabled this, of course, was the dawn of the modern operating systems, especially the overcoming of the 640K limit that the original DOS operating system required PC programs to run in. Windows and other modern operating systems almost eliminated the need to write software efficiently, at least from a code size perspective. Today the embedded systems world is pretty much the last bastion where writing code efficiently lives on–it’s pretty much a lost art to most of the software world. It’s interesting to speculate–if we were still writing in the 640K box, would software development have evolved to a more predictable science today? Maybe, but the world would be a less productive as a result.

WHAT TO DO FROM A BUSINESS PERSPECTIVE?

As you can tell from this discussion, I don’t have a great set of answers on how to bring software to market on time. It’s one of the great frustrations of my career. I still strongly believe that getting the best people you can get will make the problem better, even if it can’t be solved completely. I also believe in keeping development teams small, with the minimum of structure necessary to run the project. It’s also wise, in my opinion, to structure your product releases to be more frequent, while adding fewer new features per release. This should at least minimize the pain of each release slipping, since the slip time of each release should be less. And knowing what you’re going to be coding, developing a spec document and sticking to it (no feature creep!) is also sound practice, although I’ve found it to be no panacea. Beyond that, I’m at a loss. Maybe one of you has a strong opinion on how to bring projects out on time? If so, send me a comment–this is a discussion worth having.

Article Source: http://EzineArticles.com/373485

read more
Imaging Science

Lead Generation Techniques and Software for Changing European Markets

lead-generation-conversion-rate-german-pineiro

It’s obvious that every business under the sun is highly dependent on its marketing and sales team for generating profit. But for marketing personnel to maximize their performance, sales leads are the most crucial link in the entire chain of the revenue generation process. In fact, the quality and quantity of sales lead often become the key differentiators between rival organizations vying with each other to grab a slice of the market share pie. However, society as a whole has witnessed a sea change in computing prowess and its implications during the last decade. No wonder, incipience of Information Technology as the key driver of our lives has revolutionized the very concept of the lead generation process too.

Lead generation has been conventionally perceived as the marketing process of instigating interest of the target group in a single or range of products and services, aimed at creating a sales pipeline. But contemporary practices of this technique have been developed with emphatic usage of multiple digital channels that encompasses integrated online and social platforms due to the emergence of self-directed buyers, who performs a comprehensive online research before deciding to purchase from a particular vendor. This is more true for tech-savvy young generation of developed economies like the European Union, USA, Canada to name a few; the trend is gaining momentum in developing markets too. Also, reliance on 3rd party data provided by market research firms has been diminished by the concept of owning big data. Most importantly, data analytics has made business decisions extremely fact-based, which is in sharp contrast to the earlier mindset of combining intuition and personal experience.

In this context, of particular interest is the dynamic economics of the European Union, which is evolving and consolidating at the same time. It’s a tricky environment and desperate time for marketing professionals across companies and countries. The biggest challenge for them is to generate high quality leads – the pre-requisite for driving successful campaigns and converting prospects to customers. The complexity is compounded by lack of affordable resources that can provide crunch data for feeding effective tactics like telemarketing and promotional emails. Fortunately, Chief Marketing Officers are pulled out from the abyss by Information Technology sector, which periodically launches versions of lead generation software for UK, France, Germany and other major economic powerhouses in Europe – helping to revamp the balance sheets and investor sentiments across the continent.

But change is inevitable and lightning sometimes strikes twice! The socio-political scenario in the UK is going through a radical change. After Ireland, it’s time for Scotland to break the old ties and establish its independent identity. As a consequence, from a marketing perspective, lead generation software for the UK will be of greater relevance. Economic pundits are speculating the possible impact of this split up because of numerous modifications in identification pointers like website domain names, postal addresses and phone numbers. If these changes are not sorted out at the earliest, they might trigger instability in businesses. Definitely, vendors providing lead generation software for the UK, after political reconciliation, will need to revise their source codes and algorithms to cater to the business requirements of the modern United Kingdom.

Article Source: http://EzineArticles.com/8731094

read more
Imaging Science

Breaking the Growth Barriers in the Information Technology and Software Sector

AdobeStock_135873223

There’s nothing automatic about corporate growth, particularly in the information technology industry; build it and they will come is a myth. In the real world there is either a structured, process-driven growth cycle, or stagnation–and stagnation is automatic. Inherent to growth cycles are barriers, real-world business challenges that put some software companies out of business and spur others on to break through those barriers to higher levels of success. Overcoming those barriers is the very definition of growth; when you break through a barrier, you’ve achieved growth.

You’re a software or information technology company, prosperous in 2005, which means that you have a good product, you’ve made some smart decisions and you’ve already broken through some growth barriers. You’re successful. Now what?

Any company, regardless of age or size can experience barriers to growth: if you find it hard to develop and maintain market momentum; are tied to your entrepreneurial management style and unable to scale; have reached a level of revenue or income and stagnation is settling in; or if your revenue is generated from one product, service, client, or industry, then you’re at the next growth barrier, you need to be able recognize it, and you need to prepare to cross it. This overview discusses the typical growth barriers that confront many IT and software companies, and how external consultants can be used effectively to break through those barriers.

Strategy Constrained

At this point your company or product is in the early stages of its evolution. You’ve landed a handful of key accounts, and you’re encouraged by your early success. Now you need a plan, a strategy, a concrete agenda that will move your information technology company from being a collection of talented people with a common goal, to being a team with a common goal and a battle-tested strategy for achieving that goal.

This stage is characterized by:

    o Perpetual realignment of company strategy

By delivering guidance on corporate strategy, a marketing strategy consultant may be able to help a company like yours to:

    o Define untapped solution areas
    o Make technological platform decisions
    o Select appropriate geographic markets
    o Write actionable business plans

Capital Constrained

You’ve taken your software company or product as far as you can on your savings. Or perhaps you’ve made a few key sales that have kept you afloat. In order to move your company on to the next phase of development you need an infusion of capital to hire skilled employees, make key acquisitions and fuel your growth. Technology is your specialty, not prospectus writing for venture capitalists.

This stage is characterized by:

    o Inability to fund business strategies
    o Decision-making based upon short-term cash-flow issues rather than long-term strategy

Through road-show ready business plan development and introduction to network of VCs and angel investors, a strategy consultant may be able to help a company like yours to:

    o Author compelling investment prospectuses
    o Define immediate and long-term financial requirements
    o Execute successful finance road shows

Skills Constrained

Typically a company finds themselves at this stage of development with a great product built on sound technology aimed at a particular industry, and their first round of financing secured. They also find themselves with a weak or non-existent positioning statement, a reactive product management process, exhausted or ineffective sales skills, and a strictly opportunistic business development strategy. Company growth is limited in part by the notion that the product will sell itself because it is superior to any other on the market–indeed, it may be the only offering. Revenue growth is limited because the product is defined in terms of its functionality, not its value to the customer.

The offering, and by extension the company, is still being defined by technologists; it has yet to be married with a solid business development plan, marketing or sales acumen. More worrisome is that the very success of your company has brought you to the attention of major players who do have personnel and strategies dedicated to driving you out of the market; they view you as a threat. Your days of flying under the radar are over.

This stage is characterized by:

    o An attractive market
    o A compelling product
    o Adequate financial resources
    o An inability to develop market momentum

Through sales, marketing, product management and business development acumen, a sales and marketing strategy consultant may be able to help a company like yours to:

    o Recruit and manage skilled personnel
    o Craft compelling product and company positioning
    o Create effective sales vehicles and sales strategy
    o Recruit and manage appropriate and motivated alliance partners

Process Constrained

A company at this stage of development is typically successful, no longer a start-up, is being run by a management team, has been accepted in the market, and is competitive. However, fundamental product development and sales and marketing management processes have not yet been accepted within the foundation of the corporate culture. This means that the solution to most situations are human-based, usually hand-crafted by the management team; the foundation of proven processes is absent.

This stage is characterized by:

    o Market acceptance
    o Ability to compete with established players
    o All actions are hand-crafted, typically by the senior management team

By introducing repeatable, best-of-breed processes for sales, marketing and product management, a sales and marketing strategy consultant may help a company like yours to:

    o Introduce effective and repeatable product management, marketing and sales processes
    o Reduce day-to-day reliance on senior management resources

Innovation Constrained

Organizations at this stage of development have achieved a great deal of success; processes are ingrained, product development is streamlined, and sales and marketing systems are in place. But by definition the market keeps shifting: your product is being eclipsed by younger companies with products that perhaps even capitalize on your R&D and experience; your market may be saturated to the point that the double-digit growth rates your investors have come to take for granted are a thing of the past. You need a new product or a new market or both.

This stage is characterized by:

    o The management team no longer involved in all decisions
    o Stagnation beginning to creep in with respect to products and markets

By introducing fresh thinking about new markets, products, and channels, a business strategy consultant may be able to help a company like yours to:

    o Author innovative channel strategies
    o Leverage existing products into new vertical and geographic markets
    o Capture requirements for nascent product lines
    o Embrace change as the source of competitive advantage

Article Source: http://EzineArticles.com/44984

read more