IoT - F 2025

Quiz for the course "Software Technology for Internet of Things" F 2025.


Click the button to start the quiz

Start Quiz

<- Leave quiz



Questions in the quiz (149)


What's the definition of IoT?

According to this course

  • A cyber-physical system consisting of a large number of individually and globally addressable devices which have a significant portion of their logic running elsewhere

What are often some of the consequences with IoT?

  • Siloed access

  • Lots of external dependencies

  • Lack of security

What is the definition of big data?

According to this course

  • A class of processing regimes which primary property is that it relies on a body of data which expands at a rate where processing has become nontrivial

In cloud,fog,edge and mist, what is correct?

According to this course

  • When going from edge to cloud, processing power increases

  • When going from cloud to edge, latency decreases

  • When going from cloud to edge, privacy improves

What languages are typical classified as high-level languages?

According to this course

  • DSL

  • Elixir

  • Erlang

What languages are typical classified as low-level languages?

According to this course

  • Assembly

  • Zig

  • C

  • Rust

What are typical requirements for programming languages used in IoT, in terms of cloud and fog?

According to this course

  • Handle high amount of concurrency

  • Have a high degree of availability

  • Offer robust low response times

  • Be mature

  • Access to frameworks for modeling information (graphs, ontologies)

What are popular BEAM-based languages for IoT, in Cloud and Fog

According to this course

  • Elixir

  • Erlang

Back in the 80's, what was some of the properties needed for new platforms?

According to this course

  • Distribution

  • Soft real-time properties

  • Close to zero downtime

What are some of the imperative programming traits?

According to this course

  • Focus on data

  • Code is an recipe, data is the ingredients

  • You tell the steps and how it should be executed

  • The focus is how the result is reached

What are some of the declarative programming traits?

According to this course

  • The focus is on what the program shall achieve

  • Focus on result

  • Control flow is not explicitly described

  • You define what the result is

What form is functional programming?

According to this course

  • Declarative programming

What are some properties of functional programming?

According to this course

  • Data are immutable

  • Everything is an expression

  • Functions are values

  • Functions are composable through their arguments

  • Function calls are cheap

  • There are no loop (in principle)

  • Functions are first class citizens

When is a functional language considered pure?

According to this course

  • Only supports pure functions

  • No side-effects

  • No randomness

What are pure functions?

According to this course

  • Functions whose results are depends only on the value of their parameters

  • When they are idempotent

What are some properties of pure functions?

According to this course

  • Two functions that are pure, cannot affect each other

  • Functions can be executed in parallel

  • Easy to compile

  • Easy to test

  • Hard to write

What is one of the key elements highlighted about Elixir?

  • Pattern matching

  • Pipelines

  • Anonymous functions

  • Higher-Order functions

What is the convention of functions with naming "function"?

  • Returns a tuple, with the first element being an atom indicating success or failure

What is the convention of functions with naming "function!"?

  • Returns the result directly, or raises an exception if it fails

What is the convention of functions with naming "function?"?

  • Returns a boolean indicating success or failure

  • Works as a "test"

What is an actor in the context of Elixir?

According to this course

  • A process

  • Consists of state

  • Consists of Functionality

  • Consists of a message queue

What are some properties of actors in the actor model?

According to this course

  • Actors are isolated from each other

  • Actors run concurrently

  • Actors communicate through message passing

  • Actors are inactive as long as their inbox is empty

  • Messages are consumed FIFO-style and processed strictly sequentially

  • Actor is an "Unit of concurrency"

In elixir and actor model, what is synchronous communication?

According to this course

  • A call

  • Waits for other process to respond

In elixir and actor model, what is asynchronous communication?

According to this course

  • A cast

  • Does not wait for other process to respond

What is a supervisor in the context of Elixir?

According to this course

  • A type of process

  • responsible for administrating the lifecycle of a number processes

  • Starts and stops processes

  • Handle crashes of processes

What type of restart strategies are available in for the supervisor in Elixir?

According to this course

  • One for one

  • One for all

  • Rest for one

In regards to restart strategies, what does "one for one" mean?

According to this course

  • Only the crashed process is restarted

  • Other processes are not affected

In regards to restart strategies, what does "one for all" mean?

According to this course

  • If one child process crashes, all other child processes are restarted

In regards to restart strategies, what does "rest for one" mean?

According to this course

  • The process that crashed is restarted

  • All process listed after the crashed process are restarted

Where is the state of processes stored in Elixir?

According to this course

  • In a sandboxed process

What is defensive programming and its traits?

According to this course

  • Handling errors gracefully

  • Handling errors using if statements

  • Handling errors using exception handling

What is offensive programming and its traits?

According to this course

  • Let it fail

  • It's okay for your code to fail

In terms of cyber-physical systems, what is the approach "A narrow waist"?

According to this course

  • Having a common interface and interface model between applications and buildings

What is a timeseries database?

According to this course

  • Persists a values, which are indexed by timestamps

  • Typically stored as a B+ tree

  • Used for fast range lookups

What is an ontology?

According to this course

  • Formal naming and definition of types, properties and interrelationships of entities

  • Exists in a particular domain

What is correct about ontologies?

According to this course

  • Formalized language

  • Things are defined through the type, parameters and relationships to other things

  • Limited coverage

  • Focus on a particular field

  • Models can span multiple ontologies

  • The ontology in a model

What are some of the challenges when defining ontologies

According to this course

  • Envisioning how it will be interpreted

  • How writing to the model affects model consistency

  • Think in terms of lower abstractions

What do you have to think of, when producing the representation model of an ontologi?

According to this course

  • Envisioning how it will be interpreted

What do you have to think of, when producing the data, adhering to the data model of an ontology?

According to this course

  • How writing to the model affects model consistency

What do you have to think of, querying a model of an ontology?

According to this course

  • Think in terms of lower abstractions

What does RDF stand for?

According to this course

  • The Resource Description Framework

What is RDF?

According to this course

  • An ontology defined through triples

  • Defined through Subject, predicate & object

  • Namespaces

  • Subclasses and subproperties

  • The information lies in the triple

Why does RDF use namespaces for entities?

According to this course

  • To avoid naming collisions

How are RDF namespaces done?

According to this course

  • Realized through compact URI (CURI)

  • Through prefixes

To work with RDF, what query language is used?

According to this course

  • SparQL

In RDFS and OWL (Ontologies), how are relationships defined in the DAG of types?

According to this course

  • Through their use

  • Through their place

In SparQL, what happens if you drop RDF support, when you support RDF and OWL?

According to this course

  • Removes the ability for any entity to take any role in a triple

  • Allows modeling the data as a graph

When working with ontologies and RDF, what does Closed world assumption mean?

According to this course

  • The presumption that any statement that is true is also know to be true

  • Require all facts to be known

  • It is possible to validate that all properties hold

When working with ontologies and RDF, what does Open world assumption mean?

According to this course

  • The assumption that the truth value of a statement may be true irrespective of wheter or not it is known to be true

  • Accept that you don't know all facts

  • A property that needs to be satisfied could reside outside the set of known facts

  • Impossible to verify that properties hold

  • Possible to check that no restrictions are violated

When looking at ontology schemas, what classifies RDF?

According to this course

  • Concept

  • Model

When looking at ontology schemas, what classifies RDFS?

According to this course

  • Open World

  • Classification

When looking at ontology schemas, what classifies SHACL?

According to this course

  • Closed World

  • Validation

What is a validator in RDF ontologies?

According to this course

  • Tests the stated rules of the applied ontologies

What can happen, if you don't have a validator in RDF ontologies?

According to this course

  • Spelling mistakes are accepted

  • Entities can be connected in any way

  • Entities can be floating

What is a reasoner in RDF ontologies?

According to this course

  • An element that applies rules

When can you apply a reasoner in RDF ontologies?

According to this course

  • When inserting

  • On triple store before querying

  • While querying

When is a graph a weighted graph?

According to this course

  • When all edges have a weight

When is a graph query language a real graph query language?

According to this course

  • The level of abstraction refers to nodes, edges, properties and labels

  • Paths can be matched

  • A suite of graph algoritms can be referenced

In Neo4J, what is the data model of nodes?

According to this course

  • A set of labels

  • A key-value store containing named properties

  • A map from relationship type to set of outgoing relationships

  • A map from relationship type to set of incoming relationships

I nNeo4J, what is the data model of edges (relationships)?

According to this course

  • A single type

  • A key-value store containing named properties

  • A source node

  • A destination node

What are some of the reasons to use C in IoT?

According to this course

  • Garbage collection is problematic in embedded systems

  • Fast

  • Low memory footprint

  • Easy to access low-level operations

  • Include important high-level abstractions

  • Simple language

What are the build phases in C?

According to this course

  • Pre-compilation

  • Compilation

  • Linking

  • Execution

In C, what is the issue if you just make an array, without using systems, such as malloc?

According to this course

  • The array may contain garbage values

In C, what is a pointer?

According to this course

  • Variable contains only an address

  • Contains an integer value

  • Can be obtained by using the & operator

  • Can be dereferenced by using the * operator

What is the definition of Voltage?

According to this course

  • The difference in electric potential

  • Measured between two points

  • Measured in Volts (V)

What is the definition of transducer?

According to this course

  • A device which converts energy from one form to another

What is the definition of serial communication?

According to this course

  • A way of transferring a chunk of data one bit after the other

In RS232, what are the different wires used for?

According to this course

  • Communication in one direction

  • Communication in the other direction

  • Ground

In RS232, what are the elements in the frame format?

According to this course

  • 1 start bit

  • A character spanning 7-8 bits

  • 1 parity bit

  • Stop bits

When choosing machine-readable formats in serial communication, what is correct?

According to this course

  • Makes it simple to parse

When choosing human-readable formats in serial communication, what is correct?

According to this course

  • Makes it simple to debug

What are some of the options for dispatch mechanisms in serial communication?

According to this course

  • Lookup using table

  • Lookup using map

  • Chain of branches

  • Deterministic finite automaton

What is the definition of sampling interval or sampling period (T)?

According to this course

  • The time between two samples

What is the definition of sampling frequency or sampling rate (f_s)?

According to this course

  • The number of samples obtained within 1 second

How frequent do you have to sample to be guaranteed to be able to reconstruct a signal?

According to this course

  • Twice as fast as the fastest frequency contained in the original signal

What is the theorem called, which requires double the sampling frequency to reconstruct a signal?

According to this course

  • Nyquist Theorem

What are possible resampling methods?

According to this course

  • Downsampling

  • Upsampling

What are some errors that can occur in resampling?

According to this course

  • Aliasing

  • Cutting off extreme values

  • Remove fluctuations

In analog to digital conversion, what are some of the steps?

According to this course

  • Flush

  • Wait

  • Sample

  • Hold

  • Compare

In analog to digital converters, what are some of the sources of noise?

According to this course

  • The sensor itself

  • Electromagnetical signals

  • AD conversion

What is the noise floor?

According to this course

  • The inherent noise in a given situation

  • The minimum signal that can be detected

What is signal to noise ratio (SNR)?

According to this course

  • A measurement that tells us how large a fraction of a signal consists of noise

What happens if you average two samples?

According to this course

  • The signal is doubled

  • Many types of noise will cancel out

  • Signal to noise ratio (SNR) goes up

  • Signal to noise ratio (SNR) is improved

What is an outlier?

According to this course

  • An observation which lies 'far' away from the brunt of distribution

What can happen, if you remove important outliers?

According to this course

  • Data about an unexpected event is lost

  • Information about something thought impossible is lost

  • A black swan event is lost

Given a 12 bit ADC, with a 3 bit noise floor, how many bits should be used for the signal?

According to this course

  • 9 bits

Given a 12 bit ADC, with a 3 bit noise floor, sampling at 10 kHz, what is the theoretical required bandwidth?

According to this course

  • 90 kbps

How are radio waves classified?

According to this course

  • Frequency

  • Wavelength

When working with wireless communication, what is true?

According to this course

  • Lower frequency gives longer range

  • Higher frequency gives shorter range

  • There exists and open and closed spectrum

  • The signal extends according to the inverse square law

  • Media is shared

  • It is not possible to avoid collisions

What are some of the consequences of the inverse square law?

According to this course

  • The intensity of a signal drops polynomially with distance

  • It is infeasible to send a signal over a long distance

What happens when there is not enough signal strength to noise ratio (SNR)?

According to this course

  • Bit errors start to occur

What is the definition of a collision in wireless communication?

According to this course

  • Happens when two or more signals overlap in both time and space

  • High probability of one, some or all signals are lost at the place of collision

What are possible network topologies in wireless communication?

According to this course

  • Line

  • Star

  • Ring

  • Tiered

  • Tree

  • Mesh

What is true about packets in wireless communication?

According to this course

  • Packets are usually made up of individual frames

  • Frames are ofted dropped due to detected corruption

  • Frames are often dropped due to complete lack of reception

  • ACK can be used to acknowledge that a frame has been received

In the OSI model, what is the Physical layer do?

Also known as Layer 1

  • Electrical link

  • Audio link

  • Radio link

In the OSI model, what is the Data link layer do?

Also known as Layer 2

  • Reliable delivery of frame to local named receiver

In the OSI model, what is the Network layer do?

Also known as Layer 3

  • Multi-node routing

In the OSI model, what is the Transport layer do?

Also known as Layer 4

  • Connection-orientation

  • Multiplexing

  • Flow control

In the OSI model, what is the Session layer do?

Also known as Layer 5

  • Session management of connections

In the OSI model, what is the Presentation layer do?

Also known as Layer 6

  • Convenient translation

  • Encryption

  • Coding

In the OSI model, what is the Application layer do?

Also known as Layer 7

  • API

In the OSI model (expanded), what is the individual layer?

Also known as Layer 8

  • Application user

In the OSI model (expanded), what is the organization?

Also known as Layer 9

  • Organizational framework

In the OSI model (expanded), what is the government layer?

Also known as Layer 10

  • Rules for organizations and compliance

What are some key properties of a typical IoT cloud?

According to this course

  • Large number of incoming data streams

  • Large number of customers

  • Similar processing across multiple customers

  • Expectation of privacy

  • Small number of processing products presented to the customer

  • Possibly large number of outgoing data streams

What is a stream process?

According to this course

  • An independent piece of logic

  • Associated with a state

  • Associated with zero or more input streams

  • Associated with zero or more output streams

What is true about stream processing?

According to this course

  • A node consumes inputs in order to produce outputs

  • A source, is a node only producing output streams

  • A sink, is a node only consuming input streams

What are some specific properties of stream processing, that you should think of, when designing?

According to this course

  • Flow control

  • Consumability

  • Trigger condition

  • Trigger arbitrarity

  • Batch size

  • Fault tolerance

What are some concerns that can arise in stream processing?

According to this course

  • Context switching

  • Side effects

  • Networking

What are some of the steps, that data has to go through, when being ingested?

According to this course

  • Categorization

  • Validation

  • Sanity check

What is a typical issue with message queues?

According to this course

  • If one element is down, it may break the entire pipeline

What is true about the publish-subscribe pattern?

According to this course

  • A communication pattern

  • Messages can be published through some name on a broker

  • Clients can subscribe to names on a broker

  • Whenever a message is published, all clients subscribed to that name are notified

  • Contains a publisher, broker and client

  • There exists dumb brokers and smart brokers

  • There exists dumb clients and smart clients

In regards to dumb and smart brokers and clients, what is true?

According to this course

  • Kafka is close to dumb broker, smart client

  • MQTT is in between a dumb broker and a smart broker, and a dumb client and a smart client

  • "Data Portal" is close to smart broker, dumb client

In regards to publish-subscribe and message queues, what is true?

According to this course

  • Kafka subscribe to exact topics

  • MQTT subscribe using query over topic pattern

  • sMAP subscribe using query over per-stream key-value store

Why is Kafka not often used in IoT?

According to this course

  • Due to its large client footprint

  • Due to its complexity

  • Due to complexity in topic discovery

What is true about MQTT?

According to this course

  • Subscribes through topic patterns

  • Use / as a separator in topics

  • The + wildcard matches a single level

  • The # wildcard matches all levels

  • Supports QoS 0, 1 and 2

  • Support last will and testament

  • Support persistent sessions

To get messages for the following topics in MQTT, what is the correct subscription for retrieving all temperature measurements?

Topics:
- "home/temperature/sensor1",
- "home/temperature/sensor2",
- "home/humidity/sensor1",
- "home/humidity/sensor2",
- "home/pressure"

  • "home/temperature/#"

  • "home/temperature/+"

To get messages for the following topics in MQTT, what is the correct subscription for retrieving all measurements from sensor1?

Topics:
- "home/temperature/sensor1",
- "home/temperature/sensor2",
- "home/humidity/sensor1",
- "home/humidity/sensor2",
- "home/pressure"

  • "home/+/sensor1"

  • "home/+/sensor1/#"

What is correct about system failures?

According to this course

  • As the number of machines in a system goes towards infinity the time to one of them breaking goes to zero

  • You have to deal with failures

  • Built redundancy across systems and machines

  • BEAM can be used for homogeneous and high-granularity systems

  • Kubernetes, Ceph, Docker swarm can be used for heterogeneous and low-granularity systems

What is a system?

According to this course

  • A collection of independent components that has been combined in a particular configuration in order to solve some problem

What is true about hypothesis and hypothesis testing?

According to this course

  • Expectations can be formulated as a set of hypothesis

  • Hypothesis testing is the act of testing to which degree a hypothesis is true

  • Results of hypothesis testing is usually boolean, floats or probabilistic

  • Hypothesis testing has its roots in statistics

  • Hypothesis testing may be done on a subset of a system

What is true about tests in hypothesis testing?

According to this course

  • They are designed to highlight relevant performance metrics of the phenomenon of interest

  • They are administered using experimental setup sorrounding the apparatus

  • They can be done manually or automatically

  • They need to be repeatable

What is a full-factorial experiment?

According to this course

  • Examining all combinations of factors

  • Use all possible parameters for the experiment

  • An computationally expensive type of test

What is some elements an experiment should

According to this course

  • Include the stubs necessary to execute the system as defined

  • Operate instances of the relevant components according to fixed values for all parameters

  • Include stub implementation for all dependencies to the system

  • Produce the needed workload

  • Iterate over relevant factors and workloads

  • Instrument relevant components to observe and log relevant metrics

  • Not influence the system under experimentation

When testing, what is true about time?

According to this course

  • High-resolution timing is expensive

  • High-resolution timing is often not critical

  • Timestamps across machines are often not directly comparable

  • Timestamps across a single machine may not be directly comparable

  • Monotonic clocks can be helpful for short periods of time

  • It is important to understand and document how large the time difference is between multiple systems

What are some key things about presenting plots?

According to this course

  • Any presented plot of data should be self-contained

  • Context or context reference should be obvious

  • Any axis in the plot should be labeled with metric and unit

  • Ensure axis starts at appropriate zero or known value

In IoT, what is the definition of "budget"

According to this course

  • Represents the availability of a scarce ressource

  • Can be consumed

  • Some get replenished

  • Can be a defining factor for operation of a device

What are some restrictions in regards to radio budgets?

According to this course

  • Number of packets sent throughout a day

  • Rate of transmission

  • Maximum packet size

What are some restrictions in regards to memory budgets?

According to this course

  • Available size of RAM

  • Available size of ROM

  • Available size of flash

  • Number of per-cell write cycles

  • Size of erase unit

What is true about budget management?

According to this course

  • There are lots of budgets

  • There are lots of tradeoffs

  • It is hard to reason about the relative/absolute magnitudes of tradeoffs

  • It is hard to reason about how design choices affect budgets

  • There is no one-size-fits-all solution for budget management

  • You should experiment with different budgets, to identify the best tradeoffs for your system

What is true about data throttling?

According to this course

  • If one or more values are not sent, the data may not be able to be reconstructed

  • Blowing the budget, may cause data to not be sent

Which of the following is correct about sending aggregated values?

According to this course

  • You will get a sum curve that grows indefinitely

  • You will transmit the same number of values

  • You will be able to easily derive the original values from the aggregated values

What happens when you send aggregated values, and loose a value?

According to this course

  • Data degrades gracefully in temporal resolution

What is adaptive sampling?

According to this course

  • The frequency of sampling is adjusted based on the current state of the system

  • The frequency is adjusted when changes in the system are detected

When working with data throttling, what is true?

According to this course

  • Batch transmission can be used to limit number of empty packets

  • Batch transmission can limit power usage

  • Batch transmission can increase latency of data

  • It takes time going from sleep to active state

In order to reduce power when operating radio communication, what can be done?

According to this course

  • Low power listening

  • Receiver listens in short intervals for transmissions

  • Transmitter waits for receiver to be ready before transmitting

Of the following, what is correct?

According to this course

  • Naming has everything to do with being able to reference something

  • Identity is the same as a name

  • A device may have multiple identities

What are some sources of identity?

According to this course

  • Unique device number

  • User provided

  • Physical location

  • Network-derived

  • Context-derived

What are possible places to store identity?

According to this course

  • Node - By the device itself (self-aware)

  • Cloud - Central knowledge base

  • Private - Stored with the user

When are possible points to get a timestamp?

According to this course

  • When sampling on device

  • When transmitting

  • When receiving

  • When pushing to cloud

  • When receiving in the cloud

  • When receiving from the cloud

What is Spread spectrum and frequency hopping?

According to this course

  • Originally invencted to communicate bewtween controllers and torpedoes more robust

  • Signal spread over multiple spectrums

  • Used in satelite communication

  • Enchances robustness against interference

What are some of the pros and cons of using Spread spectrum and frequency hopping?

According to this course

  • Security increased

  • Less subsceptible to interference

  • More robust against jamming

  • Limits detection of communication

  • Short range

What is beamforming?

According to this course

  • Antenna array that can focus the signal in a specific direction

  • Focussing done by controlloing signal phases and amplitude across multiple antennas

  • Utalizes constructive and destructive interference

What are some of the pros and cons of using beamforming

According to this course

  • Improved signal strength

  • Energie efficient

  • Reduced interference

  • Greater range

  • Faster data rates

  • Cost

  • Complexity

What is backscattering, and what is it used for?

According to this course

  • A technique to communicate by reflecting existing signals

  • Reflected signal is modulated in amplitude

  • Used in RFID

What is SDR?

According to this course

  • Software-Defined Radio

  • Allows for programmable hardware

  • Allows for operating on multiple frequencies and protocols

Where can low power listening be found?

According to this course

  • Zigbee

  • Bluetooth Low Energy (BLE)

When is mesh network topology usefull?

According to this course

  • Remote and difficult environments

  • Disaster recovery and emergency situations

  • Large events and festivals

  • Military operations

  • Smart cities and IoT applications

What is correct about eventual consistency?

According to this course

  • It's okay that different nodes have different versions of the same data

  • All nodes will eventually converge to correct version of the data

  • Quries might return old data

  • PRoblem: Maintaining data consistency across nodes