The Premise

There is still no "Silver Bullet" for software development.  The essential activity is thinking, and the challenge is to allow your best minds to apply their time to thinking -- about defining functions, designing user interaction, partitioning the problem and writing programs.  Certainly there have been great strides in removing the frustrations of assembly language coding and the intricacies of display hardware, but the fundamental problems of algorithms, appearances and architecture still require substantial intellectual effort.  Orangewood Consulting believes that there are three aspects to development of software products and that a balanced approach is required.

The Product

A successful software product must be usable by significant numbers of customers without each of them requiring changes to be made by the development team.  To achieve this, the team must understand the customers’ needs and the technology that is available and emerging.  They must select the relevant technologies and be able to estimate the capabilities of those technologies on the target platforms.  Given this knowledge, a realistic product must be defined that can be implemented and will be valuable and usable by customers with varying needs.  This is the heart of the creative process.  The answer, unfortunately, is not to use customer and marketing inputs as a specification.  These inputs are valuable as a starting point for thoughts and the beginning of an iterative process, but an individual or team must analyze the needs and synthesize a coherent product definition that can be implemented at a reasonable cost.  Orangewood Consulting has a long track record of writing these critical documents.

The People

In a one- or two-person company, there is little distraction from the tasks at hand and the purpose is clear.  When this company hires 10 to 15 software professionals, distractions increase and direction may be fuzzy. In addition, each person is driven by different needs.  A leading software company’s strategy is to hire the brightest people who also understand the business and the technology.  In return for hard work, these people become millionaires.  This is a good strategy.  Fortunately there are many bright people who understand your business who can learn the technologies.  Identifying them, training them and keeping them requires strategic thought.  Recruiting and people management are learned skills.  Orangewood Consulting can help you to learn these skills, working with current managers to help and to coach.

The Process

The last element of software product development is the process by which it is done.  This includes the documents to be produced and the general format and content of the documents; the project planning and tracking; the communication of direction, change and status; and the mechanics of software development such as configuration control, problem tracking and backup procedures.  The process is viewed by some as an end in itself.  Orangewood Consulting suggests that it is valuable, but less important than the Product and the People.  A reasonable process does help to avoid overlaps and gaps in a development, but it is not a substitute for thought.  Introduction of a few simple elements of process will help product development.  Orangewood Consulting can help to select those elements of process that will bring the best value to your development effectiveness.

Range of Services  Experience and Background  Home

Range of Services | Experience and Background | Home