iations for LSM event generation an detection 2 Layer Structures If a common agent layer will support associations, we must add additional ASPs to the specified agent interface (SAG). These ASPs are used to request, manage, and release associations through the common agent layer. They are not meta-prim- itives since they do not carry any LSM events. Since an association ties up resources both in the agent layer and in the actors, association handling comprises an establishment phase and a release phase, similar to connection handling. In order to understand which operations are needed in a SAG to support associa- tions, we show in Fig. 2.33 a scenario in terms of a sequence diagram, where an association is used between actors 11 and 12. An association is identified by an association identifier (ASi). In this scenario we only included requirements accord- ing to bullets 1 and 2 above. Note that layer models should indicate if a SAG includes association handling or not. We therefore insert a black dot in the actor- agent interface symbol to indicate that the SAG, besides invokes, also defines asso- ciation-handling operation. Common agent Association protocol Rem. op. protocol ASi<>AAi acAssReq(2 A {1 ALi, As,1 ASi, agAssOff(1As,1ASi) T-ROa Association (1,1,1,..)} establishment acAssCnf(1 AS agAssAcc(1) r-invOrd(1 ASi,...) {1,...} I-invRep(1,...) I-invRep(1,...) Rem. op. protocol r-invOrd(1 ASi,...) Dialogue over the {1,...} association agReIRep(1 ASi) Detected agRelRep(1 ASi) (problem) Association acRelOrd(1 ASi) agReiRep(1 ASi release Fig. 2.33 Association handling, performed by a common agent layer. ALi=actor layer identifier; As=actor suffix; ASi=association identifier In this scenario, actor 11 requests an association to actor 12 by an actorAssocia- tionRequest(...) primitive (acAssReq(...) for short) over its SAG. Its agent allocates an association identifier (ASi), in this case 1, to the request and associates the AAI to a pending association in an association table (ASi<>AAli). It then sends an association 