In Software Development Life Cycle (SDLC), there are 6 main steps:
- Planning
- Analysis & defining requirements
- Design
- Implementation or development
- Testing, and
- Operation & maintenance
It is a life cycle then it must be always cyclic, otherwise the product is stopped.
The Agile is a principle that the end-user is a precedence thing in software development. Due to it tends customer-oriented, people pursue to be agile over the changes, communicative, and critical. There are so many ways or methods to approach the Agile such as Scrum, Kanban, or you even could create yours – depends on your situations.
If the Waterfall runs linear from planning until maintenance which means it cannot go to the previous step. On the other hand, the Agile could revisit the previous step before continuing the next step. It could be happened because every person could give feedback on the task. In addition, every process must be under customer agreement or confirmation.
People in the team actively collaborate in cross functionality. At the end of the day, the product results end up with minimum risks.
The Scrum is highly prescriptive, everything is estimated/decided in advance. A Scrum Master is needed to ensure all things are going on the track. A product is delivered in a few smaller parts in a sprint planning meeting. It followed by sprint review, retrospective, and daily sprint (standup) meetings. Usually, a sprint takes 2 up to 4 weeks.
The Scrum practice usually implemented by large startups or corporates that have mature technology ecosystem. I think the big size of application is the main reason. It needs great workflow and large composition team in order to make product development securely efficiently effective.
On the other hand, the Kanban method has concern about priority. It suits for the team has many backlog product to develop whereas has low quality and/or quantity of team member. Nonetheless, Kanban doesn't pursue the team to set the timeline. There is no such a "Scrum Master" who manage everything on the rail. It really depends on collective collaboration and team commitment. Unlike the Scrum, if the product finishes faster than the expectation, it could go to production as soon as possible. Again, because Kanban has no definite schedule.
A little addition, CI/CD pipeline implementation in the Agile SDLC would be very helpful. Whenever a feature ready to be integrated, it immediately could be delivered and deployed to the production, or any environment you want.
References:
Top comments (0)