Woodworking Software Design