Changes can be made after each increment; the designers are not stuck with one model. Agile development is very adaptive to the changing needs of the client, the developers and the available technology. Because requirements can always change as new software is developed, these changes can be incorporated into the project instead of making the design obsolete before it ever goes to market.
3) Work can begin before all the requirements are known
Clients may not know everything they want in their finished product, but with agile development, they do not have to wait to get started working on the software. They can start with a basic idea and because they are included throughout the development process, they can add requirements as they decide what they need and based on the work that has come first. Clients can continuously reprioritize so they have a usable product in a shorter amount of time
4) Increases likelihood that a project will reach the …show more content…
By having constant contact with the outsourced team, there will be fewer mistakes and miscommunications. With nearshore outsourcing, the developers and outsourced team are working in the same time zone and language. People in other countries can easily keep in contact via email, phone and video conferencing. Agile requires more communication and more communication results in fewer mistakes and misunderstandings.
The many advantages to agile software development can improve the quality of work for a software development company. While there can be some disadvantages if the client does not want to be involved in the entire process or the team is not good at communication, these issues can be worked out as the team gains experience with the process. Agile software development companies are on the rise as more research shows it is a productive method of producing usable and effective