Agile suggest that teams should fail-fast to enable quick learning from mistakes. Learning from failure is one approach, you can also learn early and fast from successes, by doing experimentation, or by using a plan for knowledge acquisition.
One blog of note that is furthering the efforts of today’s mobile application developers can be found at the OpenSignal web site. Their recent Android Fragmentation Visualized report offers some unique perspectives on the challenges of writing Android apps.
TDD and BDD are now widely-used software development techniques. However, solely following TDD & BDD may still lead to missed business opportunities, or worse, a negative impact to the business. Two questions which TDD & BDD are unable to answer are: How do you measure the usage of your application? How do you get feedback from your customers? Is Experiment-Driven Development (EDD) the answer?