Configuration and Deployment Flashcards

(12 cards)

1
Q

What is the purpose of release management in software projects?

A

To prepare periodic releases and updates of the software.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is Continuous Integration (CI)?

A

All code changes go directly into mainline of version control
An automated process that builds and tests code on every change submission
Always have a working mainline in version control
Successful build = accepted submission

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are the benefits of CI?

A

Supports TDD - all submissions need to integrate successfully
Identifies bugs early - as integration happens sooner
Ensures integration success - integration figured out from the start

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What are the common git branch strategies?

A

No branches - team works from main source tree
Branch for release - branch supports an ongoing release, merge back to main after the software is released
Branch for maintenance - branch maintains an old build, so you don’t destabilise current projects, may or may not merge back to main
Branch for feature - create a dev branch, work in dev branch, merge back to main Branch for
Branch from team - isolated sub-teams so they can work in parallel towards unique milestones

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is a Build Configuration?

A

A setup specifying components, libraries, tests, and platforms for building software and where to deploy the build
Release is built of this configuration
Several version of the release are built for different platforms

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What are the stages of release life cycles?

A

Pre-Alpha, Alpha, Beta, Release Candidate, Release.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is automated deployment?

A

The automatic release of built software to target platforms.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is the purpose of tagging in version control?

A

To mark specific commits as release points triggering build scripts.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Why is version control critical in CI?

A

It ensures consistent and traceable code changes across builds.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Who typically manages build configurations and scripts?

A

A release engineer.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

How do release cycles work?

A

Version Control
Continuous Integration
Build Configurations
Automatic Deployment

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Why is version control useful for release cycles/management?

A

You can ‘pull’ old version of code and create a branch that represents that version to update without affecting the current version
Branches!

How well did you know this?
1
Not at all
2
3
4
5
Perfectly