Every API that we write, is a system within itself. As any system would, it goes through a series of phases; from concept to disposal irrespective of its functionality and complexity. Applying these concepts not only yields a well defined and better designed API but also minimizes the support and maintenance.