The aim of Getopt::Alt is to be a reasonably easy replacement of Getopt::Long as well as having much more power and options (like supporting command type interfaces).
There are three different usage cases for Getopt::Alt:
Simple option list, i.e. a simple replacement of Getopt::Long
Simple command & option list for running commands (as subs) in the calling file
More complex commands & option list where each command is a method of different modules.