2014 · 43 citations · 12 references
Software MaintenanceCluster ComputingProvisioning (Technology)EngineeringCloud Computing ArchitectureComputer ArchitectureSoftware EngineeringCloud ApplicationsSoftware AnalysisMultiple MachinesSystems EngineeringDeployment StrategyVirtualized InfrastructureDistributed SystemsComputer ScienceDeployment TechnologyCloud AutomationComponent DependenciesSoftware DesignSoftware ComponentsProgram AnalysisEdge ComputingCloud ComputingSystem Software
Complex networked applications are assembled by connecting software components distributed across multiple machines. Building and deploying such systems is a challenging problem which requires a significant amount of expertise: the system architect must ensure that all component dependencies are satisfied, avoid conflicting components, and add the right amount of component replicas to account for quality of service and fault-tolerance. In a cloud environment, one also needs to minimize the virtual resources provisioned upfront, to reduce the cost of operation. Once the full architecture is designed, it is necessary to correctly orchestrate the deployment phase, to ensure all components are started and connected in the right order.
12
The Design of the Zinc Modelling Language
Kim Marriott, Nicholas Nethercote, Reza Rafeh et al. · Constraints · 2008 · 136 citations
Mark Burgess · Computing systems · 1995 · 118 citations
Jeffrey Fischer, Rupak Majumdar, Shahram Esmaeilsabzali · 2012 · 69 citations