An efficient programming practice that increases development speed and quality by allowing developers to reuse proven code snippets