Note de lecture : Des solutions Objet, par Grady Booch

Note : 8 ; Toute la perspicacité et l’expérience de Grady Booch dans cet incontournable ouvrage. Malheureusement, la traduction française et la qualité éditoriale ne sont pas à la hauteur.

Grady Booch est ce que nous pourrions appeler un récidiviste. Encore une fois il nous gratifie d’un excellent ouvrage. Aujourd’hui, il s’agit de mettre en lumière les meilleures pratiques sur la gestion de projets objets, itératifs et incrémentaux. Trois éléments principaux servent de charpente à l’ouvrage : Les histoires vécues (par Grady Booch), les conseils et les trucs et astuces.

Le livre lui-même est composé de 7 chapitres totalisant 290 pages pour sa partie principale. Le premier chapitre « premier principes » se focalise sur la nature incrémentale et itérative des projets objet, tout en mettant l’accent sur le fait que la structuration objet est facilitante mais ne suffit pas à garantir le succès d’un projet. L’auteur met clairement l’accent sur la nature émergente du projet et de son architecture, ce que sous-tend le caractère itératif, une architecture qui ne s’arrête d’ailleurs pas à la décomposition en classes. C’est un très bon chapitre qui met le doigt là où il faut.

Le second chapitre « produit et processus » est moins passionnant et date bien le livre d’une époque « anté-agile ». La première partie du chapitre pose des concepts et conseils de structuration objet qui forment le socle de la « méthode Booch » que l’on retrouvera plus tard en partie dans UML », tandis que la seconde partie est d’avantage focalisée sur la méthode. On y voit les prémices d’Unified Process, même si en l’état c’est plus léger. Mais il reste indiscutablement un fossé avec l’agilité.

Lire la suite

Note de lecture : Managing Risk, par Elaine M. Hall

Note : 5 ; Une appréhension remarquable du sujet, mais exposée de façon par trop abstraite.

Les ouvrages publiés sous le sceau du SEI ont la réputation d’être pointus et hermétiques. Celui-ci ne fait pas exception. L’auteur est une consultante reconnue qui a entre autres œuvré sur des contrats militaires. L’humour et la poésie n’ont guère leur place et, comme nous allons le voir, l’approche est très structurée. De quoi donner froid dans le dos aux tenants de l’agilité à première vue, mais cela peut être différent en y regardant de plus près.
L’ouvrage n’est pas anecdotique avec ses 360 pages hors annexes. Il ne compte pas moins de 5 parties pour un total de 23 chapitres. Au moins cela rythme-t-il la lecture ! Dans la première partie, nous allons partir à la découverte de la gestion des risques, le tarif est de 65 pages sur 3 chapitres. Le premier chapitre est aussi le plus conséquent de cette partie, et il est même assez dense. Il présente nombre de concepts insoupçonnés de la gestion de risque. Les plus importants (que l’on retrouvera plus tard) sont le risque à grande échelle et le risque à petite échelle.

Au chapitre 2, il est question de la formule du succès selon l’auteur, le P2I2 : People, Processus, Infrastructure et Implémentation ! On y trouve quelques graines d’agilité, avec la volonté d’impliquer tout le monde et de procéder par petites étapes, par exemple. Cette première partie se conclut par le « risk management map », pour progresser depuis le traitement du problème (mode réactif) à une vision d’opportunités. La déclinaison de cette progression sur les 4 thèmes vus au chapitre précédent reste quand même à ce stade assez abstraite.

La 2nd partie (comme les 3 suivantes) aborde l’un des axes du P2I2, à savoir ici : le processus. Le thème est couvert par 5 chapitres pour un total de 85 pages. Le chapitre 4 qui débute cette partie va s’attaquer à l’identification des risques. Le chapitre est vraiment très « processus », avec des checklists, un template d’identification de risque, des tâches et des étapes. Mais la maitrise du sujet par l’auteure est indéniable, il n’y a qu’à regarder la taxonomie des risques qu’elle nous propose. Au chapitre 5 on passe à l’analyse. Je l’ai trouvé plus intéressant : il se divise en une partie consacrée aux méthodes d’analyses et une seconde dédiée aux techniques d’évaluation. De l’analyse en kit, en quelque sorte.

Lire la suite

Note de lecture : Réussir votre parcours professionnel en temps de crise, par Willet Weeks

Note : 4 ; Une vision assez vintage des changements d’orientation des « C levels ».

Il faut replacer ce texte dans son époque, à savoir la crise de la première guerre du golfe et la récession des 3 années qui suivirent. Le monde a bien changé depuis et c’est sans doute ce décalage qui rend la lecture savoureuse, car le texte était clairement pertinent à l’époque. En fait, il l’est toujours à maints égards.

C’est un texte assez court, il compte moins de 150 pages. Il est découpé en 2 parties pour un total de 7 chapitres. La première partie « êtes-vous prêt à affronter le changement ? » regroupe 3 d’entre eux pour un total d’environ 60 pages. Il commence par un chapitre pour nous aider à déterminer si nous sommes d’un naturel casanier ou aventurier. Le propos est clair et peut aider à des prises de consciences. Toutefois je trouve les traits un peu violemment marqués. L’auteur nous propose 2 questionnaires pour nous aider. Très bonne idée.

C’est également sur un questionnaire que débute le second chapitre « le poids des habitudes ». J’y retrouve certains éléments de l’excellent livre de Charles Duhigg, à savoir que les habitudes nous aident à dédier notre attention à des choses plus importantes. Mais on peut très rapidement devenir prisonniers de nos habitudes ! Le message est clair : il est indispensable de se débarrasser de nos fixations passées. Cette première partie se conclut sur un chapitre pour nous aider à identifier nos besoins et nos atouts. J’y retrouve les éléments de la motivation intrinsèque chers à Daniel Pink. Et surtout l’auteur nous exhorte à ne pas confondre souhaits et besoins. Les atouts sont plus légèrement traités. Mais surtout l’auteur nous propose un processus à base de matrices pour étudier l’adéquation d’un poste avec nos besoins/atouts. Un peu lourd mais intéressant.

Lire la suite

Note de lecture : Le système X Window, par Oliver Jones

Note : 7 ; X Window (enfin) abordable !

Pas facile de trouver un livre abordable sur la programmation X Window. Il faut dire que le sujet est plutôt un gros morceau. Je ne peux me targuer d’être un spécialiste du sujet, et ce livre m’a paru de bonne facture, du moins pour une introduction sur le sujet.

L’ouvrage accuse quand même près de 500 pages réparties sur 12 chapitres, hors annexes. Avec 70 pages, elles ne constituent pas une partie négligeable, mais leur intérêt est assez varié : par exemple le listing des polices de caractères est plutôt fastidieux et d’un intérêt limité. Le premier chapitre introduit X Window, d’un point de vue principe de fonctionnement, d’un point de vue architecture et d’un point de vue structuration des toolkits. X Window est un système complexe et le positionnement des toolkits est particulièrement important à comprendre. Un chapitre bien écrit et posant de bonnes bases. Le chapitre 2 poursuit par une « introduction opérationnelle » via le célèbre « hello world » version X Window, donc nécessairement un peu compliqué, mais bien expliqué. Mais pourquoi diable avoir traduit en français le programme, y compris les noms de variables ?

Le chapitre 3 aborde les concepts de X Window. Avec une quarantaine de pages, c’est l’un des plus conséquents de l’ouvrage, mais ce n’est pas non plus le plus digeste. Malgré quelques extraits de code, le propos reste très conceptuel et l’auteur nous laisse parfois le soin de faire le lien entre les différents concepts. Le chapitre est toutefois incontournable pour bien aborder la suite. Plus imposant encore avec 80 pages, le chapitre 4 consacré aux fenêtres explore en profondeur ce concept central de X Window. L’auteur balaie bien dans les coins, depuis la structure jusqu’à la gestion des évènements en passant par les états et la description exhaustive des différentes structures manipulées. C’est quelque peu fastidieux mais plus concret que le chapitre précédent. Ce sont ensuite plus d’une centaine de pages consacrées à l’affichage de graphiques dans ces fenêtres au chapitre 6. Le propos est très complet, depuis la gestion des canaux, jusqu’à l’affichage de texte, en passant par l’affichage de bitmaps, de figures et l’usage de copier-coller et autres joyeusetés. L’approche est agréable, voir ludiques avec chaque fois des extraits de code pour illustrer chaque concept.

Lire la suite

Note de lecture : Comprendre DCE, par Ward Rosenberg, David Kenney & Gerry Fischer

Note : 7 ; Un exposé limpide des concepts de DCE. Au-delà de cet environnement, il permet de comprendre les concepts inhérents aux systèmes distribués.

L’environnement DCE n’a pas été un franc succès dans le monde UNIX. Néanmoins, c’est de cette norme que s’est inspiré Microsoft pour Windows NT. DCE, c’est « le réseau est l’ordinateur » à l’heure pré-Web. Et l’ouvrage présente l’ensemble des services pensés pour en faire une réalité. Ne nous laissons pas abuser par l’apparence préhistorique de la chose : ces services sont bien pensés, repris parfois moins bien à l’heure du Web, le propos du livre reste intéressant. Voyons cela.

Au total, l’ouvrage compte 235 pages hors annexes, structurées en 14 chapitres. Ces dernières occupent 35 pages et ne sont guère passionnantes, à l’exception des questions / réponses. Le premier chapitre « le réseau devient l’ordinateur » donne une vue haut niveau de l’architecture et des motivations de DCE. Il est peu technique et constitue une bonne introduction au sujet. Le chapitre 2 entre directement dans le vif du sujet en abordant l’élément central de DCE, ce qui nous conduit rapidement à parler de service de nommage, d’annuaire, de sécurité, etc.
Le RPC est en quelque sorte la brique de base pour ce qui est de l’interaction entre ordinateurs pour DCE. C’est le sujet du chapitre 3. Ce chapitre décompose toutes les étapes, depuis la compilation avec l’IDL jusqu’au protocole d’appel en passant par la recherche du service dans l’annuaire distant. Une solide présentation du sujet. La présentation des threads DCE au chapitre 4 est un peu plus décevante et ne rentre pas réellement dans le cœur du sujet.

Le Security Service est un sujet sérieux et même complexe quand il s’agit de sécuriser les appels entre cellules. Et c’est bien de cela qu’il s’agit au chapitre 5. Le propos est clair et bien illustré, mais laisse quand même un léger goût d’inachevé en fin de chapitre. Le Directory service, avec d’abord le CDS puis le GDA, est aussi un sujet d’ampleur. On ne lui reprochera pas d’être traité légèrement au chapitre 6. C’est l’un des aspects qui a le plus vieilli avec l’arrivée du Web. Et si le texte est bien écrit, il n’est pas non plus palpitant à lire.

Lire la suite

Note de lecture : Au cœur de Corba avec Java, par Jérôme Daniel

Note : 7 ; Corba clairement expliqué

Dans les années 90, Corba régnait en maître sur les applications distribuées ou peu s’en faut. Celui-ci, paru vers la fin de l’ère Corba, a pour but de nous initier complètement à Corba en s’appuyant sur une implémentation Java. Mais c’est avant tout un livre sur Corba. L’auteur, Jérôme Daniel est l’architecte de l’ORB JavaORB (il est également celui de OpenORB, son successeur). Il est donc logique que les exemples s’appuient sur ce broker.

L’ouvrage est assez conséquent, puisqu’il compte 380 hors annexes, structurées en 4 parties pour un total de 20 chapitres. La première partie se focalise sur les mécanismes de base, mais la facture est quand même de 6 chapitres pour 115 pages ! Le premier chapitre traite des environnements répartis et plus particulièrement de l’invocation à distance (donc de RPC) et tout ce qui va avec : fiabilité et sécurité. Le second chapitre, c’est un peu le « hello world » avec Corba, en y incluant de l’IDL, l’implémentation client et serveur jusqu’à l’exécution. C’est très bien fait. L’IDL, justement, va être utilisé opérationnellement au chapitre 2 durant lequel nous allons développer un véritable serveur Corba. Même si cela reste simple, on y est très bien guidé. Le 3ème chapitre est un peu en décalage des 2 premiers, car il prend des allures de manuel de référence IDL, bien qu’étant moins sec que ce qu’il est convenu de croiser en la matière.

En abordant le chapitre 4, on prend bien conscience que l’IDL est au cœur de Corba, car c’est encore de cela qu’il est question ici, sur les aspects avancés, en continuité directe du chapitre 3. Le chapitre 5 continue dans la même voie, mais en abordant des sujets qui font la jonction avec les ORB : identifiants, contextes d’opération, etc. Alors que ce chapitre devrait redevenir concret à l’image des deux premiers, cela reste hélas pas mal abstrait ! Cette partie se referme sur un chapitre 6 évoquant les références, contextes et autres URL. Il s’y trouve pas mal de code, ce qui mitige un peu le côté aride du propos.

Lire la suite