First 50 of 200 questions. Each one lists the choices, the correct answer, and an explanation. The checker at the top of this page saves progress in this browser when it is available.
Continue in the practice tool above to load more questions, 50 at a time.
Question 1Hardware
Which component of a computer is primarily responsible for executing program instructions and performing arithmetic and logical operations?
- The central processing unit (CPU) Correct answer.
- The random-access memory (RAM)
- The hard disk drive (HDD)
- The power supply unit (PSU)
Explanation
The central processing unit fetches, decodes, and executes instructions and contains the arithmetic logic unit that performs calculations and comparisons. Other components support it by storing data or supplying power but do not execute instructions themselves.
Question 2Hardware
A user wants storage that retains data after the computer is powered off. Which of the following is a non-volatile storage technology?
- Static RAM (SRAM)
- CPU cache
- Dynamic RAM (DRAM)
- Solid-state drive (SSD) Correct answer.
Explanation
Non-volatile storage keeps its contents without power. A solid-state drive uses flash memory to store data persistently, so files survive shutdown. DRAM, SRAM, and CPU cache are volatile memory that loses contents when power is removed.
Question 3Hardware
Which type of memory is typically the fastest and is located closest to the CPU core?
- Virtual memory
- Optical storage
- L1 cache Correct answer.
- Main memory (RAM)
Explanation
L1 cache sits on or very near the CPU core and has the shortest access latency, making it the fastest memory in the hierarchy. Main memory is larger but slower, virtual memory uses disk, and optical storage is far slower still.
Question 4Hardware
What is the primary function of a motherboard?
- To store the operating system permanently
- To render graphics for the display
- To connect and allow communication among system components Correct answer.
- To convert alternating current into direct current
Explanation
The motherboard is the main circuit board that provides sockets, slots, and buses so the CPU, memory, storage, and peripherals can communicate. It does not itself convert power, render graphics, or act as permanent storage.
Question 5Hardware
Which unit is used to describe the clock speed of a modern CPU?
- Volts (V)
- Gigabytes (GB)
- Megapixels (MP)
- Gigahertz (GHz) Correct answer.
Explanation
Clock speed measures how many cycles the processor completes per second and is expressed in hertz, commonly gigahertz. Gigabytes measure storage capacity, megapixels measure image resolution, and volts measure electrical potential.
Question 6Hardware
Which of the following best describes an input device?
- A keyboard that sends data into the computer Correct answer.
- A monitor that displays output to the user
- A printer that produces a paper copy
- A speaker that emits sound
Explanation
An input device allows a user to send data or commands into the computer. A keyboard is a classic input device, whereas monitors, printers, and speakers produce output for the user.
Question 7Hardware
A technician installs 16 GB of RAM in a system but the operating system reports only about 12 GB usable. Which explanation is most likely on a 32-bit operating system?
- The RAM modules are faulty and must all be replaced
- The CPU clock speed is too low to use all the memory
- The hard drive is too small to support 16 GB
- A 32-bit OS can address only about 4 GB of memory, so the remainder is inaccessible Correct answer.
Explanation
A 32-bit operating system has a 32-bit address space, which limits it to roughly 4 GB of addressable memory regardless of how much RAM is installed. Memory above that limit cannot be mapped and is unused by the OS. Faulty modules, clock speed, and disk size do not cause this specific symptom.
Question 8Hardware
Which statement correctly distinguishes volatile from non-volatile memory?
- Volatile memory is always slower than non-volatile memory
- Volatile memory is measured only in hertz
- Volatile memory keeps data only while powered; non-volatile memory retains data without power Correct answer.
- Non-volatile memory can only be read, never written
Explanation
The defining difference is persistence: volatile memory loses its contents when power is removed, while non-volatile memory retains data. Speed and writability are separate characteristics and do not define the categories.
Question 9Hardware
A graphics designer needs a component that performs parallel calculations for rendering 3D scenes. Which component is designed specifically for this task?
- The memory controller
- The graphics processing unit (GPU) Correct answer.
- The sound card
- The network interface card (NIC)
Explanation
A GPU contains many parallel processing cores optimized for rendering images and other highly parallel workloads. A NIC handles network traffic, a sound card processes audio, and a memory controller manages access to RAM.
Question 10Hardware
Which storage interface is designed primarily for connecting high-speed solid-state drives directly to the PCI Express bus?
- IDE
- NVMe Correct answer.
- USB 2.0
- SATA
Explanation
NVMe is a protocol designed for flash storage that runs over PCI Express, allowing much higher throughput and lower latency than older interfaces. SATA and IDE were designed for hard drives, and USB 2.0 is a general peripheral bus.
Question 11Hardware
What is the main purpose of cache memory in a computer system?
- To increase the physical size of the hard drive
- To permanently store user documents
- To convert analog signals to digital signals
- To reduce the average time the CPU takes to access frequently used data Correct answer.
Explanation
Cache memory holds recently or frequently used data close to the CPU, reducing average access latency compared with fetching from main memory. It is volatile, does not add storage capacity, and plays no role in signal conversion.
Question 12Hardware
A computer uses a power supply rated at 500 W. Which statement best describes what this rating means?
- The system consumes exactly 500 W at all times
- The supply can deliver up to about 500 W of combined output to the components Correct answer.
- The supply stores 500 W of energy for later use
- The CPU runs at 500 W regardless of load
Explanation
A power supply rating indicates the maximum continuous output it can deliver across its voltage rails. Actual consumption varies with load and is usually below the maximum, and power supplies do not store energy in watts for later use.
Question 13Hardware
Which of the following correctly orders these storage and memory types from smallest typical capacity to largest typical capacity?
- Main memory, CPU registers, hard disk drive
- CPU registers, main memory, hard disk drive Correct answer.
- Hard disk drive, main memory, CPU registers
- CPU registers, hard disk drive, main memory
Explanation
CPU registers hold only a few bytes each and are the smallest, main memory is measured in gigabytes, and hard drives typically hold terabytes. This reflects the memory hierarchy from smallest and fastest to largest and slowest.
Question 14Hardware
What does the term 'form factor' describe when applied to a motherboard?
- The physical dimensions and mounting layout of the board Correct answer.
- The number of USB ports on the board
- The amount of RAM the board supports
- The clock speed of the installed processor
Explanation
Form factor refers to the physical size, shape, and mounting hole pattern of a motherboard, such as ATX or microATX, which determines case compatibility. Clock speed, memory support, and port count are separate specifications.
Question 15Hardware
A laptop manufacturer wants to reduce power consumption and heat while keeping the same CPU architecture. Which change would most directly address this goal?
- Upgrading the monitor to a higher resolution
- Increasing the number of RAM slots
- Adding a larger hard drive
- Selecting a processor with a lower thermal design power (TDP) Correct answer.
Explanation
Thermal design power indicates the heat a processor is expected to dissipate under load; choosing a lower-TDP processor reduces both power draw and heat. More RAM slots, larger drives, and higher-resolution displays do not directly lower processor power consumption.
Question 16Hardware
A system boots but the operating system reports that the installed RAM is running at a lower speed than the modules are rated for. Which explanation is most plausible?
- The hard drive is failing and slowing memory access
- The monitor refresh rate is limiting the RAM speed
- The BIOS or UEFI memory profile has not been configured to enable the higher speed Correct answer.
- The RAM modules are physically the wrong size for the slots
Explanation
Memory speed is negotiated during boot, and firmware may default to a conservative setting until an extended memory profile is enabled. Physical size, disk health, and display refresh rate do not determine the memory clock.
Question 17Hardware
Which characteristic most distinguishes a reduced instruction set computer (RISC) architecture from a complex instruction set computer (CISC) architecture?
- CISC processors do not use registers
- CISC architectures are always 64-bit while RISC architectures are 32-bit
- RISC processors cannot access main memory
- RISC uses a small set of simple instructions that generally execute in few clock cycles Correct answer.
Explanation
RISC designs favor a small, simple instruction set with mostly single-cycle execution and heavy use of registers, while CISC designs offer more complex multi-step instructions. Both architectures access memory and use registers, and word size is independent of the RISC/CISC distinction.
Question 18Hardware
A workstation needs maximum reliability for stored data and uses four identical drives. Which arrangement provides redundancy so that data survives the failure of any single drive?
- RAID 0
- RAID 5 Correct answer.
- JBOD
- RAID 1 with only two of the drives
Explanation
RAID 5 distributes data and parity across all drives, so the array can reconstruct data after any one drive fails while using the capacity of all four. RAID 0 and JBOD provide no redundancy, and RAID 1 with two drives leaves the other two unused.
Question 19Hardware
A CPU pipeline improves throughput by overlapping instruction stages. Which situation most directly reduces the benefit of pipelining?
- Using faster main memory modules
- Increasing the number of USB ports
- Installing a larger hard drive
- Frequent branch instructions that change the instruction stream Correct answer.
Explanation
Pipelining works best when instructions flow in a predictable sequence. Branches can invalidate already-fetched instructions, causing pipeline stalls or flushes that reduce the throughput gain. Memory speed, port count, and disk size do not directly disrupt the instruction pipeline.
Question 20Software licensing & development tools
A developer wants to use a library whose license text states that any distributed derivative must be licensed under the same terms and that the source code must be made available. Which license family does this describe?
- Public domain dedication
- Copyleft open-source license Correct answer.
- Permissive open-source license
- Proprietary end-user license
Explanation
Copyleft licenses require that modified versions distributed to others keep the same license and expose source code, which is why they are often called reciprocal. Permissive licenses instead allow sublicensing under more restrictive terms. A proprietary EULA restricts redistribution, and a public domain dedication removes restrictions entirely.
Question 21Software licensing & development tools
A team installs a package manager dependency and the tool automatically writes the resolved version numbers into a lockfile. What is the main purpose of that lockfile?
- To record exact resolved versions for reproducible installs Correct answer.
- To encrypt the dependency source code at rest
- To list the license of every transitive dependency
- To replace the package manifest as the build script
Explanation
A lockfile pins the exact versions (and often integrity hashes) that were resolved, so another machine installs the same dependency tree. The manifest still declares ranges and intent, while the lockfile captures the concrete result. Lockfiles do not encrypt code, audit licenses, or act as build scripts.
Question 22Software licensing & development tools
Under a typical proprietary commercial software license, which activity is normally prohibited without a separate agreement?
- Installing the software on the number of machines the license permits
- Receiving automatic security updates during the subscription term
- Making a backup copy for archival purposes
- Reverse engineering the binary to build a competing product Correct answer.
Explanation
Commercial EULAs commonly forbid reverse engineering, decompilation, and use of the software to create a competing product. Installing within the licensed seat count, archival backup, and receiving updates are usually expressly allowed. The restriction on reverse engineering is what preserves the vendor's trade secrets.
Question 23Software licensing & development tools
Which statement best describes the difference between freeware and open-source software?
- Freeware and open-source software are legally identical terms
- Freeware must include source code, while open-source software need not
- Open-source software is always free of charge, while freeware always charges a fee
- Freeware is free of charge but may be closed source, while open-source software grants source-code rights Correct answer.
Explanation
Freeware refers to cost: the binary is distributed at no charge, but the license may keep source code closed and forbid modification. Open-source licenses grant rights to access, modify, and redistribute source code, and they may still be sold commercially. Cost and licensing rights are independent dimensions.
Question 24Software licensing & development tools
A build tool reports that a transitive dependency was resolved to a version with a known critical vulnerability. Which action most directly addresses the finding?
- Add the package to the manifest a second time
- Disable the vulnerability scanner for that package
- Reformat the lockfile to sort entries alphabetically
- Upgrade or override the dependency to a patched version Correct answer.
Explanation
The remediation for a vulnerable dependency is to move to a version where the flaw is fixed, either by upgrading the direct dependency or by pinning an override for the transitive one. Sorting or duplicating manifest entries does not change the installed code. Suppressing the scanner hides the risk without removing it.
Question 25Software licensing & development tools
In a distributed version control system, what does committing a change accomplish locally?
- It records a snapshot in the local repository history Correct answer.
- It uploads the change directly to the shared remote server
- It tags the release for packaging and distribution
- It merges the current branch into the main branch
Explanation
A commit creates a new snapshot and history entry in the developer's local repository. Publishing to a shared server requires a separate push operation. Merging and tagging are distinct commands with their own purposes.
Question 26Software licensing & development tools
A company adopts a license that requires preserving copyright notices and grants an express patent license to users. Which license is most consistent with those terms?
- Apache License 2.0 Correct answer.
- A standard commercial EULA
- Creative Commons BY-NC 4.0
- GNU General Public License version 3
Explanation
Apache 2.0 is a permissive license that requires retaining notices and includes an explicit patent grant, which is one of its distinguishing features. GPLv3 is copyleft and imposes reciprocity. CC BY-NC forbids commercial use and is intended for content, and a commercial EULA is proprietary.
Question 27Software licensing & development tools
A developer needs to run several language runtimes and database versions on one workstation without conflicts between projects. Which approach isolates each project's dependencies most directly?
- Using containers or virtual environments per project Correct answer.
- Installing every runtime globally at the newest version
- Committing compiled binaries into the repository
- Disabling automatic dependency resolution
Explanation
Containers and per-project virtual environments give each project its own isolated set of runtimes and libraries, so version requirements do not collide. Global installs force all projects to share one version. Committing binaries or disabling resolution does not create isolation.
Question 28Software licensing & development tools
A library is dual-licensed under GPLv3 and a paid commercial license. A company wants to ship a closed-source product that links the library. Which choice is legally sound?
- Purchase the commercial license for closed-source distribution Correct answer.
- Use the GPLv3 option but remove the license notices
- Rely on the GPLv3 option and forbid users from redistributing
- Use the GPLv3 option and keep the product closed source
Explanation
Dual licensing lets a user choose either set of terms. Distributing a closed-source product that links GPL code triggers GPL obligations, so the commercial license is the route that permits closed distribution. Removing notices or forbidding redistribution would breach the GPL.
Question 29Software licensing & development tools
A team wants every pull request to be automatically checked for style and unit-test failures before merging. Which development tool category provides this?
- Static site generator
- Continuous integration service Correct answer.
- Issue tracker
- Package registry
Explanation
Continuous integration services run automated builds, linters, and tests on each proposed change and report pass or fail before merge. A package registry stores artifacts, an issue tracker records work items, and a static site generator produces documentation or web pages.
Question 30Software licensing & development tools
A project's license file is missing, but the source repository contains no license text and the author has not granted terms elsewhere. What is the safest legal interpretation for a company that wants to reuse the code?
- The code falls automatically under the GPL
- The code may be reused freely with attribution
- No license means default copyright applies and reuse is not granted Correct answer.
- The code is public domain because it is publicly visible
Explanation
Copyright applies by default, so publishing source without a license grants no rights to copy, modify, or redistribute beyond what law allows. Public visibility is not a dedication to the public domain. No license is ever implied by the absence of text.
Question 31Software licensing & development tools
A package manager's manifest specifies a version range such as ^2.3.0. What does the caret operator typically permit?
- Any version at or above 2.3.0 including future major releases
- Any version from 2.3.0 up to but not including 3.0.0 Correct answer.
- Only the exact version 2.3.0
- Any version below 2.3.0
Explanation
In semantic versioning ranges, the caret allows updates that do not change the leftmost nonzero component, so ^2.3.0 accepts 2.x releases but not 3.0.0. This reflects the assumption that major version changes may break compatibility. Exact pinning and open-ended ranges are expressed differently.
Question 32Software licensing & development tools
Why do many organizations prefer a permissive license over a copyleft license for internal reusable components that will be shared with external partners?
- Permissive licenses forbid the code from being sold
- Permissive licenses let partners combine the code with their own without reciprocal obligations Correct answer.
- Permissive licenses require partners to publish their full source code
- Permissive licenses eliminate all attribution requirements
Explanation
Permissive licenses allow the code to be incorporated into other projects, including proprietary ones, without forcing the combined work under the same license. This reduces friction for partners with mixed codebases. Attribution duties usually remain, and permissive licenses do not force source publication.
Question 33Software licensing & development tools
A developer notices that a merged commit introduced a regression and wants to create a new commit that undoes only that change while preserving history. Which version control operation fits?
- Tag the offending commit as a release
- Reset the branch to the previous commit and force push
- Rebase the entire branch onto an older base
- Revert the offending commit Correct answer.
Explanation
Revert creates a new commit whose changes invert the target commit, which preserves shared history and is safe on published branches. Reset with force push rewrites history and can disrupt collaborators. Rebasing and tagging do not undo the change.
Question 34Software licensing & development tools
A build pipeline needs to compile code, run tests, and produce an artifact that is then deployed. Which characteristic distinguishes a build from a deployment step?
- Building always requires network access, while deployment never does
- Building and deployment are the same stage with different names
- Deployment compiles source, while building only copies files
- Building produces the artifact, while deployment places it into a target environment Correct answer.
Explanation
The build stage transforms source into a runnable artifact such as a binary or container image, and the deployment stage releases that artifact to an environment. Compilation belongs to the build, not to deployment. The two are separate stages with distinct responsibilities.
Question 35Software licensing & development tools
A company distributes a product that statically links a GPLv2 library. Which obligation most directly follows from that distribution?
- The company must release the complete corresponding source of the combined work under GPLv2 Correct answer.
- The company must rename the library before shipping
- The company must pay royalties to the Free Software Foundation
- The company may ship the binary only if it also encrypts the source
Explanation
Static linking creates a combined work, so distributing it under GPLv2 requires providing the complete corresponding source under the same license. No royalties are owed to the FSF. Renaming or encrypting source does not satisfy or substitute for the source-provision duty.
Question 36Software licensing & development tools
An engineer wants to pin a dependency to an exact version while still allowing a security patch to be adopted deliberately. Which practice best balances reproducibility and patching?
- Remove the lockfile so resolution stays dynamic
- Use a floating latest tag and never record versions
- Allow every dependency to auto-upgrade in production
- Pin exact versions in the lockfile and update them through reviewed changes Correct answer.
Explanation
Pinning exact versions in the lockfile makes builds reproducible, while adopting updates through reviewed changes lets the team evaluate and apply security patches intentionally. Floating tags, missing lockfiles, and automatic production upgrades trade away reproducibility and control.
Question 37Software licensing & development tools
A team wants to detect whether any dependency in its product uses a license incompatible with the company's redistribution policy. Which tool capability addresses this requirement directly?
- A profiler that measures runtime performance
- A software composition analysis tool that inventories dependency licenses Correct answer.
- A debugger that steps through source lines
- A code formatter that enforces indentation rules
Explanation
Software composition analysis inventories components and their declared licenses, flagging ones that conflict with policy. Formatters, profilers, and debuggers address code style, performance, and runtime faults, not licensing. Matching license obligations to policy is precisely what composition analysis supports.
Question 38Software licensing & development tools
A contributor submits a patch to an open-source project under a Developer Certificate of Origin sign-off. What does that sign-off primarily assert?
- The contributor's employer owns the entire project
- The contributor has the right to submit the code under the project's license Correct answer.
- The contributor waives all copyright in the patch
- The project will pay the contributor for the change
Explanation
A DCO sign-off is a statement that the contributor is legally entitled to submit the contribution and agrees it may be distributed under the project's license. It is lighter weight than a formal copyright assignment and does not transfer ownership or trigger payment. It confirms provenance and permission.
Question 39Development life cycles
In the waterfall model, which activity typically occurs immediately after requirements analysis and specification are completed and approved?
- Deployment to production
- User acceptance testing
- Unit testing
- System design Correct answer.
Explanation
Waterfall proceeds through sequential phases, and once requirements are frozen the next phase is design, where the architecture and detailed component specifications are produced. Testing and deployment come much later, after implementation.
Question 40Development life cycles
A team builds a product in two-week iterations, reviews a working increment with the customer at the end of each iteration, and reprioritizes the backlog before the next one begins. Which development approach does this describe?
- Waterfall development
- Formal verification
- Big-bang integration
- Iterative and incremental development Correct answer.
Explanation
Short repeated cycles that each produce a demonstrable increment and allow reprioritization are the defining features of iterative and incremental development, as used in agile methods. The other options describe single-pass or non-development activities.
Question 41Development life cycles
What is the primary purpose of a version control system such as Git in a software project?
- To record changes to source files so that revisions can be compared, reverted, and merged Correct answer.
- To compile source code into executable binaries for deployment
- To execute automated unit tests on every commit
- To measure how many hours each developer spends coding
Explanation
Version control tracks the history of file changes, letting developers compare revisions, restore earlier states, and merge parallel lines of work. Compilation, testing, and time tracking are handled by other tools.
Question 42Development life cycles
In a typical test-driven development cycle, which step comes first when a developer begins work on a new behavior?
- Write the production code that implements the behavior
- Run the full regression suite against production data
- Refactor the production code to improve its structure
- Write a failing automated test that expresses the desired behavior Correct answer.
Explanation
Test-driven development follows a red-green-refactor rhythm: an automated test is written first and must fail, then just enough code is written to make it pass, and only then is refactoring performed. Writing production code first inverts the cycle.
Question 43Development life cycles
Which document most directly defines what a system must do from the user's and business's point of view, independent of how it will be built?
- Detailed design document
- Software requirements specification Correct answer.
- Test plan
- Deployment runbook
Explanation
A requirements specification captures functional and non-functional requirements, stating what the system must achieve without prescribing implementation. Design documents describe how, while test plans and runbooks support verification and operations.
Question 44Development life cycles
A project must deliver a small, well-understood enhancement with stable requirements and a fixed regulatory deadline. Which lifecycle choice is most defensible for this work?
- A spiral model repeating full risk analysis until the deadline
- A sequential plan-driven lifecycle with formal phase gates Correct answer.
- An open-ended agile backlog with no release date
- A continuous exploratory prototyping cycle with no baseline
Explanation
When requirements are stable and well understood and the schedule is fixed, a plan-driven sequential lifecycle with formal gates gives predictable control and clear audit evidence. Exploratory or open-ended approaches add uncertainty that the situation does not need.
Question 45Development life cycles
During a sprint review, stakeholders ask for a new feature that was not in the sprint backlog. According to Scrum, what is the appropriate action?
- Insert it into the current sprint immediately because the customer requested it
- Ask the development team to work overtime to fit it into the current sprint
- Add it to the product backlog and let the product owner prioritize it for a future sprint Correct answer.
- Reject it permanently because the sprint scope is frozen
Explanation
In Scrum the product backlog is the single ordered list of desired work, and the product owner decides its priority; new requests are added there rather than injected mid-sprint. Protecting the sprint goal keeps the team's forecast meaningful.
Question 46Development life cycles
A team writes a user story as: "As a shopper, I want to save items to a wish list so that I can return and buy them later." Which element of the story does the clause beginning "so that" supply?
- The story point estimate
- The business value or rationale for the feature Correct answer.
- The acceptance criteria for testing
- The technical implementation approach
Explanation
The conventional story template is role, goal, and benefit; the final clause states why the user wants the capability, which is the value that justifies building it. Acceptance criteria and estimates are recorded separately.
Question 47Development life cycles
A team adopting continuous integration wants to catch integration defects early. Which practice best supports that goal?
- Running the full test suite manually once per quarter
- Requiring every developer to build on a personal machine without sharing results
- Keeping long-lived feature branches that merge only at release time
- Merging each developer's changes into a shared mainline frequently and running an automated build and test suite on every merge Correct answer.
Explanation
Continuous integration means integrating frequently into a shared mainline and automatically building and testing each integration so that defects surface within minutes. Long-lived branches and infrequent manual testing delay discovery.
Question 48Development life cycles
A code review finds that a function handles three unrelated responsibilities, making it hard to test. Which refactoring most directly addresses this?
- Add more inline comments explaining each responsibility
- Increase the function's parameter list to pass in more flags
- Move the function unchanged into a new module
- Extract each responsibility into its own function and call them from the original Correct answer.
Explanation
Splitting a function that has several responsibilities into focused functions improves cohesion and makes each piece independently testable. Comments, extra flags, or relocation leave the tangled structure intact.
Question 49Development life cycles
Why does the spiral model place explicit risk analysis in every loop of the spiral?
- Because it eliminates the need to gather requirements
- Because it guarantees the project will never exceed its budget
- Because risk analysis replaces the need for testing at the end
- Because each cycle should decide whether continuing is justified by evaluating and mitigating the largest current risks Correct answer.
Explanation
The spiral model is risk-driven: each iteration identifies the highest-risk items, evaluates them, and builds a prototype or mitigation before committing further resources. It does not remove testing, requirements, or cost overruns.
Question 50Development life cycles
A team wants to estimate effort for backlog items and agrees that all estimates will be relative to a reference story rather than in hours. Which technique are they using?
- Story point estimation Correct answer.
- COCOMO
- Function point analysis
- Critical path analysis
Explanation
Relative sizing against a reference item, commonly expressed in story points, is the agile estimation approach that avoids absolute time units. Function points and COCOMO are absolute sizing models, and critical path analysis schedules tasks.