Category Archives: TDD

Test-Driven Development

IASA Israel Meeting – Dror Helper on TDD as an Approach for Software Design

The International Association of Software Architects (IASA) in Israel organized a special event with the participation of Dror Helper, who talked about the “TDD as an Approach for Software Design”. Title: Designing with Tests Abstract: Unit tests are great, they help a … Continue reading

Posted in IASA Israel, Software Architecture, TDD | Tagged , , | 1 Comment

IASA Israel Meeting – Lior Israel on TDD as an Approach for Software Design

The International Association of Software Architects (IASA) in Israel organized a special event with the participation of Lior Israel, who talked about the “TDD as an Approach for Software Design”. Title: Providing Business Value Through TDD Abstract: Our goal is to provide … Continue reading

Posted in IASA Israel, Software Architecture, TDD | Tagged , , | Leave a comment

Antifragile Software Design: Abstraction and the Barbell Strategy

In his book “Antifragile: Things That Gain From Disorder”, Nassim Taleb introduces the concept of Antifragility, which is the opposite of Fragility. The main question is how things react to volatility (such as randomness, errors, uncertainty, stressors and time). According … Continue reading

Posted in Antifragility, OOD, OOP, Software Architecture, TDD | Tagged , , , , | 15 Comments

Lean Software Development: Before and After the Last Responsible Moment

The Last Responsible Moment (LRM) is a lean development principle defined as: “A strategy of not making a premature decision but instead delaying commitment and keeping important and irreversible decisions open until the cost of not making a decision becomes … Continue reading

Posted in Lean Development, TDD | Tagged , | 3 Comments

On Technical Debt and the Psychology of Risk Taking

I recently read the following message in a developers’ forum (rephrased here): “I’m facing a dilemma. I must deliver the product by the end of this quarter, but there are still many tests I would like to execute. The product … Continue reading

Posted in Agile, Efficacy, Psychology of Programming, TDD | Tagged , , , | 24 Comments

TDD and the Gamification of Testing

The Test-Driven Development (TDD) methodology was invented to improve the way we test the code we write, with the final goal of increasing the quality of systems being implemented.  The basic idea is that the tests must be written before … Continue reading

Posted in Agile, Gamification, Psychology of Programming, Refactoring, TDD | Tagged , , , , | 26 Comments

The Liskov Substitution Principle and Test-Driven Development

The Substitution Principle, first defined by Barbara Liskov, says that: “Let q(x) be a property provable about objects x of type T. Then q(y) should be true for objects y of type S where S is a subtype of T.” … Continue reading

Posted in OOD, OOP, TDD | Tagged , , | 3 Comments