Red Pencil Code Kata

At one of my clients I have seen a real feature request being used as a Code Kata. I found the feature description very interesting and created a Code Kata description from it:

Red Pencil Code Kata

We provide a shopping portal, where dealers can offer their goods (similiar to Amazon market place). We want to support red pencil promotions for reduced prices. During the red pencil promotion the old price is crossed out in red and the new reduced price is written next to it.
To avoid misuse of red pencil promotions the red pencil promotions are activated and deactivated automatically.
The scope of the Code Kata is the implementations of the rules for activation and end of red pencil promotions.
  • A red pencil promotion starts due to a price reduction. The price has to be reduced by at least 5% but at most bei 30% and the previous price had to be stable for at least 30 days.
  • A red pencil promotion lasts 30 days as the maximum length.
  • If the price is further reduced during the red pencil promotion the promotion will not be prolonged by that reduction.
  • If the price is increased during the red pencil promotion the promotion will be ended immediately.
  • If the price if reduced during the red pencil promotion so that the overall reduction is more than 30% with regard to the original price, the promotion is ended immediately.
  • After a red pencil promotion is ended additional red pencil promotions may follow – as long as the start condition is valid: the price was stable for 30 days and these 30 days don’t intersect with a previous red pencil promotion.

7 Kommentare

  1. Nice kata, thank you!

    What’s the reason behind „The price has to be reduced by … at most bei 30%“? Why’s a price reduced by more than 30% not worth a red pencil label?

  2. stefanroock sagt:

    Because unserious behaviour of the seller is assumed, maybe even fraud.

  3. Re: 2.
    Ah, I see. Sounds like patronization to me, but anyhow, I see the point.

  4. I can’t report any experience yet about executing this exercise as a kata. But we did the exercise now once within a coding dojo with four participants. The exercise was fun and source for lots of discussions afterwards. We found plenty of different objects within this exercise, and at least the start was quite smooth.

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

Du kommentierst mit Deinem Abmelden /  Ändern )


Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )


Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s