Interface ProvidesComponentType
- All Superinterfaces:
org.eclipse.emf.cdo.CDOObject
,org.eclipse.emf.cdo.common.id.CDOWithID
,Entity
,EObject
,de.uka.ipd.sdq.identifier.Identifier
,InterfaceProvidingEntity
,InterfaceProvidingRequiringEntity
,InterfaceRequiringEntity
,NamedElement
,Notifier
,PCMBaseClass
,PCMClass
,RepositoryComponent
,ResourceInterfaceRequiringEntity
- All Known Implementing Classes:
ProvidesComponentTypeImpl
A representation of the model object 'Provides Component Type'.
Provided (Component) Types abstract a component to its provided interfaces, leaving its requirements and implementation details open. So, provided types subsume components which offer the same functionality, but with different implementations. As different implementations might require different services from the environment, provided types omit required interfaces. Provided types allow software architects to focus on a component’s functionality and introduce weak substitutability to the PCM. Using provided types, software architects can draft ideas on how functionality can be partitioned among different components without worrying about their implementation. In the initial phases of architectural design, it often does not make sense to arrange all details of a component, since most of them depend on the actual implementation and thus need to be specified by component developers. As during this phase the actual implementation is unknown, also the required interfaces of a component cannot be stated. However, software architects can still pre-evaluate a software architecture containing provided-types. This gives rough estimates about the quality of the build software system and defines QoS requirements for the component implementation.
- See Also:
- Generated class or method.
- EMF model class or method.
- annotation="http://www.eclipse.org/emf/2002/Ecore constraints='atLeastOneInterfaceHasToBeProvidedByAUsefullProvidesComponentType'" annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/LPG atLeastOneInterfaceHasToBeProvidedByAUsefullProvidesComponentType='self.oclIsTypeOf(ProvidesComponentType)\r\nimplies\r\nself.providedRoles_InterfaceProvidingEntity->size() >= 1'"
-
Field Summary
-
Method Summary
Methods inherited from interface org.eclipse.emf.cdo.CDOObject
cdoConflict, cdoDirectResource, cdoHistory, cdoID, cdoInvalid, cdoLockState, cdoPermission, cdoPrefetch, cdoReadLock, cdoReload, cdoResource, cdoRevision, cdoRevision, cdoState, cdoView, cdoWriteLock, cdoWriteOption
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset
Methods inherited from interface de.uka.ipd.sdq.identifier.Identifier
getId, setId
Methods inherited from interface org.palladiosimulator.pcm.core.entity.InterfaceProvidingEntity
getProvidedRoles_InterfaceProvidingEntity
Methods inherited from interface org.palladiosimulator.pcm.core.entity.InterfaceRequiringEntity
getRequiredRoles_InterfaceRequiringEntity
Methods inherited from interface org.palladiosimulator.pcm.core.entity.NamedElement
getEntityName, setEntityName
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
Methods inherited from interface org.palladiosimulator.pcm.repository.RepositoryComponent
getRepository__RepositoryComponent, setRepository__RepositoryComponent
Methods inherited from interface org.palladiosimulator.pcm.core.entity.ResourceInterfaceRequiringEntity
getResourceRequiredRoles__ResourceInterfaceRequiringEntity
-
Field Details
-
copyright
- See Also:
- Generated class or method.
-