I've been spending a lot of time using ElectricDeploy recently. What I really like about ElectricDeploy is the clean separation between design time and runtime actions. Many products I have used have complexity at design time and carry that complexity through to runtime.
I believe we have hit the right balance with ElectricDeploy.
Having been around early morning rollouts with small update windows I firmly believe in making the rollout process as simple as possible. To me that means close to a 1 click deploy with good visibility into what is happening. No deciding what bits go where at runtime, that detail should be modeled at design time.
ElectricDeploy separates the what and the where from the when.
What - The application model
Where - The environment model
How - The deployment run screen
ElectricDeploy allows drag and drop creation of deployment processes. The following screenshot shows how the JPetStore application would be deployed using ElectricDeploy.
In ElectricDeploy the environment model defines where bits are deployed to when a deployment is executed. Tiers are used to group resources so that actions are executed on the appropriate servers at runtime.
The magic happens at runtime. Using a simple interface to select what application release is deployed to where the application and environment model are processed to determine the sequence of operations that need to be executed to put the right bits in the right place at the right time. The following screen is what would be used by someone actually executing a deployment. Selecting what is deployed to where with no detailed knowledge of the process needed at runtime. No needing to define what goes where before hitting go, no selecting which individual bits are deployed.
This model driven approach enables you to have confidence in your deployments and have a simple, robust experience when performing critical application deployments. Take care of the details ahead of time allowing for stress free employments and less sleepless nights.