Skip to content

XP123

Exploring Extreme Programming

Menu

Primary menu

  • Home
  • Refactoring Workshop
  • Start Here
    • Comics
    • TDD: Test-Driven Development
    • Refactoring
    • User Stories
    • Dungeons & Patterns
  • Update
  • About
  • Contact

Author Archives: Bill Wake

Testing Objects and Relationships

Posted on June 23, 2021 by Bill Wake

When working with objects, there are different ways you can make them interact. We’ll take a quick look at a variety of connections, what’s needed to test them, and some alternatives you might consider.  The connections below are in generally Continue reading Testing Objects and Relationships→

Posted in xp123.com | Tagged tdd, XPlorations

Data Flow Analysis for Refactoring

Posted on June 16, 2021 by Bill Wake

As you refactor, you sometimes need to understand how the data flow through the code. We’ll look at several ways that can reveal that information. Data Flow Analysis Data flow analysis tracks the creation and use of data through the Continue reading Data Flow Analysis for Refactoring→

Posted in xp123.com | Tagged refactoring

Revise Tests While Refactoring? It Depends

Posted on June 9, 2021 by Bill Wake

Some refactorings (e.g., Extract Method or Extract Class) introduce new elements. Should you revise the tests to take these into account? The classic consultant’s answer applies: It depends. The obvious next question is “Depends on what?”, and we’ll explore some Continue reading Revise Tests While Refactoring? It Depends→

Posted in xp123.com | Tagged programmer, tdd, XPlorations

Science-Intensive Apps: Handle with Care

Posted on June 2, 2021 by Bill Wake

A certain type of science-intensive application only has a few (or even no) control parameters. It is usually driven by a “big data” analysis. The algorithms inside may or may not be very complex.  There are many applications like this: Continue reading Science-Intensive Apps: Handle with Care→

Posted in xp123.com | Tagged algorithms, XPlorations

Reversible, Incremental Data Structures

Posted on May 26, 2021 by Bill Wake

Objects usually track state, but you can instead track history and derive the current state from the history. (For example, databases blend both modes behind the scenes.) Why might history be helpful? One reason is that it can make it Continue reading Reversible, Incremental Data Structures→

Posted in xp123.com | Tagged data structures, programmer, XPlorations

Authorization – TDD Patterns

Posted on May 19, 2021 by Bill Wake

Authorization is the process of deciding whether to allow a user can access or use some resource. (Don’t confuse it with authentication, the process of deciding whether a user is who they claim to be.) TDD and Authorization From a Continue reading Authorization – TDD Patterns→

Posted in xp123.com | Tagged programmer, tdd, XPlorations

Limiting Beliefs About Evolutionary Design

Posted on May 5, 2021 by Bill Wake

Evolutionary design works by growing a system one capability at a time, keeping the design just sufficient for the system so far. As needs change, the system evolves to meet them. Evolutionary design has its technical challenges, but limiting beliefs Continue reading Limiting Beliefs About Evolutionary Design→

Posted in xp123.com | Tagged customer, evolutionary-design, programmer, tester, XPlorations

The Gerrymander Game – Part 2, TDD

Posted on April 28, 2021 by Bill Wake

See also “The Gerrymander Game – Part 1, Puzzle“ I implemented the core of the gerrymandering game using TDD, and it was a challenge. Why? Because I didn’t know in advance how to solve it.  My Overall Strategy To make Continue reading The Gerrymander Game – Part 2, TDD→

Posted in xp123.com | Tagged programmer, tdd, XPlorations

The Gerrymander Game – Part 1, Puzzle

Posted on April 21, 2021 by Bill Wake

See also “The Gerrymander Game – Part 2, TDD“ A few weeks ago, Mike Hill published this tweet: “q: how many ways are there to partition a 5×5 tile square into 5 pieces, each containing 5 orthogonally contiguous tiles?” (https://twitter.com/GeePawHill/status/1377772922132176900).  Continue reading The Gerrymander Game – Part 1, Puzzle→

Posted in xp123.com | Tagged math, tdd, XPlorations

Input Validation – TDD Patterns

Posted on April 14, 2021 by Bill Wake

Input validation is the process of checking that an input value is legal according to some set of rules. We’ll look at some considerations of developing such code. Validation and Normalization Functions The simplest form of validation is a boolean Continue reading Input Validation – TDD Patterns→

Posted in xp123.com | Tagged tdd, XPlorations

Post navigation

← Older posts
Newer posts →

Primary Sidebar Widget Area

Stay Up-to-Date

If you'd like to hear when articles come out, sign up today!

|●  Become a Patron!

Recent Posts

  • AAA and the Object Lifecycle
  • “Test Interface, Not Implementation”
  • How to Reduce Coupling, Three Ways
  • Reordering Items, Four Ways
  • And-Or Trees
  • Run Tests Without an App — Step by Step with Xcode
  • Swift Testing – A New Unit Testing Framework
  • TDD with a Function Pipeline
  • Trees – Confidence in Design
  • Pipelines – Confidence in Design

Tags

agile analysis atdd author business charts classic coach computers conference cool customer design economics fiction games HCI history improv integration interesting intro Java job aids language lean learning metaphor music myth patterns planning programmer refactoring resources reviews scrum software spreadsheet stories tdd team tester training XPlorations

Archives

counter for wordpress
Copyright © 2026 XP123. All Rights Reserved.
Theme: Catch Box by Catch Themes
Scroll Up