With the surge in online business, many business and non-technical people are finding themselves more readily entrenched in the software development life-cycle or (SDLC), which in many cases is foreign to them and a far cry from strong marketing, legal or financial backgrounds that may have helped plant them where they are to begin with. However, I read this morning a simple but affective post on the Signal vs. Noise blog that I wanted to highlight and further expand on. I think it will help both technical and non-technical people alike to better understand software development online or client-side. Jason Fried of 37 Signals (shown in the image to the right thanks to x180), highlight the top 5 red flags of software development and I wanted to make sure I further spread the word to anyone who interacts with developers regularly but is unfamiliar with software development.
The software development industry it is not like other industries that produce a final product. For example, in the auto industry we know that if you want to build a car a engineer builds a plan and then the plan is followed to make many cars of the same type. You can break down the steps into an assembly line and there is one way to take on each of the steps. With software development, software is being is being built with a plan but an assembly line approach does not work, therefore there is more then one way to create something as opposed to building a car where there is one way to pour a steel mold or to attach the hood on to the car. So it is more difficult in software development to manage the development of a product, especially on custom software products since it is hard to determine how difficult a task is going to be to code until you really engage the task at hand. Of course, there are number of software development management tricks that I will not go into but the point I am trying to make is software development is a unique industry and needs to be better understood by others that are not in the industry but impact if everyday as clients and managers.
So here are the top 5 red flags to watch for while developing a new software product for the PC or online from Jason at 37 Signals:
1. “Wouldn’t it be easy to…” (the hidden cost of change)
2. “This shouldn’t take long” (artificial time frame)
3. “Can you make this small change real quick?” (“small” and “quick”)
4. “Before you finish X, could you do Y?” (the mental costs of interruption)
5. “Let’s push this today” (artificial scope)
I could not agree with the top 5 red flags more and of course there probably are several more red flags to watch for. My hope is make anyone that anyone who has never developed software or coded anything, better informed of these red flags, so they can make more conscience request for the good of the timeliness and management of your project.
Check out what some other bloggers in the blogosphere are saying about 37 Signal's top 5 red flags by visiting posts on Rogel's Blog, Ben Barren, Teh Tarik, Kurang Manis, SearchViews, Web Junkies and tjic.com.