Master of Software Engineering Flashcards
7 cards from real ME or MEng Master of Engineering practice questions. Tap to flip, then mark Knew It or Still Learning — missed cards come back until you master them.
Read the first 7 Master of Software Engineering flashcards as text
What is the primary goal of 'continuous integration' (CI) in a software development pipeline?
Answer: To detect integration errors quickly by merging and building developer changes frequently
CI integrates code changes into a shared repository frequently, running automated builds and tests to catch integration bugs early.
Which software architectural style uses an 'event bus' where producers publish events and consumers subscribe independently, with no direct coupling?
Answer: Event-Driven Architecture (EDA)
EDA decouples producers and consumers through an event bus or broker (e.g., Kafka, RabbitMQ), enabling asynchronous, loosely-coupled communication.
In software project estimation, what does the 'COCOMO II' model primarily use as a size input?
Answer: Function points or source lines of code (SLOC)
COCOMO II uses SLOC or function points as primary size measures and applies cost drivers and scale factors to estimate effort and schedule.
What is 'dependency injection' and what problem does it solve?
Answer: A design pattern where dependencies are provided externally rather than created internally; solves tight coupling
Dependency injection supplies an object's dependencies from outside (via constructor, setter, or interface), reducing coupling and improving testability.
Which property of a cryptographic hash function ensures that finding two different inputs with the same hash output is computationally infeasible?
Answer: Collision resistance
Collision resistance means it is computationally infeasible to find any two distinct inputs x and y such that H(x) = H(y).
In the context of software refactoring, what is 'extract method' and when is it typically applied?
Answer: Turning a code fragment into a new method with a descriptive name to improve readability
Extract Method takes a cohesive block of code within a method and moves it into a new, well-named method, reducing method length and improving clarity.
What does 'observability' in software systems encompass, beyond traditional monitoring?
Answer: The ability to infer internal system state from external outputs — metrics, logs, and traces combined
Observability enables engineers to ask arbitrary questions about system behavior using metrics, structured logs, and distributed traces without requiring new instrumentation.