Google Answers Logo
View Question
 
Q: Evaluation of software development methodologies ( Answered,   0 Comments )
Question  
Subject: Evaluation of software development methodologies
Category: Computers > Programming
Asked by: jamietre-ga
List Price: $25.00
Posted: 05 Nov 2002 11:08 PST
Expires: 05 Dec 2002 11:08 PST
Question ID: 99527
I manage a small group of software developers of varying skills and am
trying to implement standards for development practices and quality
control. I have read most of Code Complete and have read a little bit
about techniques such as XP and Cleanroom. I am not sure how much
these apply to the kinds of projects that I do (typically no more than
1 or 2 developers per project), but we are continually faced with
inconsistent conventions, erratic quality control, and code that is
sometimes difficult to maintain and debug.

I would like a brief explanation of some of the software development
methodologies being used out there, particularly in terms of how it
might apply to a small organization, and in regard to quality control.
References that I can use to evaluate various methodologies (online,
books, whatever) so I can choose on as a starting point for our own
standards would be useful, as well as any insight into this problem in
general.

Clarification of Question by jamietre-ga on 05 Nov 2002 11:24 PST
By the way, we do mostly VB and VBscript - n-tier database
applications and web sites, if that has any bearing on this.
Answer  
Subject: Re: Evaluation of software development methodologies
Answered By: maniac-ga on 06 Nov 2002 18:19 PST
 
Hello Jamietre,

For individual and small team projects there are a few alternatives
that can be applied to software development and quality control.

Personal Software Process

Described by Watts Humphrey in "A Discipline for Software
Engineering". This is generally used as a book to support a semester
long class where the students develop ten sample programs, measuring
their effort in detail for each one and developing design and code
review checklists based on their own defects. When they complete the
assignments, they also can see their improvement in both product
quality and productivity.

Team Software Process

"Introduction to the Team Software Process", also by Watts Humphrey
describes an approach to take PSP trained developers and form small
teams to develop larger products. Team members have assigned roles and
develop their own schedule, manage their own work and so on.

More information on these two methods can be found by searching using
terms such as
  "Personal Software Process"
  "Team Software Process"
  TSP PSP

The Software Engineering Institute has a few techical reports and
articles, try the following link for a pointer to several of these.
  http://www.sei.cmu.edu/tsp/introducing.html
Please note that these are pretty comprehensive methods and may not be
suitable for all developers. As a result, I will describe a few other
methods.

Agile Software Development

Described in pretty good detail in sources such as:

The Agile Manifesto
http://agilemanifesto.org/

The Agile Alliance
http://www.agilealliance.com

"Agile Software Development" by Robert Martin
http://www.objectmentor.com/resources/bookstore/books/AgileSoftwareDevelopmentPPP

The idea here is to have light methods and processes and better
people. For more information, try search terms such as
  Agile Software Development

A summary of different approaches and the need for balance between
process and people is at the end of the following report (look for
"People First"):
  http://www.martinig.ch/mt/facts/may02.html
Nothing specific here, something good to think about when trying to
define the processes for your staff.

The Surgical Team

Described in "Mythical Man Month" by Fredrick Brooks, he suggested
having a team composed of a lead technical expert, a prime back up,
and a supporting cast that complemented the team leader. His
background was a portion of a large project (IBM OS 360), but this
kind of team could be reduced in size for smaller projects.
http://www.aw.com/catalog/academic/product/1,4096,0201835959,00.html


A Case Study in Small Company Software Reuse

http://students.cs.byu.edu/~pbiggs/smallcomp.html

This is an examination of a few small companies and their attempts to
establish some incentives and methods for software reuse. It includes
a good suggestion to use a pilot project to work out the methods and
make adjustments before broad deployment.

There is a pretty broad spectrum of methods from Agile to the Personal
Software Process. Each one has a variety of costs and benefits.
Choosing a method that will be readily accepted by your staff is also
important. I have tried to cover a broad spectrum with this answer -
if you want more detail on one method in particular, don't hesitate to
use a clarification request.

  --Maniac
Comments  
There are no comments at this time.

Important Disclaimer: Answers and comments provided on Google Answers are general information, and are not intended to substitute for informed professional medical, psychiatric, psychological, tax, legal, investment, accounting, or other professional advice. Google does not endorse, and expressly disclaims liability for any product, manufacturer, distributor, service or service provider mentioned or any opinion expressed in answers or comments. Please read carefully the Google Answers Terms of Service.

If you feel that you have found inappropriate content, please let us know by emailing us at answers-support@google.com with the question ID listed above. Thank you.
Search Google Answers for
Google Answers  


Google Home - Answers FAQ - Terms of Service - Privacy Policy