Software methodologies have evolved over the last 50 years and this paper discusses the various methodologies and their use for process control of software projects. This comparison will cover the names of the different types and the key functional changes that have taken place from one type to the next and why they were developed. The strengths and weaknesses associated with each type of methodology. Why use one form of methodology over the other and under what circumstances. The different phases and characteristics of each methodology as compared to each other and the evolution of thought surrounding these conceptual changes and need for faster deployment which has led to new versions of agile development solutions. Then we discuss some processes used with and in lieu of the major methodologies and the out shoot hybrids that have evolved specifically since the 1990s, when agile took off and a bit about what’s currently the standards of companies providing software development like ISO and CMMI.
Keywords: Waterfall, Spiral, Agile, Scrum. Software development methodologies, developing software, project phases, initiate, scope, plan, execute, control and monitor, close, transition, maintenance phase.
Numerous software methodologies have been presented to the world to foster standards for systems and software development over the last 50 years. SDLC or systems development lifecycle was introduced in 1960s to finite a deliberate, structured way or method to produce quality products within a rigid timeline in a sequential process. Over the last fifty years these methodologies have evolved into more than twenty different disciplines or methods of getting from point a, the conception or idea to solve a business problem. To point b, or actually producing a solution to the problem in the form of software or a system which the business operations side and users specifically embrace. At first these methods were very rigid and sequential to achieve goals to morphing into releasing the need for constant change during the production cycle and even during the maintenance phase. The changes developed to be more fluid or flexible in their approach to provide a mechanism for feedback from the customer and therefore spiral or circular methods emerged to solve this need. These various methodologies and there timeframes of use all over the world is important to understand for anyone in information technology management. (Geoffrey Elliott et al., 2011)
First there was waterfall development, which through phases of requirements analysis, design, implementation, validation (testing), integration and maintenance cascaded from one phase to the next was introduced in 1970, in an article by Winston W. Royce, but later was named waterfall. The basic advantage of this method is the structure and timeline with emphasis on tight control during the entire project. The planning, schedules, phase completion dates, budgets were controlled tightly...