The SDLC stands for
Software Development Lifecycle
What is an IDE and 3 examples
Integrated Development Environment- where source code is written by developers
What is a toolchain and why do people care
the different tools (ex IDEs, SCMs, build automation, CI, etc) used to create the CI/CD pipeline
-You would want to select tools to help streamline the development process and integrate well
What is a compiler and name 2 examples
Is a tool that automates the process of converting source code into binaries.
Define Source Code and Binary Code
-Source code: is raw human readable code/ the code that developers will write in
-Binary code: is machine readable code aka 1s and 0s
Define SDLC
Term for the collective steps involved in developing software
What is a SCM and 2 examples
Source Control Manager- store human written source code
What is the DevOps role
is to automate the development process. It brings together development and operations teams (as well as security for devsecops) to create a more connected, faster and more automated workflow
What is a Package Manager and name 3 examples
Automates the process of installing, upgrading, configuring and removing computer programs. Keeps track of what software is already installed and allows you to easily upgrade, install or remove software
What are the differences between Source and Binary Code
Source code- runs slower, no compile time involved, easier to make small changes and retest
Binary code- runs fast, takes time to compile code, takes longer to make small changes and retest
What is the Waterfall Method
Is the traditional development method in which each phase runs sequentially one after another. Each phase is dependent on the previous phase and is best used in cases when the requirements of the project are set in stone – good for complex designs but doesn’t involve flexibility
What is CI and 3 examples
Continuous Integration- automated process of taking in new source code, building (compiling) the application and automating testing, done on a repeated basis whether hourly, daily, or on a regular schedule.
What is a CI/CD Pipeline
-CI/CD Pipeline: a series of steps in the software development process that automates the building, testing and delivery of software
What is a Container Orchestration Platform and name 2 examples
Tools necessary to automate the scheduling, deployment, and management of the containers
Explain the difference between doing and breaking a build
-A Build: is the process of converting source code into a working application program
-Breaking a Build: stopping or prohibiting a build/ inhibiting deployment of build when a number of error conditions appear during the build
What is the Agile Method
Is a newer method of development in which there are sprints and smaller more frequent builds. This allows for more flexibility and for changes to be made through out
What is BAT and 2 examples
Build Automation Tool- takes a recipe and executes commands to turn source code into machine code and package it up
What is CD and what are 2 examples
Continuous deployment/delivery – automated process of taking a finished build and deploying it into production as a standalone application or as part of a container
What is a Container and what are the advantages
Is a packaged unit of software – it contains everything needed to run (code and virtual OS) includes runtime environment (libraries and OS), easy to move contained applications between environments
What is the difference between Compiled and Scripting languages and give 3 examples of each
-Compiled Language: language that must be converted from source to binary before runtime. These are stored as both source code and binary code. Ex: C, C++, Java
-Scripting Language: language for which programs are typically not compiled beforehand, but are executed "on the fly" by a runtime application. These are stored as source code. Ex: Perl/Python/PHP
SDLC Steps
What is a Binary Repo and 2 examples
Binary Repository- where build output, including compiled (machine code) and assets (images, audio files, text files) are stored. Also acts as a proxy (local storage) for binary open source components pulled from sites such as NuGet or Maven Central.
What is the order of the SDLC toolchain
IDE, SCM, CI
What is JAR, WAR, EAR, Ruby Gem, Tarball
Types of packaged, compressed archive files containing binaries based on the ZIP file format (reduces size and improves download time), files collected as one
What is an Installer Binary
Automate the setup processes by prepping the computing environment and placing/installing the binaries in their appropriate locations.