1. A method for generating one or more artifacts for service delivery, wherein the method comprises: receiving one or more service design inputs; using the one or more service design inputs to generate an internal representation of the service design; using the internal representation of the service to generate one or more artifacts of the service; and incorporating the one or more artifacts into the service design and outputting the service.