A SoftwareComponent is a software element that provides support for, and is executing in the context of, a software service. Software components do not provide the full service, but form building blocks for the implementation of a software service.