Il fait toujours plaisir d'être utile!

Written by Fneuch on 16.2.05

Je me suis fait demandé quel était les caracteristiques d'un architecte organique. (Car c'est le rôle que j'ai au sein de mon ministère, pour ceux qui n'ont pas vu mon profil).

La question peut-être répondu de 2 façons:

  • La première (et je suis certain que c'est celle recherché), c'est du point de vue du travail effectué.
  • La deuxième (je la fournis afin d'encourager tout ceux d'entre vous qui voudrais, soit engagé un architecte organique, soit en devenir un) est du point de vue de l'humain qui le fait.
Je ne prétends pas avoir la vérité absolu sur la définition d'un architecte organique, mais j'essais plutôt de définir en fonction de ce que je vois dans la communauté informatique.

Un «Architecte organique», qu'est-ce que ça mange en hiver?

Premièrement, l'architecte organique ne doit pas être confondu avec l'architecte technologique. Dans la plupart des organisations, il y a des décisions, choix qui sont fait pour l'entreprise entière. Des choix comme les composantes matérielles, les systèmes d'exploitations et certains logiciels (les serveurs d'application, les serveurs de base de données sont quelques exemples) Ces choix sont effectués par les architectes technologiques. Il va de soi, que l'architecte organique travaille en collaboration avec l'architecte technologique, car ces choix vont influencer directement son travail.
Mais, dans chaque projet de développement, il y a toujours des besoins techniques qui n'ont pas à être dicté pour l'entreprise au grand complet. Le choix d'une librairie «third-party» en est un exemple. Prenons nous «Apache Struts» ou «Spring» comme framework. Ces choix sont de la responsabilité de l'architecte organique.

L'architecte organique apporte aussi son conseil au gestionnaire de projet dans la spécification des cas d'utilisation (use cases) lorsque ceux-ci peuvent être influencer par la technologie. Un système d'envoie de courrier en lot par exemple, est un cas simple où la définition du cas d'utilisation doit absolument se faire en collaboration avec l'architecte organique.

L'architecte organique peut (ce n'est pas le cas dans mon ministère) être responsabilité de la méthodologie de développement utilisé, Extreme Programing, Rational, etc.

L'architecte organique est souvent reviseur de la documentation d'un système. Il n'est pas la personne qui approuve la documentation, mais il se doit de commenter celle-ci afin de pouvoir aider les programmeurs qui travailleront sur le projet. Ceci permet aussi de soulever d'avance les difficultés techniques qui pourront se présenter.

L'architecte organique est responsable d'établir les règles de programmation. Il se doit de fournir les façons de faire qui seront utilisées dans les projets. Sans ça, les programmeurs seront laissé à eux-mêmes, et il deviendra impossible de maintenir le système par la suite, il devient aussi difficile de remplacer un programmeur par un autres si un problème survient. (Les règles de programmation doivent définir des choses tel que la gestion des erreurs, la journalisation (logging), la normalisation des tests, etc.) Il est aussi responsable de vérifier que les règles sont suivis.

L'architecte organique aide le gestionnaire de projet dans l'identification des taches qui sont à réaliser dans le cadre du projet. Il peut aussi (s'il en est capable) fournir des estimer de temps au gestionnaire de projet. (Oublier moi la dessus!)

L'architecte organique aide et supervise les programmeurs pour les taches complexes. Il se doit d'être en mesure de répondre au question technique, de fournir une aide concrête dans la solution des problèmes qui se présente.

L'architecte organique peut aussi être de conseil pour l'embauche/evaluation d'un employé. Il est souvent nécéssaire de vérifier les compétences techniques d'un employé, l'architecte organique se doit d'être en mesure de conseiller le «manager» (vous pouvez mettre la personne que vous voulez, mais c'est celui qui est responsable du personnel).

L'architecte organique se doit de travailler de pair avec le spécialiste des interfaces (Dans mon cas le Web Designer) Afin de déceler les impossibilités techniques (faire tourner un texte sur 360 degré en avançant dans une page web) Il est aussi responsable de s'assurer que les programmeurs respecte les normes visuels qu'il a défini avec le Designer.

L'architecte organique est souvent responsables d'établir les règles physique de l'application. En d'autre mot, le découpage en packetage, de soulever les endroits où les bonnes pratiques (Design Pattern) sont de rigueur, etc.

Il est à noter aussi que l'architecte organique joue un rôle du début à la fin du développement, il se doit d'être en constante communication avec tous les intervenants dans le projets, afin de toujours être en mesure d'assurer une cohésion constante entre toutes les parties de l'applications.

Un «Architecte organique», qui est-ce qui veut manger ça l'hiver?

Les accros... LOL! Il n'est pas nécéssaire de posseder 25 Baccalaureat pour pouvoir faire la job d'architecte organique.

Généralement, l'architecte organique est quelqu'un qui lit beaucoup sur la technologie. (Il n'est pas obligé de connaitre toutes les technologies parfaitement, il suffit simplement de savoir que ça existe et de se souvenir où trouver l'information quand le besoins se pointe.)

L'architecte organique se doit d'être un bon communicateur, être en mesure de vulgariser les technologies. Puisqu'il interragit avec beaucoup de personne qui n'ont pas tous les mêmes connaissances, il doit adapter son niveau de communication avec son interlocuteur. (T'explique pas le céduleur quartz de la même façon à un chargé de projet qu'à un technicien)

L'architecte organique se doit d'avoir un bon esprit de synthèse. Il arrive fréquemment qu'on soit «pitcher» en plein milieu d'un problème et qu'on doit trouver une solution, une explication, peut importe... Il faut être en mesure de rapidement comprendre la situation et la cause du problème.

Je pense que j'ai fait le tour, si vous pensez à autres choses, faites-le moi savoir.

Qui suis-je ?

Je suis un "accro" de Java: que vous parliez de programmation, ou de café! Je suis architecte organique pour une compagnie de consultation à Québec.

PLAYSTATION®Network

Utiliser vous Twitter?

Twitter Updates