Semaine 9 Flashcards

1
Q

Qu’est-ce que BPEL?

A

Web Services Business Process Execution Language (WS-BPEL) == BPEL == BPEL4WS

Un langage d’orchestration pour la composition, l’orchestration et la coordination des services
- Pas utilisé pour la programmation réelle des fonctionnalités
- Plutôt utilisé pour orchestrer et composer des fonctionnalités, exposées par le biais de services, en unités plus grandes et en applications composites

BPEL est un langage spécialisé dans les orchestrations de processus :
- Fournit des éléments spécifiques pour les processus d’affaires

Avantages importants :
- Implémentation des processus d’affaires avec BPEL est plus facile
- Lisibles comme description de processus d’affaire
- Plus facile à maintenir en fonctions de l’évolution des processus d’affaire

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Pourquoi dit-on que BPEL est un langage de programmation?

A

BPEL a tendance à combler le fossé entre les dirigeants d’entreprise et les développeurs de logiciels

BPEL sépare la définition du processus d’affaires du codage des fonctionnalités

BPEL est un langage basé sur XML
- Un développeur utilise généralement un outil d’édition visuelle (graphique grag-and-drop) pour produire une spécification de processus en BPEL
- Outils : JDeveloper, WebSphere Integration Designer ou Eclipse
– Produisent et consomment même code BPEL => interopérabilité garantie
– BPEL est une norme de l’industrie et est définie comme spécifications par OASIS

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Qu’est-ce que la structure de spécifications BPEL?

A
  1. Process Element
  2. Partner Links
  3. Global Variables
  4. Properties and Correlation
  5. Fault Handlers
  6. Compensation Handler
  7. Event Handlers
  8. Termination Handler
  9. Basic and Structured Activities
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Qu’est-ce qu’un processus BPEL?

A

Un processus BPEL consiste en des activités

Activités de base et activités structurées

Les activités de base pour des tâches courantes énumérées comme suit:
- Invoquant d’autres services web à l’aide de “invoke”
- Attendre que le client invoque le processus d’affaires en envoyant un message à l’aide de “recevoir” (recevoir une demande)
- Générer une réponse pour les opérations synchrones à l’aide de “reply”
- Manipulation de variables et données à l’aide de “assign”
- Indiquer les erreurs et les exceptions à l’aide de “throw” et de “rethrow”
- Attendre un certain temps en utilisant “wait”
- Metter fin à l’ensemble du processus à l’aide de “exit”

Activités structurées avec :
- “sequence” pour lancer en ordre une séquence d’activités
- Flux conditionnel avec “if”
- Boucles d’itérations avec “while”, “forEach”, “repeatUntil”
- “flow” pour définir plusieurs activités qui vont être invoquées en parallèle
- Bloquer et attendre pour finir une activité associée à un événement
- La possibilité de sélectionner l’un des nombreux paths alternatifs en utilisant “pick”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Qu’est-ce que la modélisation avec l’outil JDeveloper?

A

Outil de modélisation et de développement JDeveloper avec Oracle SOA suite 12c, avec :
- Un “SOA composite” (cadre central) comprend un ou plusieurs composants
- Un composant exécute un processus BPEL
– Un composant expose une interface et exécute un processus d’un service ou d’une composition de services

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Qu’est-ce que les éléments Parter Links?

A

Partner Links : définissent avec quels services notre processus communique

Le client, qui appelle le processus BPEL, est l’un des partenaires.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Qu’est-ce que les éléments “variables”?

A

Variables :
BPEL uses variables much like any other programming language except that these variables hold the XML elements or primitive types. Two variables are declared by default. The inputVariable holds the input payload (input parameters). The outputVariable activity holds the output, which is returned to the client (the one who has invoked the BPEL process)

Next, we specify the process steps. These are gathered within the top-level <sequence> activity, which contains all the process flow. Each BPEL process first waits for the initial request message from the client (<receive>). Usually, a BPEL process also returns some response to the client. This is true for the synchronous BPEL processes. In this case, the BPEL process will end with a <reply> activity through which it will return the response to the client.</reply></receive></sequence>

In between <receive> and <reply>, we specify all the required activities for the actual process flow. In our case, this is only an <assign> activity, which has been used to manipulate variables and to assign the quantity of 5 to the one of the elements of the outputVariable. With more complex processes, we would have several activities listed here.</assign></reply></receive>

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Quel est le lien entre processus et services?

A

Processus invoquant des services :
- Un processus BPEL commence habituellement par une “activité” qui est responsable de recevoir la requête du processus client. Ensuite, le processus BPEL exécute une certaine logique

How well did you know this?
1
Not at all
2
3
4
5
Perfectly