Een software-ontwikkelomgeving is het geheel van computersoftware en hulpmiddelen die een software-ontwikkelaar ondersteunen bij het ontwikkelen van computersoftware.
De onderdelen van een software-ontwikkelomgeving hangen af van de taken die moeten worden uitgevoerd. In het algemeen kan een onderscheid gemaakt worden tussen omgevingen voor het ontwerpen, programmeren en testen van software. Afhankelijk van zijn vereisten kan de ontwikkelaar meerdere van deze aspecten opnemen in zijn software-ontwikkelomgeving. Daarnaast kunnen nog diverse andere hulpmiddelen deel uitmaken van de software-ontwikkelomgeving, zoals een versiebeheersysteem, het opzetten en controleren van achterliggende databanken en diensten, enz. Aanvankelijk bestond een ontwikkelomgeving uit een verzameling van verschillende kleine afzonderlijke tools, maar later werden veel hulpmiddelen meer en meer op elkaar afgestemd en verschenen geïntegreerde software-ontwikkelomgevingen.