Un algorithme :
ne doit pas être ambigu
doit être une combinaison d'opérations élémentaires
doit fournir un résultat en un nombre fini d'opérations, quelles que soient les données d'entrée.
Définir clairement le problème
Etablir l'algorithme au moyen d'une analyse descendante
Déterminer une séquence d'instructions de niveau supérieur (sans entrer dans les détails)
Ecrire chaque instruction de niveau supérieur à l'aide d'instructions élémentaires
Ecrire le programme et la documentation
Tester
Revenir sur les étapes précédentes si nécessaire