Tuesday, February 2, 2010

SDLC Best Practices for Startups

In my work as a development lead at IBM Rational I learned about the software development life cycle and the best practices as they were taught by Rational and used by our organization. This blog is an attempt to apply those concepts to the management of software development in a small company.

I recently approached a local startup with the idea. I proposed to teach them the principles of SDLC management. What I wanted to learn was how these ideas would affect their process and how this in turn would affect their growth. My theory is that the growth of a development group is inhibited from time to time by the way it is organized. Growth tends to level off (temporarily) as the group reorganizes to meet new challenges. What would happen if the structures and practices necessary for a large group were already in place before the group grew large? Would their growth curve be smoother? Would the group produce more in three years than a group that grew organically?
The way to find out is to do the experiment. The control groups are everywhere. What I want is a company that is willing to take on the overhead of more "process" as an investment toward a long term result.
I found this to be very difficult to sell.

I had more success with a friend who wants to start an e-learning web site. She is a teacher and has a curriculum that she believes has a market. Her challenge at this point is to enlist technical help from contract developers and make the best use of the contractors' abilities. What I did with her was to go over of the ideas captured elsewhere in this blog and teach her the terminology she needed to know to communicate effectively with her technical staff.
She found it easy to understand what I described but the idiom was somewhat new for her. What we were able to do was to translate her knowledge of what she wanted into language that a developer would understand. This made her interviews for new technical help much easier. Here's what she wrote:
"... just had a meeting with a potential technical contractor and I felt very confident in talking with him about what I need and how I’d want the process of working together to go – he actually congratulated and thanked me for knowing that they would like a document with my requirements mapped out on it and he was impressed that I understood that process."

Now I don't have any influence on how her contractors will do their work but I have been able to help start her off on solid footing as she learns how to manage a development effort.

1 comment:

  1. This is a very valuable way to think about process that would greatly enhance the productivity of an organization. Rather than fumble and experience growing pains, growth can be smooth and much less frustrating. An interesting application that is well thought out, cogently expressed, and very useful.

    ReplyDelete