improve software frame