Nedenstående er konceptet jeg har udviklet til struktur og styring af udviklingsprocessen for et kommercielt software produkt. Konceptet kan også anvendes på f.eks. udvikling af internetløsning til specifik kunde/organisation.
The basic goals for the management of the
development process shall provide a high grade of flexibility making it possible
to fairly easily adapt to changed market conditions.
development shall provide the highest possible degree of creativity for the
on design goals all items in the specifications for a product release shall be
prioritized in A, B, and C priorities where the A-priority is most important for
fulfillment of the design goals and C-priorities are less important. Each item
must be assigned to at least one design goal.
methodology of prototyping shall be used to continually having the possibility
for performing validity test against design goals, usability, customer demands,
and market trends.
Time Box methodology shall be used to monitor the progress of the development
and to ensure the possibility for easily adoption of adjustments to the
remaining development plan.
The development process itself is managed in four
Prioritizing, and Planning
and release procedure
Communication of roadmap and development plans
These four tracks are further described in the
The length of the total development process may
vary from 3 to 12 month depending on time-to-market considerations.
1. Specifications, Prioritizing, and Planning
The first step in the specification phase is to set the
design goals for the new product release in question. Each design goal is
justified by customer demands or market trends and of course shall be in clear
context with the core concept of the company.
step is to describe the function/feature items that make the release. This
document is termed “Specifications for the release” and will over the
development period go through several iterations and become more and more
detailed in line with the design and development of the individual function/features.
For each item the following makes up the description:
Link to design goal/goals
Priority (A, B, or C)
Estimate in man days
Why this function/feature
At the end of the development period and at time for
the release a “Final Detailed Specifications” document is produced and
describes every single function/feature that has been developed for the release
An ongoing activity included in this track is creation
and maintenance of development plans and schedules.
The development period is divided into time boxes of
typically one calendar month each.
For each time box a number of specification items are
planned. Where possible each time box is planned in a way that makes it possible
to change direction for the release if customer demands or market trends change.
A time box will end up with an “executable”
prototype of the product, which is evaluated and tested to a certain degree
depending on coherence to other functions/features planned for a later time box.
The evaluation of a time box may result in changes for
subsequent time boxes.
3. Test and release procedure
Test and quality assurance is considered as an
extremely important task. That is why the first test sessions are started at a
quite early stage of the development process. As soon as the prototype produced
by a time box is at a level where functions/feature can be tested to a degree
that makes sense, it will be tested. Besides testing that functions/features
work correctly in accordance to specifications both usability and the coherence
with the concept is tested.
the development period is ended – “feature freeze” – a final test period
is started. In this phase a comprehensive test procedure is put into action.
Every single function is tested, the usability is tested, and the coherence to
the concept of the product is intensively tested.
In the final test period a beta test program for
partners and key customers is executed as well.
test period results in one or more release candidates and the last one will be
the one that is put into production.
The release procedure consists of a number of activities to make the
product available for partners and customers and to ensure knowledge transfer at
different levels and in different forms (workshops, white papers, fact sheets,
4. Communication of Roadmap and Development Plans
The communication of road maps is an important subject
and one should at any time carefully evaluate the balance between providing
general and specific information on features, target release dates etc.