Kitchen Sink (deutsch Küchenspüle) wird in der Softwareentwicklung zwecks Kritik eine Art von Funktionalität bezeichnet, die maximal von der ursprünglichen Kernfunktion der Software entfernt ist. Also das Gegenteil des Sofwareentwicklungs-Prinzips „Schreibe Computerprogramme so, dass sie nur eine Aufgabe erledigen und diese gut machen.“.
Es wird humoristisch impliziert, dass die Grenze dessen was Teil der Software sein solle überschritten sei, und als Nächstes die Funktionalität einer Küchenspüle hinzugefügt würde. Also eine Reduktion auf das Absurde.
Der Begriff entstammt der englischen Redewendung „Everything but the kitchen sink“ („Alles außer die Küchenspüle“), die „so ziemlich alles, ob angemessen oder nicht“ bedeutet.[1][2][3]