Published: January 27, 2017
Credit toward certification: MTA
This exam measures your ability to accomplish the technical tasks listed below. The percentages indicate the relative weight of each major topic area on the exam. The higher the percentage, the more questions you are likely to see on that content area on the exam. View video tutorials about the variety of question types on Microsoft exams.
Please note that the questions may test on, but will not be limited to, the topics described in the bulleted text.
Do you have feedback about the relevance of the skills measured on this exam? Please send Microsoft your comments. All feedback will be reviewed and incorporated as appropriate while still maintaining the validity and reliability of the certification process. Note that Microsoft will not respond directly to your feedback. We appreciate your input in ensuring the quality of the Microsoft Certification program.
If you have concerns about specific questions on this exam, please submit an exam challenge.
If you have other questions or feedback about Microsoft Certification exams or about the certification program, registration, or promotions, please contact your Regional Service Center.
Apply Strategies to Solve Computational Problems (15-20%)
Identify basic algorithmic steps to solve simple problems
Decompose simple problems into steps, sequence processes in the appropriate order, describe storyboards, resolve challenges and errors related to logic or pseudocode
Decompose a computational problem into sub-problems
Describe computer programs that use logical subdivisions, describe solutions that use programmable strategies such as objects, functions, and parameters in the pseudo code provided, identify situations when code can be reviewed
Design Algorithms (25-30%)
Differentiate problems as easy or hard for computers to solve, apply the concept of iteration, create simple algorithms
Analyze game play to identify the algorithmic sequences
Analyze a game and create a sequence of instructions for playing it, identify an event, create the code for an event in block-based editors, explain the “on every frame” code and event handlers
Create and analyze algorithms used to implement animation and movement in code
Describe animation that uses a series of individual frames, resolve errors in algorithms, create algorithms that can be translated into pseudocode or block-based code, use code to command items on the screen or device
Explain sequence, selection, and iteration
Define loops, identify the control variable, predict the output of loop, random number, and control variable constructs, identify conditional statements; choose the appropriate Boolean logic for specific results
Work with Data Representation in Block-Based Programming Languages (15-20%)
Represent data in text, sounds, pictures, and numbers
Create code to add and position objects, such as sprites on a screen or device, identify data examples as text, sound, pictures, or numbers, change the parameters of “set frame grid” to work with different sprite sheets, explain the role of cloud variables, explain the impact of variable scope, including cloud variables, global variables, and local or temporary variables, design, create, and populate a table or two-dimensional array, describe multiple uses for data
Employ simple data structures to solve computational problems
Declare and use variables in a program, use input and variables to calculate new information, describe arrays, lists, and collections, explain the differences between variables and arrays
Describe how data is accessed in apps and games
Distinguish among variable data types, add, remove, and insert elements in a collection, iterate through collections using for loops and for-each loops, describe how random numbers are used
Solve Computational Problems by Using Modeling and Simulation (5-10%)
Solve computational problems by using computer and non-computer methods
Use algorithms and Boolean logic, use games and apps to simulate practical tasks such as converting currencies
Represent events observed in the physical world by coding simulation and modeling programs
Create programs and apps that mimic random occurrences, create programs and apps that demonstrate fundamentals of physics such as gravity, acceleration, and bounce
Code Programs in Block-Based Programming (15-20%)
Implement solutions using code
Identify the basic coding elements of the programming environment, create code for conditional statements, create conditional statements using AND, OR, and NOT, create loops, use counting variables
Use libraries and built-in functions to facilitate programming solutions
Code by using ready-made functions related to objects including the game board, wall, obstacle, sprite, string, textbox, collection, and turtle
Make connections between elements of mathematics and computer science
Plot points on a gaming coordinate system, analyze a game to discover how random numbers are used, use the random range function to generate random numbers, evaluate random numbers by using conditionals
Assess Personal Security in Internet Communications (5-10%)
Explain the basic components of Internet communication
Explain how information travels across the Internet, define cloud computing, describe the Internet of Things, describe the roles of cloud computing and cloud storage and their uses
Explain the principles of security
Describe how personal information can be used in inappropriate ways, describe how to prevent someone from gaining access to an online account, describe steps that websites take to keep passwords secure, describe the Caesar Cipher
Implement encryption and authentication strategies
Encode and decode messages using Unicode, evaluate passwords based on security criteria, describe how hashed passwords enhance Internet security
Examine the Software Development Process (5-10%)
Plan and create programs
Analyze problems in relation to your audience and identify which apps or games can be part of the solution and how they can be used, describe user-experience principles, gather user input, use code or text to create instructions for using a program
Describe software development processes used to solve problems
Plan project tasks and delegate responsibilities, describe a cycle of create, evaluate, and revise
Analyze and evaluate completed programs
Evaluate for readability and usability, give and receive feedback, evaluate feedback and revise the program accordingly
This question requires that you evaluate the underlined text to determine if it is correct.
You are writing an app for Best For You Organics Company.
The app needs to allow the user to convert a recipe from cups to liters. The app will use the conversion ratio of 1 cup is equal to 0.2366 liters.
You define the pseudocode as follows:
liters = cups * 0.2366
Review the underlined text. If it makes the statement correct, select “No change is needed.” If the statement is incorrect, select the answer choice that makes the statement correct.
A. No change is needed.
B. cups * 2.366
C. cups / 0.2366
D. cups / .02366 * 10
You are creating a calculator app. The Power function must calculate the result of raising a number by a positive exponent value.
You create the following pseudocode:
Function Power(number, exponent)
You need to complete the pseudocode for the function.
Which pseudocode should you use?
A. WHILE exponent > 1 SET result TO result * number SET exponent TO exponent – 1LOOPReturn result
B. IF exponent > 1 SET result TO result * number SET exponent TO exponent – 1END IFReturn result
C. IF exponent > 1 SET result TO result * number SET exponent TO exponent + 1END IFReturn result
D. WHILE exponent > 1 SET result TO result * number SET exponent TO exponent + 1LOOPReturn result
You are creating an app that will allow university students to connect with advisors and other students to discuss stressful situations. Only students who attend the university can access the app.
Which two steps should you take to protect student’s identity and personal information? (Choose two.)
A. Hash student data transmissions with a random salt.
B. Hash the password with a random salt.
C. Encrypt student data transmissions.
D. Hash the password using an algorithm in the Google database.
E. Encrypt the password.
Humberto wants to create a Touch Develop game that he can play with his friends competing for the highest score. Because Humberto’s friends live out of state, he needs to create a game that can be played on different devices with each player’s score being saved and compared to the other friend’s scores. He needs help determining the right type of variable to store the highest player’s score for use in his game.
You need to give Humberto advice on the correct type of variable he needs to create for his game.
Which variable type should you recommend?