Received wisdom is that if you spend time up front getting the design right, you avoid costs later. But the longer you spend getting the design right, the more your upfront costs are, and the longer it takes for the software to start earning.
From Kent Beck
Design should be easy in the sense that every step should be obviously and clearly identifiable. Simplify elements to make change simple so you can manage the technical risk.
First you learn the value of abstraction, then you learn the cost of abstraction, then you're ready to engineer.
The problem is, in software design, often the consequences of your decisions don't become apparent for years.
One of the advantages of having to live with JUnit for 8 years is now we can look back and see which decisions we made worked nicely and which we would have done differently.
I think it's a combination of technical and social factors that leads to all the defects in deployed software.
There's a huge latent market for software development that's just flat-out honest.
There is a strong movement towards increased accountability for software developers and software development organizations.
Developer testing is an important step towards accountability. It gives developers a way to demonstrate the quality of the software they produce.
Agitator and the Agitar Management Dashboard lower the barriers to accountability in software development and increase the value of developer testing.
7 perspectives
6 perspectives
4 perspectives
3 perspectives
1 perspectives