Software Development Methodology
December 22, 2004 3:30 AM
Subscribe
Software Development Methodology/Process. I am seeking advice/resources/experiences which could improve a small software company's ability to deliver quality software on time and on budget and the lives of the people who work there. [+]
I work for a company which has no defined development process in place. Requirements are scant and often oral, timelines are unrealistic, quality is low, testing sporadic, documentation rare, hours long and morale low. Some feel that it is a lost cause that we will simply continue firefighting until we are engulfed. I am more optomistic and believe that there is an opportunity to improve things which I would like to take. While not strictly within my remit I have been encouraged to look at 'quality'/'process' within the company. I have read about ISO 9000-3, CMM and DSDM and they all sound great but I feel I would benefit from some independent advice from experience on the matter. I don't exactly what question to ask. So I will just ask a few and trust that you can tell me some answers to those and other questions I should have asked.
What have other's experiences of similar situations?
Do you believe change is possible? How can it be achieved?
What methodologies have you see in practice in small (or any size) companies?
How does one translate the ideal of the theory to the reality of a small company finding it's way?
I would really appreciate the help/advice.
posted by kenaman to education (19 comments total)
The odds of a company culture changing successfully in one big step from the one you describe, to one based on DSDM or any other rigorous and complete methodology is just about nil, in my experience. Organizations have to be taught how to change--how to appreciate the value, how sort the good options from the bad, and how to commit to real change. Organizations also have to be taught to value discipline--not in the messed-up, corporate-fascist kind of way, but they have to learn how better specs make things better. They have to learn how QA delivers better, more reliable results.
Put simply, people change their behavior because they see some real benefit in changing it. I was working with a big company once on an e-business process engagement, helping a company similarly behind the curve plan out this totally cool future, and a guy looked at me and said, "This is great, but you're trying to sell me on running shoes while I'm sitting here with two broken legs. Even if this stuff was in place, I'm so far from taking advantage of it that it doesn't really matter. Help me get a reliable connection from my field office. Help me reduce the amount of paperwork I have to do for each sale. Then I'll care about this other neat-o stuff."
Start small, by helping people identify the major obstacles, and knock off the big problems one by one. Ground your approach in real, practical issues. ("Four out of the past five projects were delivered late. Let's identify the top three reasons why that keeps happening, and what we can do to at least lessen them.") For each problem, try to make sure you're helping people understand why they care about that change, and how it's going to help them on some level. Also, make sure you've got some platform, after the fact, to promote each success--whether it's some kind of simple metric ("projects completed on time this quarter"), or even just a chance to formally present/discuss results with management or your peers.
Once you've got a few moderate successes under your belt, then you can start thinking of a more systemic approach. (And for a small shop, I'd really have a hard time imagining how one of the all-encompassing methodologies you listed would really work well. They've all got good pointers that you can pick, and try to apply in a custom manner, so it wouldn't hurt you to get more familiar with them, but I'd be careful about getting your whole organization to adopt one. The best solutions I've seen have all clearly been an expression of the company's specific needs, priorities and ways of working.)
posted by LairBob at 5:05 AM on December 22, 2004