  Spreadsheet engineering adapts the lessons of software engineering to
spreadsheets, providing eight principles as a framework for organizing
spreadsheet programming recommendations. Spreadsheets raise issues inadequately
addressed by software engineering. Spreadsheets are a powerful modeling
language, allowing strategic rapid model change, and enabling exploratory
modeling. Spreadsheets users learn slowly with experience because they focus on
the problem domain not programming. The heterogeneity of spreadsheet users
requires a taxonomy to guide recommendations. Deployment of best practices is
difficult and merits research.
