|
Publicité ' | ||||||||||||||||||||||||
|
|
#121 | |||
|
Membre du Club
![]() Joël Inscription : janvier 2011 Messages : 55 ![]() |
Citation:
Si variable = 1 alors Traiter paragraphe 1 Sinon traiter paragraphe 2 FinSi. Mais si ta variable prend la valeur 3, tu traites le paragraphe 2, ce dont tu n'aurais pas du faire. Voici le bon code : Si variable = 1 alors Traiter paragraphe 1 Finsi Si variable = 2 alors traiter paragraphe 2 Finsi Si (variable <> 1) et (variable <>2) alors Traiter cette anomalie Finsi. Et dans ce cas tu n'as pas besoin d'un débogueur, car ton traitement indiquera que tu es en anomalie avec la variable = 3. Citation:
Citation:
Et donc quand on n'a pas de débogueur, comment faire ? Et de surcroit, puisque je n'utilise pas de débogueur, j'en arrive à la conclusion que cela ne sert à rien. Pour la simple raison que j'ai une approche plus méthodologie. |
|||
|
|
27
|
|
|
#122 | |
|
Membre Expert
![]() Inscription : février 2005 Messages : 1 238 ![]() |
Citation:
Croire aveuglément qu'une méthode est la bonne c'est aussi dangereux que de ne pas en avoir. Tout mérite un peu de recul. Trop de lumiére, ça aveugle. Dans la théorie, les spécificiations sont claires, justes, sans ambiguités, tous les cas d'utilisation sont identifiés, tous les aléas techniques résolus,tous les scénarios identifiés à l'avance, tous les test faits, tous les outils fiables, toutes les personnes compétentes et fiables. C'est la limite de l'académisme. La spécification c'est la zone grise de l'informatique depuis que ça existe, les cas de tests ne sont jamais exhaustifs, les tests et autres recettes ou itérations générent des overheads, la technique pose toujours son lot de question, les outilsont leurs limites et les gens ne sont pas tous ni du même niveau ni de la même culture. Ce delta, souvent négligé, fait que la seule voie de la croyance aveugle dans la méthode académique c'est la déception et les débats de machine à café "si tu avais, si j'avais, si ils avaient..." et comme partout, on finit par faire ce qu'on peut, parfois au mieux, parfois au moins disant; parce que là aussi intervient la dimension argent, qui n'est pas négligeable. Donc les grandes théories sur comment il faut bien faire les choses, c'est pour moi l'apanage de l'inspection des travaux finis. Je ne vois pas ce que ça apporte quand quelqu'un qui dit "je ne m'en sers pas à cause des contraintes locales qui rendent la chose complexe et/ou inutile" de lui répondre "Haha!!! Moi je ne connais pas tes contraintes, mais je vais t'expliquer la vie et comment tu dois faire les choses bien". C'est de la philo de BDE d'école d'ingé. |
|
|
|
42
|
|
|
#123 |
|
Membre du Club
![]() Joël Inscription : janvier 2011 Messages : 55 ![]() |
Je l'avoue, j'ai du mal à te comprendre.
Tu parles du décalage qui existe entre ce que l'on devrait faire et ce que l'on peut faire ? Car en général, les spécifications sont du domaine du faisable. S'il existe un problème dans la pratique, la difficulté revient à une spécification mal posée. Ce que tu appelles les grandes théories sont pour moi du concret. Je n'invente rien. Je travaille comme ça depuis des années. Et je peux te confirmer que cette façon de travailler est très lourde et contraignante. Une simple correction d'une anomalie dans mon environnement de travail peut me prendre, disons dix minutes. Mais en suivant le processus de la maintenance, mis en place dans les entreprises que l'on nomme aussi grand compte, il faut parfois compté plus jours entre le moment de la récupération du source et sa mise en production. Et là, je ne fais que subir cette règle imposée par l'entreprise. Ce n'est pas moi qui décide. |
|
|
13
|
|
|
#124 |
|
Membre Expert
![]() Inscription : février 2005 Messages : 1 238 ![]() |
|
|
|
22
|
|
|
#125 |
![]() ![]() yan verdavaineIngénieur expert Inscription : mars 2004 Messages : 9 885 ![]() |
|
|
|
32
|
|
|
#126 | |
|
Membre du Club
![]() Joël Inscription : janvier 2011 Messages : 55 ![]() |
Citation:
Un logiciel est un produit commercial que tu ne peux pas modifier. Par contre, tu es maitre de ton application puisque c'est toi qui l'écrit, et tu peux en faire ce que tu veux. En gros tu as toutes les libertés sur une application et aucune sur un logiciel. |
|
|
|
18
|
|
|
#127 | |
|
Membre Expert
![]() Cédric Inscription : février 2003 Messages : 321 ![]() |
Citation:
Il est tout à fait possible de prouver qu'un programme fait rigoureusement et dans tous les cas ce qui est défini au niveau du cahier des charges. Certes c'est très lourd et très couteux et c'est donc employé dans des cas rares mais cela existe. Allez, je te mets sur la piste : les méthodes formelles |
|
|
|
42
|
|
|
#128 |
|
Membre du Club
![]() Joël Inscription : janvier 2011 Messages : 55 ![]() |
Les méthodes formelles appartiennent à la logique formelle et ce traite dans des problèmes d'intelligence artificielle. Tu trouves ca dans les chapitres consacrés au calcul des prédicats. Par simplification, il s'agit de la résolution par réfutation de la décomposition de problème mathématique.
Le génie logiciel est une application de la logique formelle. J'ai suivi, il y a déjà très longtemps en école d'ingénieur des cours de logique formelle avec des exercices en langage PROLOG. Mais ce dont tu me parles n'a rien avoir avec l'informatique de gestion. Il s'agit de mathématique. De plus, un programme bogué ne peut pas être détecté s'il ne s'était pas planté au préalable. Et c'est le rôle des tests dans les environnements de recettage. De plus, les applications du génie logiciel concerne l'écriture d'un programme sans bogue. Et dans le jargon des informaticiens, on appelle ca une méthodologie de développement. Donc avant de me traiter de suffisant, renseigne toi. Au lieu de me sortir une connerie sur un sujet, qui de toute évidence, tu ne dois pas connaitre sinon pour m'en mettre plein la vue et me faire taire. C'est raté ! ! ! !
|
|
|
18
|
|
|
#129 | |
|
Membre Expert
![]() Inscription : février 2005 Messages : 1 238 ![]() |
Citation:
En venir à s'insulter pour des méthodes de travail différentes, tu peux parler de méthodes formelles, on peut aussi partir dans le numérique; n'en reste pas moins que ça ne volera jamais très haut vu le fond de la discussion. Bref, good luck, fin de sujet pour moi.
|
|
|
|
02
|
|
|
#130 |
![]() ![]() ![]() Nicolas ValléeIngénieur d'études Inscription : décembre 2005 Messages : 9 978 ![]() |
il est grand temps de calmer un peu ce sujet...
autant confronter des avis divergents est autorisé, autant transformer une discussion (*) en pugilat est totalement stérile... et va finir par bouffer un max de temps aux modos pour rendre le sujet présentable (ce qui vexera certaines personnes car leurs arguments noyés au milieu d'attaques personnelles seront virés... et ils prendront la mouche en fermant leur compte (*) je l'admets, elle était tellement "bien" posée initialement qu'elle est vouée à troller, donc à faire de nombreuses lectures/posts, donc à faire croire que la news est de qualité
|
|
|
11
|
|
|
#131 | ||
|
Membre chevronné
![]() Inscription : mars 2010 Messages : 281 ![]() |
Citation:
C'est méthode permettent effectivement d'éviter très largement de recourir à un débogueur, puisqu'elles assurent statiquement (sans avoir à lancer le programme) qu'on s'est débarrassé de toute une classe de bugs (par exemple dépassement de bornes dans un tableau), voir même plus précisément dans certain cas, que le programme satisfait ses spécification à 100%. Donc elles permettent aussi de trouver des bugs dans les programmes *avant* de les exécuter. Mais, comme le dit wikipedia, Citation:
Je dirais plutôt que les méthodes formelle sont une forme très poussée de génie logiciel. |
||
|
|
22
|
|
|
#132 | ||||
|
Membre Expert
![]() ![]() Chris CamelArchitecte de système d'information Inscription : novembre 2006 Messages : 1 242 ![]() |
Citation:
Les méthodes formelles sont un cadre qui permettent d'exprimer des choses et de raisonner dessus. Dire qu'elles appartiennent à la logique formelle est un non sens. Il est plus correct de dire qu'elle s'appuient sur des logiques formelles pour cela, en tant que support. En outre, ces logiques ne se limitent pas aux prédicats. Les logiques peuvent être modales (épistémiques, déontiques ou temporelles par exemple) selon la nature du domaine dénoté. Rien à voir avec l'intelligence artificielle, qui peut recourir à des logiques pour l'édification d'un système formel et bénéficier ainsi de l'inférence pour la déduction (on parlera alors d'un système expert), mais ce n'est pas la seule voie. Les algorithmes évolutionnistes, réseaux de neurones, et bien d'autres choses encore sont autant d'autres volets de ce que couvre l'intelligence artificielle. Citation:
Citation:
Citation:
En outre par les tests fonctionnels tu te heurtes vite au problème d'exhaustivité et de couverture. Comment garantir que tes tests couvrent tous les chemins du programme ? |
||||
|
|
02
|
|
|
#133 |
|
Membre Expert
![]() Inscription : février 2005 Messages : 1 238 ![]() |
C'est un grand mélange de tout.
On peut faire une application dont la logique fonctionnelle est implacable et incassable mais dont l'implémentation technique est fautive, vice et versa, où dont les composants sont défaillants dans le temps. Dans sa globalité, sur un système de grande taille et critique / haute disponibilité, les facteurs de risques sont multiples, et il ne peut exister une méthode unique et une pratique unique de la qualité. Dans tout cela, le debugger n'est qu'un élément de productivité dans une technologie et dans un composant logiciel isolé. C'est un grand ensemble dans lequel tous les corps de métier ont leur mot à dire. Typiquement un sujet peu résolu ou mal résolu : les tests de données dans les SGBD. Même ici ce fut une foire d'empoigne. Le développement c'est une logique fractalienne. Chaque élément de la chaine se comporte en fonction des éléments dont il dépend et de son propre aléa. |
|
|
02
|
|
|
#134 |
![]() ![]() yan verdavaineIngénieur expert Inscription : mars 2004 Messages : 9 885 ![]() |
|
|
|
02
|
|
|
#135 | |
|
Expert Confirmé Sénior
![]() Inscription : décembre 2007 Messages : 2 578 ![]() |
Citation:
ça rend certaines choses plus longues à coder. Ca rend aussi les machines beaucoup plus fiables, puisqu'un programmeur crade(nous en avons aussi, hélas) ne pourra jamais priver de RAM les programmes de ses petits camarades. Je ne suis pas d'accord avec superbus pour dire que les programmeurs sont plus propres en grand système. Mais ils ont beaucoup moins de moyens de pourrir la vie de leurs collègues. D'ou la propreté des grands systèmes. Et aussi la haine qu'ils inspirent aux programmeurs habitués à la liberté des langages "modernes". Parceque la liberté de pourrir le voisin est parfois tellement utile... Là, je reçois des fichiers non controlés, je dois faire des agrégats sur des clefs et des contrôles, et je dois dimensionner des tables internes pour gérer ça. Je dimensionne "au pif", en me basant sur des volumétries témoin. Et je plante le programme si j'ai sous-dimensionné, en laissant une erreur claire et lisible. C'est beaucoup de boulot par rapport à une bête collection, il faut gérer la taille, la taille max, les limites, ça ajoute plusieurs heures de boulot. Mais jamais, au grand jamais, ça ne bouffera la mémoire du voisin. Car même si j'ai oublié de gérer le cas ou je dépasse la taille max, le programme va planter. Sans dépasser d'un octet. Et en étant compliqué à débogger - puisqu'on ne sait pas ce qu'on cherche, et qu'on a oublié de coder un traitement de la limite. Et si j'ai bien fait mon boulot, la log me dira "table interne TAB-AFF en dépassement de capacité, maximum 99, besoin 312". auquel cas on augmente(par exemple à 500), et on relance. Ca, plus le très haut niveau de sécurité intrinsèque, rend les grands systèmes très attractifs pour les très grosses organisations, genre banque. Malgré leurs défauts évidents. |
|
|
|
12
|
|
|
#136 |
|
Membre Expert
![]() Inscription : février 2005 Messages : 1 238 ![]() |
L'overhead pour moi, c'est la charge (coût et temps) qu'on minore systèmatiquement parce que la théorie dit que tout doit aller pour le mieux dans le meilleur des mondes.
En gros ceux qui pensent que tous les risques sont anticipables, les disciples de la distribution de Taleb. C'est à dire que les théoriciens passent leur temps à faire des gains faible de qualité sur des évidences avec des théories pompeuses et considére que tout risque qu'ils n'ont pas considéré est improbable. Sauf que les vrais risques, ce ne sont pas ceux que la méthode explique, ce sont ceux du contexte que seul l'expérience connait. Et ceux là, quand on les prend, on le paye beaucoup plus cher que les risques triviaux que l'on a voulu couvrir académiquement. Et c'est un cas commun à énormément de secteurs. |
|
|
24
|
|
|
#137 | ||||
|
Expert Confirmé Sénior
![]() ![]() Inscription : janvier 2007 Messages : 9 650 ![]() |
Eh bé !!
Je pars 4 jours et sur un sujet comme ça je retrouve 4 pages de discussions enflammées !! ![]() Citation:
+1000 Citation:
Citation:
re+1000 ...Citation:
Ah bon ?
Entre illuson sur l'implémentation, nouveauté technologique, effets de mode et de position concurentielle, ou modification du besoin / des contraintes, tout un tas de possibilités existent...
__________________
"Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle". Consultant indépendant. Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie. C, Fortran, XWindow/Motif, Java Je ne réponds pas aux MP techniques |
||||
|
|
22
|
|
|
#138 | |
|
Membre Expert
![]() ![]() François DurandSpécialiste Delivery Mainframe IBM Inscription : octobre 2005 Messages : 1 166 ![]() |
Citation:
Un exemple de débogueur en Grands systèmes IBM : COMPUWARE - Xpediter |
|
|
|
11
|
|
|
#139 |
|
Membre chevronné
![]() Inscription : mars 2010 Messages : 281 ![]() |
C'est assez triste de voir un tel mépris pour le monde académique :-\ Tu suggères donc de rejeter tout ce qui vient de ce monde, sous prétexte que ce n'est forcément que pompeux ? Ce n'est pas un peu réducteur tu penses ? Et peut être que ce n'est pas parce qu'une méthode ne garantie pas 100% de sécurité qu'elle est forcément à jeter, non ? Et à quel point es-tu au fait de ces méthodes ? De coq à frama-C, en passant par la méthode B, lesquelles as-tu regardé ?
|
|
|
53
|
|
|
#140 | ||
|
Membre Expert
![]() Inscription : mars 2009 Messages : 818 ![]() |
Citation:
Ce n'est faux que si sa phrase signifie "il n'existe pas de ..." mais elle est incontestable, sauf par quelqu'un qui connaît son entreprise, si elle signifie "nous ne possédons pas de ...". Je t'accorde qu'il faut probablement comprendre le premier sens mais... qui sait ? |
||
|
|
13
|
Copyright © 2000-2013 - www.developpez.com