4. Types of customisation Use of user-level hooks Hierarchical specialisation pure restrictions user-level only internal level optional extensions Changing some stuff to mandatory Composition of the above Free-form customisation