Courseiva

200-901 · domain

Software Development and Design

Practise Cisco DevNet Associate 200-901 Software Development and Design practice questions — original exam-style scenarios with answer choices, explanations, and analysis of common mistakes.

72 questions17 easy35 medium20 hard

Focused practice

Practice Software Development and Design questions

Scored sessions drawing only from this domain — pick a length below.

Start 20-question practice test →

What this domain covers

What to know about Software Development and Design

Software Development and Design questions test whether you can apply the concept in context, not just recognise a definition.

How the topic appears in realistic exam-style scenarios.

Which detail in the question changes the correct answer.

How to eliminate plausible but wrong options.

How to connect the question back to the wider exam objective.

Watch out for

Common Software Development and Design exam traps

  • Answering from memory before reading the full scenario.
  • Missing a constraint such as cost, availability, security, scope or command context.
  • Choosing a broad answer when the question asks for the most specific fix.
  • Ignoring why the wrong options are tempting.

Question index

All Software Development and Design questions (72)

Click any question to see the full explanation, or start a practice session above.

1

In a microservices architecture, which communication pattern is typically asynchronous and decoupled?

Medium
2

Which Python exception would be raised by the following code? my_dict = {'a': 1} value = my_dict['b']

Hard
3

A developer is using Git for version control. After creating a new feature branch 'feature-login' from 'main', they make several commits. Meanwhile, another developer has merged changes into 'main'. The developer wants to incorporate the latest main changes into 'feature-login' without creating a merge commit. Which Git command should they use?

Hard
4

A developer is designing a Python script that needs to make multiple REST API calls to different endpoints sequentially. The script must handle the following requirements: (1) Use a variable timeout for each request, (2) Include an authorization token in every request, (3) Parse JSON responses. Which TWO features of the requests library should be used? (Choose two.)

Medium
5

A Python function needs to accept a variable number of keyword arguments. Which parameter syntax should be used?

Medium
6

A Python function needs to handle both expected and unexpected errors during file I/O. Which THREE constructs are essential for robust exception handling? (Choose three.)

Easy
7

A developer is implementing exception handling in Python for a function that makes an HTTP request. Which THREE exception types should be caught to handle common network and HTTP errors? (Choose three.)

Hard
8

Which Git command is used to switch to an existing branch named 'feature-x' and update the working directory?

Medium
9

Which HTTP status code indicates that a POST request successfully created a new resource?

Medium
10

What is the output of the following code? my_list = [1, 2, 3] for i in range(len(my_list)): my_list[i] += 1 print(my_list)

Easy
11

In a microservices architecture, which of the following is a key characteristic compared to a monolithic architecture?

Hard
12

In the context of REST API design, which HTTP status code should be returned when a client sends a request that exceeds the API rate limit?

Medium
13

A Python developer is working on a microservices project where one service needs to communicate with another service that exposes a GraphQL API. Which THREE statements about GraphQL compared to REST are accurate? (Choose three.)

Hard
14

A Python function is designed to fetch device data from multiple sources. It uses *args to accept variable number of API endpoints and **kwargs for optional parameters like timeout. Which function definition correctly implements this?

Medium
15

Given the following Python code snippet: with open('config.json', 'r') as f: data = json.load(f) print(data['interfaces'][0]['name']) What is the expected output if config.json contains {"interfaces": [{"name": "GigabitEthernet0/1"}]}?

Medium
16

In version control with Git, which command creates a new branch and switches to it in one step?

Medium
17

A Python script sends a PUT request to update a resource. The API returns a response with status code 204. What does this indicate?

Medium
18

Which THREE of the following are best practices when using Git for a collaborative project? (Choose three.)

Hard
19

Given the JSON string: '{"name": "Alice", "scores": [90, 85, 92]}', which Python code correctly extracts the second score (85)?

Medium
20

A Python function is defined as: def process(*args, **kwargs): return sum(args) + kwargs.get('offset', 0) What is the result of process(1, 2, 3, offset=10)?

Medium
21

Which HTTP status code indicates that a POST request successfully created a new resource on the server?

Medium
22

A developer is using Git for a project with a feature branch strategy. They have completed work on a new feature in the branch 'feature-logging' and want to integrate it into the main development branch 'develop'. The team requires that all commits on the feature branch be squashed into a single commit before merging. Which sequence of Git commands achieves this?

Hard
23

A developer is writing a Python script to iterate over a list of server hostnames. Which loop structure is most appropriate to process each hostname in the list?

Easy
24

A Python script uses a list comprehension: [x**2 for x in range(20) if x % 2 == 0]. Which of the following is equivalent?

Hard
25

A Python script sends a POST request to create a new network device resource. The API returns HTTP status code 201 and a JSON response with the device ID. How should the script correctly extract the device ID from the response?

Medium
26

A developer is working on a Python script that performs CRUD operations on devices via a REST API. Which HTTP method should be used to update an existing device's configuration partially?

Easy
27

A developer needs to parse a JSON string received from a REST API into a Python dictionary. Which function should they use?

Medium
28

A Python script uses a try/except block to handle API errors. If the API returns a 429 status code, which mechanism should the script implement to handle the error appropriately?

Hard
29

A network engineer writes a Python script to handle exceptions when making REST API calls. Which exception type should be caught to handle network connectivity issues (e.g., DNS failure, refused connection)?

Medium
30

A developer is designing a microservices architecture for a network monitoring application. Which of the following is a key advantage of microservices over a monolithic architecture?

Medium
31

Which TWO of the following are valid branching strategies in Git? (Choose two.)

Medium
32

Which TWO of the following Python exception handling statements are valid? (Choose two.)

Medium
33

In software architecture, which pattern separates an application into three interconnected components: Model (data), View (UI), and Controller (input logic)?

Medium
34

A developer uses the requests library to call an API. The API returns 429 Too Many Requests. What is the best practice to handle this?

Hard
35

A developer needs to update an existing resource via a REST API. The update should be partial, meaning only the fields provided in the request body should be changed. Which HTTP method should be used?

Medium
36

Which TWO of the following are valid Python data types?

Easy
37

Which Git branching strategy typically involves a long-lived 'develop' branch where feature branches are merged, and releases are created from a 'release' branch?

Medium
38

A Python script reads a JSON configuration file named 'config.json' and needs to extract the value of a nested key 'api_key' under 'authentication'. The file structure is: {"authentication": {"api_key": "abc123", "method": "token"}, "timeout": 30}. Which code snippet correctly opens the file and retrieves the api_key value?

Medium
39

A network automation script uses Git for version control. The developer wants to revert the last two commits on the current branch but keep the changes in the working directory for further modification. Which TWO Git commands can achieve this? (Choose two.)

Hard
40

What does the Git command 'git log --oneline' display?

Easy
41

A developer is implementing a Python function that makes an HTTP GET request to an API and returns the response time. Which code snippet correctly measures the elapsed time?

Medium
42

A developer writes a Python script to read a configuration file. Which code snippet correctly opens the file 'config.json' for reading and ensures the file is closed after use?

Easy
43

Which Python list comprehension correctly creates a list of squares for even numbers from 0 to 10?

Medium
44

A developer is building a REST API client in Python using the requests library. They need to send a JSON payload with authentication. Which code snippet correctly sends a POST request with a JSON body and a Bearer token?

Medium
45

A developer wants to process a list of server hostnames and create a new list containing only hostnames that start with 'web'. Which Python list comprehension correctly accomplishes this?

Easy
46

An automation engineer is writing a Python script to interact with a REST API that requires authentication. The API returns a 403 Forbidden status. Which scenario best explains this response?

Hard
47

Which TWO of the following are valid branching strategies in Git? (Choose two.)

Medium
48

A developer is designing a microservices-based network management system. One requirement is that when a new device is discovered, multiple other services must be notified asynchronously to perform tasks like inventory update, monitoring setup, and log collection. Which architectural pattern best fits this requirement?

Hard
49

Which THREE of the following are characteristics of GraphQL compared to REST? (Choose three.)

Hard
50

A developer needs to read a JSON configuration file and parse it into a Python dictionary. The file contains nested objects. Which code snippet correctly accomplishes this?

Medium
51

In Python, which data type is used to represent an unordered collection of unique elements?

Easy
52

In Python, which of the following is a valid way to define a function that accepts a variable number of positional arguments?

Easy
53

When using the requests library in Python to send a POST request, which parameter should be used to send a JSON payload in the request body?

Easy
54

Which HTTP status code indicates a successful POST request that created a resource?

Easy
55

Which Git command is used to create a new branch and switch to it in one step?

Medium
56

A Python script uses the 'requests' library to make a POST request to create a new resource. Which HTTP status code indicates successful creation?

Easy
57

Which THREE statements about RESTful APIs are true?

Hard
58

Which THREE of the following are benefits of using event-driven architecture in a distributed system? (Choose three.)

Hard
59

Which TWO HTTP status codes indicate client errors?

Medium
60

A developer needs to create a Python script that makes a GET request to a REST API to retrieve a list of network devices. The API uses query parameters to filter by device type and status. Which TWO code snippets correctly include query parameters using the requests library? (Choose two.)

Easy
61

A network automation script uses the requests library to retrieve device information from a REST API. The API requires authentication via a bearer token. Which code example correctly sets the Authorization header?

Medium
62

A developer is writing a Python script that processes a large CSV file. The script uses 'with open(file, 'r') as f' to read the file. Why is this approach preferred over calling f = open(file) and then f.close()?

Hard
63

Which TWO statements about the MVC pattern are correct? (Choose two.)

Medium
64

Which data structure in Python would be most appropriate for storing a collection of unique items and performing fast membership tests?

Easy
65

A Python script uses a dictionary to store device configuration parameters. Which key, if any, will raise a KeyError if it does not exist in the dictionary?

Easy
66

Which Python data type is mutable and unordered?

Easy
67

In the MVC (Model-View-Controller) pattern, which component is responsible for handling user input and updating the model?

Hard
68

A DevOps engineer is managing a Git repository and wants to discard local changes to a file and revert it to the last committed state. Which TWO commands can accomplish this? (Choose two.)

Medium
69

A developer needs to create a Python function that accepts any number of keyword arguments and prints them. Which function definition correctly uses **kwargs?

Medium
70

In a microservices architecture, which of the following is a primary advantage over a monolithic architecture?

Hard
71

A Python script needs to iterate over a dictionary of network interfaces and print each interface name and its IP address. The dictionary is structured as: {'GigabitEthernet1/0/1': '10.1.1.1', 'GigabitEthernet1/0/2': None}. Which THREE code snippets correctly iterate and print the key-value pairs, skipping entries with None? (Choose three.)

Medium
72

Given the Python list comprehension: result = [x*2 for x in range(10) if x > 5] What is the value of result?

Hard

Frequently asked questions

What does the Software Development and Design domain cover on the 200-901 exam?
Software Development and Design questions test whether you can apply the concept in context, not just recognise a definition.
How many questions are in this domain?
This page lists all 72 Software Development and Design questions in the 200-901 question bank. The actual exam draws from this domain proportionally to its weighting in the official exam blueprint.
What is the best way to practise this domain?
Start with a short focused session (10 questions) to identify gaps, then work through explanations. Repeat with a longer session once the weak areas feel solid.
Can I practise only Software Development and Design questions?
Yes — the session launcher on this page filters questions to this domain only. Choose any session length for inline explanations and scoring.
Cisco DevNet Associate 200-901 Software Development and Design Practice Questions