Posts in Software Testing
Model Building vs. Model Checking
At Consultants Camp, James Bach and Michael Bolton presented some of their material for their new Rapid Testing 2.0 class (still under development I think). One of the interesting dynamics they raised was the dynamic between model building vs. model checking.

Modeling is composing, describing, and working with mental or formal models of the things you are exploring. Identifying relevant dimensions, variables, and dynamics. A good mental model may manifest itself as having a "feel" for the product; intuitively grasping how it works. It's how we build cohesive ideas. It's how we take the random bits of information we gain about something and put them together to build something useful for our exploration. Our models grow and contract over time. As we learn new information, we test the model with it. If we need to, we incorporate the new information into the model.

If your testing is primarily about learning and not about searching, then you are model building.

If your testing is primarily about searching and not about learning, then you are model checking.

The distinction is important because as testers we need to be aware of how we use our models. Because models are simplifications, they are incomplete/incorrect. We need to be able to recognize when we need to build our models out more (learning) and when we have enough that we can test against them (searching and checking).
Windows command line tools
From Lesson 2 - Basic commands in Linux and Windows I learned three cool new Windows tools I didn't know about.

tracert host
Show the route that packets follow to reach the machine "host". The command tracert is the abbreviation of trace route, which allows you to learn the route that a packet follows from the origin, (your machine) to the destination machine. It can also tell you the time it takes to make each jump. At the most, 30 jumps will be listed. It is sometimes interesting to observe the names of the machines through which the packets travel.

route print
Display the routing table. The command route serves to define static routes, to erase routes or simply to see the state of the routes.

netstat
Displays information on the status of the network and established connections with remote machines.



When I tried "tracert www.michaeldkelly.com" I got over 30 hops. PerfTestPlus.com had 21 (it was twice as fast as mine - darn hosting company) and Satisfice.com had 14 hops (twice as fast as PerfTestPlus).

My next step is to figure out how to actually use this information. All with time. This at least gives me a place to start.