IT Certifications · 98-361

Exam 98-361: Software Development Fundamentals Practice Test

Exam 98-361: Software Development Fundamentals covers foundational programming and software design concepts, including data types, control flow, collections, object-oriented relationships, and basic web communication. Its subject matter also includes recognizing common operations such as searching a list, checking a file path, and choosing a suitable representation for values such as money.

Exam overview

Exam providerMicrosoft
Exam code98-361
CategoryIT Certifications

About the Exam 98-361: Software Development Fundamentals Exam

The practice material touches on decisions developers make when translating requirements into program behavior. These include selecting conditional logic for a two-way choice, understanding how parameter lists distinguish overloaded functions, and using inheritance to extend a base class. Object-oriented questions address encapsulation, while design scenarios consider modularity and limiting the effects of changes between components. Other examples involve concurrency, distinguishing overlapping task progress from simultaneous execution, and interpreting protocol-level request outcomes through response details. File-access checks and numeric representation raise practical concerns about validating inputs and avoiding unwanted floating-point rounding. Together, these concepts help connect programming terminology to routine tasks such as organizing code, handling data, and reasoning about application behavior.

Sample Practice Questions

Review a selection from this exam's published US Practice Tests practice bank.

Question 1

A web page sends a request to a server, and the server returns structured data describing success or failure. Which response detail is commonly used to indicate the request outcome at the protocol level?

  1. AAn HTTP status code
  2. BA variable name from the server's source code
  3. CThe user's screen resolution
  4. DA database table's display color
Show answerCorrect answer: A

HTTP status codes communicate the broad outcome of a request, such as success or a client or server error. Other details listed do not serve as standard protocol-level request status indicators.

Question 2

A program stores names in a list and needs to find one particular name. Which basic operation is it performing?

  1. ASearching
  2. BCompiling
  3. CEncrypting
  4. DRendering
Show answerCorrect answer: A

Searching examines data to locate an item that matches a value or condition. Compiling translates source code, encryption protects data, and rendering produces a visual output.

Question 3

A function can receive either a whole-number quantity or a decimal measurement. Which concept describes a function having multiple definitions distinguished by their parameter lists in languages that support it?

  1. AOverloading
  2. BSerialization
  3. CIteration
  4. DAggregation
Show answerCorrect answer: A

Function or method overloading allows multiple definitions with the same name when their parameter lists differ, subject to the language's rules. Serialization, iteration, and aggregation refer to other programming concepts.

Question 4

A program has a base class named Vehicle and a derived class named Bicycle. What does the derived-class relationship generally allow Bicycle to do?

  1. AInherit accessible behavior and data from Vehicle, while adding or specializing behavior
  2. BPrevent Vehicle from being instantiated
  3. CAutomatically convert every Vehicle object into a Bicycle
  4. DShare the same memory location for all Bicycle objects
Show answerCorrect answer: A

Inheritance lets a derived class reuse accessible members of a base class and extend or specialize its behavior. It does not automatically convert objects or make all instances share one memory location.

Question 5

A system creates multiple independent tasks that can make progress during overlapping time periods, even if they do not run at the exact same instant. Which concept does this describe?

  1. AConcurrency
  2. BCompilation
  3. CNormalization
  4. DSerialization
Show answerCorrect answer: A

Concurrency is the structuring of multiple tasks so their progress overlaps. It can occur through interleaving on one processor or through simultaneous execution on multiple processors.

Question 6

A software project has many independent components that need to be built and tested. Which design practice most directly helps keep changes in one component from requiring unrelated changes throughout the program?

  1. AHigh coupling between components
  2. BLow coupling between components
  3. CDuplicating each component's implementation
  4. DUsing one global variable for all component state
Show answerCorrect answer: B

Low coupling means components depend relatively little on one another, which tends to make them easier to change and test independently.

Question 7

Which statement best describes encapsulation in object-oriented programming?

  1. ACombining related state and behavior while controlling access to internal details
  2. BCreating multiple unrelated copies of the same application
  3. CConverting source code directly into machine instructions
  4. DSorting objects by the order in which they were created
Show answerCorrect answer: A

Encapsulation groups data and related operations and can restrict direct access to an object's internals. This helps protect object state and define a clear interface.

How to use this practice test

The free practice bank contains 50 published questions; each session presents up to 20 random questions. Complete a session to see your results, then use missed or uncertain items to identify concepts to revisit, such as inheritance, concurrency, data representation, or request handling.

Preparation tips

  • Trace conditional statements with both true and false inputs, and identify which branch executes in each case.
  • Compare inheritance, encapsulation, and modular design by describing how each affects code reuse, access to data, or the impact of changes.
  • Practice distinguishing concurrency from parallel execution, and explain why tasks can overlap without running at the same instant.
  • Review when decimal-based representations are preferable to binary floating point for exact monetary values, and test how rounding affects sample calculations.
  • For web and file-handling scenarios, identify the response detail that indicates protocol-level success or failure and the checks needed before reading a user-supplied path.
Official sourceOfficial exam page ↗