Software Development Process
Recently,
the projects I have worked on have used agile approaches like
eXtreme Programming, Scrum, and Feature-Driven
Development (FDD). Several of the others were significant
projects that successfully delivered using more traditional approaches.
The projects that have delivered successfully did not have a particular
process in common. What
they did have in common was that they each had a good team of
people. The bottom line in software development process is: A good
process is important but good people are more important. The first
statement in the agile manifesto puts it this way "...value individuals and interactions over processes and tools"
(www.agilemanifesto.org).
More on People and Process...
I have worked
on projects of different sizes, in different industries, in
different parts of the world. No
two of these projects had
exactly the same ways of doing things even when they were supposedly
following the same process. This is simply
because no two projects had exactly the
same people working on them or faced exactly the same challenges.
Therefore, I do not subscribe to the idea that there is one ultimate
process that fits all situations.
Having said that, all other things being equal, and I have a choice, I prefer a process based on Jeff De Luca's Feature-Driven
Development (FDD).
 |
During my time at TogetherSoft, I was
also given the opportunity to write a book describing Feature-Driven
Development (FDD) as I understood it at the time. FDD is a pragmatic blend of best practices. Highly-iterative and
driven by client-valued-requirements, it is also model-centric, focused
on high quality results, and generally applicable for larger
project
teams than recommended for Scrum or eXtreme programming.
More
on A Practical Guide to
Feature-Driven Development...
|
Early versions of chapters and content from the book appeared as
issues of the CoadLetter, TogetherSoft's monthly newsletter. Most of
these are still available online at CodeGear's developer network web
site (dn.codegear.com):
Feature Driven Development
'...Software
development process is news again. Extreme Programming (XP) is the
cause of much debate on a number of popular discussion forums. Feature
Driven Development (FDD), pioneered by Jeff De Luca and Peter Coad, is
another process with rapidly growing interest. Superficial similarities
between FDD and XP hide a number of very important differences between
the two processes. ..."
Read more...
Strategies for Maintaining and Improving Quality
'Delivering high quality software is a stated goal of many development
teams and it is a very admirable goal. However, to achieve this goal we
need to, firstly, know what exactly we mean by high quality and,
secondly, have some clue about how to achieve it? ...'
Read more...
Feature-Driven Development to the Rescue
'Much of software development management is about identifying and
reducing risk. There are many risks involved with developing software
in teams of any significant size; most of them people and process
related. ...'
Read
more...
Integrating Best Practices
'Like all good software development processes, Feature Driven
Development is built around a core set of ‘best
practices’. The chosen practices are not new but this
particular blend of the ingredients is new. Each practice compliments
and reinforces the others. The result is a whole greater than the sum
of its parts...'
Read
more...
Projects and People
'...to be successful, unless it is to be used only by
extra-terrestrials, our software development process needs to take into
consideration the peculiarities, strengths and limitations of human
beings...'
Read more...
Communication, Communication, Communication
'Those who work in the real estate industry tell us that the
three most important aspects of real estate are location, location, and
location. The software development process equivalent is communication,
communication, and communication. Communication is taking place
constantly within a software development process at every level...'
Read more...
Accelerated Analysis
"The first process of Feature Driven Development builds an initial,
overall domain object model for a project. Modeling in color is the
best technique I know of for doing this. A set of workshop style
sessions is the best process I know of for doing this..."
Read more...
Developer Ailments
"Developers. You got to love them ... or else they leave you
... with a half-coded system and no documentation! ..."
Read more...
Chief Programmer
Work Folders
'...a short set of
notes exploring the recording of artifacts produced during the two
engine room processes of Feature Driven Development, Design By Feature
(DBF) and Build By Feature (BBF)....'
Read more...
I am slowly starting to update my notes on software development process.
Read more...
|