IMS (Information Management System) is een database- en transactiebeheersysteem dat in 1968 voor het eerst door IBM werd geïntroduceerd. Sindsdien heeft IMS veel veranderingen ondergaan bij de aanpassing aan nieuwe programmeertools en -omgevingen. IMS is een van de twee grote legacy subsystemen voor database- en transactiebeheer van IBM die draaien op mainframe MVS (nu z/OS) systemen. Het andere is CICS. Er wordt beweerd dat toepassingsprogramma’s die gebruik maken van IMS- (of beide) of CICS-diensten, historisch gezien het grootste deel van de bank-, verzekerings- en orderinvoertransacties ter wereld hebben afgehandeld en nog steeds afhandelen.
IMS bestaat uit twee hoofdcomponenten, het IMS Database Management System (IMS DB) en het IMS Transaction Management System (IMS TM). In IMS DB worden de gegevens in een hiërarchie georganiseerd. De gegevens in elk niveau zijn afhankelijk van de gegevens in het volgende hogere niveau. De gegevens worden zo geordend dat de integriteit ervan wordt gewaarborgd en het opslag- en opvraagproces wordt geoptimaliseerd. IMS TM regelt de I/O (input/output) verwerking, zorgt voor opmaak, logging en herstel van berichten, handhaaft de communicatiebeveiliging en houdt toezicht op de planning en uitvoering van programma’s. TM gebruikt een messaging-mechanisme voor het in de wachtrij plaatsen van verzoeken.
IMS’s oorspronkelijke programmeerinterface was DL/1 (Data Language/1). Tegenwoordig kunnen IMS-toepassingen en -databases worden verbonden met CICS-toepassingen en DB2-databases. Java-programma’s kunnen toegang krijgen tot IMS-databases en -diensten.
IMS staat ook voor Intelligent Manufacturing Systems en IP Multimedia Subsystem.