Book Image

Expert AWS Development

By : Atul Mistry
Book Image

Expert AWS Development

By: Atul Mistry

Overview of this book

Expert AWS Development begins with the installation of the AWS SDK and you will go on to get hands-on experience of creating an application using the AWS Management Console and the AWS Command Line Interface (CLI). Then, you will integrate applications with AWS services such as DynamoDB, Amazon Kinesis, AWS Lambda, Amazon SQS, and Amazon SWF. Following this, you will get well versed with CI/CD workflow and work with four major phases in the release process – Source, Build, Test, and Production. Then, you will learn to apply AWS Developer tools to your Continuous Integration (CI) and Continuous Deployment (CD) workflow. Later, you will learn about user authentication using Amazon Cognito, and also how you can evaluate the best architecture as per your infrastructure costs. You will learn about Amazon EC2 service and will deploy an app using it. You will also deploy a practical real-world example of a CI/CD application with the Serverless Application Framework, which is known as AWS Lambda. Finally, you will learn how to build, develop, and deploy the Application using AWS Developer tools such as AWS CodeCommit, AWS CodeBuild, AWS CodeDeploy, and AWS CodePipeline, as per your project requirements.
Table of Contents (16 chapters)
Title Page
Packt Upsell
Contributors
Preface
Index

An overview of DevOps


Now, we know that DevOps is a contraction of DEVelopment and OPerationS. DevOps is the end-to-end life cycle of a product and is built based on a focus on business needs and shared goals within the organizations.

DevOps = Continuous Delivery + Continuous Integration + Continuous testing + Continuous Deployment

In traditional software development, a product/project has different phases of the Software Development Life Cycle (SDLC). We will not go into too much detail about all the phases but it has phases such as development, integration, and implementation all the way to operation and maintenance. All the phases are siloed and the cycle is expensive and slow. One more problem is that if a client need changes during the development phase, it means you are delivering software that doesn't contain changes, or you need to start the process midway, which will take more time and money.

The Agile model helps to develop software by small iterations, and will adapt client changes...