A system for automatic self-configuration of deployments of sets of enterprise software applications, wherein a set of enterprise software applications is configured to be executed on client computing platforms that are associated with users, the system comprising:
- electronic storage configured to store information for the set of enterprise software applications, the set of enterprise software applications including at least a first software application, a second software application, and a third software application, wherein the information includes:
- (i) executable code of the set of enterprise software applications, and
- (ii) an expert knowledge database including heuristics regarding improvements for the deployments of the sets of enterprise software applications, and
- (iii) a configuration database that includes a set of deployment-specific configuration settings and corresponding setting values that define a deployment that has been deployed on a first deployment server of the set of enterprise software applications, wherein the first deployment server is accessible by the client computing platforms associated with the users, wherein the first deployment server is configured such that the client computing platforms execute the set of enterprise software applications through the first deployment server, wherein the set of deployment-specific configuration settings include one or more of:
- (a) connection parameters to control connections between the configuration database and the set of enterprise software applications,
- (b) environment variables,
- (c) resource parameters to control available computational resources and available storage resources, and
- (d) one or more infrastructure parameters that control one or more of a filesystem, one or more databases, and a cluster of the first deployment server;
- one or more hardware processors configured by machine-readable instructions to:
- monitor and quantify operations of the deployment on the first deployment server of the set of enterprise software applications, wherein the operations include one or more of:
- (a) a first type of operations controlled by the connection parameters that control the connections between the configuration database and the set of enterprise software applications,
- (b) a second type of operations controlled by the environment variables,
- (c) a third type of operations controlled by the resource parameters that control the available computational resources and the available storage resources and
- (d) a fourth type of operations controlled by the one or more infrastructure parameters that control one or more of the filesystem, the one or more databases, and the cluster of the first deployment server;
- assess whether a particular monitored and quantified operation from the monitored and quantified operations indicates an expectation that a system-initiated modification of the deployment of the set of software applications on the first deployment server will improve the particular monitored and quantified operation, wherein the expectation is based on matching the particular monitored and quantified operation with one or more of the heuristics included in the expert knowledge database;
- responsive to an assessment of the expectation, automatically generate a system-initiated modification database that includes one or more system-initiated deployment-specific configuration settings and one or more corresponding system-initiated setting values, wherein the system-initiated modification database is based on the system-initiated modification of the deployment of the set of software applications on the first deployment server;
- and
- modify the deployment of the set of software applications on the first deployment server by modifying individual ones of the set of deployment-specific configuration settings that match individual ones of the one or more system-initiated deployment-specific configuration settings to individual ones of the one or more corresponding system-initiated setting values, in accordance with the system-initiated modification database.