Note : 3 ; Trop théorique et trop volumineux
Voici un livre qui traite vraiment de méthodologie. Jacobson est le créateur des use cases, il était donc logique que son livre se focalise sur l’analyse. Au delà de ceci, il traite bien entendu des aspects processus et conception, cependant son propos reste souvent de très haut niveau. Mais voyons plus précisément ce que recèle l’ouvrage. Tout d’abord, il est volumineux, avec plus de 500 pages sur 16 chapitres regroupés en 3 parties.
La première partie traite des concepts objet. On en prend pour 5 chapitres sur 110 pages. Le premier chapitre est représentatif du livre : de bons vieux concepts « industriels », avec un processus en phase et une grande croyance dans la réutilisation sortie des cartons… Le second chapitre est une variation de celui-ci et ne nous apprend pas grand chose. C’est avec le chapitre 3 que l’on aborde l’orientation objet. Une vue très conceptuelle et analyse de l’objet, qui fait écho à ce qui est développé dans OMT (mais sans être aussi bien formalisé). Le chapitre 4 est le prolongement « conception » de ce chapitre. J’avoue avoir du mal à distinguer en quoi il apporte quelque chose au propos. En toute logique, le 5ème chapitre traite de l’implémentation orientée objet. C’est une nouvelle illustration de l’incapacité des ouvrages méthodologiques de cette époque de traiter décemment d’implémentation !
La seconde partie parle des « concepts », c’est à dire en fait des grands domaines d’ingénierie. Ce sont 7 chapitres qui constituent cette partie, la plus longue du livre avec près de 240 pages. Et l’on commence par évoquer l’architecture. En fait d’architecture, les auteurs développent plutôt une représentation en vues du système, ce qui permet d’introduire chemin faisant les cas d’utilisation. Mais tout ceci est bien abstrait. C’est de modèle d’analyse qu’il est ensuite question, en quelque sorte une reprise des chapitres 3 et 4. Puis c’est au tour de la « construction ». Pas plus que le chapitre 5, celui-ci n’est convainquant. Mais c’est l’occasion de présenter quelques diagrammes : diagramme d’interaction, d’activité et d’état-transition. Les auteurs tentent aussi de décliner quelques spécialisations , comme le temps réel avec un focus particulier sur les stimuli et la communication entre objets. On s’occupe également des bases de données, sujet mal traité qui semblait plutôt facile à aborder pourtant. On parle aussi de composants, on en parle toujours. Et c’est toujours aussi peu convainquant. Viennent finalement les tests, dont on se dit que le chapitre ne sert qu’à occuper le terrain…
La dernière partie est consacrée aux études de cas. Elle s’étend sur 150 pages et 4 chapitres. Le premier d’entre eux est une étude de cas sur la gestion d’entrepôts. On y développe un peu de cas d’utilisation, un peu de modèle d’analyse et une structuration en bloc. Pas de quoi bien comprendre la démarche de Jacobson. Une seconde étude de cas dans le domaine des télécommunications n’apporte pas grand chose. Les deux derniers chapitres traitent d’une part de la transition vers Objectory (vague et abstrait) et de la comparaison avec les autres méthodes, ce qui étonnamment s’avère intéressant.
Si le propos des auteurs est souvent assez vague, il est peu efficace, et la substance utile de ce livre (indéniable) ne justifie pas son volume. Je trouve aussi que l’aspect processus est trop idéalisé : il est rare qu’un développement se situe dans un cadre aussi idéal que celui décrit.
Aujourd’hui, ce livre présente certainement un intérêt “historique”, car le livre écrit par ce même Jacobson avec Rumbaugh et Booch, The Unified Software Development Process, traite le même sujet tout en étant plus d’actualité.

Référence complète : Le génie logiciel orienté objet – Ivar Jacobson, Magnus Christerson, Patrik Jonsson & Gunnar Övergaard – Addison Wesley 1993 – ISBN : 2-87908-042-8 (VO : 0-201-54435-0)