Collaboration & Communication
Agile development is probably one of the most popular methodologies used today in the software industry. The collaboration between the business, technical and user allows for rapid development at a lower cost. When working on any project breaking it down to the minimum viable product is key to building an application successfully while also being able to quickly accommodate user demands. In doing this you may not get all the features you dream of right out of the box but you eliminate the possibility of developing something that my no longer be popular as the industry demands rapidly change. Getting feedback from the end user is key to adding useful features, which with the agile development process can be delivered to the customer quickly and efficiently. Collaboration and communication is key in agile without that simple thing the process can fall apart.