Who's Using Agile Software Development?
"Agile development is most often talked about in terms of modern Web 2.0 applications, where developers see frequent updates and changes to code as feature sets are enhanced and new functionality is added at a rapid pace," said Dave, the senior development manager at Coverity.
But Agile isn't just for modern languages or Web-only applications, he noted.
"While the financial services and mobile markets were obvious early adopters, we could argue that there isn't any industry where Agile wouldn't be a good fit," he said. "Agile is cheaper, faster, has more flexible processes, responds better to changes in market demands and, while not perfect, Agile environments can bring a certain honesty to team dynamics by exposing who's behind contributions and progress."
The nature of Agile development, however, can introduce risks. When testing cycles become condensed, serious bugs can be overlooked. This usually requires an additional level of developer testing upstream to help identify defects early in the cycle.
Most industries, such as consumer electronics for instance, make calculated tradeoffs when it comes to development, said Dave.
"For example, a mobile device company wants to be first to introduce a phone with the latest features, so time to market might take precedence over quality," he said.
Who's Using the Waterfall Model?
Quality is a primary concern in safety-critical industries or industries where projects require heavy documentation and modeling before coding begins. That is why the waterfall model is commonly used in aerospace and medical device manufacturing, as well as in the military.
"Because waterfall development stresses the end product over process, it has remained prominent in these industries where quality [and safety] over speed reigns supreme," said Dave.
However, Dave noted that these industries are recognizing the value of iterative development:
- Increased software integrity
- Developer efficiency
- Reduced technical debt
"Although Agile methods are definitely more suited to projects where you need to deliver small yet frequent pieces of functionality, and where time to market is a key concern, we have seen Agile adoption increasing in traditionally waterfall industries such as medical device manufacturing and even military/aerospace," said Dave.