SoaML - Extras

From Training Material
Revision as of 14:56, 28 August 2014 by Bernard Szlachta (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Connecting Services

TODO: ServiceChannel, Assemply

Quiz

A request:

  1. is logically the conjugate type of the provider
  2. is logically the conjugate type of the consumer

A request:

  1. is the use of the service interface
  2. is the use of the request interface


A ServiceInterface can be used to type:

  1. only service port
  2. only request port
  3. both if used a conjugated type

The <<Provider>> and <<Consumer>> stereotypes are used on:

  1. Classes
  2. Interfaces
  3. Ports
  4. CollaborationUse

The isConjugated property must be set to true for which element:

  1. Every Port
  2. Service Port
  3. ServiceInterface
  4. Request Port

Which of the elements below can type a port in SoaML?

  1. Consumer
  2. Milestone
  3. Provider
  4. Interface
  5. ServiceInterface
  6. Participant

Further Questions

  • What kind of elements can appear on ServiceArchitecture?
  • What kind of elements can appear on ServiceContracts?
  • What kind of types a Service or Request can have?

Extra Exercises

  • Design a payment scheduling system (i.e. a person can schedule a payment for a specific date)
    • used vocabulary: payment, notification
    • Design Service Architecture
    • Design Contracts
    • Design interfaces
    • Design service choreography using:
      • state machine
      • activity diagram
      • sequence diagram

Exercises

  1. Design an ATM withdrawal:
    1. service interfaces
    2. ports
    3. service contract
    4. collaboration

Vocabulary you can use:

  • Withdraw
  • Authorize
  • Validate Pin
  • Reject
  • Customer
  • ATM
  • Bank
  • Visa


Further Reading

Icons Cheat-sheet

Soaml icons.png


Compound service contract

Compound Services.png


Create a compund contract Purchasing Service.

Vocabulary: Seller, Buyer, Place Order, Returns Service

Show the ports on the consumers and the provider.