Pavolka, R., Mount, V., Neymeyr, A., & Rhodes, C. From Waterfall to Rapid Prototyping (2005). Supporting Enterprise-wide Adoption of the Oncourse Collaboration and Learning (CL) Environment at Indiana University. SIGUCCS ’05 Proceedings of 33rd Annual ACM SIGUCCS Fall Conference, 312 – 319.
Northrop, Robert (2004). The Fall of Waterfall. Intelligent Enterprise 7.3, 40-41.
Adams, John (2013). Change in Software Techniques Helps FHLB Reduce Defects. American Banker, Technology Section, Volume 178 No. 23. I.
Agile v. Waterfall
Agile Development Methods (Agile) and the Waterfall Method (Waterfall) are two different styles of designing and managing the Soft Development Life-Cycle (SDLC) within an organization. Waterfall being the more traditional approach and Agile newly born just twelve years ago, there is much debate over which approach works best and when. Companies have used Waterfall for decades of successful projects and in most companies the approach has been ingrained into the very fabric of the company. The organization of teams and human resources in information technology (IT) can be anywhere from loosely to entirely based on the method that the organization is using. More and more organizations are starting to see the advantages of Agile now and are questioning older methods almost entirely because of the fast-paced business world of the twenty-first century. Agile allows an organization to respond to that change more quickly without sacrificing quality work or customer satisfaction. Waterfall, on the other hand, with its precise planning can offer better time management and money savings. In a fast-paced society where the time it takes to bring a product to market could mean the difference between success and failure, Agile is making its way into more and more organizations everyday. And, everyday more and more of these organizations are struggling with the change that is required to adopt Agile methods as well as the woes that this fast-paced development style introduce to the organization. II. What is Waterfall
Waterfall is the classical system development model. The model of software development hones its ideas from the manufacturing world. It is based on a step-by-step approach to creating products from the conceptual phase to implementation and maintenance. Waterfall focuses its development strategy on the distinct phases of a project: concept, design, implementation, testing, installation, and maintenance. In larger organizations and on larger scale projects these phases of production are often handled by different people and even different teams. Using Waterfall, the concept phase of a project tends to be the single most important phase. This is the step during which the development team gathers and analyses its customer’s needs and documents the problem that the software solution is expected to solve. The documentation and analysis needs to be precise, in depth and even flawless because once the phase is complete there is no turning back—modifications to a project, no matter what phase its in when the modification or change order is received, require that the project fall back to the concept phase. While several techniques such as use cases and customer interviews are used to gather this information the results of the analysis and requirements gathering that are carried out in this phase are typically relayed to the next phase in the form of a formal document. This document serves as the sole resource for the team who handles the second phase: design. Design entails actually making determinations as to exactly how a team intends to in later phases execute the solution. This is when platforms, programming languages, data storage methodology, equipment types, standards and graphical user interface decisions are made. Design also entails other high-level project decisions on ideas such as how security will be handled and resource management. The design...