Approche systémique sur les Systèmes Informatiques

Définition du système et de l’approche systémique

Qu’est-ce qu’un système ?
« Ensemble d’éléments en interaction dynamique, organisés en fonction d’un but. » (Joël de Rosnay).

Qu’est ce qu’un système à l’échelle de l’entreprise ?
Une Organisation/ une entreprise-système (LeMoigne, De Rosnay, Melese…) avec les composantes suivantes :
– Système de pilotage : réfléchit / décide / contrôle
– Système d’information : mémorise / traite / diffuse
– Système opération : transforme / produit

Quelles en sont les caractéristiques ?
– un système est finalisé
– un système est un tout
– un système est non réductible à ses parties
– un système est organisé.

Un système est communément perçu selon trois axes :
– L’aspect statique qui met en évidence la structure du système, sa composition, ses éléments et leurs relations structurelles
– L’aspect dynamique qui met en évidence l’évolution du système au cours du temps
– L’aspect fonctionnel met en évidence les traitements réalisés, les calculs du système

Quelle différence entre approche analytique et approche systémique ?

Les deux approches sont complémentaires. L’approche analytique se concentrera sur les éléments et les détails tandis que l’approche systémique se concentrera sur les interactions entre les éléments et les buts du système.

Description du système / vue systémique

La description sous ces aspects sera possible avec une multitude de frameworks
– Avec MERISE par exemple, pour les aspects dynamiques et fonctionnels (regroupés)
– Avec UML par exemple, pour des aspects dynamiques et fonctionnels (diagrammes spécifiques et/ou communs)

D’une point de vue pratique les démarches phares intègrent en filigrane plus ou moins appuyé cette notion de vue systémique :
– L’Enterprise Architecture (EA, cadre de Zachman) proposera une approche basée sur une approche systémique et une vue organisationnelle
– L’Enterprise Architecture Profile de TOGAF proposera un profil UML+BPMN supportant la modélisation des exigences et des objectifs avec différents modèles autour des aspects communs du système
– La démarche d’Urbanisation proposera une approche à partir de Vues métier, Vue fonctionnelle, Vue applicative, Vue technique

Un exemple d'approche de documentation d'un système avec TOGAF EAP 
 - Network computing hardware diagrams (Technical)
 - Events Diagram (Business)
 - Solution Concept Diagram (Architecture)

Quelques soient les approches ou les démarches – sur cette visée systémique – l’aspect clé et difficile de cette description sera la modélisation des aspects fonctionnels et dynamiques et la mise en évidence du but du système. Cela rend incontournable la compréhension et la documentation des aspects/vues métiers.

Mesurer : observation du système ; vue systémique

L’approche usuelle et la plus efficace sera la technique d’observation boite noire / boite blanche :
boite noire : considérant l’aspect externe uniquement, en ignorant la constitution du système
boite blanche : considérant l’aspect interne seulement, en regardant l’ensemble des éléments en interaction mutuelle (vision en boîte blanche ou transparente)

On se concentrera souvent sur l’approche boite noire car la vue systémique ne se concentre que rarement sur le détail. Une analogie : le médecin généraliste n’interagit pas de façon isolée avec les organes du patient faute de pouvoir y accéder mais avec tout son système (son corps) et de manière externe.

La capture

Sur le concept de boite noire, mesurons des éléments porteurs de sens au niveau du système dans son ensemble .

Quelques exemples d'indicateurs :
 - business : nombre de paiements, nombre d'éléments insérés
 - techniques : requêtes par sec, nombre d'erreurs par sec
 - externes: temps de réponses externes, temps de réponse interne, latences, ...
Des exemples de source de métriques :
 - NewRelic (https://newrelic.com/) : métriques techniques internes
 - Monitis (http://www.monitis.com/) : monitoring de surface WEB
 - Zabbix (http://www.zabbix.com/) : monitoring infrastructure 
 - Sortie de monitoring de plateforme (plateforme de compute/stockage/cloud...)
Des acquisitions
- régulières (toutes les minutes, toutes les heures)
- au format JSON/CSV et via fichiers/API
- entreposées sur des systèmes de fichier ou en base de données

La restitution des mesures

Sur le flot de données il faudra construire les métriques systémiques et les positionner vis à vis du système.

Une fois cette étape atteinte, c’est à la restitution qu’il faudra s’attacher. Restitution visuelle via des rapports/tableaux de bords, utilisation sur des systèmes d’alerte.

Ces étapes de construction, restitution, alerting devront au possible coller au temps réel. Néanmoins il est tout à fait possible d’envisager des temporalités différentes sur les données (sur un modèle d’acquisition et de restitution proposé par les lambda-architecture).

- Construction : R, Python, script
- Restitution : Tableau Software, Clickview, PowerBI, R markdown, Jupyter...
- Alerte : Système d'alerte sur seuil d'alerte

 


Références
Expériences personnelles de CTO/DT
http://www.irisa.fr/triskell/publis/2009/Simonin09a.pdf
http://liris.cnrs.fr/~sservign/Encyclopedia.pdf
http://www.afscet.asso.fr/SystemicApproach.pdf

Quelques rappels :
https://fr.wikipedia.org/wiki/Syst%C3%A9mique
https://fr.wikipedia.org/wiki/Cybern%C3%A9tique
https://fr.wikipedia.org/wiki/Approche_systémique
https://fr.wikipedia.org/wiki/Urbanisation_(informatique)
http://blog.xebia.fr/2008/04/10/urbanisation-pour-les-nuls/

Publicités

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s