Waterfall Method Implementation Stage – Hello Grameds Friends, did you know that in making a scientific work, a methodology or research method is definitely needed? It turns out that this also applies to making software.
You need to know that there are various methods used to make software. One of them is the waterfall method. This method is quite well-known because it is quite easy to apply.
Waterfall is one of the software development methods better known as the Software Development Life Cycle (SDLC). The method is so named because its development model can be likened to a waterfall, namely each stage is worked on sequentially from top to bottom.
This method is the earliest SDLC approach used to develop software. Historically, the waterfall method was first popularized by Herbert D. Benington at the Symposium on Advanced Programming Method for Digital Computers on June 29, 1956. He presented on software development for the Semi Automatic Ground Environment (SAGE).
Quoting an explanation from Arif (2019), someone who uses this method to be successful must understand the various requirements before carrying out the development process.
The main requirement for using the waterfall method is that there is an agreement between stakeholders and customers at the beginning of the project. After that, planning is carried out sequentially by adopting various phases in it.
Furthermore, Hutahaean (2015) added that this method is suitable for use if a team has reached a point called a well understood project. This means that there is an understanding of a project, making it easier to accept the software system. Likewise, processing will later become faster and more efficient.
This method will also be suitable for a project with criteria, namely having a small risk, not requiring continuous changes, a clear product description, and the project is supported by a team that has sufficient competence in carrying out the project.
So, what are the advantages of the waterfall method that makes it so popular among software engineers (SE)?
This article will describe the various stages, advantages, and disadvantages of this waterfall method. Read this article to the end, especially for those of you who are looking to develop software for business needs.
The waterfall method is a software development model that is analogous to a waterfall, because each stage is carried out sequentially from top to bottom.
Waterfall Method Stages
- Requirement Analysis
At this stage, a developer must know all the information related to user needs for the software. For example, the software functions desired by users and the limitations of the software.
The information is generally obtained through surveys, interviews, and discussions. Furthermore, the information is analyzed and processed, so that developers obtain various fairly complete data related to the details of user needs for the software that will be developed later.
- Design
The next stage in this method is design. In general, this stage includes technical design interests such as data layers, programming languages, services, and so on. Design specifications will generally be made to describe the business logic that will later be implemented technically.
This aims to provide a comprehensive picture of what needs to be done and the appearance of a desired system, thus helping to make hardware and system requirements more specific, as well as defining the system architecture that will be designed as a whole.
- Implementation and Unit Testing
The implementation and unit testing stage is the programming stage. So the coding process is in this stage. The creation of the software will later be divided into small modules that will be combined in the next stage.
In this phase, an inspection is also carried out on the functionality of the module that has been created, whether it has met the expected criteria or not.
- Testing
At this stage, various modules that have been created previously will be combined and integrated into an overall system.
After the integration process is complete, a comprehensive system inspection and testing will be carried out to identify possible errors and failures in the software.
- Operation and Maintenance
Operation and maintenance is the last stage of the waterfall method. At this stage, the software that has been formed will be run and operated by its users. In addition, maintenance is also carried out in the form of improving the implementation of the system unit, fixing errors, and improving the system according to needs.
There are five stages in the waterfall method, namely requirements analysis, design, implementation, testing, and maintenance.
Advantages of the Waterfall Method
- Clear Workflow
The waterfall method has a series of measurable and clear system workflows. Each team has tasks and responsibilities according to their respective expertise. In addition, work can also be completed according to the previously determined time allocation.
- Good Documentation Results
Waterfall is a methodical approach, because all information will be recorded properly and distributed to each team member accurately and quickly. With these records, the work of each team will be easier, and follow each direction according to the records.
- Saving Costs
The next advantage of this method is saving costs in terms of resources spent by a company. This is because clients cannot interfere in the affairs of the application development team.
In contrast to the Agile method, clients can provide various feedback to the development team regarding changes or additional features, which will ultimately result in the company spending more money.
- Used for Large-Scale Software Development
In addition to being used for small and medium-scale projects, this method is also considered suitable for implementing large-scale software development, which involves many human resources (HR) and complex work procedures. But again, everything is adjusted to the circumstances and needs of the project to be taken.
Some of the advantages of the waterfall method are a clear workflow, good documentation results, cost savings, and use for large-scale software development.
Weaknesses of the Waterfall Method
Some of the weaknesses of the waterfall method include:
- Requires a Solid Team
To use the waterfall method, support from all stakeholders is needed. Each team must have good cooperation and coordination in order to form a solid team. If one team cannot carry out its duties, it will affect the workflow of the other teams. - Still Lacking Flexibility
All teams must work according to the instructions and directions that have been decided from the start. In addition, clients cannot express opinions and input to the development team at every stage. Clients can only provide input at the initial stage of software system design. - Cannot See a Clear Overview of the System
With the waterfall model, clients cannot see a clear overview of the system. This is different from the agile model which allows the system to be seen well, even though it is still in the development process. - Requires More Time
The process of working using the waterfall method can be said to be quite long when compared to other SDLC models. This is because the application development stages are carried out one by one, without being able to be skipped.
For example, the development team will not be able to carry out the coding process if the design team has not shown the design appearance of the application. This results in developers wasting time because they have to wait for team members to complete each stage. Ultimately, it makes the time required longer.
Some of the weaknesses of the waterfall method are that it requires a solid team, lacks flexibility, cannot see the system picture clearly, and takes longer.
How? Does the waterfall method look attractive with all the advantages and efficiencies it offers to be applied in the development of information and technology (IT) projects?
Penutup
Metode waterfall merupakan model pengembangan software yang jika dianalogikan seperti air terjun, dikarenakan setiap tahapnya dikerjakan secara berurutan dari atas ke bawah. Metode tersebut cocok dipakai untuk suatu proyek dengan kriteria, yaitu memiliki risiko kecil, tidak memerlukan perubahan secara terus-menerus, gambaran produk sudah jelas, dan proyek didukung oleh tim yang mempunyai kompetensi cukup dalam melaksanakan proyek.
Beberapa kelebihan dari metode waterfall, yaitu workflow yang jelas, hasil dokumentasi yang baik, menghemat biaya, dan dipakai untuk pengembangan perangkat lunak berskala besar. Sementara itu, kelemahan dari metode waterfall, yaitu memerlukan tim yang solid, masih kurang fleksibilitas, tidak dapat melihat gambaran sistem dengan jelas, dan membutuhkan waktu yang lebih lama.