Effective Engineering e-Newsletter – 9/11/2003
This is your bi-weekly e-Newsletter from Effective Engineering Consulting
Services (www.effectiveeng.com).
If you would like to receive Effective Engineering e-newsletters as
they are published, please send an email to e-newsletter@effectiveeng.com,
and we will add you to our distribution list.
eN-030911:
Development Methodology Basics: Management of Development
By
Tom Dennis – President, Effective Engineering
[tdennis@effectiveeng.com]
Development Methodology is a framework for, and is essential to, proper
product development. Such methodology covers the appropriate Stages of
Development, which include Requirements & Architecture,
Build & Test, and Release & Support (see
eN-030828 – Development Methodology Basics – Stages of Development).
It also covers the Management of Development, which will be addressed
here. As stated in the previous e-Newsletter, the subject of development
methodology is broad, and can be very complex. This and the previous
e-Newsletter simply attempt to cover, very briefly, what many of the
elements of a Development Methodology are.
Management of Development:
Many elements of a development effort must be managed if the development is
to proceed to a successful conclusion. While many engineers would like to
believe such Management of Development is not really necessary, it is, and
without it, bad things can, and likely will, happen. We will very
briefly discuss some of the elements here. Subsequent e-Newsletters will go
into more detail on individual elements.
► Planning Documentation – This includes planning documents
covering how the development effort will be approached, and includes all
aspects of the development effort, including marketing plans, sales plans,
project plans, development plans, test plans, documentation plans, customer
support plans, sustaining engineering plans, etc. These plans demonstrate
that all aspects of the development have been thought through and have been
agreed to in advance.
► Development Documentation – This covers all aspects of
development documentation, including Marketing Product Definition (see
eN-030703 – Product Definition: Define What It Is and What It Isn’t!),
functional product specifications, high-level design specifications,
detailed design specifications, module and sub-module design specifications,
test specifications (unit, module, integration, functional, system-level,
etc.), performance specifications, usability specifications, etc. These
documents, updated as required, establish the historical and current record
of what is being developed, and enable people new to the development to
quickly get up to speed.
► Development Standards – Some level of “formal” development
standards are needed so that design reviews can be conducted efficiently,
and so that new people can learn quickly about what is being done in a
uniform fashion. Such standards include design standards (coding standards,
CAD standards, drawing standards, etc.), test standards (unit, module,
integration, functional, system, etc.), documentation standards (standard
documentation approach to ease learning by customers), usability standards
(standard approach to make use by customers intuitive and easy to
understand), etc. The degree of standardization may vary from organization
to organization, but some level of standardization and uniformity is
required.
► Project Documentation – Development projects require good
organization. This requires the establishment of project plans, personnel
plans, other resource plans, project milestones, project schedules,
dependencies, determination of critical paths, etc. As the saying goes,
“Failing to plan means you are planning to fail.”
► Project Control Systems – It is essential that mechanisms be
put in place to control and track what is happening during the product
development process. This includes elements such as design control systems
(source code control systems, design capture systems, etc.), bug reporting
and tracking systems, bug review committees/meetings, linkages between
design control systems and bug reporting and tracking systems, configuration
management systems, product release control systems, test processes (unit,
module, integration, functional, system, negative, regression, etc.),
metrics (design, test, documentation, etc.), and much more. Such control
systems provide the information necessary to make informed decision about
how to best proceed.
► Change Control Systems – Change is inevitable in any product
development effort. New information becomes available, new ideas are
generated, problems arise, people leave or arrive, budget problems occur,
and other sources of change come up. At the same time, changes impact
delivery dates, quality, features, and more. While change is inevitable, it
must be controlled. Some impedance to change is required, and this comes in
the form of a formal change control system, which must be invoked before any
changes are accepted. It is essential to understand the cost of changes
before making any changes.
► Project Management Systems – Without proper management,
projects have a tendency to careen out of control. Project control systems
can provide the information on the status of the product/ project, but only
provide the raw data. Product/ Project review meetings, typically held
weekly, provide the forum for bringing this information together. Effective
project management depends on informed decisions by qualified people. A
steady hand must be maintained to ensure that all relevant information is
available and understood, and that reasoned decisions are made which are
best for the company. A formal Phase-Gate Review Process that calls for
formal reviews at specific milestones, with proceed or stop decisions made
at the gate, and sign-off by all relevant parties, can be a very effective
project management approach.
Constraints on e-Newsletter length have forced this discussion of Management
of Development to be overly brief. Much more needs to be discussed in far
greater detail, and this will be done in subsequent e-Newsletters. Comments
are welcome and encouraged.
Copyright ©
2003
Effective Engineering Consulting Services, All Rights Reserved