The "Real" Software Development Lifecycle...
If you ask a student out of college or technical school how software is developed, he'll say the software development lifecycle (SDLC) is something like: Gather requirements for a new system Design the new system's inputs, outputs, screens, etc. Develop the system Test the system Deliver the system to the customer Maintain the system If you're *really lucky* he's read enough slashdot to know, it's more of a spiral or iterative approach--less initial work, more testing, earlier customer involvement. The more I'm exposed to real software, I'm convinced it's closer to. Some nerd decided he needs a cool, fast widget to do 'X'. He just wants to make his job easier. He codes it up after-hours, fueled by cheetos and Mountain Dew He shows it to somebody in his cube. Immediately, that shameless self-promoter decides it's the second coming of VisiCalc The company makes a multi-language version of his Widget and starts selling it Version 2.0 comes ou...