Modern search-engine optimization (SEO) is a science in its own right. As the algorithms of major search engines are kept secret the field of SEO is one of intense active research. Everything that is known in the SEO community comes from endless experimentation, analysis, speculation and in-depth study of software patents. As search engines are constantly evolving, so too is SEO.
The goal of a search engine is, and will always be, to deliver the most relevant, high-quality content to the user and successful websites will necessarily always require this attribute. Depending on your niche, SEO can either be an effective way to grow traffic or a necessary tool for survival. The resources (time, financial, or otherwise) which are required to improve SEO should always be weighed against the results achieved and compared with alternative marketing strategies which can influence the same desired results.
SEO is ultimately the practice of optimizing your website for two purposes:
Interaction with the algorithms of search engines
Interaction with the user to affect engagement metrics (average "bounce rate," multiple page views, amount of time on site, repeat visits). High engagement metrics will not only please users and convince them to share the site but will also affect rankings directly.
From these two basic focuses comes a vast set of strategies and practices.