Отже, легше зрозуміти як програма працює в термінах властивостей програми ніж через те як програма виконується. В першому випадку знання як працює програма залишається дійсним допоки хтось не змінить код програми, але в другому випадку воно може змінюватись при кожному запуску програми. Для розуміння значення властивостей програми для можливості вказати на точку в програмі і подумати: «Кожного разу коли програма дістається цього місця певні умові істині.» Наприклад: if (n < 0) n = 0; Припустимо, що n це змінна вбудованого числового типу, ми знаємо, що по виконанні цього коду вона невід'ємна.