Software Maintenance

Few days ago at work, I had to fulfill a document where I had to select a type of software maintenance that I was going to apply.

The fact was I had only two choices, it seemed me very weird because during my degree I studied 3 or 4 kinds of software maintenance.

Today I have found my Software Engineering class notes, then the types of Software Maintenance sorted descending by percentage of time spent:

Perfective: Activities to improve or add new functionalities required by the user.
Adaptative: Activities to adapt the system to technological environment changes (hardware or software).
Corrective: Fix defects in hardware or software detected by user running the production system.
Preventive: Activities to ease the future system maintenance.