if(trackingNum != null){ } Modeling Software Behavior: A Craftsman's Approach