In the world of software development method cannot be separated from the stages that must pass, so that the software developed can be completed as expected. There are many software development methods that I have found in various sources on the internet. However, the most frequently implemented in large companies are the Waterfall, Agile, Scrum, and RAD methods. Each software company has reasons and considerations about why they chose the software development method they currently use.
There are six Software Development methods that I have summarized from several sources on the internet, including:
- Waterfall Model
- Agile Methodology
- Scrum Development Methodology
- RAD (Rapid Application Development)
- Prototype Methodology
- Dynamic Systems Development Model (DSDM)
Apart from the six methods above, there are still other methods that I didn’t mention. I only took the top six Software Development methods. The following is an explanation of each technique.
Table of Contents
1. Waterfall Model
Waterfall is also often referred to as a traditional method and is the method most commonly used in software development. Cycles in this method often come as classic software development methods. The stages in the Waterfall method are described in the sequence of process flows where each step will be started/done if the previous stage has been 100% completed. So it is not possible to return to the last stage to make some changes.
2. Agile Methodology
Agile method is an approach used to design a discipline of software management processes that also allows some changes in project development. This method is a conceptual framework for carrying out various software engineering projects that are used to minimize risk by developing software in a short time called iteration, which generally lasts for one week to one month.
3. Scrum Development Methodology
The Scrum method can be applied to a variety of projects that have very rapid changes or have urgent needs. The Scrum method starts with a brief planning, meeting, and ends with a final review. This method is used for rapid software development in which there is a collection of iterations to create the required software. This method is an ideal method because it is easily carried into the path of projects that have slow progress.
4. RAD (Rapid Application Development)
RAD is an effective method to provide faster development and higher quality than other methods. The primary purpose of this method is to accelerate the entire software development process. The goal can be easily achieved because this method allows the user to participate in software development.
5. Prototype Methodology
The prototype method is a software development method that allows developers only to make prototypes of the solutions offered to demonstrate the software functions to the client and make the necessary modifications before they are developed in the actual application. The best feature of this method is that it can resolve several issues that might occur in the waterfall model.
6. Dynamic Systems Development Model (DSDM)
DSDM is a software development method based on RAD method with an iterative and incremental approach that suppresses continuous user involvement. The main objective is to deliver the system on time and within budget. This method works according to the philosophy of “nothing was developed perfectly in the first try and is considered an ever-changing process.”
Many different frameworks have been developed so far, each of which has its own strengths and weaknesses. A system development methodology does not have to be suitable for all projects. Each methodology might be suitable for a particular project based on various technical, organizational, project, and team considerations.