1. A computerized method of updating a software product, the method comprising: defining the software product as a plurality of components; accessing one of a plurality of instruction sets associated with a service package based on a lifecycle phase of the software product to be updated; and modifying at least one of the components in the software product in accordance with the accessed instruction set.