Concept: RequestPoint (SoaML)
A RequestPoint models the use of a service by a participant and defines the connection point through which a Participant makes requests and uses or consumes services.
Relationships
Main Description

Usage:  "RequestPoint" stereotypes UML Port

A RequestPoint is an interaction point through which a consumer accesses capabilities of provider services. A RequestPoint defines a capability that represents some functionality addressing a need, and the point of access to fulfill those needs in an execution context. The need is defined by a RequestPoint owned by a Participant and typed by a ServiceInterface or Interface. The connection point is defined by a part whose type is the ServiceInterface defining the needs.

A RequestPoint might also be viewed as some need or set of related needs required by a consumer Participant and provided by some provider Participants. A RequestPoint is distinguished from a simple used Operation, in that it can involve a conversation between the parties as specified by some communication protocol.

RequestPoint extends UML2 Port and changes how provided and required interfaces are interpreted. The capabilities consumed through the RequestPoint -- its required interfaces -- are derived from the interfaces provided by the service's ServiceInterface. The capabilities provided by consumers in order to use the service -- the RequestPoint's provided interfaces -- are derived from the interfaces used by the service's ServiceInterface. These are the opposite of the provided and required interfaces of a Port or Service and indicate the use of a Service rather than a provision of a service. Because the provided and required interfaces are reversed, a request is the use of the service interface - or the logical conjugate of the provider's type.

Distinguishing requests and services allows the same ServiceInterface to be used to type both the consumer and provider ports. Any RequestPoint can connect to any ServicePoint as long as their types are compatible. Requisition and Service effectively give Ports a direction indicating whether the capabilities defined by a ServiceInterface are used or provided. With SoaML modeling, the practice of physically typing request ports with types that are conjugates of the type of the port to which the request is connected becomes obsolete.

Semantics

A RequestPoint represents an interaction point through which a consuming Participant with needs interacts with a provider participant having compatible capabilities. A RequestPoint is typed by an Interface or ServiceInterface that completely characterizes specific needs of the owning Participant. This includes required interfaces that designate the needs of the Participant through this RequestPoint, and the provided interfaces that represent what the Participant is willing and able to do in order to use the required capabilities. It also includes any protocols the consuming Participant is able to follow in the use of the capabilities through the RequestPoint.

If the type of a RequestPoint is a ServiceInterface, then the Request's provided Interfaces are the Interfaces used by the ServiceInterface while its required Interfaces are those realized by the ServiceInterface (see Example: ServiceInterface (SoaML) for an illustration of a ServiceInterface with used and realized interfaces). If the type of a RequestPoint is a simple Interface, then the required interface is that Interface and there is no provided Interface and no protocol.

Possible Forthcoming Change in Stereotype Name

The Rational SOMA 2.9 Practices have been developed using the Beta 1 version of the SoaML Specification, which was released April 1, 2009.  Some changes are to be expected between the Beta 1 specification and the final specification.  For example, we are aware that the SoaML Specification Committee is (as of mid-October, 2009) preparing to vote on a proposal to rename the ServicePoint and RequestPoint stereotypes to "Service" and "Request", respectively.  If this proposal is accepted, this change will be incorporated into a future release of Rational SOMA.

More Information