Not all applications are transactional. Other applications typically have fewer users and offer a less directed and predictable set of interactions. This includes many kinds of information and support systems and forms of collaboration; we will put them all in the category of knowledge man- agement. These applications usually interoperate with transactional sys- tems indirectly. They may steer users to transactional applications, as portals do; allow analysis of data that ultimately is derived from those applications, such as business intelligence tools applied to data warehouses; or may add value to them, similar to custom shopping front ends, such as Amazon recommendations. Knowledge management applications also commonly interact with infrastructure systems. They typically rely on the mail system to deliver messages, the directory for authentication, or the file system as a data store for documents. They commonly need programmatic access to these system interfaces. Transactional systems typically will not want to share resources with such systems, because they need to manage their scalability separately from the general organization.