Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Plantuml
actor Client
Client -> "Web Site" : new order
	activate "Web Site"
	
	"Web Site" -> "Order Management" : new order
	activate "Order Management"
		
	"Order Management" -> Inventory : product
		activate Inventory
	
		Inventory -> Shipping : ship
			activate Shipping

			Shipping --> Inventory : confirm ship
			deactivate Shipping

		Inventory --> "Order Management" : confirm product
		deactivate Inventory

	"Order Management" --> "Web Site" : confirm order
	deactivate "Order Management"


"Web Site" --> Client : confirm order
deactivate "Web Site"


Info

Chaque système demande l'information lorsqu'il en a besoin. Chaque demande/transfert d'information est pleinement justifiée.


Avantage(s)Inconvénient(s)
  • Le client a une réponse immédiate de la bonne prise en compte de sa commande (order) de l'ensemble des systèmes ("order management", "inventory" et shipping").
  • La gestion des échanges est simple. Les rejets et rejeux sont gérés par l'appelant.
  • Le suivi de la performance est immédiate.
  • Tous les systèmes sont sollicités pour produire la réponse finale.
  • Le temps de réponse utilisateur est la somme de tous les temps de réponse BO.

...

Plantuml
actor Client
Client -> "Web Site" : new order
	activate "Web Site"

	"Web Site" --> Client : wait for confirm
	deactivate "Web Site"


loop each order	
	"Web Site" -> "Order Management" : new order
		activate "Order Management"
		deactivate "Order Management"
end


loop each product	
	"Order Management" -> Inventory : product
		activate Inventory
		deactivate Inventory
end

loop each ship
	Inventory -> Shipping : ship
		activate Shipping
		deactivate Shipping
end


loop each ship	
	Shipping -> Inventory : ship confirm
		activate Inventory
		deactivate Inventory
end


loop each product	
	Inventory -> "Order Management" : order confirm
		activate "Order Management"
		deactivate "Order Management"
end


loop each order
	"Order Management" -> "Web Site"
	activate "Web Site"
		"Web Site" -> "Client" : confirm order
	deactivate "Web Site" 
end


Info

Seul l'émetteur du message maîtrise quand l'envoi est réalisé. Les consommateurs subissent les rythmes des émetteurs.


Avantage(s)Inconvénient(s)
  • Les systèmes consomment les messages suivant leur capacité et leur disponibilité.
  • Un système peut s'arrêter sans empêcher les autres de fonctionner.
  • Le client a une réponse partielle de prise en compte de sa commande. Il doit attendre que tous les systèmes aient traités ses messages pour recevoir la prise en compte finale.
  • La gestion des rejets et des rejeux de messages est complexe.
  • Le délai de propagation entre les systèmes n'est pas garanti.

...

Plantuml
actor Client
loop for each order
	Client -> "Web Site" : new order
		activate "Web Site"

		"Web Site" --> Client : confirm
		deactivate "Web Site"
end


...
"Web Site" -> "Web Site" : Group all orders in 1 file
"Web Site" -> "Order Management" : orders file


...
"Order Management" -> "Order Management" : load orders file
	activate "Order Management"
	loop for each order
		"Order Management" -> "Order Management" : new order
	end	
	deactivate "Order Management"


...	
"Order Management" -> "Order Management" : Group all products in 1 file
"Order Management" -> Inventory : products file


...
Inventory -> Inventory : load file
	activate Inventory
	loop for each product	
		Inventory -> Inventory : product
	end
	deactivate Inventory


...
Inventory -> Inventory: Group all ship in 1 file
Inventory -> Shipping: ships file


...
Shipping -> Shipping: load ships file
	activate Shipping
		loop each ship
			Shipping -> Shipping : ship
		end
	deactivate Shipping


note left of "Web Site"
Le retour des confirmation est identique: 
* Groupement des données en sorties, 
* Transfert du fichier, 
* Traitement des entrées.
end note


Info

Les interactions entre systèmes sont minimaux tant en fréquence qu'en format.


Avantage(s)Inconvénient(s)
  • Les systèmes consomment les fichiers à une fréquence précise et en respectant un plan de marche très maîtrisé.
  • Le traitement des données en masse est efficace.
  • Le retour client est tardif. Chaque système absorbe ses fichiers suivant des fréquences et des délais différents.
  • Le délai de transfert global est très important.
  • Chaque export / import ne garantit pas que l'ensemble manipulé est le même. En fonction des rejets, celui-ci évolue.

...