18 Lecture Flashcards

1
Q

What is continuous integration

A
  • Continuously integrate
  • Continuously build
  • Continuously test changes to find regression
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is continuous delivery

A
  • Continuously release
  • Continuously beta test application with customer
  • Quickly obtain feedback -> short development feedback cycles
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is release management?

A

workflows activities and best practices how and when to create releases

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

What is the goal of release management?

A

To automate as many steps as possible

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

What is continuous deployment

A

every change that passes the automated tests is deployed automatically

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

What is continuous software engineering?

A

develop, release and learn from software in short cycles

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

What are the responsibilities of a release manager?

A

Facilitator:

  • a connection between different business units
  • promotes smooth and timely delivery of products

Coordinator:
- coordinates source trees, projects, teams and components

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

What is DevOps

A

When development and operations are working together

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

What is the difference between continuous deployment and continuous delivery

A

In continuous deployment the step deploy to production is automated

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

What are the benefits of continuous delivery

A

+ Faster time to market
+ Helps to build the right product
+ Improves productivity and efficiency
+ Reduces risk of a release failure

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

What are the challenges of continuous delivery

A
  • Varying interests in different departments of an organization
  • Traditional processes hinder continuous integration
  • Maintainability of the source code & tailorable delivery workflows for heterogeneous project environments
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What are the tasks of the continuous delivery server?

A
  • Distributes software to customers
  • Obtains user feedback
  • Collects crash reports
  • Stores feedback and crash reports in an issue tracker
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What are the release notes?

A

Release notes describe the most important changes of the product since the last release

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

Name 3 management issues with continuous delivery

A
  • How often do you deliver your application
  • How do you handle customers that do not react to releases
  • How do you handle feedback within the sprint
  • How many releases can a customer / user handle
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is best practice for build and release management?

A
  • The process must be repeatable and reliable
  • Every step of the process should be automated
  • Release early and often to obtain feedback
  • React to crashes and user feedback

=> Improve continuously

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

What does Conway’s Law state

A

Any organization that designs a system will inevitably produce a design whose structure s a copy of the organization’s communication structure.

17
Q

What are the challenges of continuous integration with large systems

A
  • Many dependencies and a lot of legacy code (middleware layer)
  • Loose coupling and high cohesion are hard to maintain over time
  • Middleware layer becomes a monolith
18
Q

What is the difference between a Monolith and a microservice

A

A monolith puts all its functionality into a single process.

A microservice architecture puts each element of functionality into a separate service

19
Q

How does a Monolith scale?

A

replication the monolith on multiple servers

20
Q

How does a Microservice scale?

A

distributing services across servers, replicating as needed

21
Q

What are the benefits of microservices

A

+ Strong modular boundaries
+ Independent deployment
+ Technology diversity

22
Q

What are the costs of microservices

A
  • Distribution (hard to program)
  • Eventual consistency
  • Operating complexity