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
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.
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?
Show answer
Correct answer: AHTTP 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.
A program stores names in a list and needs to find one particular name. Which basic operation is it performing?
Show answer
Correct answer: ASearching 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.
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?
Show answer
Correct answer: AFunction 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.
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?
Show answer
Correct answer: AInheritance 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.
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?
Show answer
Correct answer: AConcurrency 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.
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?
Show answer
Correct answer: BLow coupling means components depend relatively little on one another, which tends to make them easier to change and test independently.
Which statement best describes encapsulation in object-oriented programming?
Show answer
Correct answer: AEncapsulation 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.