From the course: Building Your First DevSecOps Pipeline in AWS
Introduction to a software factory - Amazon Web Services (AWS) Tutorial
From the course: Building Your First DevSecOps Pipeline in AWS
Introduction to a software factory
In this video, we'll be discussing the concept of a software factory, particularly focusing on its implementation using DevSecOps principles in AWS. Let's get started. VMware describes a software factory as an organized approach to software development that provides software design and development teams a repeatable, well-defined path to create and update software. The key to a successful factory is finding ways to be repeatable. It has to be seamless to allow quick releases. Now let's dig into what makes up a software factory. A software factory is essentially a set of tools and practices used to deliver software. It includes development and deployment tools and empowers DevOps teams with self-service capabilities. This structured approach helps maintain consistency and efficiency across projects. Many times the tools are hosted in the cloud. That helps with speed and simplicity of maintenance, which is why we focus on building a software factory and pipeline in the cloud in this course. Here we see a variety of DevOps tool sets commonly used in a software factory. These tools range from integrated development environments like VS Code, Visual Studio, and IntelliJ to CI/CD tools like Jenkins and CircleCI. We also have testing and security tools such as SonarQube and Burp, and collaboration tools like Slack and Teams. While these tools are essential, using too many can lead to increased workload and complexity. It's important to see what works for your DevOps team. If you try and force tools that do not work just to check a box, the DevOps teams will struggle. And too many tools can lead to too much work. To make DevOps work well, efficiency is extremely important. This is an example of the scaled agile framework that shows a software factory. You can see that many parts are involved, from testing, through release management and infrastructure automation. It truly can include the pieces and parts to build software from the ground up. When you start building a software factory, you should be aware of the goals that you are trying to achieve. The first goal is quicker startup times for projects. You want to be able to start new projects and get them off and running quicker. If you already have the software factory built, it saves time because you don't have to decide tool sets, you don't have to set up an entirely new pipeline. You have all of these things already to go. In addition, you have standard tools and practices already set up. You don't have to go back through finding a whole new tool set that you need for the CI/CD process. One of the biggest problems we're having in security and development in general is that we have too many tools and we pay too much money for our tools. By using a standard set of tools, we can reduce this debt. A pipeline will allow us to save money if we increase speed and agility. Faster equals cheaper. So when building your tool set for the software factory, make sure that you pay attention to tool efficiency.
Practice while you learn with exercise files
Download the files the instructor uses to teach the course. Follow along and learn by watching, listening and practicing.
Contents
-
-
-
The importance of a DevOps pipeline5m 46s
-
(Locked)
Building a threat model in AWS10m 37s
-
Introduction to a software factory3m 15s
-
(Locked)
Building a software factory in AWS2m 20s
-
(Locked)
Storing your source code with AWS8m 16s
-
(Locked)
Building your infrastructure with infrastructure as code6m 3s
-
(Locked)
Building source code in AWS with CodeBuild11m 24s
-
(Locked)
Building a DevOps pipeline in AWS with CodePipeline9m 56s
-
-
-
-