Engineering a Product
Solve the problem correctly.
Solve it effectively, according to existing standards
Solve it completely, including error conditions
Solve it efficiently, using the least amount of resources while still achieving acceptable levels of quality.