Faire des déclarations explicites de toutes les entités manipulées
Utiliser des noms significatifs (prix pour le prix d'un objet et non pr5...)
Ne pas employer de méthodes hermétiques
Ne pas faire de "branchements"
Utiliser des indentations, c'est-à-dire des "marges décalées"
Décomposition du problème en plusieurs sous-problèmes
réduction de la complexité
synthèse de modules
Réunion structurée des différents modules
Conformité des résultats (vérification d'un programme)
Vitesse d'exécution
Utilisation optimale de la mémoire