wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Software Architecture Quiz

Total questions: 27

Worksheet time: 23mins

Name
Class
Date
1.

SANITY CHECK: Hvem har undervist Software Architecture

a)

b)

c)

d)

e)

2.

SANITY CHECK 2: Hvilke bøger er der blevet referenced i det her kursus?

a)

Software Architecture In Practice, 4th Ed.

b)

Software Architecture In Practice, 3th Ed.

c)

Documenting Software Architectures: Views and beyond, 2nd Ed.

d)

Release It! Design and Deploy Production-Ready Software

e)

Design Patterns: Elements of Reuseable Object-Oriented SOftware

3.

Which is these are, according to Sune, a part of Software Architecture?

a)

Structures

b)

Enabling Reasoning

c)

Tools for design

d)

Early decisions

e)

Major decisions

4.

Hvilken type dokumentation falder "JavaDoc" under?

a)

Informal

b)

Semiformal

c)

Formal

d)

JavaDoc anses ikke som værende dokumentation i "software arkitektur" contexten.

5.

Et eksempel på "informal" dokumentation er...

a)

PowerPoint slides

b)

Klassediagram

c)

Brugsmønster diagram

d)

Network diagram

e)

Sekvensdiagram

6.

I et UML klassediagram: Når der snakkes om "specialization", så menes der...

a)

Brug af interfaces

b)

Brug af nedarvning

c)

Brug af aggregation (rhombe pil)

d)

Brugen af afhængigheder (dependencies)

7.

Which of the following views would be suitable for documenting how an application deployed in a cloud environment like AWS?

a)

Module View

b)

Component and Connector View

c)

Allocation View

d)

Architecture View

e)

Environment View

8.

Which of the following is not a quality attribute? (Defined by chapters in the book)

a)

Performance

b)

Security

c)

Usability

d)

Privacy

e)

Portability

9.

PATTERN QUIZ: Which pattern to implement if a service is experiencing performance problems, but can't easily be scaled?

a)

Throttling pattern

b)

Circuit breaker pattern

c)

Layer pattern

d)

Mediator pattern

e)

Microservices

10.

PATTERN QUIZ: Select all that applies to the dependency injection pattern

a)

Dependency injection requires an interface

b)

It allows for better testability

c)

The client fetches the service instance through a service-locator.

d)

The injector has the responsibility of instantiating the service

11.

PATTERN QUIZ: Why would you use a Strategy Pattern?

a)

To increase testability

b)

To increase portability

c)

To increase performance

d)

To increase security

12.

PATTERN QUIZ: What pattern can be used to simplify interaction with complicated logic over many subsystems?

a)

Facade pattern

b)

Decorator pattern

c)

Mediator pattern

d)

Adapter pattern

13.

PATTERN QUIZ: Select all the applies to the Layers pattern

a)

You may only use public methods on up to 2 layers below you

b)

You are not allowed to skip layers when going down

c)

The higher the layer, the more platform specific it is.

d)

The pattern increases performance

14.

PATTERN QUIZ: Which of the following deployment strategies are the most expensive (given there's more than a single deployment)

a)

Blue / Green

b)

Rolling upgrade

c)

Continuous deployment

d)

Devops

15.

PATTERN QUIZ: Choose all that applies for a Intercepting Filter Pattern

a)

Can be used to data-translation on incoming data

b)

Can be used for input-validation on incoming requests

c)

Can be used to decrease latency

d)

It is implemented in the Load Balancer

16.

PATTERN QUIZ: Which of these technologies could be valid implementations of the Plug-In pattern?

a)

Netbeans Module System

b)

Nginx

c)

Blazor Webassembly

d)

JavaFX

17.

PATTERN QUIZ: Hvad er en "sidecar" når du bruger et Service Mesh Pattern?

a)
b)

En singleton med utility funktioner (Fulcrum!)

c)

Kommunikations utilities til brug i Microservices

d)

En subscriber-component

e)

En abstrakt klasse som servicen skal nedarve fra

18.

PATTERN QUIZ: But seriously, hvad er det for et pattern?

a)

Singleton pattern

b)

Adapter pattern

c)

Publish-Subscribe pattern

d)

Intercepting filter pattern

e)

Interceptor validator pattern

19.

Hvad definere en passiv backup?

a)

Den er ikke deployet, men kunne blive det med en et enkelt klik

b)

Den er deployet, men modtager ingen requests

c)

Den er deployet og er den del af den normale deployment, men er deployet i en anden availability zone

d)

Den er ikke deployet og kræver konfigurations arbejde

20.

Hvad betyder non-determined software?

a)

Software som altid giver samme output, givet samme input

b)

Software som ikke garantere samme output, givet samme input

c)

Software der inkludere random-variabler

d)

Software der ikke helt har besluttet sig for hvad det vil

e)

Ikke-dokumenteret software

21.

Hvilke af følgende er mest desirable?

a)

Loose coupling, low cohesion

b)

High coupling, low cohesion

c)

High coupling, high cohesion

d)

Loose coupling, high cohesion

22.

Hvad er "ASR"?

a)

Kundens vigtigste krav

b)

De krav med størst indflydelse på arkitekturen

c)

De krav der skaber mest indtjening

d)

Krav baseret på business casen.

23.

Hvilken metode er mest favorabel til at lave finde ASR?

a)

Quality Attribute Workshop

b)

Utility Trees

c)

De er begge lige favorabel.

24.

Hvilke af følgende er ikke en del af Quality Attribute Workshoppen?

a)

Business Presentation

b)

Scenario Pririotization (voting)

c)

Economical overview

d)

Identification of architectural drivers

25.

Hvordan laver man et Utility Tree?

a)

Du sætter dig ned sammen med stakeholders og laver scenarios

b)

Du læser projektbeskrvelsen og du laver dine egne scenarios

c)

Man bruger den pre-definerede liste af spørgsmål i bogen (s. 421) til at finde QA scenarios

d)

Man bruger canary testing og user tracking til at forstå scenarios for systemet

e)

Du spørger ChatGPT

26.

Select all that apply for the Architecture Tradeoff Analysis Method

a)

A system prototype is needed for the analysis

b)

The analysis is done by the architect

c)

The analysis results in a list of sensitivity points for the system

d)

The analysis results in a list of tradeoff points for the system

e)

The analysis results in a list of risks for the system

27.

Hvad betyder det hvis du laver "brownfield development"?

a)

At du arbejder direkte i production

b)

At du designer arkitektur i et eksisterende system

c)

At du arbejde i et virtual environment

d)

At du arbejder uden versions-styring (git eller lign.)

e)

At du arbejder uden dokumentation