1. A method for customizing the functionality of a web application, comprising: storing a plurality of rules that are independent of a particular user and wherein each rule defines a business functioning, and actions to be taken by a web application in response to a particular event; allowing a user to log in and begin a current session at a web application; receiving, via an event listener interface at an event service located at the server, notification, from the web application on the server, of events that occur during the current session or after the user has logged in, including events triggered by the user interacting with the web application during the current session, and then associating the events with the profile of a user, to create a snapshot of the user at a point in operation of the application for use with the current session; determining a plurality of scenarios wherein each scenario describes a possible series of events that characterize a users' session interactions and can cause one or more of the rules to be triggered, and a plurality of campaigns each of which can be defined by an administrator to have a start and end period during which the campaign is active, and wherein each campaign describes a set of scenarios together with a goal so that they can be collectively activated or deactivated; using the snapshot of the user and a set of rules, to make decisions about the user and to determine one of the plurality of scenarios for use with the current session, wherein the rules can be updated and applied to a rules engine without stopping the execution of the rules engine, to effect an immediate change to the business functioning of the web application during the user's session; selecting a campaign corresponding to the user, and one of activating or deactivating the campaign once a predefined set of events has been met; and using the rules engine with the updated rules to determine, at runtime, the business functioning of the web application, including the actions to be taken by the web application, for the current session and current user only.
1. A method for customizing the functionality of a web application, comprising: storing a plurality of rules that are independent of a particular user and wherein each rule defines a business functioning, and actions to be taken by a web application in response to a particular event; allowing a user to log in and begin a current session at a web application; receiving, via an event listener interface at an event service located at the server, notification, from the web application on the server, of events that occur during the current session or after the user has logged in, including events triggered by the user interacting with the web application during the current session, and then associating the events with the profile of a user, to create a snapshot of the user at a point in operation of the application for use with the current session; determining a plurality of scenarios wherein each scenario describes a possible series of events that characterize a users' session interactions and can cause one or more of the rules to be triggered, and a plurality of campaigns each of which can be defined by an administrator to have a start and end period during which the campaign is active, and wherein each campaign describes a set of scenarios together with a goal so that they can be collectively activated or deactivated; using the snapshot of the user and a set of rules, to make decisions about the user and to determine one of the plurality of scenarios for use with the current session, wherein the rules can be updated and applied to a rules engine without stopping the execution of the rules engine, to effect an immediate change to the business functioning of the web application during the user's session; selecting a campaign corresponding to the user, and one of activating or deactivating the campaign once a predefined set of events has been met; and using the rules engine with the updated rules to determine, at runtime, the business functioning of the web application, including the actions to be taken by the web application, for the current session and current user only. 5. The method of claim 1 wherein a set of said rules can be grouped together and used to determine a scenario of events to be understood by the web-based application.