https://arunangshudas.com/blog/understanding-the-basics-of-adaptive-software-development-asd/