A taxonomy of Ada packages

A taxonomy of Ada packages is presented to describe their use in designing large programs. The categories include application, communication, and helper packages. Helper packages are further subdivided into definitions, services, and data managers. Data managers are further divided into abstract data types and resources. An abstract data type can be of an open or a closed type. Each of the categories described as part of the taxonomy is illustrated with a coding example that shows both the package and how the package is used.