Implementing a Solution
Advanced Deployment Techniques
Ability to manage the lifecycle of an application on AWS
Demonstrate ability to implement the right architecture for environments
Position and select most appropriate AWS deployment mechanism based on scenarioDemonstrate the ability to design a loosely coupled system
Demonstrate ability to implement the most appropriate front-end scaling architecture
Demonstrate ability to implement the most appropriate middle-tier scaling architecture
Demonstrate ability to implement the most appropriate data storage scaling architecture
Determine trade-offs between vertical and horizontal scaling
About the Author
Andrew is an AWS certified professional who is passionate about helping others learn how to use and gain benefit from AWS technologies. Andrew has worked for AWS and for AWS technology partners Ooyala and Adobe. His favorite Amazon leadership principle is "Customer Obsession" as everything AWS starts with the customer. Passions around work are cycling and surfing, and having a laugh about the lessons learnt trying to launch two daughters and a few start ups.
Let's start our deployment by introducing a fictitious company called ACME Printing. ACME printing is a company that handles local outsource 3D printing. And currently, a customer emails a 3D plan to an email box. A Client Service Representative, or CSR, who is responsible for managing the inbox, extracts the 3D plan from the email message, along with any special instructions written in the email. If the customer has an account and the billing information on file is out of date, the CSR will reach out to the customer by phone or email in order to update the billing information. Assuming the account has no outstanding balance, the CSR passes the 3D plans and instructions along to the Print Operator. Next, the Print Operator reviews the plans and the quantity to come up with a quote, and/or any questions. This information is reported back to the CSR who seeks approval from the customer or gets clarification for the questions. If the customer approves the quote, and all questions are answered sufficiently, then the Print Operator prints the plans in the correct quantity. Upon completion of the print job, the Print Operator packages up the materials and notifies the CSR. The CSR contacts the in-house Courier by phone, or by text message, to schedule a delivery. The Courier picks up the materials and delivers it to the customer. And finally, the CSR marks the 3D order as complete, and a total amount for the job is charged to the customer. The entire work flow is managed by spread sheets. This is an interesting company with many areas of the process that we can improve. Thankfully, we've been brought in to do just that. Here's what we've been asked to do. ACME Printing wants to grow the business. They do not believe that the current process can handle the anticipated growth. However, they do not want to implement a fully baked solution right now due to cost. They want to break up the new solution into three phases. In phase one, our goal is to remove as much of the manual processing as we can without impacting the customers. In phase two, we require that we implement a website for customers to manage their orders and their accounts. And phase three is meant to expand the business by introducing a mobile application that could be used to take pictures of an object in order to build a 3D model. Throughout the project, the reoccurring costs must be kept to a minimum. The process must be available with little or no downtime, and security must follow best practices. ACME Printing does not want to run its own infrastructure, nor do they have the money to do so. They do not have an AWS account, but they are willing to start one based on our recommendation.