Note de lecture : e-Business, roadmap for success, par Ravi Kalakota & Marcia Robinson

Note : 4 ; Le e-business pour les décisionnaires.

L’e-business, avant l’éclatement de la première bulle internet était le domaine de joyeux apprentis sorciers et d’entreprises conventionnelles qui tentaient d’adapter quelque chose qu’ils ne comprenaient guère dans le schéma de pensée de l’entreprise traditionnelle. L’un et l’autre ont gravement mangé la poussière, seul les très rares purs players tels qu’Amazon en sont sortis grandis.

Cet ouvrage s’intéresse à la seconde catégorie (l’entreprise traditionnelle). Ce texte particulièrement verbeux, car il compte environ 360 pages, vise particulièrement les exécutives ou plus probablement les consultants qui leur servent de cour. La technologie n’est donc pas le point focal de l’ouvrage. 12 chapitres seront nécessaires pour couvrir le sujet.

Les 25 pages du premier chapitre nous invitent la transition du e-commerce vers le e-business. Le e-business redessine les contours du business traditionnel, en redéfinissant la notion de valeur, en intégrant tous les processus de l’entreprise à la livraison de valeur et en faisant de la technologie un acteur de premier plan de cette transformation. Le second chapitre, qui compte également 25 pages s’attaque aux tendances, qu’elles soient client, processus, organisationnelles ou technologiques. Les mots importants sont intégration et flexibilité. Au niveau technologique, on voit poindre les poids lourds tels que SAP ou BAAN et la star du moment : l’EAI. Avouons tout de même que les auteurs entourent le miracle de l’ERP de précautions bien senties.

Lire la suite

Note de lecture : Introduction à GNU Emacs, par Debra Cameron & Bill Rosenblatt

Note : 7 ; Une appréhension claire et méthodique de l’outil.

Qui eut cru que près de 400 pages seraient nécessaires pour aborder l’IDE emblématique de la FSF ? Il est vrai que Emacs est un environnement de purs geeks, non seulement riche en fonctions, mais customisable et extensible. Encore faut-il savoir par où s’y prendre car rien n’est directement accessible à moins de connaitre les raccourcis appropriés, les commandes nécessaires ou la configuration qu’il faut, n’en déplaise aux fan boys qui le prétendent hautement ergonomique (il est vrai en comparaison de vi…).

Bref, ce sont effectivement 390 pages (hors annexes) qu’il faudra aborder, le tout organisé en 16 chapitres. Le premier chapitre « les bases d’Emacs » porte bien son nom. On y trouve la compréhension d’éléments qu’il faut maîtriser absolument tels que les buffers, les fenêtres et les commandes les plus importantes (qui ne sont bien sûr pas accessibles par menu). La section « en cas de problème » en fin de chapitre est vraiment une bonne idée, on la retrouvera en fin de tous les chapitres. L’édition de fichier est au menu du second chapitre. Nous déplacerons le curseur pour commencer, car la souris ou les flèches du clavier ne peuvent le faire. Viennent ensuite les autres commandes basiques d’édition. Cela devient assez vite fastidieux ! Comme beaucoup de fonctionnalités de l’éditeur, la recherche et le remplacement vont du simple au très compliqué et sophistiqué. Je passe rapidement sur le simple, même si la recherche avec les expressions régulières figure dans cette catégorie. Ispell permet quant à lui de faire des recherches approchées. La gestion des abréviations clôture un chapitre qui va bien plus loin que ce à quoi on s’attendrait !

Les buffers, c’est le mécanisme à la base d’Emacs. Ce chapitre 4 nous enseigne tout de leurs manipulations et de la manière de les affecter à une ou plusieurs fenêtres, avec les fonctionnalités qui en découlent. C’est un apprentissage à faire, car cela ne tombe pas sous le sens. Au chapitre 5, il est question de se servir d’Emacs comme environnement de travail Shell, et aussi de l’utiliser en gestion d’agenda. Une fonction qui parait un peu délirante aujourd’hui. On ne débotte pas au chapitre 6 qui nous propose d’utiliser l’éditeur comme gestionnaire de mail. A l’identique de ce qu’on utilise aujourd’hui, mais en ligne de commande. Donc mieux, diront certains. Mieux, au chapitre 7, on voit comment utiliser l’éditeur du GNU pour naviguer sur le net, avec Telnet, ftp (ça, ça reste utile) ou browser le web. Une expérience qui n’a rien à voir de celle des navigateurs modernes.

Lire la suite

Note de lecture : Essential COM, par Don Box

Note : 7 ; La source la plus technique sur les mécanismes COM. Difficile d’accès et peu illustré mais complet et consistant.

Ceci est une visite guidée et ardue du modèle COM / DCOM. Longtemps attendu, il se veut LE livre de référence sur le modèle objet COM, et il l’est sans contestes.
Le livre est très dense. Il compte 7 chapitres sur 375 pages. Le chapitre 1, un peu particulier, pourra intéresser les personnes d’avantages passionnées par le C++ : Une critique très intéressante du modèle objet du C++ y est développé.

Avec les 37 pages du chapitre 2 on aborde les interfaces COM et aussi la partie indigeste du livre, c’est-à-dire en fait le reste du livre en question. Parler d’interfaces en COM, c’est aborder IUnknown et l’implémentation du protocole qu’il sous-tend. L’auteur ne nous épargne rien mais nous gratifie aussi de macros pour simplifier la chose. En quelque sorte. Ce sont près de 60 pages qui sont consacrées aux classes au chapitre 3. On y trouve les différents mécanismes d’activation et les très obscurs monikers. C’est encore plus hard que le second chapitre…

Après les classes, ce sont très logiquement les objets qui sont mis en lumière sur près de 50 pages. C’est un moment de répis avec un propos moins rugueux et même bien illustré. Ici, c’est le mécanisme QueryInterface qui est exploré en profondeur, et les différents mécanismes de composition qu’il sous-tend. Les appartments abordés au chapitre 5 ont à la fois trait au modèle mémoire et au modèle de thread. Il n’est donc pas étonnant de voir qu’il s’agit là du chapitre le plus difficile du livre. Le modèle de marshalling, incontournable des middleware objet, et aussi de la partie. Voilà 60 pages qui vous donneront du fil à retordre.

Lire la suite

Note de lecture : SGML Pratique, par Eric Van Herwijnen

Note : 6 ; Comprendre le précurseur de XML

SGML est le méta-format de documents utilisé par HTML. C’est aussi le point de départ de XML. Ce livre décrit par le menu cette normalisation de documents (car c’est bien de cela qu’il s’agit) promulguée par le DoD américain.

C’est un beau bébé que cet ouvrage, avec ses 270 pages sur 4 parties principales totalisant pas moins de 24 chapitres ! La 1ère partie s’intitule sobrement « pour commencer et regroupe les 6 premiers chapitres, soit près de 60 pages. La quinzaine de pages de l’introduction nous met au parfum de la nécessité de séparer la forme du fond, le tout illustré par Word, Tex et le programme CALs du DoD. C’est un excellent début. Plus court, le second chapitre nous dresse un bref historique sur les besoins en format d’échanges de document qui ont conduit à SGML. Là aussi, c’est bien écrit mais on reste un peu sur sa faim. Très court également, c’est-à-dire sur 5 pages, l’auteur nous présente les composants d’un système SGML, un chapitre qui aurait facilement pu être associé au suivant.

Au chapitre 4, c’est la DTD elle-même qui est décortiquée. Tout ou presque y passe : éléments, attributs, en-tête DOCTYPE. Bref, c’est du sérieux. Le chapitre 5 est anecdotique, et présente les caractéristique et la nécessité d’un éditeur SGML. Cette première partie se referme sur un chapitre 6 qui fait le tour des communautés et autres groupes de discussion autour du sujet. Une information qui ne pouvait pas tenir le poids des ans.

Lire la suite

Note de lecture : ODMG-93, le standard des bases de données objet, par Rick G. G. Cattell

Note : 6 ; Bourré d’informations, mais dense et difficile d’accès.

Un livre court et dense, qui traite exclusivement des aspects du standard ODMG. Autant dire que le propos apparaîtra des plus secs : détails sur la syntaxe et la sémantique, support des langages, etc…

Court, nous l’avons dit : l’ouvrage ne compte que 170 pages structurées en 6 chapitres et 2 annexes. Le premier d’entre-eux « Aperçu » donne une image beaucoup trop haut niveau du standard pour pouvoir se donner une idée de l’architecture. D’ailleurs le chapitre parle pour moitié du comité de normalisation, de son historique et de son processus. Nous restons sur notre faim. Le second chapitre est nettement plus conséquent, avec ses 35 pages. C’est l’ensemble de la représentation objet (sous forme idl) qui est abordée ici. La part belle est faite aux différentes collections (il y en a beaucoup), ainsi qu’aux opérations de base que l’on peut effectuer dessus. Les transactions sont abordées de manière un peu sommaire. Il est vrai qu’elles ne diffèrent guère de ce que l’on connait.

Le chapitre 3 fait un zoom sur l’IDL d’ODMG qui se nomme OLD (Object Definition Language, bien sûr). Par zoom, j’entends qu’une grande partie des 14 pages de ce chapitre sont consacrées à la BNF de ce langage et ce n’est pas particulièrement fun. A contrario, les 16 pages décrivant le langage de requête, l’OQL paraissent un peu courtes pour le sujet. Dommage en effet, car le chapitre est intéressant, avec de courts exemples à chaque fois.

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.

La seconde partie « Le changement » regroupe les 4 chapitres restants, soit environ 70 pages. Il s’ouvre sur un chapitre 4 pour nous aider à capter les signaux d’alarme. L’auteur s’appuie sur sa longue expérience pour analyser des situations vécues qu’il nous raconte. Instructif et captivant. Le chapitre 5 est plus court et évoque les situations de licenciement. L’auteur nous invite à ne pas rater notre sortie, bien structurer son temps une fois dehors et surtout à ne pas nous sous-évaluer suite à cet évènement traumatique.

Lire la suite

Note de lecture : The Rational Unified Process, an introduction, 3rd edt., par Philippe Kruchten

Note : 6 ; Une importante revue de l’ouvrage

Rational Unified Process fut la méthode tendance jusqu’au milieu des années 2000. Cette 3ème édition est en quelque sorte la mouture ultime (en attendant sa renaissance dans les années 201x, sous le nom de SAFe). Chaque workflow de RUP est riche de descriptifs, de rôles et de pratiques, au point que chacun d’entre eux nécessite au moins un ouvrage pour couvrir le sujet. Ici, il s’agit plutôt d’un tour d’horizon de l’ensemble de ces workflows.

Contrairement à l’édition précédente qui ne représentait qu’une évolution mineure de livre (et du processus), celle-ci a fortement évolué, gonflant également l’édition d’une bonne quarantaine de pages, pour un total de 270 pages hors annexes. Le tout est divisé en deux parties inégales. La première compte 110 pages sur 6 chapitres et traite du processus dans sa globalité. Le premier chapitre est certainement particulier, car il traite de la notion de « best practices », mais surtout il est signé Grady Booch. Après une courte introduction sur cette notion de best practices et de développement itératif et incrémental, l’auteur nous évoque les propriétés d’un bon processus : gestion des exigences, modélisation visuelle, gestion du changement, etc… Bref, les propriétés mises en avant par RUP (ou UP).

Le second chapitre fait écho à ce premier chapitre en déclinant les propriétés évoquées sur RUP, puis en évoquant la structure en 2 dimensions du framework. Tout cela se lit facilement mais il est clair que l’on n’est pas rentré dans le vif du sujet. Le chapitre 3 reste très abstrait car il décrit le méta-modèle du framework : rôles, artéfacts, activités (et étapes d’activités), workflows et disciplines ! Les couches de « pilotage » que sont les guidelines et autres templates ne sont que brièvement décrits. L’ensemble revêt une certaine esthétique pour l’académicien ou le théoricien (moi par exemple) mais va sembler austère et très abstrait pour qui ne porte pas un intérêt aiguisé aux processus de développement !

Lire la suite

Note de lecture : More effective C++, par Scott Meyers

Note : 9 ; De la même veine et de la même qualité que le 1er volume

Effective C++ fut indéniablement un succès. La formule a depuis été reprise par d’autres auteurs, empruntant souvent la même qualité de pertinence technique. Mais ces autres textes n’ont pas la verve d’un Scott Meyers ! Ce second volume est de la même eau que le premier. Ici les centres d’intérêts se focalisent sur un certain nombre de sujets précis (exceptions, casts, etc…) et l’auteur développe plus son propos. D’ailleurs le nombre de règles est plus réduit, tandis que le nombre de pages a augmenté, passant à 290 pages.

L’auteur a structuré son propos en 6 thèmes. Les « basiques » couvrent 4 items plutôt simples sur une quinzaine de pages. La seule « nouveauté » étant les cast C++ apparus depuis peu (à l’époque). La seconde partie couvre aussi 4 items, cette fois sur une vingtaine de pages et sur un sujet plus particulier : les opérateurs. Outre les subtilités dont l’auteur nous régale comme à son habitude, je relève ici deux items particulièrement importants : les écritures idiomatiques des opérateurs pré et post incréments, et les différentes formes des opérateurs new et delete.

La troisième partie nous conduit vers un sujet délicat avec les exceptions : 7 items leur sont dédiés sur 35 pages. Ici, il s’agit tout au long de ces items de nous faire prendre conscience des implications et des limites de leur usage : fuite de mémoire, contraintes au sein des constructeurs et des destructeurs, impact sur les performances, etc. Il y a de quoi s’enfuir, ce qui n’est pas le propos de l’auteur.

Lire la suite

Note de lecture : The Unified Process Transition and Production Phases: Best practices in implementing the UP, par Scott W. Ambler & Larry L. Constantine

Note : 3 ; Un quatrième opus de la suite dédie à UP, d’avantage cohérent avec le sujet

Dernier opus de la série consacrée à Unified Process, celui-ci reprend la formule qui nous a tellement enchantée dans les volumes précédents. Celui-ci est fort de 280 pages et compte 8 chapitres, introduction et conclusion incluses. L’introduction, justement, est le seul chapitre réellement écrit pour correspondre au titre de l’ouvrage. Il compte une douzaine de pages et cherche à replacer chaque workflow dans le contexte de la phase de transition.

Le second chapitre va couvrir 35 pages et se focalise sur le workflow de déploiement. Il compte 6 articles dont 3 sont signés Scott Ambler (l’éditeur de l’ouvrage si vous avez suivi). Contrairement aux ouvrages précédents, la plupart de ces articles ont effectivement trait au déploiement et au rollout en phase de transition. Leur lecture nous laisse apparaitre le chemin parcouru depuis lors grâce au mouvement devops !

Le chapitre 3 traite du workflow « tests », et ce ne sont pas moins de 8 articles que nous retrouvons là ! Cem Kaner nous parle du recrutement de testeurs. Cela a peu à voir avec la phase de transition, mais non seulement l’idée est intéressante, mais on y trouve beaucoup de matière pertinente. Dans la même veine, James Bach évoque la formation des testeurs. Le propos mériterait toutefois d’être actualisé. Dans le style nostalgie, McGregor & Major nous parlent de « maximiser le ROI en sélectionnant les cas de test » ! Voilà une pensée définitivement issue de l’ancien monde ! Plus original, « don’t waste your bugs ! » nous propose une analyse qualitative des bugs pour estimer la maturité du code ! Le worflow « Project Management » est au menu du chapitre 4 et nous propose 6 articles. Bien qu’ils aient peu à voir avec le sujet, « making lemonade with lemon » aborde les besoins psychologiques des équipes. Un des rares écrits de Norman Kerth, donc à ne pas rater. « Looking back » est co-signé par Karl Wiegers et Johanna Rothman ce qui est en soi une raison de s’y arrêter. L’autre est que l’on y décrit la démarche de rétrospective.

Lire la suite

Note de lecture : The Unified Process Elaboration Phase, par Scott W. Ambler

Note : 2 ; Une compilation bien hétéroclite !

Tout comme le volume dédié à la phase « d’inception », ce volume regroupe un ensemble d’articles en provenance de Software Développement Magazine. Ils sont globalement organisés en worflows, ce qui nous donne 8 chapitres (en comptant introduction et conclusion), pour un total de 260 pages hors annexes.

Le premier chapitre est purement introductif. Il met en contexte le processus itératif par rapport aux processus en cascade et donne un aperçu des différents workflows, puis plus précisément de la phase d’élaboration. Tout cela ressemble pas mal au premier chapitre du volume consacré à la phase d’inception. Cela reste aussi très général. Place au workflow « Project management » au chapitre 2, qui va regrouper 6 articles. J’en retiens essentiellement deux : « managing collaborations » par Mary Loomis évoque les propriétés essentielles du cadre pour rendre possible cette collaboration. « implementing feature teams » par Jim McCarthy préfigure les équipes pluridisciplinaires que l’on retrouvera dans le fonctionnement agile. Aucun des 6 articles n’est lié à la phase d’élaboration ni même à Unified Process.

Le chapitre 3 aborde le workflow « business modeling” et ce sont 4 articles qui sont mis en avant ici. Malgré la présence d’un article de Martin Fowler, aucun d’entre eux ne retient mon attention. Ce workflow semble décidément une source d’embarras à décrire… Nous arrivons maintenant au chapitre 4 qui va évoquer le workflow de gestion des exigences. Nous avons 5 articles ici. Karl Wiegers nous offre toujours une prose de qualité et « Writing Quality Requirements » s’inscrit dans cette mouvance. Je garde. Puis « Prototyping from the User’s Viewpoint » est un des rares articles qui cadre vraiment avec la phase d’élaboration d’UP. Je garde également !

Lire la suite