Solving a problem with computer software