|
Many start-up companies create
software or web sites
that never see the light
of day.
Though running
out of funding is one of
the often sited reasons,
many firms simply fail
because they do not
succeed in releasing
great software
applications on time.
Great
Software
So what does great software mean? Great
software requires a deep
understanding of your
feature requirements,
market, and competition.
Demonstrating an
in-depth understanding
of your area will help
you raise Venture
Capitalist funding.
Even if you want
to keep your idea
secret, you must gain a
firm understanding of
your end users.
This goes way
beyond asking a few
close friends in the IT
field what they think of
your concept.
You need to spend
time obtaining feedback
from real potential end
users.
Properly executed
Focus Groups and User
Surveys are great
starting points to
understanding true
market requirements.
Building great
applications is about
viewing the product
through the customers’
eyes.
Early
Feature Definition
You are off to a good start by
understanding your
market requirements
early.
You will then
build your
specifications and early
prototypes on a solid
foundation.
If instead you
learn these facts after
development has started,
you will end up changing
or even adding new
features (also known as
feature creep) in the
middle of the
development cycle.
The
Features, Schedule,
Resources Triangle
Building great software on time is
about balancing
Features, Schedule, and
Resources. Being a start-up, or still trying to raise additional
capital, your resources
are rather limited.
It is very easy
to fall into the trap of
continually adding more
features while failing
to release the initial
version.
Set the bar very
high for what must be in
the upcoming versions.
You can always
add features into future
versions; in fact
customers prefer it this
way. If you do not release your application, you will not be able
to start building your
market share.
Realistic
Scheduling
Being realistic about your schedule
is critical, not only to
you, but also more
importantly to your
investors.
Even if you are
in the most creative
development environment,
a milestones-based
approach is key. Insist
on having the developers
outline what
functionality will be
completed by each
milestone rather than a
schedule being handed
down from upper
management.
With each
successive cycle, you
will gain a better
understanding of your
development team’s
scheduling accuracy.
At the end of
each milestone, the
application should reach
a pre-set level of
minimum stability.
Bugs,
Quality, and Testing
Unfortunately testing is the one
aspect too often
neglected by
organizations.
“We will
stabilize in beta” is
a term often heard from
inexperienced teams.
Your beta release
provides the first
impression of your
software that may
ultimately drive early
adopters to use and
endorse your product.
Even if you
cannot afford to have a
dedicated quality
assurance team, appoint
a minimum of one person
responsible for the
quality of the software.
Give equal
recognition to members
of the quality assurance
as you give to the core
development team.
Bug tracking
tools are essential;
they need to monitor
both the incoming and
fixed rates.
These in turn
will give you a
prediction not only when
you will fix the known
bugs, but also will give
you a feeling how many
bugs still remain to be
found in the product.
Shipping
is a Feature
If a certain product feature is
causing delays either
due to poor scheduling,
quality, or simply due
to its complexity,
consider late feature
cuts.
It is better to
ship a high quality
version now and move
onto the next or
incremental version than
to keep postponing the
current release in an
effort to include that
last feature.
This aspect is of
course infinitely easier
in web-based software
than it is for classic
off-the-shelf software
based applications. In both cases, it is important though to realistically manage
the expectations of your
clients and your
investors.
Helpful
Resources
It is impossible to cover this entire subject in one article.
There are many
books written on product
planning, defining
requirements,
development process, and
releasing applications.
Look for titles
by Alan
Cooper, Steve
McConnell, Jim McCarthy,
Steve Maguire, and
others. You can find a compilation of popular titles here.
What
to expect from a VC?
You have probably heard many times
before that when seeking
Venture Capitalist
funding don’t only
look at the capital they
can provide to help you
achieve rapid growth.
Also look very
carefully at the type of
consulting expertise
they can provide through
their network to make
your new venture a
success.
Finally, ask to
speak to other companies
they have invested in
and find out first hand
how good the advice they
provided was.
Wojtek
Kowalczewski is a
Managing Partner at
ConsulSoft Inc. (www.consulsoft.ca),
Canadian‑based
consulting firm
specializing in Software
Product and Process
Improvement for rapid
growth companies.
|